diff options
author | Guo-Fu Tseng <cooldavid@cooldavid.org> | 2008-10-08 22:48:58 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-10-08 22:51:31 -0400 |
commit | a821ebe580c535e3e8e354c6ab10516a0e95e202 (patch) | |
tree | b47d39b17146c16b358f8e01e1dc7709564b4ee8 /drivers/net/jme.h | |
parent | 0ce2f03bade2046d6eb6184d52d065688382d7bd (diff) |
jme: Added half-duplex mode and IPv6 RSS fix
1. Set bit 5 of GPREG1 to 1 to enable hardware workaround for half-duplex
mode. Which the MAC processor generates CRS/COL by itself instead of
receive it from PHY processor.
2. Set bit 6 of GPREG1 to 1 to enable hardware workaround that masks the
MAC processor working right while calculating IPv6 RSS in 10/100
mode.
3. Group the workaround codes all together.
Signed-off-by: Guo-Fu Tseng <cooldavid@cooldavid.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/jme.h')
-rw-r--r-- | drivers/net/jme.h | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/drivers/net/jme.h b/drivers/net/jme.h index b29688431a6d..9fdf20a9a820 100644 --- a/drivers/net/jme.h +++ b/drivers/net/jme.h | |||
@@ -964,6 +964,36 @@ enum jme_gpreg0_vals { | |||
964 | }; | 964 | }; |
965 | 965 | ||
966 | /* | 966 | /* |
967 | * General Purpose REG-1 | ||
968 | * Note: All theses bits defined here are for | ||
969 | * Chip mode revision 0x11 only | ||
970 | */ | ||
971 | enum jme_gpreg1_masks { | ||
972 | GPREG1_INTRDELAYUNIT = 0x00000018, | ||
973 | GPREG1_INTRDELAYENABLE = 0x00000007, | ||
974 | }; | ||
975 | |||
976 | enum jme_gpreg1_vals { | ||
977 | GPREG1_RSSPATCH = 0x00000040, | ||
978 | GPREG1_HALFMODEPATCH = 0x00000020, | ||
979 | |||
980 | GPREG1_INTDLYUNIT_16NS = 0x00000000, | ||
981 | GPREG1_INTDLYUNIT_256NS = 0x00000008, | ||
982 | GPREG1_INTDLYUNIT_1US = 0x00000010, | ||
983 | GPREG1_INTDLYUNIT_16US = 0x00000018, | ||
984 | |||
985 | GPREG1_INTDLYEN_1U = 0x00000001, | ||
986 | GPREG1_INTDLYEN_2U = 0x00000002, | ||
987 | GPREG1_INTDLYEN_3U = 0x00000003, | ||
988 | GPREG1_INTDLYEN_4U = 0x00000004, | ||
989 | GPREG1_INTDLYEN_5U = 0x00000005, | ||
990 | GPREG1_INTDLYEN_6U = 0x00000006, | ||
991 | GPREG1_INTDLYEN_7U = 0x00000007, | ||
992 | |||
993 | GPREG1_DEFAULT = 0x00000000, | ||
994 | }; | ||
995 | |||
996 | /* | ||
967 | * Interrupt Status Bits | 997 | * Interrupt Status Bits |
968 | */ | 998 | */ |
969 | enum jme_interrupt_bits { | 999 | enum jme_interrupt_bits { |