Fix the Granch driver
PATCH 4/11 Fix the Granch driver
Hi!
This patch constraints __asm__ usage in the Granch SBNI driver only to i386, which is what the assembly parts are for. It also first casts a pointer to long, to make sure it fits and avoid a warning. It also fixes a wrongly typed __setup() function.
drivers/net/wan/sbni.c +6 -3
@@ -155,7 +155,9 @@static int emancipate (struct net_device * );#endif +#ifdef __i386__#define ASM_CRC 1 +#endif static const char version[] ="Granch SBNI12 driver ver 5.0.1 Jun 22 2001 Denis I.Timofeev.\n" ;
@@ -361,7 +363,7 @@/* store MAC address (generate if that isn't known) */ *(u16 *)dev->dev_addr =htons (0x00ff ); *(u32 *)(dev->dev_addr +2 ) =htonl (0x01000000 | - ( (mac[num] ? mac[num] : (u32 )dev->priv) &0x00ffffff ) ); + ( (mac[num] ? mac[num] : (u32)((long )dev->priv)) &0x00ffffff ) );/* store link settings (speed, receive level ) */ nl->maxframe =DEFAULT_FRAME_LEN ;
@@ -1517,7 +1519,7 @@#else /* MODULE */ -void __init +static int __init sbni_setup (char *p ) {int n, parm;
@@ -1528,7 +1530,7 @@for ( n =0 , parm =0 ; *p && n <8 ; ) { (*dest[ parm ])[ n ] =simple_strtol ( p, &p,0 );if ( !*p || *p ==')' ) -return ; +return 1 ;if ( *p ==';' ) ++p, ++n, parm =0 ;else if ( *p++ !=',' )
@@ -1539,6 +1541,7 @@ } bad_param:printk (KERN_ERR "Error in sbni kernel parameter!\n" ); +return 0 ; }__setup ("sbni=" , sbni_setup );
Signature · 2 lines
Vojtech Pavlik SuSE Labs