Message ID | 20220331043248.2237838-1-komlodi@google.com |
---|---|
Headers | show |
Series | aspeed: i2c: Add new mode support | expand |
Hello Joe, On 3/31/22 06:32, Joe Komlodi wrote: > Hi all, > > This series migrates the Aspeed I2C controller to use the register API, I like the idea but it's an earthquake in the I2C model and they are other patchsets on the way. Let's wait a bit before changing it all. > and then adds new mode support. > > New mode has some behavior changes and a register layout change compared > to old mode. Troy sent a similar proposal. Did you have a look ? http://patchwork.ozlabs.org/project/qemu-devel/list/?series=291804 Thanks, C. > The series starts by adding "shared field" macros to help simplify logic > when adding new mode. > Generally, the macros are to be used in cases where register locations > change depending on what mode a peripheral is operating in, but > the fields in those registers have the same offsets. > Specifically, this happens very frequently with new and old I2C modes on > Aspeed I2C. > > After that we migrate over to the register API and then add new mode > support. > > Thanks! > Joe > > Joe Komlodi (7): > hw/registerfields: Add shared fields macros > aspeed: i2c: Add ctrl_global_rsvd property > aspeed: i2c: Migrate to registerfields API > aspeed: i2c: Use reg array instead of individual vars > aspeed: i2c: Add new mode support > aspeed: i2c: Add PKT_DONE IRQ to trace > aspeed: i2c: Move regs and helpers to header file > > hw/arm/aspeed_ast2600.c | 2 + > hw/i2c/aspeed_i2c.c | 792 ++++++++++++++++++++++-------------- > hw/i2c/trace-events | 2 +- > include/hw/i2c/aspeed_i2c.h | 282 ++++++++++++- > include/hw/registerfields.h | 70 ++++ > 5 files changed, 828 insertions(+), 320 deletions(-) >