mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-19 10:53:58 +00:00
Fix a bug in the driver -- the chip will always include the CRC
in the received packet size, but the upper level routines want the length without it. Reported-by: Doug Ambrisko, ambrisko@freebsd.org
This commit is contained in:
parent
fd173deae3
commit
254d9d5f73
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=90339
@ -307,10 +307,11 @@ struct sis_desc {
|
|||||||
#define SIS_CMDSTS_MORE 0x40000000
|
#define SIS_CMDSTS_MORE 0x40000000
|
||||||
#define SIS_CMDSTS_OWN 0x80000000
|
#define SIS_CMDSTS_OWN 0x80000000
|
||||||
|
|
||||||
|
#define SIS_CRC_SIZE 0x4
|
||||||
#define SIS_LASTDESC(x) (!((x)->sis_ctl & SIS_CMDSTS_MORE)))
|
#define SIS_LASTDESC(x) (!((x)->sis_ctl & SIS_CMDSTS_MORE)))
|
||||||
#define SIS_OWNDESC(x) ((x)->sis_ctl & SIS_CMDSTS_OWN)
|
#define SIS_OWNDESC(x) ((x)->sis_ctl & SIS_CMDSTS_OWN)
|
||||||
#define SIS_INC(x, y) { if (++(x) == y) x = 0; }
|
#define SIS_INC(x, y) { if (++(x) == y) x = 0; }
|
||||||
#define SIS_RXBYTES(x) ((x)->sis_ctl & SIS_CMDSTS_BUFLEN)
|
#define SIS_RXBYTES(x) (((x)->sis_ctl & SIS_CMDSTS_BUFLEN) - SIS_CRC_SIZE)
|
||||||
|
|
||||||
#define SIS_RXSTAT_COLL 0x00010000
|
#define SIS_RXSTAT_COLL 0x00010000
|
||||||
#define SIS_RXSTAT_LOOPBK 0x00020000
|
#define SIS_RXSTAT_LOOPBK 0x00020000
|
||||||
|
Loading…
Reference in New Issue
Block a user