2.6.24-rc1 remove architecture warning compiling fealnx on ia64
Subsystems (2)
PATCH 1/1 2.6.24-rc1 remove architecture warning compiling fealnx on ia64
The likelihood of one of these being used on an ia64 box is epsilon but it would still be nice to get rid of the warning:
#warning Processor architecture undefined!
when compiling on same. So, pick some likely similar architectures and follow those leads. Compile tested only.
---
drivers/net/fealnx.c +1 -1
@@ -866,7 +866,7 @@ static int netdev_open(struct net_device// np->bcrvalue=0x04 | 0x0x38; /* big-endian, 256 burst length */ np->bcrvalue =0x04 |0x10 ;/* big-endian, tx 8 burst length */ np->crvalue =0xe00 ;/* rx 128 burst length */ -#elif defined(__alpha__) || defined(__x86_64__) +#elif defined(__alpha__) || defined(__x86_64__) || defined(__ia64__)// 89/9/1 modify, // np->bcrvalue=0x38; /* little-endian, 256 burst length */ np->bcrvalue =0x10 ;/* little-endian, 8 burst length */
PATCH v2 1/1 2.6.24-rc1 remove architecture warning compiling fealnx on ia64
Quoted 15 lines · Rick Jones
The likelihood of one of these being used on an ia64 box is epsilon but it would still be nice to get rid of the warning:
#warning Processor architecture undefined!
when compiling on same. So, pick some likely similar architectures and follow those leads. Compile tested only.
Signed-off-by Rick Jones <[email protected]>---
diff -r35e54d4beaaddrivers/net/fealnx.c
drivers/net/fealnx.c static int netdev_open(struct net_device · line 872
Quoted 8 lines
drivers/net/fealnx.c +1
-1@@ -866,7 +866,7 @@ static int netdev_open(struct net_device// np->bcrvalue=0x04 | 0x0x38; /* big-endian, 256 burst length */ np->bcrvalue =0x04 |0x10 ;/* big-endian, tx 8 burst length */ np->crvalue =0xe00 ;/* rx 128 burst length */ -#elif defined(__alpha__) || defined(__x86_64__) +#elif defined(__alpha__) || defined(__x86_64__) || defined(__ia64__)// 89/9/1 modify, // np->bcrvalue=0x38; /* little-endian, 256 burst length */ np->bcrvalue =0x10 ;/* little-endian, 8 burst length */
Overall that poor driver is more than a little bit ugly :)
Looking at the large chain of highly-similar values, I would tend to prefer the attached patch...
Jeff
drivers/net/fealnx.c +12 -31
@@ -90,6 +90,7 @@ static int full_duplex[MAX_UNITS] = { -1, -1, -1, -1, -1, -1, -1, -1 };#include <asm/processor.h> /* Processor type for cache alignment. */ #include <asm/io.h> #include <asm/uaccess.h> +#include <asm/byteorder.h> /* These identify the driver base version and may not be removed. */ static char version[] =
@@ -861,40 +862,20 @@ static int netdev_open(struct net_device *dev)Wait the specified 50 PCI cycles after a reset by initializing Tx and Rx queues and the address filter list. FIXME (Ueimor): optimistic for alpha + posted writes ? */ -#if defined(__powerpc__) || defined(__sparc__) -// 89/9/1 modify, -// np->bcrvalue=0x04 | 0x0x38; /* big-endian, 256 burst length */ - np->bcrvalue =0x04 |0x10 ;/* big-endian, tx 8 burst length */ - np->crvalue =0xe00 ;/* rx 128 burst length */ -#elif defined(__alpha__) || defined(__x86_64__) -// 89/9/1 modify, -// np->bcrvalue=0x38; /* little-endian, 256 burst length */ - np->bcrvalue =0x10 ;/* little-endian, 8 burst length */ - np->crvalue =0xe00 ;/* rx 128 burst length */ -#elif defined(__i386__) -#if defined(MODULE ) -// 89/9/1 modify, -// np->bcrvalue=0x38; /* little-endian, 256 burst length */ + np->bcrvalue =0x10 ;/* little-endian, 8 burst length */ - np->crvalue =0xe00 ;/* rx 128 burst length */ -#else -/* When not a module we can work around broken '486 PCI boards. */ -#define x86 boot_cpu_data.x86 -// 89/9/1 modify, -// np->bcrvalue=(x86 <= 4 ? 0x10 : 0x38); - np->bcrvalue =0x10 ; - np->crvalue = (x86 <=4 ?0xa00 :0xe00 ); -if (x86 <=4 ) -printk (KERN_INFO "%s: This is a 386/486 PCI system, setting burst " -"length to %x.\n" , dev->name, (x86 <=4 ?0x10 :0x38 )); +#ifdef __BIG_ENDIAN + np->bcrvalue |=0x04 ;/* big-endian */ #endif -#else -// 89/9/1 modify, -// np->bcrvalue=0x38; - np->bcrvalue =0x10 ; - np->crvalue =0xe00 ;/* rx 128 burst length */ -#warning Processor architecture undefined! + +#if defined(__i386__) && !defined(MODULE ) +if (boot_cpu_data.x86 <=4 ) + np->crvalue =0xa00 ; + else#endif + np->crvalue =0xe00 ;/* rx 128 burst length */ + +// 89/12/29 add, // 90/1/16 modify, // np->imrvalue=FBE|TUNF|CNTOVF|RBU|TI|RI;
Quoted 1 line
Overall that poor driver is more than a little bit ugly :)
Well, given some of the code I've put into netperf over the years I wasn't going to be the first to cast a stone :) but I won't disagree with the assesment :)
Quoted 1 line
Looking at the large chain of highly-similar values, I would tend to prefer the attached patch...
That achieves my desired end result of no warning while compiling on ia64 so I'm happy with it. I suspect that may also get rid of a warning on parisc so I should be doubly pleased :)
rick jones