Date: Wed, 14 Dec 2016 16:05:48 +0000 (UTC) From: Andriy Gapon <avg@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r310065 - stable/11/sys/dev/smbus Message-ID: <201612141605.uBEG5mgV090087@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: avg Date: Wed Dec 14 16:05:48 2016 New Revision: 310065 URL: https://svnweb.freebsd.org/changeset/base/310065 Log: MFC r308527: smb: fix SMB_READB, SMB_READW, SMB_PCALL to work as documented Modified: stable/11/sys/dev/smbus/smb.c stable/11/sys/dev/smbus/smb.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/smbus/smb.c ============================================================================== --- stable/11/sys/dev/smbus/smb.c Wed Dec 14 16:04:04 2016 (r310064) +++ stable/11/sys/dev/smbus/smb.c Wed Dec 14 16:05:48 2016 (r310065) @@ -41,7 +41,9 @@ #include "smbus_if.h" -#define BUFSIZE 1024 +#define SMB_OLD_READB _IOW('i', 7, struct smbcmd) +#define SMB_OLD_READW _IOW('i', 8, struct smbcmd) +#define SMB_OLD_PCALL _IOW('i', 9, struct smbcmd) struct smb_softc { device_t sc_dev; @@ -224,7 +226,9 @@ smbioctl(struct cdev *dev, u_long cmd, c s->cmd, s->wdata.word)); break; + case SMB_OLD_READB: case SMB_READB: + /* NB: for SMB_OLD_READB the read data goes to rbuf only. */ error = smbus_error(smbus_readb(parent, s->slave, s->cmd, &s->rdata.byte)); if (error) @@ -235,7 +239,9 @@ smbioctl(struct cdev *dev, u_long cmd, c } break; + case SMB_OLD_READW: case SMB_READW: + /* NB: for SMB_OLD_READW the read data goes to rbuf only. */ error = smbus_error(smbus_readw(parent, s->slave, s->cmd, &s->rdata.word)); if (error) @@ -248,7 +254,9 @@ smbioctl(struct cdev *dev, u_long cmd, c } break; + case SMB_OLD_PCALL: case SMB_PCALL: + /* NB: for SMB_OLD_PCALL the read data goes to rbuf only. */ error = smbus_error(smbus_pcall(parent, s->slave, s->cmd, s->wdata.word, &s->rdata.word)); if (error) Modified: stable/11/sys/dev/smbus/smb.h ============================================================================== --- stable/11/sys/dev/smbus/smb.h Wed Dec 14 16:04:04 2016 (r310064) +++ stable/11/sys/dev/smbus/smb.h Wed Dec 14 16:05:48 2016 (r310065) @@ -66,11 +66,10 @@ 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) -#define SMB_READW _IOW('i', 8, struct smbcmd) -#define SMB_PCALL _IOW('i', 9, struct smbcmd) +#define SMB_READB _IOWR('i', 7, struct smbcmd) +#define SMB_READW _IOWR('i', 8, struct smbcmd) +#define SMB_PCALL _IOWR('i', 9, struct smbcmd) #define SMB_BWRITE _IOW('i', 10, struct smbcmd) -#define SMB_OLD_BREAD _IOW('i', 11, struct smbcmd) #define SMB_BREAD _IOWR('i', 11, struct smbcmd) #define SMB_TRANS _IOWR('i', 12, struct smbcmd)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201612141605.uBEG5mgV090087>