On Wednesday 21 May 2014 6:24:24 pm Greg Ungerer wrote:
> On 22/05/14 09:00, [email protected] wrote:
> > From: Steven King <[email protected]>
> > 
> > ---
> >  arch/m68k/include/asm/m54xxsim.h |   12 +++++++++---
> >  arch/m68k/include/asm/mcfgpio.h  |   12 ++++++++----
> >  2 files changed, 17 insertions(+), 7 deletions(-)
> > 
> > diff --git a/arch/m68k/include/asm/m54xxsim.h 
> > b/arch/m68k/include/asm/m54xxsim.h
> > index d3bd838..a5fbd17 100644
> > --- a/arch/m68k/include/asm/m54xxsim.h
> > +++ b/arch/m68k/include/asm/m54xxsim.h
> > @@ -55,9 +55,15 @@
> >  /*
> >   * Generic GPIO support
> >   */
> > -#define MCFGPIO_PIN_MAX            0       /* I am too lazy to count */
> > -#define MCFGPIO_IRQ_MAX            -1
> > -#define MCFGPIO_IRQ_VECBASE        -1
> > +#define MCFGPIO_PODR               (MCF_MBAR + 0xA00)
> > +#define MCFGPIO_PDDR               (MCF_MBAR + 0xA10)
> > +#define MCFGPIO_PPDR               (MCF_MBAR + 0xA20)
> > +#define MCFGPIO_SETR               (MCF_MBAR + 0xA20)
> > +#define MCFGPIO_CLRR               (MCF_MBAR + 0xA30)
> > +
> > +#define MCFGPIO_PIN_MAX            136     /* 128 gpio + 8 eport */
> > +#define MCFGPIO_IRQ_MAX            8
> > +#define MCFGPIO_IRQ_VECBASE        MCFINT_VECBASE
> >  
> >  /*
> >   * EDGE Port support.
> > diff --git a/arch/m68k/include/asm/mcfgpio.h 
> > b/arch/m68k/include/asm/mcfgpio.h
> > index c41ebf4..66203c3 100644
> > --- a/arch/m68k/include/asm/mcfgpio.h
> > +++ b/arch/m68k/include/asm/mcfgpio.h
> > @@ -139,7 +139,8 @@ static inline void gpio_free(unsigned gpio)
> >  
> >  #if defined(CONFIG_M520x) || defined(CONFIG_M523x) || \
> >      defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
> > -    defined(CONFIG_M53xx) || defined(CONFIG_M5441x)
> > +    defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \
> > +    defined(CONFIG_M5441x)
> >  /*
> >   * These parts have an 'Edge' Port module (external interrupt/GPIO) which 
> > uses
> >   * read-modify-write to change an output and a GPIO module which has 
> > separate
> > @@ -195,7 +196,8 @@ static inline u32 __mcfgpio_ppdr(unsigned gpio)
> >             return MCFSIM2_GPIO1READ;
> >  #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \
> >        defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
> > -      defined(CONFIG_M53xx) || defined(CONFIG_M5441x)
> > +      defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \
> > +      defined(CONFIG_M5441x)
> 
> Not proposing for this patch... But I wonder if this could be done
> a little more cleanly by basing the #elif on the presence of the
> MCFEPORT_EPPDR definition.
> 
> Same goes for the other #ifdef/#elif clauses.
> 
> Just a thought.

Hmm, I like this. I like the idea of a check for the presence of a feature 
rather than a config option there, then all that would be needed to add support 
for a new processor  (m54445?) would be to make sure the correct definitions 
are present in the m5xxxsim.h.  I'll take a look at it...
--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to