Lines Matching refs:cfg

143 static void pin_init(const struct soft_i2c_config *cfg)  in pin_init()  argument
145 rt_pin_mode(cfg->scl_pin, PIN_MODE_OUTPUT_OD); in pin_init()
146 rt_pin_mode(cfg->sda_pin, PIN_MODE_OUTPUT_OD); in pin_init()
147 rt_pin_write(cfg->scl_pin, PIN_HIGH); in pin_init()
148 rt_pin_write(cfg->sda_pin, PIN_HIGH); in pin_init()
157 static void set_sda(void *cfg, rt_int32_t value) in set_sda() argument
159 rt_pin_write(((const struct soft_i2c_config*)cfg)->sda_pin, value); in set_sda()
167 static void set_scl(void *cfg, rt_int32_t value) in set_scl() argument
169 rt_pin_write(((const struct soft_i2c_config*)cfg)->scl_pin, value); in set_scl()
176 static rt_int32_t get_sda(void *cfg) in get_sda() argument
178 return rt_pin_read(((const struct soft_i2c_config*)cfg)->sda_pin); in get_sda()
185 static rt_int32_t get_scl(void *cfg) in get_scl() argument
187 return rt_pin_read(((const struct soft_i2c_config*)cfg)->scl_pin); in get_scl()
207 static rt_err_t i2c_bus_unlock(const struct soft_i2c_config *cfg) in i2c_bus_unlock() argument
211 if(PIN_LOW == rt_pin_read(cfg->sda_pin)) in i2c_bus_unlock()
215 rt_pin_write(cfg->scl_pin, PIN_HIGH); in i2c_bus_unlock()
216 rt_hw_us_delay(cfg->timing_delay); in i2c_bus_unlock()
217 rt_pin_write(cfg->scl_pin, PIN_LOW); in i2c_bus_unlock()
218 rt_hw_us_delay(cfg->timing_delay); in i2c_bus_unlock()
221 if(PIN_LOW == rt_pin_read(cfg->sda_pin)) in i2c_bus_unlock()
238 struct soft_i2c_config *cfg = &i2c_cfg[i]; in rt_soft_i2c_init() local
240 pin_init(cfg); in rt_soft_i2c_init()
244 obj->ops.data = cfg; in rt_soft_i2c_init()
246 obj->ops.delay_us = cfg->timing_delay; in rt_soft_i2c_init()
247 obj->ops.timeout = cfg->timing_timeout; in rt_soft_i2c_init()
248 if(rt_i2c_bit_add_bus(&obj->i2c_bus, cfg->bus_name) == RT_EOK) in rt_soft_i2c_init()
250 i2c_bus_unlock(cfg); in rt_soft_i2c_init()
253 , cfg->bus_name in rt_soft_i2c_init()
254 , cfg->scl_pin in rt_soft_i2c_init()
255 , cfg->sda_pin in rt_soft_i2c_init()
263 , cfg->bus_name in rt_soft_i2c_init()
264 , cfg->scl_pin in rt_soft_i2c_init()
265 , cfg->sda_pin in rt_soft_i2c_init()