summaryrefslogtreecommitdiffstats
path: root/sys/dev/smbus/smb.h
diff options
context:
space:
mode:
authorjoerg <joerg@FreeBSD.org>2004-05-16 21:18:45 +0000
committerjoerg <joerg@FreeBSD.org>2004-05-16 21:18:45 +0000
commitb2733ff0de44a8bcc65ae3f60b4f20c8e1c0229f (patch)
tree77609790693fa3195935ee0f4fa2a5918be33464 /sys/dev/smbus/smb.h
parent70bc2f6a820c79a6d64db18ea981c09ffa98f005 (diff)
downloadFreeBSD-src-b2733ff0de44a8bcc65ae3f60b4f20c8e1c0229f.zip
FreeBSD-src-b2733ff0de44a8bcc65ae3f60b4f20c8e1c0229f.tar.gz
You wouldn't believe a driver could survive doing userland IO without
properly using copyin/copyout for more than 5 years? This one did. :-) Properly encapsulate all user<->kernel data transfers using copy{in,out}. MFC after: 1 month
Diffstat (limited to 'sys/dev/smbus/smb.h')
-rw-r--r--sys/dev/smbus/smb.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/dev/smbus/smb.h b/sys/dev/smbus/smb.h
index 7ed0a82..387515f 100644
--- a/sys/dev/smbus/smb.h
+++ b/sys/dev/smbus/smb.h
@@ -49,10 +49,15 @@ struct smbcmd {
} data;
};
+/*
+ * SMBus spec 2.0 says block transfers may be at most 32 bytes.
+ */
+#define SMB_MAXBLOCKSIZE 32
+
#define SMB_QUICK_WRITE _IOW('i', 1, struct smbcmd)
#define SMB_QUICK_READ _IOW('i', 2, struct smbcmd)
#define SMB_SENDB _IOW('i', 3, struct smbcmd)
-#define SMB_RECVB _IOW('i', 4, struct smbcmd)
+#define SMB_RECVB _IOWR('i', 4, struct smbcmd)
#define SMB_WRITEB _IOW('i', 5, struct smbcmd)
#define SMB_WRITEW _IOW('i', 6, struct smbcmd)
#define SMB_READB _IOW('i', 7, struct smbcmd)
OpenPOWER on IntegriCloud