[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 05/19] i2c:pm_smbus: Make the I2C block read command
From: |
minyard |
Subject: |
[Qemu-devel] [PATCH 05/19] i2c:pm_smbus: Make the I2C block read command read-only |
Date: |
Fri, 30 Dec 2016 09:21:36 -0600 |
From: Corey Minyard <address@hidden>
It did have write capability, but the manual says the behavior
with write enabled is undefined. So just set an error in this
case.
Signed-off-by: Corey Minyard <address@hidden>
---
hw/i2c/pm_smbus.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/hw/i2c/pm_smbus.c b/hw/i2c/pm_smbus.c
index 679edbc..e7a8e92 100644
--- a/hw/i2c/pm_smbus.c
+++ b/hw/i2c/pm_smbus.c
@@ -56,7 +56,7 @@
#define PROT_WORD_DATA 3
#define PROT_PROC_CALL 4
#define PROT_BLOCK_DATA 5
-#define PROT_I2C_BLOCK_DATA 6
+#define PROT_I2C_BLOCK_READ 6
/*#define DEBUG*/
@@ -113,7 +113,7 @@ static void smb_transaction(PMSMBus *s)
goto done;
}
break;
- case PROT_I2C_BLOCK_DATA:
+ case PROT_I2C_BLOCK_READ:
if (read) {
int xfersize = s->smb_data0;
if (xfersize > sizeof(s->smb_data)) {
@@ -123,9 +123,8 @@ static void smb_transaction(PMSMBus *s)
xfersize, false, true);
goto data8;
} else {
- ret = smbus_write_block(bus, addr, cmd, s->smb_data, s->smb_data0,
- false);
- goto done;
+ /* The manual says the behavior is undefined, just set DEV_ERR. */
+ goto error;
}
break;
default:
--
2.7.4
- [Qemu-devel] [PATCH 01/18] Patch set to get full IPMI over SMBus, minyard, 2016/12/30
- [Qemu-devel] [PATCH 02/19] i2c-smbus: Use a int for return, minyard, 2016/12/30
- [Qemu-devel] [PATCH 05/19] i2c:pm_smbus: Make the I2C block read command read-only,
minyard <=
- [Qemu-devel] [PATCH 17/19] i2c: Allow SMBus device to NAK start events, minyard, 2016/12/30
- [Qemu-devel] [PATCH 01/19] i2c: Allow I2C devices to NAK start events, minyard, 2016/12/30
- [Qemu-devel] [PATCH 03/19] i2c:pm_smbus: Clean up some style issues, minyard, 2016/12/30
- [Qemu-devel] [PATCH 08/19] i2c:pm_smbus: Add interrupt handling, minyard, 2016/12/30
- [Qemu-devel] [PATCH 09/19] i2c:pm_smbus: Add the ability to force block transfer enable, minyard, 2016/12/30
- [Qemu-devel] [PATCH 16/19] isa: Add an irq device., minyard, 2016/12/30
- [Qemu-devel] [PATCH 19/19] ipmi_smbus: Add alert capability to the IPMI SSIF code, minyard, 2016/12/30
- [Qemu-devel] [PATCH 04/19] i2c:pm_smbus: Fix the semantics of block I2C transfers, minyard, 2016/12/30
- [Qemu-devel] [PATCH 12/19] ipmi: Fix SSIF ACPI handling to use the right CRS, minyard, 2016/12/30
- [Qemu-devel] [PATCH 06/19] i2c:pm_smbus: Add block transfer capability, minyard, 2016/12/30