On Jun 2 09:30, Cédric Le Goater wrote: > On 6/1/22 23:08, Klaus Jensen wrote: > > From: Klaus Jensen <k.jen...@samsung.com> > > > > Add support for writing and reading the device address register in old > > register mode. > > > > Signed-off-by: Klaus Jensen <k.jen...@samsung.com> > > --- > > hw/i2c/aspeed_i2c.c | 5 +++-- > > include/hw/i2c/aspeed_i2c.h | 8 ++++++++ > > 2 files changed, 11 insertions(+), 2 deletions(-) > > > > diff --git a/hw/i2c/aspeed_i2c.c b/hw/i2c/aspeed_i2c.c > > index 576425898b09..5a7eb5579b01 100644 > > --- a/hw/i2c/aspeed_i2c.c > > +++ b/hw/i2c/aspeed_i2c.c > > @@ -104,6 +104,7 @@ static uint64_t aspeed_i2c_bus_old_read(AspeedI2CBus > > *bus, hwaddr offset, > > case A_I2CD_AC_TIMING2: > > case A_I2CD_INTR_CTRL: > > case A_I2CD_INTR_STS: > > + case A_I2CD_DEV_ADDR: > > case A_I2CD_POOL_CTRL: > > case A_I2CD_BYTE_BUF: > > /* Value is already set, don't do anything. */ > > @@ -741,8 +742,7 @@ static void aspeed_i2c_bus_old_write(AspeedI2CBus *bus, > > hwaddr offset, > > } > > break; > > case A_I2CD_DEV_ADDR: > > - qemu_log_mask(LOG_UNIMP, "%s: slave mode not implemented\n", > > - __func__); > > + bus->regs[R_I2CD_DEV_ADDR] = value; > > break; > > case A_I2CD_POOL_CTRL: > > bus->regs[R_I2CD_POOL_CTRL] &= ~0xffffff; > > @@ -1060,6 +1060,7 @@ static void aspeed_i2c_bus_reset(DeviceState *dev) > > s->regs[R_I2CD_INTR_CTRL] = 0; > > s->regs[R_I2CD_INTR_STS] = 0; > > + s->regs[R_I2CD_DEV_ADDR] = 0; > > s->regs[R_I2CD_CMD] = 0; > > s->regs[R_I2CD_BYTE_BUF] = 0; > > s->regs[R_I2CD_DMA_ADDR] = 0; > > diff --git a/include/hw/i2c/aspeed_i2c.h b/include/hw/i2c/aspeed_i2c.h > > index 79c6779c6c1e..03fe829a3a57 100644 > > --- a/include/hw/i2c/aspeed_i2c.h > > +++ b/include/hw/i2c/aspeed_i2c.h > > @@ -297,6 +297,14 @@ static inline uint32_t > > aspeed_i2c_bus_cmd_offset(AspeedI2CBus *bus) > > return R_I2CD_CMD; > > } > > +static inline uint32_t aspeed_i2c_bus_dev_addr_offset(AspeedI2CBus *bus) > > This routine seems unused. >
It is, but I added it to align with other registers that are different between old/new mode. But we can introduce it later if needed instead.
signature.asc
Description: PGP signature