27 Feb, 2009
40 commits
-
Firmware blob is little endian.
Compile-tested only.
Signed-off-by: Ben Hutchings
Signed-off-by: David S. Miller -
This patch injects myself into the TG3 MAINTAINERS entry.
Signed-off-by: Matt Carlson
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
This patch updates the copyright to 2009 and updates the version number
to 3.98.Signed-off-by: Matt Carlson
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
This patch adds version reporting for hardware selfboot.
Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
This patch adds code to report the DASH firmware version.
Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
This patch adds code to obtain the bootcode version for versions
of bootcode that do not use the new method.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
This patch reorganizes the firmware version routines in preparation for
the following patches.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
The remaining uses of tg3_nvram_read_swab() either intended to read the
data from NVRAM exactly as tg3_nvram_read_be32() did or hide deeper
interpretations of the data. For the former case, a direct replacement
of tg3_nvram_read_swab() with tg3_nvram_read_be32() is in order. For
the latter case, we remove tg3_nvram_read_swab() and document what the
code is really doing.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
Any software requesting NVRAM data as it exists on NVRAM is necessarily
requesting that the results be returned as a bytestream. A bytestream
data read in from the device can also be thought to be in big endian
format. Therefore, all the LE notations in the driver are mislabeled.
This patch converts all LE notations to BE notations, carefully
evaluating the surrounding code in the process.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
This patch removes the blind byteswap of NVRAM data as it is read in.
To preserve the logic at the call sites, this patch also inverts every
call to tg3_nvram_read() and tg3_nvram_read_swab(). The call swap gets
confusing within tg3_nvram_read_le() (LE is a misnomer), but the reader
should be able to convince himself / herself that the resulting behavior
is still unchanged.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
This patch moves all NVRAM routines earlier in the source file to
eliminate forward declarations.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
tg3_vlan_rx_register() touches the hardware if netif_running() returns
false. This patch fixes the problem.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
The ethtool interface has acquired some new enumerations since the
tg3 driver's tg3_set_settings() error checking code was written. The
error checking code is no longer complete. This patch rewrites the
error checking so that it is future-proofed.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
The hardware's MTU is configured so that it will accept packets whose
VLAN tag is left inline. This means that the hardware will also accept
other packets larger than the desired MTU size. This patch checks for
and discards packets that are larger than the requested MTU but are not
VLAN tagged frames.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
Commit 6833c043f9fc03696fde623914c4a0277df2a0bc introduced the phy
auto-powerdown capability. While the APD feature only works for 5761
and 5784 asic revisions, the (harmless portion of the) code was applied
to all 5705 and newer devices. However, the 5906 phy departs from the
usual design. This commit was interfering with the 5906's ability to
negotiate link against some switches. This patch corrects the problem.Signed-off-by: Matt Carlson
Signed-off-by: Benjamin Li
Signed-off-by: Michael Chan
Signed-off-by: David S. Miller -
Impact: Attribute functions with __acquires(...) resp. __releases(...).
Fix this sparse warnings:
net/wanrouter/wanproc.c:82:13: warning: context imbalance in 'r_start' - wrong count at exit
net/wanrouter/wanproc.c:103:13: warning: context imbalance in 'r_stop' - unexpected unlock
net/wanrouter/wanmain.c:765:13: warning: context imbalance in 'lock_adapter_irq' - wrong count at exit
net/wanrouter/wanmain.c:771:13: warning: context imbalance in 'unlock_adapter_irq' - unexpected unlockSigned-off-by: Hannes Eder
Signed-off-by: David S. Miller -
Impact: Attribute function with __releases(...)
Fix this sparse warning:
net/ipv4/inet_fragment.c:276:35: warning: context imbalance in 'inet_frag_find' - unexpected unlockSigned-off-by: Hannes Eder
Signed-off-by: David S. Miller -
Impact: Remove redundant variable declarations, resp. rename
inner scope variable.Fix this sparse warnings:
net/decnet/af_decnet.c:1252:40: warning: symbol 'skb' shadows an earlier one
net/decnet/af_decnet.c:1223:24: originally declared here
net/decnet/af_decnet.c:1582:29: warning: symbol 'val' shadows an earlier one
net/decnet/af_decnet.c:1527:22: originally declared here
net/decnet/dn_dev.c:687:21: warning: symbol 'err' shadows an earlier one
net/decnet/dn_dev.c:670:13: originally declared here
net/decnet/sysctl_net_decnet.c:182:21: warning: symbol 'len' shadows an earlier one
net/decnet/sysctl_net_decnet.c:173:16: originally declared hereSigned-off-by: Hannes Eder
Signed-off-by: David S. Miller -
Impact: Attribute functions with __acquires(...) resp. __releases(...).
Fix this sparse warnings:
net/decnet/dn_dev.c:1324:13: warning: context imbalance in 'dn_dev_seq_start' - wrong count at exit
net/decnet/dn_dev.c:1366:13: warning: context imbalance in 'dn_dev_seq_stop' - unexpected unlockSigned-off-by: Hannes Eder
Signed-off-by: David S. Miller -
Impact: Include header file.
Fix this sparse warning:
net/core/sysctl_net_core.c:123:32: warning: symbol 'net_core_path' was not declared. Should it be static?Signed-off-by: Hannes Eder
Signed-off-by: David S. Miller -
Impact: Use 'static const char[]' instead of 'static char[]', and
since the data is const now it can be placed in __initconst.Fix this warning:
net/appletalk/ddp.c: In function 'atalk_init':
net/appletalk/ddp.c:1894: warning: format not a string literal and no format argumentsSigned-off-by: Hannes Eder
Signed-off-by: David S. Miller -
Impact: Trust in the comment and add '__force' to the cast.
Fix this sparse warning:
net/9p/trans_fd.c:420:34: warning: cast adds address space to expression ()Signed-off-by: Hannes Eder
Signed-off-by: David S. Miller -
Impact: Attribute function with __acquires(...) resp. __releases(...).
Fix this sparse warnings:
net/802/tr.c:492:21: warning: context imbalance in 'rif_seq_start' - wrong count at exit
net/802/tr.c:519:13: warning: context imbalance in 'rif_seq_stop' - unexpected unlockSigned-off-by: Hannes Eder
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Acked-by: Jan "Yenya" Kasprzak
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller -
Remove some pointless conditionals before kfree_skb().
Signed-off-by: Wei Yongjun
Signed-off-by: David S. Miller