Lines Matching refs:sl
66 static int w1_f2d_readblock(struct w1_slave *sl, int off, int count, char *buf) in w1_f2d_readblock() argument
77 if (w1_reset_select_slave(sl)) in w1_f2d_readblock()
80 w1_write_block(sl->master, wrbuf, 3); in w1_f2d_readblock()
81 w1_read_block(sl->master, buf, count); in w1_f2d_readblock()
83 if (w1_reset_select_slave(sl)) in w1_f2d_readblock()
86 w1_write_block(sl->master, wrbuf, 3); in w1_f2d_readblock()
87 w1_read_block(sl->master, cmp, count); in w1_f2d_readblock()
93 dev_err(&sl->dev, "proof reading failed %d times\n", in w1_f2d_readblock()
103 struct w1_slave *sl = kobj_to_w1_slave(kobj); in eeprom_read() local
110 mutex_lock(&sl->master->bus_mutex); in eeprom_read()
121 if (w1_f2d_readblock(sl, off, block_read, buf) < 0) in eeprom_read()
129 mutex_unlock(&sl->master->bus_mutex); in eeprom_read()
147 static int w1_f2d_write(struct w1_slave *sl, int addr, int len, const u8 *data) in w1_f2d_write() argument
157 if (w1_reset_select_slave(sl)) in w1_f2d_write()
164 w1_write_block(sl->master, wrbuf, 3); in w1_f2d_write()
165 w1_write_block(sl->master, data, len); in w1_f2d_write()
168 if (w1_reset_select_slave(sl)) in w1_f2d_write()
171 w1_write_8(sl->master, W1_F2D_READ_SCRATCH); in w1_f2d_write()
172 w1_read_block(sl->master, rdbuf, len + 3); in w1_f2d_write()
181 dev_err(&sl->dev, in w1_f2d_write()
189 if (w1_reset_select_slave(sl)) in w1_f2d_write()
194 w1_write_block(sl->master, wrbuf, 4); in w1_f2d_write()
200 w1_reset_bus(sl->master); in w1_f2d_write()
209 struct w1_slave *sl = kobj_to_w1_slave(kobj); in eeprom_write() local
217 mutex_lock(&sl->master->bus_mutex); in eeprom_write()
229 if (w1_f2d_readblock(sl, addr & ~W1_F2D_SCRATCH_MASK, in eeprom_write()
243 if (w1_f2d_write(sl, addr & ~W1_F2D_SCRATCH_MASK, in eeprom_write()
251 if (w1_f2d_write(sl, addr, copy, buf) < 0) { in eeprom_write()
262 mutex_unlock(&sl->master->bus_mutex); in eeprom_write()