sky2: Set SKY2_HW_RAM_BUFFER in sky2_init
Subsystems (2)
PATCH 1/1 sky2: Set SKY2_HW_RAM_BUFFER in sky2_init
The SKY2_HW_RAM_BUFFER bit in hw->flags was checked in sky2_mac_init(),
before being set later in sky2_up().
Setting SKY2_HW_RAM_BUFFER in sky2_init() where other hw->flags are set
should avoid this problem recurring.
--- drivers/net/sky2.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
drivers/net/sky2.c +3 -1
@@ -1497,7 +1497,6 @@ static int sky2_up(struct net_device *dev)if (ramsize >0 ) {u32 rxspace; - hw->flags |=SKY2_HW_RAM_BUFFER ;pr_debug (PFX "%s: ram buffer %dK\n" , dev->name, ramsize);if (ramsize <16 ) rxspace = ramsize /2 ;
@@ -2926,6 +2925,9 @@ static int __devinit sky2_init(struct sky2_hw *hw) ++hw->ports; } +if (sky2_read8 (hw,B2_E_0 )) + hw->flags |=SKY2_HW_RAM_BUFFER ; +return 0 ; }
Signature · 1 line
1.5.6.5
Quoted 24 lines · On Mon, 21 Sep 2009 23:08:52 +0900 Mike McCormack <[email protected]> wrote:
The
SKY2_HW_RAM_BUFFERbit inhw->flagswas checked insky2_mac_init(),
before being set later insky2_up().Setting
SKY2_HW_RAM_BUFFERinsky2_init()where otherhw->flagsare set
should avoid this problem recurring.Signed-off-by Mike McCormack <[email protected]>--- drivers/net/sky2.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)drivers/net/sky2.c +0
-1@@ -1497,7 +1497,6 @@ static int sky2_up(struct net_device *dev)if (ramsize >0 ) {u32 rxspace; - hw->flags |=SKY2_HW_RAM_BUFFER ;pr_debug (PFX "%s: ram buffer %dK\n" , dev->name, ramsize);if (ramsize <16 ) rxspace = ramsize /2 ;
drivers/net/sky2.c static int __devinit sky2_init(struct sky2_hw *hw) · line 2933
Quoted 9 lines
drivers/net/sky2.c +3
-0@@ -2926,6 +2925,9 @@ static int __devinit sky2_init(struct sky2_hw *hw) ++hw->ports; } +if (sky2_read8 (hw,B2_E_0 )) + hw->flags |=SKY2_HW_RAM_BUFFER ; +return 0 ; }
This should go to stable tree as well.
David Miller
maintainerFrom: Mike McCormack <[email protected]>
Date: Mon, 21 Sep 2009 23:08:52 +0900
Quoted 7 lines
The
SKY2_HW_RAM_BUFFERbit inhw->flagswas checked insky2_mac_init(),
before being set later insky2_up().Setting
SKY2_HW_RAM_BUFFERinsky2_init()where otherhw->flagsare set
should avoid this problem recurring.Signed-off-by Mike McCormack <[email protected]>
Applied and queued up for -stable, thanks.