[PATCH v2 1/2] ARM: dts: Add omap specific pinctrl defines to use padconf addresses

Tony Lindgren tony at atomide.com
Tue Jan 7 18:20:18 EST 2014


* Laurent Pinchart <laurent.pinchart at ideasonboard.com> [140107 15:10]:
> Hi Tony,
> 
> On Tuesday 07 January 2014 14:30:21 Tony Lindgren wrote:
> > * Laurent Pinchart <laurent.pinchart at ideasonboard.com> [131220 07:52]:
> > > From: Tony Lindgren <tony at atomide.com>
> > > +/*
> > > + * Macros to allow using the absolute physical address instead of the
> > > + * padconf registers instead of the offset from padconf base.
> > > + */
> > > +#define OMAP_IOPAD_OFFSET(pa, offset)	(((pa) & 0xffff) - (offset))
> > > +
> > > +#define OMAP2420_CORE_IOPAD(pa, val)	OMAP_IOPAD_OFFSET((pa), 0x0030)
> > > (val)
> > > +#define OMAP2430_CORE_IOPAD(pa, val)	OMAP_IOPAD_OFFSET((pa), 0x2030)
> > > (val)
> > > +#define OMAP3_CORE1_IOPAD(pa, val)	OMAP_IOPAD_OFFSET((pa), 0x2030) (val)
> > > +#define OMAP3_CORE2_IOPAD(pa, val)	OMAP_IOPAD_OFFSET((pa), 0x25a0) (val)
> > 
> > Sorry for the delay on these, I'm only now getting back to looking
> > at all the emails since the holidays :)
> > 
> > After looking at Nishant's omap3 pinctrl core2 patch, looks like we need
> > to have separate OMAP3430_CORE2_IOPAD and OMAP3630_CORE2_IOPAD defines.
> 
> That was my first impression as well, but I think we actually don't need to. 
> The OMAP3430 just has no useful registers in the 0x25a0 - 0x25d7 area, so we 
> can make the CORE2 macro span that for both 3430 and 3630.

Hmm well I already did it :) In general my gut feeling is along the lines
what you're saying, I think the padconf registers are all there on all
omap3 SoCs, but only some of the padconf registers are used depending on
the SoC revision and package.

Anyways, it should not hurt to have the padconf registers defined the
same way as the documentation has them, at least we may get some extra
warnings if people try to configure unused registers for 3430.
 
Regards,

Tony



More information about the linux-arm-kernel mailing list