openUBMC Chip Abstract Layer V0.1
载入中...
搜索中...
未找到
GPIO

接口基本不变

接口用途

  • general_hardware cpld space test
  • power_mgmt AC Lost中断检测
  • runtime_accessor 通用接口

对比

<tt>init</tt>

  • 原接口
    void init();
  • 新接口
    struct GpioConfig {
    uint8_t direction;
    };
    void config(int32_t index, void *config, uint32_t size);
  • 变更说明 设备初始化函数名称统一变更

<tt>read</tt>

  • 原接口
    uint8_t read(uint32_t gpio_num, uint8_t direction) const;
  • 新接口
    uint8_t read(int32_t index) = 0;
  • 变更说明 index统一替代gpio_num参数 取消direction参数,由config指定direction,具体方法调用不再指定

<tt>write</tt>

  • 原接口
    void write(uint32_t gpio_num, uint8_t gpio_level) const;
  • 新接口
    int32_t write(int32_t index, uint8_t gpio_level);
  • 变更说明 index统一替代gpio_num参数 write统一增加返回值,判断写入是否成功

<tt>set_interrupt</tt>/<tt>get_interrupt</tt>

  • 原接口
    void set_interrupt(uint32_t gpio_int_num, uint8_t int_level) const;
    uint32_t get_interrupt(uint32_t gpio_int_num, uint32_t timeout, uint32_t rsv);
  • 新接口
    void set_interrupt(int32_t index, uint32_t gpio_int_num, uint8_t int_level);
    uint32_t get_interrupt(int32_t index, uint32_t gpio_int_num, uint32_t timeout);
  • 变更说明 index统一替代gpio_num参数 传参明确区分gpio号和中断号,二者不一定为绑定关系 read删除无用的rsv保留参数 write统一增加返回值,判断写入是否成功

<tt>get_io_drive_config</tt>/<tt>set_io_drive_config</tt>

  • 原接口
    uint8_t get_io_drive_config(uint8_t id) const;
    void set_io_drive_config(uint8_t id, uint8_t val) const;
  • 新接口 无
  • 变更说明 暂无使用