• Tony Lindgren's avatar
    ARM: dts: Add omap specific pinctrl defines to use padconf addresses · 43a348ea
    Tony Lindgren authored
    As we have one to three pinctrl-single instances for each SoC it is
    a bit confusing to configure the padconf register offset from the
    base of the padconf register base.
    
    Let's add macros that allow using the physical address of the
    padconf register directly, or in most cases, just the last 16-bits
    of the address as they are shown in the documentation.
    
    Note that most documentation shows two padconf registers for each
    32-bit address, so adding 2 to the documentation address is needed for
    the second padconf register as we treat them as 16-bit registers
    for omap3+.
    
    For example, omap36xx documentation shows sdmmc2_clk at 0x48002158,
    so we can just use the last 16-bits of that value:
    
    	pinctrl-single,pins = <
    		OMAP3_CORE1_IOPAD(0x2158, PIN_INPUT_PULLUP | MUX_MODE0)
    		...
    	>;
    
    And we don't need to separately calculate the offset from the 0x2030
    base:
    
    	pinctrl-single,pins = <
    		0x128 (PIN_INPUT_PULLUP | MUX_MODE0)
    		...
    	>;
    
    Naturally both ways of defining the registers can be used, and I'm
    not saying we should replace all the existing defines. But it may
    be handy to use these macros for new entries and when doing other
    related .dts file clean-up.
    Signed-off-by: default avatarLaurent Pinchart <laurent.pinchart@ideasonboard.com>
    [tony@atomide.com: updated for 3430 vs 3630 core2 range]
    Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
    43a348ea
omap.h 2.55 KB