Subject: [PATCH 1/4] ARM: sa1100: fix sa1100 after sparse irq conversion

From: [email-masked] (Rob Herring)
Date: Thu, 23 Feb 2012 16:24:07 -0600

On 02/23/2012 04:11 PM, Russell King - ARM Linux wrote:
> On Thu, Feb 16, 2012 at 09:32:11PM -0600, Rob Herring wrote:
>> diff --git a/drivers/net/ethernet/smsc/smc91x.c b/drivers/net/ethernet/smsc/smc91x.c
>> index 0dba050..0c16c0a 100644
>> --- a/drivers/net/ethernet/smsc/smc91x.c
>> +++ b/drivers/net/ethernet/smsc/smc91x.c
>> @@ -89,6 +89,10 @@ static const char version[] =
>>  
>>  #include <asm/io.h>
>>  
>> +#if defined(CONFIG_SA1100_ASSABET)
>> +#include <mach/neponset.h>
>> +#endif
>> +
>>  #include "smc91x.h"
>>  
>>  #ifndef SMC_NOWAIT
> 
> Why do you need this include when smc91x.h just below does this:
> 
> #elif defined(CONFIG_SA1100_ASSABET)
> 
> #include <mach/neponset.h>
> 
> /* We can only do 8-bit reads and writes in the static memory space. */
> #define SMC_CAN_USE_8BIT        1
> #define SMC_CAN_USE_16BIT       0
> #define SMC_CAN_USE_32BIT       0
> #define SMC_NOWAIT              1
> 
> /* The first two address lines aren't connected... */
> #define SMC_IO_SHIFT            2
> 
> #define SMC_inb(a, r)           readb((a) + (r))
> #define SMC_outb(v, a, r)       writeb(v, (a) + (r))
> #define SMC_insb(a, r, p, l)    readsb((a) + (r), p, (l))
> #define SMC_outsb(a, r, p, l)   writesb((a) + (r), p, (l))
> #define SMC_IRQ_FLAGS           (-1)    /* from resource */
> 
> My guess is you have PLEB enabled which overrides this definition.  Yes,
> this driver is rather horrible in this regard...

Yes, that's right. I assumed I had broken things and neponset.h was no
longer getting implicitly included. I guess it's not really a valid
config to have both enabled if you want working networking. What do you
want to do here?

Rob