diff options
author | mbr <mbr@FreeBSD.org> | 2003-10-05 19:57:10 +0000 |
---|---|---|
committer | mbr <mbr@FreeBSD.org> | 2003-10-05 19:57:10 +0000 |
commit | 11b574e32bd87add2e3ae54eb59ff9f7bf1dabb6 (patch) | |
tree | 4a64fbae4d1af750d11e3aa40d55dfc554aedf94 /sys/dev/dc/if_dcreg.h | |
parent | 24155b3ff16b48ef47ef5d677c0e73d9c3d150f3 (diff) | |
download | FreeBSD-src-11b574e32bd87add2e3ae54eb59ff9f7bf1dabb6.zip FreeBSD-src-11b574e32bd87add2e3ae54eb59ff9f7bf1dabb6.tar.gz |
Ignore CSR13, CSR14, CSR15 'Media Specific Data' registers
for 21143 based cards which use SIA mode.
This fixes 10mbit mode for ZNYX ZX346Q cards and other
21143 based cards.
PR: 32118
Submitted by: Rene de Vries <rene@tunix.nl>
Geert Jan de Groot <GeertJan.deGroot@tunix.nl>
Obtained from: BSDI
MFC after: 2 weeks
Diffstat (limited to 'sys/dev/dc/if_dcreg.h')
-rw-r--r-- | sys/dev/dc/if_dcreg.h | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/sys/dev/dc/if_dcreg.h b/sys/dev/dc/if_dcreg.h index 204b1d1..14912b5 100644 --- a/sys/dev/dc/if_dcreg.h +++ b/sys/dev/dc/if_dcreg.h @@ -1171,9 +1171,17 @@ struct dc_eblock_hdr { struct dc_eblock_sia { struct dc_eblock_hdr dc_sia_hdr; u_int8_t dc_sia_code; - u_int8_t dc_sia_mediaspec[6]; /* CSR13, CSR14, CSR15 */ - u_int8_t dc_sia_gpio_ctl[2]; - u_int8_t dc_sia_gpio_dat[2]; + union { + struct dc_sia_ext { /* if (dc_sia_code & DC_SIA_CODE_EXT) */ + u_int8_t dc_sia_mediaspec[6]; /* CSR13, CSR14, CSR15 */ + u_int8_t dc_sia_gpio_ctl[2]; + u_int8_t dc_sia_gpio_dat[2]; + } dc_sia_ext; + struct dc_sia_noext { + u_int8_t dc_sia_gpio_ctl[2]; + u_int8_t dc_sia_gpio_dat[2]; + } dc_sia_noext; + } dc_un; }; #define DC_SIA_CODE_10BT 0x00 |