Message ID | 20220627195506.403715-10-pdel@fb.com |
---|---|
State | New |
Headers | show |
Series | aspeed: Add I2C new register DMA slave mode support | expand |
On 6/27/22 21:55, Peter Delevoryas wrote: > Signed-off-by: Peter Delevoryas <pdel@fb.com> is that a bug ? > --- > hw/i2c/pmbus_device.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/i2c/pmbus_device.c b/hw/i2c/pmbus_device.c > index 62885fa6a1..efddc36fd9 100644 > --- a/hw/i2c/pmbus_device.c > +++ b/hw/i2c/pmbus_device.c > @@ -1088,6 +1088,7 @@ static int pmbus_write_data(SMBusDevice *smd, uint8_t *buf, uint8_t len) > > if (pmdev->code == PMBUS_PAGE) { > pmdev->page = pmbus_receive8(pmdev); > + pmdev->out_buf_len = 0; > return 0; > } >
> On Jun 27, 2022, at 11:51 PM, Cédric Le Goater <clg@kaod.org> wrote: > > On 6/27/22 21:55, Peter Delevoryas wrote: >> Signed-off-by: Peter Delevoryas <pdel@fb.com> > > is that a bug ? I believe so yes, although I don’t really have any experience with real pmbus devices. But, I would assume that when you’re switching pages, you wouldn’t retain any remaining data from the transfer buffer of the previous page, because that would return data from the previous page. Here’s the tag I should have included: Fixes: 3746d5c15e70570b ("hw/i2c: add support for PMBus”) > > >> --- >> hw/i2c/pmbus_device.c | 1 + >> 1 file changed, 1 insertion(+) >> diff --git a/hw/i2c/pmbus_device.c b/hw/i2c/pmbus_device.c >> index 62885fa6a1..efddc36fd9 100644 >> --- a/hw/i2c/pmbus_device.c >> +++ b/hw/i2c/pmbus_device.c >> @@ -1088,6 +1088,7 @@ static int pmbus_write_data(SMBusDevice *smd, uint8_t *buf, uint8_t len) >> if (pmdev->code == PMBUS_PAGE) { >> pmdev->page = pmbus_receive8(pmdev); >> + pmdev->out_buf_len = 0; >> return 0; >> } >> >
diff --git a/hw/i2c/pmbus_device.c b/hw/i2c/pmbus_device.c index 62885fa6a1..efddc36fd9 100644 --- a/hw/i2c/pmbus_device.c +++ b/hw/i2c/pmbus_device.c @@ -1088,6 +1088,7 @@ static int pmbus_write_data(SMBusDevice *smd, uint8_t *buf, uint8_t len) if (pmdev->code == PMBUS_PAGE) { pmdev->page = pmbus_receive8(pmdev); + pmdev->out_buf_len = 0; return 0; }
Signed-off-by: Peter Delevoryas <pdel@fb.com> --- hw/i2c/pmbus_device.c | 1 + 1 file changed, 1 insertion(+)