On Tue, Mar 01, 2022 at 04:23:02PM -0800, Titus Rwantare wrote: > Signed-off-by: Titus Rwantare <tit...@google.com> > --- > MAINTAINERS | 10 ++++++++++ > hw/i2c/pmbus_device.c | 18 +++++++++--------- > 2 files changed, 19 insertions(+), 9 deletions(-)
This makes sense, but can you split it into two patches and give a bit more explaination about the uint handling. Usually patches without explaination are frowned upon, even if it's kind of obvious. -corey > > diff --git a/MAINTAINERS b/MAINTAINERS > index fa8adc2618..3601984b5d 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -3135,6 +3135,16 @@ F: include/hw/i2c/smbus_master.h > F: include/hw/i2c/smbus_slave.h > F: include/hw/i2c/smbus_eeprom.h > > +PMBus > +M: Titus Rwantare <tit...@google.com> > +S: Maintained > +F: hw/i2c/pmbus_device.c > +F: hw/sensor/adm1272.c > +F: hw/sensor/max34451.c > +F: include/hw/i2c/pmbus_device.h > +F: tests/qtest/adm1272-test.c > +F: tests/qtest/max34451-test.c > + > Firmware schema specifications > M: Philippe Mathieu-Daudé <f4...@amsat.org> > R: Daniel P. Berrange <berra...@redhat.com> > diff --git a/hw/i2c/pmbus_device.c b/hw/i2c/pmbus_device.c > index 6eeb0731d7..3beb02afad 100644 > --- a/hw/i2c/pmbus_device.c > +++ b/hw/i2c/pmbus_device.c > @@ -89,16 +89,16 @@ void pmbus_send_string(PMBusDevice *pmdev, const char > *data) > } > > > -static uint64_t pmbus_receive_uint(const uint8_t *buf, uint8_t len) > +static uint64_t pmbus_receive_uint(PMBusDevice *pmdev) > { > uint64_t ret = 0; > > /* Exclude command code from return value */ > - buf++; > - len--; > + pmdev->in_buf++; > + pmdev->in_buf_len--; > > - for (int i = len - 1; i >= 0; i--) { > - ret = ret << 8 | buf[i]; > + for (int i = pmdev->in_buf_len - 1; i >= 0; i--) { > + ret = ret << 8 | pmdev->in_buf[i]; > } > return ret; > } > @@ -110,7 +110,7 @@ uint8_t pmbus_receive8(PMBusDevice *pmdev) > "%s: length mismatch. Expected 1 byte, got %d bytes\n", > __func__, pmdev->in_buf_len - 1); > } > - return pmbus_receive_uint(pmdev->in_buf, pmdev->in_buf_len); > + return pmbus_receive_uint(pmdev); > } > > uint16_t pmbus_receive16(PMBusDevice *pmdev) > @@ -120,7 +120,7 @@ uint16_t pmbus_receive16(PMBusDevice *pmdev) > "%s: length mismatch. Expected 2 bytes, got %d > bytes\n", > __func__, pmdev->in_buf_len - 1); > } > - return pmbus_receive_uint(pmdev->in_buf, pmdev->in_buf_len); > + return pmbus_receive_uint(pmdev); > } > > uint32_t pmbus_receive32(PMBusDevice *pmdev) > @@ -130,7 +130,7 @@ uint32_t pmbus_receive32(PMBusDevice *pmdev) > "%s: length mismatch. Expected 4 bytes, got %d > bytes\n", > __func__, pmdev->in_buf_len - 1); > } > - return pmbus_receive_uint(pmdev->in_buf, pmdev->in_buf_len); > + return pmbus_receive_uint(pmdev); > } > > uint64_t pmbus_receive64(PMBusDevice *pmdev) > @@ -140,7 +140,7 @@ uint64_t pmbus_receive64(PMBusDevice *pmdev) > "%s: length mismatch. Expected 8 bytes, got %d > bytes\n", > __func__, pmdev->in_buf_len - 1); > } > - return pmbus_receive_uint(pmdev->in_buf, pmdev->in_buf_len); > + return pmbus_receive_uint(pmdev); > } > > static uint8_t pmbus_out_buf_pop(PMBusDevice *pmdev) > -- > 2.35.1.616.g0bdcbb4464-goog >