via-velocity: don't annotate MAC registers as packed
On ARM, memory accesses through packed pointers behave in unexpected ways in GCC releases 4.3 and higher; see https://lkml.org/lkml/2011/2/2/163 for discussion. In this particular case, 32-bit I/O registers are accessed bytewise, causing incorrect setting of the DMA address registers which in turn leads to an error interrupt storm that brings the system to a halt. Since the mac_regs structure does not need any packing anyway, this patch simply removes the attribute to fix the issue. Signed-off-by: Ulrich Hecht <uli@suse.de> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
1ba37c518f
commit
d10358de8d
1 changed files with 1 additions and 1 deletions
|
@ -1096,7 +1096,7 @@ struct mac_regs {
|
|||
|
||||
volatile __le16 PatternCRC[8]; /* 0xB0 */
|
||||
volatile __le32 ByteMask[4][4]; /* 0xC0 */
|
||||
} __packed;
|
||||
};
|
||||
|
||||
|
||||
enum hw_mib {
|
||||
|
|
Loading…
Add table
Reference in a new issue