smb - Increase max block size from 32 to 1024
authorMatthew Dillon <dillon@apollo.backplane.com>
Thu, 14 Aug 2014 17:36:03 +0000 (10:36 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Thu, 14 Aug 2014 17:36:03 +0000 (10:36 -0700)
* The SMB API can be used for I2C transactions.  Do not impose the
  SMB2.0 block size limit on transfers.

sys/dev/smbus/smb/smb.h

index 50501e8..c1b6af4 100644 (file)
@@ -55,8 +55,11 @@ struct smbcmd {
 
 /*
  * SMBus spec 2.0 says block transfers may be at most 32 bytes.
+ * We usse SMBus for i2c as well, make the size limit something more
+ * reasonable.  Keep in mind that a char buf array is declared on the
+ * kernel stack.
  */
-#define SMB_MAXBLOCKSIZE       32
+#define SMB_MAXBLOCKSIZE       1024
 
 #define SMB_QUICK_WRITE        _IOW('i', 1, struct smbcmd)
 #define SMB_QUICK_READ _IOW('i', 2, struct smbcmd)