diff mbox

[RESEND,v2,1/2] arm/dts: Add AM33XX basic pinctrl support

Message ID 1343144719-26352-2-git-send-email-anilkumar@ti.com (mailing list archive)
State New, archived
Headers show

Commit Message

AnilKumar, Chimata July 24, 2012, 3:45 p.m. UTC
Adds basic pinctrl support for AM33XX family of devices. This patch
is based on the pinctrl-simple driver submitted by Tony Lindgren's
here: http://lwn.net/Articles/496075/

Signed-off-by: AnilKumar Ch <anilkumar@ti.com>
---
 arch/arm/boot/dts/am33xx.dtsi |    9 +++++++++
 1 file changed, 9 insertions(+)

Comments

Peter Ujfalusi July 27, 2012, 9:10 a.m. UTC | #1
Hi,

On 07/24/2012 06:45 PM, AnilKumar Ch wrote:
> Adds basic pinctrl support for AM33XX family of devices. This patch
> is based on the pinctrl-simple driver submitted by Tony Lindgren's
> here: http://lwn.net/Articles/496075/
> 
> Signed-off-by: AnilKumar Ch <anilkumar@ti.com>
> ---
>  arch/arm/boot/dts/am33xx.dtsi |    9 +++++++++
>  1 file changed, 9 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
> index 59509c4..9b974dc 100644
> --- a/arch/arm/boot/dts/am33xx.dtsi
> +++ b/arch/arm/boot/dts/am33xx.dtsi
> @@ -40,6 +40,15 @@
>  		};
>  	};
>  
> +	am3358_pinmux: pinmux@44E10800 {
> +		compatible = "pinctrl-single";
> +		reg = <0x44E10800 0x0338>;

I'm just curious about the size here: how it ended up as 0x0338?
While looking at the TRM of AM335x I can come up with 0x0238 (0x44e10800 -
0x44e10a38), but I don't see any sings of the remaining 0x0100 to be
documented at least.

> +		#address-cells = <1>;
> +		#size-cells = <0>;
> +		pinctrl-single,register-width = <32>;
> +		pinctrl-single,function-mask = <0x7F>;
> +	};
> +
>  	/*
>  	 * XXX: Use a flat representation of the AM33XX interconnect.
>  	 * The real AM33XX interconnect network is quite complex.Since
>
AnilKumar, Chimata July 31, 2012, 1:37 p.m. UTC | #2
Hi Peter,

On Fri, Jul 27, 2012 at 14:40:52, Ujfalusi, Peter wrote:
> Hi,
> 
> On 07/24/2012 06:45 PM, AnilKumar Ch wrote:
> > Adds basic pinctrl support for AM33XX family of devices. This patch
> > is based on the pinctrl-simple driver submitted by Tony Lindgren's
> > here: http://lwn.net/Articles/496075/
> > 
> > Signed-off-by: AnilKumar Ch <anilkumar@ti.com>
> > ---
> >  arch/arm/boot/dts/am33xx.dtsi |    9 +++++++++
> >  1 file changed, 9 insertions(+)
> > 
> > diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
> > index 59509c4..9b974dc 100644
> > --- a/arch/arm/boot/dts/am33xx.dtsi
> > +++ b/arch/arm/boot/dts/am33xx.dtsi
> > @@ -40,6 +40,15 @@
> >  		};
> >  	};
> >  
> > +	am3358_pinmux: pinmux@44E10800 {
> > +		compatible = "pinctrl-single";
> > +		reg = <0x44E10800 0x0338>;
> 
> I'm just curious about the size here: how it ended up as 0x0338?
> While looking at the TRM of AM335x I can come up with 0x0238 (0x44e10800 -
> 0x44e10a38), but I don't see any sings of the remaining 0x0100 to be
> documented at least.

No, pinmux registers are available till 0x44E10B38, look at AM335x latest TRM
or pinmux utility (we cannot find the exact offsets but pins we can find after
0x0A38, conf_ddr_resetn) at http://www.ti.com/tool/pinmuxtool

Regards
AnilKumar
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Tony Lindgren Aug. 7, 2012, 7:43 a.m. UTC | #3
* AnilKumar, Chimata <anilkumar@ti.com> [120731 06:37]:
> Hi Peter,
> 
> On Fri, Jul 27, 2012 at 14:40:52, Ujfalusi, Peter wrote:
> > Hi,
> > 
> > On 07/24/2012 06:45 PM, AnilKumar Ch wrote:
> > > Adds basic pinctrl support for AM33XX family of devices. This patch
> > > is based on the pinctrl-simple driver submitted by Tony Lindgren's
> > > here: http://lwn.net/Articles/496075/
> > > 
> > > Signed-off-by: AnilKumar Ch <anilkumar@ti.com>
> > > ---
> > >  arch/arm/boot/dts/am33xx.dtsi |    9 +++++++++
> > >  1 file changed, 9 insertions(+)
> > > 
> > > diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
> > > index 59509c4..9b974dc 100644
> > > --- a/arch/arm/boot/dts/am33xx.dtsi
> > > +++ b/arch/arm/boot/dts/am33xx.dtsi
> > > @@ -40,6 +40,15 @@
> > >  		};
> > >  	};
> > >  
> > > +	am3358_pinmux: pinmux@44E10800 {
> > > +		compatible = "pinctrl-single";
> > > +		reg = <0x44E10800 0x0338>;
> > 
> > I'm just curious about the size here: how it ended up as 0x0338?
> > While looking at the TRM of AM335x I can come up with 0x0238 (0x44e10800 -
> > 0x44e10a38), but I don't see any sings of the remaining 0x0100 to be
> > documented at least.
> 
> No, pinmux registers are available till 0x44E10B38, look at AM335x latest TRM
> or pinmux utility (we cannot find the exact offsets but pins we can find after
> 0x0A38, conf_ddr_resetn) at http://www.ti.com/tool/pinmuxtool

If you have a hole inbetween the registers it sounds like you also have core and
wkup domains? In that case those should be set up as separate controllers as other
SCM registers may be inbetween those domains.

Tony
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
AnilKumar, Chimata Aug. 7, 2012, 8:50 a.m. UTC | #4
Hi Tony,

On Tue, Aug 07, 2012 at 13:13:48, Tony Lindgren wrote:
> * AnilKumar, Chimata <anilkumar@ti.com> [120731 06:37]:
> > Hi Peter,
> > 
> > On Fri, Jul 27, 2012 at 14:40:52, Ujfalusi, Peter wrote:
> > > Hi,
> > > 
> > > On 07/24/2012 06:45 PM, AnilKumar Ch wrote:
> > > > Adds basic pinctrl support for AM33XX family of devices. This patch
> > > > is based on the pinctrl-simple driver submitted by Tony Lindgren's
> > > > here: http://lwn.net/Articles/496075/
> > > > 
> > > > Signed-off-by: AnilKumar Ch <anilkumar@ti.com>
> > > > ---
> > > >  arch/arm/boot/dts/am33xx.dtsi |    9 +++++++++
> > > >  1 file changed, 9 insertions(+)
> > > > 
> > > > diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
> > > > index 59509c4..9b974dc 100644
> > > > --- a/arch/arm/boot/dts/am33xx.dtsi
> > > > +++ b/arch/arm/boot/dts/am33xx.dtsi
> > > > @@ -40,6 +40,15 @@
> > > >  		};
> > > >  	};
> > > >  
> > > > +	am3358_pinmux: pinmux@44E10800 {
> > > > +		compatible = "pinctrl-single";
> > > > +		reg = <0x44E10800 0x0338>;
> > > 
> > > I'm just curious about the size here: how it ended up as 0x0338?
> > > While looking at the TRM of AM335x I can come up with 0x0238 (0x44e10800 -
> > > 0x44e10a38), but I don't see any sings of the remaining 0x0100 to be
> > > documented at least.
> > 
> > No, pinmux registers are available till 0x44E10B38, look at AM335x latest TRM
> > or pinmux utility (we cannot find the exact offsets but pins we can find after
> > 0x0A38, conf_ddr_resetn) at http://www.ti.com/tool/pinmuxtool
> 
> If you have a hole inbetween the registers it sounds like you also have core and
> wkup domains? In that case those should be set up as separate controllers as other
> SCM registers may be inbetween those domains.
> 

In case of AM33XX we have only one padconf domain and it do not have any holes
in between.

Regards
AnilKumar
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Peter Ujfalusi Aug. 8, 2012, 12:05 p.m. UTC | #5
On 07/31/2012 04:37 PM, AnilKumar, Chimata wrote:
>> I'm just curious about the size here: how it ended up as 0x0338?
>> While looking at the TRM of AM335x I can come up with 0x0238 (0x44e10800 -
>> 0x44e10a38), but I don't see any sings of the remaining 0x0100 to be
>> documented at least.
> 
> No, pinmux registers are available till 0x44E10B38, look at AM335x latest TRM
> or pinmux utility (we cannot find the exact offsets but pins we can find after
> 0x0A38, conf_ddr_resetn) at http://www.ti.com/tool/pinmuxtool

I have looked at the latest TRM (Rev F, SPRUH73F -  public TRM) and there is
not mention of registers between 0x0a34 and 0x0e00.
I can not even find any reference of conf_ddr_resetn register either in the TRM.
I can not check with the pinmuxtool since it is crashing with wine under Linux.
There could be registers after 0x0a34, but they are not publicly documented...
AnilKumar, Chimata Aug. 13, 2012, 4:33 a.m. UTC | #6
Peter,

On Wed, Aug 08, 2012 at 17:35:44, Ujfalusi, Peter wrote:
> On 07/31/2012 04:37 PM, AnilKumar, Chimata wrote:
> >> I'm just curious about the size here: how it ended up as 0x0338?
> >> While looking at the TRM of AM335x I can come up with 0x0238 (0x44e10800 -
> >> 0x44e10a38), but I don't see any sings of the remaining 0x0100 to be
> >> documented at least.
> > 
> > No, pinmux registers are available till 0x44E10B38, look at AM335x latest TRM
> > or pinmux utility (we cannot find the exact offsets but pins we can find after
> > 0x0A38, conf_ddr_resetn) at http://www.ti.com/tool/pinmuxtool
> 
> I have looked at the latest TRM (Rev F, SPRUH73F -  public TRM) and there is
> not mention of registers between 0x0a34 and 0x0e00.
> I can not even find any reference of conf_ddr_resetn register either in the TRM.
> I can not check with the pinmuxtool since it is crashing with wine under Linux.
> There could be registers after 0x0a34, but they are not publicly documented...
> 

Thanks for pointing this, I was referring older version (Rev C) of TRM which have
the details which is not present in latest TRM. These pins are dedicated ones so
pinmuxing is not required. I will submit new version.

Thanks
AnilKumar
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
index 59509c4..9b974dc 100644
--- a/arch/arm/boot/dts/am33xx.dtsi
+++ b/arch/arm/boot/dts/am33xx.dtsi
@@ -40,6 +40,15 @@ 
 		};
 	};
 
+	am3358_pinmux: pinmux@44E10800 {
+		compatible = "pinctrl-single";
+		reg = <0x44E10800 0x0338>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		pinctrl-single,register-width = <32>;
+		pinctrl-single,function-mask = <0x7F>;
+	};
+
 	/*
 	 * XXX: Use a flat representation of the AM33XX interconnect.
 	 * The real AM33XX interconnect network is quite complex.Since