mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 03:24:45 +01:00
i2c: brcmstb: Use i2c_10bit_addr_*_from_msg() helpers
Use i2c_10bit_addr_*_from_msg() helpers instead of local copy. No functional change intended. Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20250213141045.2716943-5-andriy.shevchenko@linux.intel.com Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
This commit is contained in:
parent
eaa0df0de9
commit
3bf45fb570
1 changed files with 5 additions and 6 deletions
|
|
@ -414,23 +414,22 @@ static int brcmstb_i2c_do_addr(struct brcmstb_i2c_dev *dev,
|
|||
|
||||
if (msg->flags & I2C_M_TEN) {
|
||||
/* First byte is 11110XX0 where XX is upper 2 bits */
|
||||
addr = 0xF0 | ((msg->addr & 0x300) >> 7);
|
||||
addr = i2c_10bit_addr_hi_from_msg(msg) & ~I2C_M_RD;
|
||||
bsc_writel(dev, addr, chip_address);
|
||||
|
||||
/* Second byte is the remaining 8 bits */
|
||||
addr = msg->addr & 0xFF;
|
||||
addr = i2c_10bit_addr_lo_from_msg(msg);
|
||||
if (brcmstb_i2c_write_data_byte(dev, &addr, 0) < 0)
|
||||
return -EREMOTEIO;
|
||||
|
||||
if (msg->flags & I2C_M_RD) {
|
||||
/* For read, send restart without stop condition */
|
||||
brcmstb_set_i2c_start_stop(dev, COND_RESTART
|
||||
| COND_NOSTOP);
|
||||
brcmstb_set_i2c_start_stop(dev, COND_RESTART | COND_NOSTOP);
|
||||
|
||||
/* Then re-send the first byte with the read bit set */
|
||||
addr = 0xF0 | ((msg->addr & 0x300) >> 7) | 0x01;
|
||||
addr = i2c_10bit_addr_hi_from_msg(msg);
|
||||
if (brcmstb_i2c_write_data_byte(dev, &addr, 0) < 0)
|
||||
return -EREMOTEIO;
|
||||
|
||||
}
|
||||
} else {
|
||||
addr = i2c_8bit_addr_from_msg(msg);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue