[RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support

Philip, Avinash avinashphilip at ti.com
Wed Oct 31 07:03:51 EDT 2012


On Wed, Oct 31, 2012 at 16:05:13, Cousson, Benoit wrote:
> 
> On 10/31/2012 11:16 AM, Benoit Cousson wrote:
> > Hi Avinash,
> > 
> > On 10/30/2012 10:41 AM, Philip, Avinash wrote:
> >> On Mon, Oct 29, 2012 at 14:40:02, Philip, Avinash wrote:
> >>> On Thu, Oct 18, 2012 at 18:56:55, Porter, Matt wrote:
> >>>> Adds AM33XX SPI support for am335x-bone and am335x-evm.
> >>
> >> Matt,
> >>
> >> Can you build SPI DT patch with DMA support on top of SPI DT patch
> >> I submitted [1]. With the patch [1] SPI can work on PIO mode.
> >> So we can have basic SPI support available in 3.8.
> >>
> >> Benoit,
> >> Can you accept the SPI DT patch [1]
> > 
> > Yes, I've just applied it in for_3.8/dts branch
> 
> Well, in fact I did not, it does not apply :-(
> 
> Can you rebase on top of the for_3.8/dts branch? I've just applied the
> RTC patch on top that was OK.

Ok.

Thanks
Avinash

> 
> Thanks,
> Benoit
> 
> > 
> >> In case if you want I will resubmit a patch with subject line modified.
> > 
> > No, that's fine.
> > 
> > Thanks,
> > Benoit
> > 
> >>
> >> Current subject line
> >> arm/dts: AM33XX: Add SPI device tree data
> >>
> >> 1. https://patchwork.kernel.org/patch/1470661/
> >>
> >> Thanks
> >> Avinash
> >>
> >>>>
> >>>> Signed-off-by: Matt Porter <mporter at ti.com>
> >>>> ---
> >>>>  arch/arm/boot/dts/am335x-bone.dts |   17 +++++++++++++++
> >>>>  arch/arm/boot/dts/am335x-evm.dts  |    9 ++++++++
> >>>>  arch/arm/boot/dts/am33xx.dtsi     |   43 +++++++++++++++++++++++++++++++++++++
> >>>>  3 files changed, 69 insertions(+)
> >>>>
> >>>> diff --git a/arch/arm/boot/dts/am335x-bone.dts b/arch/arm/boot/dts/am335x-bone.dts
> >>>> index 5510979..23edfd8 100644
> >>>> --- a/arch/arm/boot/dts/am335x-bone.dts
> >>>> +++ b/arch/arm/boot/dts/am335x-bone.dts
> >>>> @@ -18,6 +18,17 @@
> >>>>  		reg = <0x80000000 0x10000000>; /* 256 MB */
> >>>>  	};
> >>>>  
> >>>> +	am3358_pinmux: pinmux at 44e10800 {
> >>>> +		spi1_pins: pinmux_spi1_pins {
> >>>> +			pinctrl-single,pins = <
> >>>> +				0x190 0x13	/* mcasp0_aclkx.spi1_sclk, OUTPUT_PULLUP | MODE3 */
> >>>> +				0x194 0x33	/* mcasp0_fsx.spi1_d0, INPUT_PULLUP | MODE3 */
> >>>> +				0x198 0x13	/* mcasp0_axr0.spi1_d1, OUTPUT_PULLUP | MODE3 */
> >>>> +				0x19c 0x13	/* mcasp0_ahclkr.spi1_cs0, OUTPUT_PULLUP | MODE3 */
> >>>> +			>;
> >>>> +		};
> >>>> +	};
> >>>> +
> >>>
> >>> Change to am33xx_pinmux.
> >>>
> >>>>  	ocp {
> >>>>  		uart1: serial at 44e09000 {
> >>>>  			status = "okay";
> >>>> @@ -84,3 +95,9 @@
> >>>>  &mmc1 {
> >>>>  	vmmc-supply = <&ldo3_reg>;
> >>>>  };
> >>>> +
> >>>> +&spi1 {
> >>>> +	status = "okay";
> >>>> +	pinctrl-names = "default";
> >>>> +	pinctrl-0 = <&spi1_pins>;
> >>>> +};
> >>>> diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
> >>>> index d63fce8..8d5f660 100644
> >>>> --- a/arch/arm/boot/dts/am335x-evm.dts
> >>>> +++ b/arch/arm/boot/dts/am335x-evm.dts
> >>>> @@ -124,3 +124,12 @@
> >>>>  &mmc1 {
> >>>>  	vmmc-supply = <&vmmc_reg>;
> >>>>  };
> >>>> +
> >>>> +&spi0 {
> >>>> +	status = "okay";
> >>>> +	spi-flash at 0 {
> >>>> +		compatible = "spansion,s25fl064k", "m25p80";
> >>>> +		spi-max-frequency = <24000000>;
> >>>> +		reg = <0>;
> >>>> +	};
> >>>> +};
> >>>
> >>> In AM335x-evm, SPI flash available in profile #2 (am335x evm specific profiles).
> >>> So can you drop this changes as if I understood correctly, am335x-evm.dts will be
> >>> populated for devices present only on profile #0.
> >>>
> >>>> diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
> >>>> index 26a6af7..063ecea 100644
> >>>> --- a/arch/arm/boot/dts/am33xx.dtsi
> >>>> +++ b/arch/arm/boot/dts/am33xx.dtsi
> >>>> @@ -40,6 +40,15 @@
> >>>>  		};
> >>>>  	};
> >>>>  
> >>>> +	am3358_pinmux: pinmux at 44e10800 {
> >>>> +		compatible = "pinctrl-single";
> >>>> +		reg = <0x44e10800 0x0238>;
> >>>> +		#address-cells = <1>;
> >>>> +		#size-cells = <0>;
> >>>> +		pinctrl-single,register-width = <32>;
> >>>> +		pinctrl-single,function-mask = <0x7f>;
> >>>> +	};
> >>>> +
> >>>
> >>> Pin ctrl support already submitted
> >>> http://git.kernel.org/?p=linux/kernel/git/bcousson/linux-omap-dt.git;a=commitdiff;h=3e0603e905d9ba662e8c1885ecb1d28bc454e448
> >>>
> >>> Thanks
> >>> Avinash
> >>>
> >>>>  	/*
> >>>>  	 * XXX: Use a flat representation of the AM33XX interconnect.
> >>>>  	 * The real AM33XX interconnect network is quite complex.Since
> >>>> @@ -261,6 +270,40 @@
> >>>>  			status = "disabled";
> >>>>  		};
> >>>>  
> >>>> +		spi0: spi at 48030000 {
> >>>> +			compatible = "ti,omap4-mcspi";
> >>>> +			ti,hwmods = "spi0";
> >>>> +			#address-cells = <1>;
> >>>> +			#size-cells = <0>;
> >>>> +			reg = <0x48030000 0x400>;
> >>>> +			interrupt-parent = <&intc>;
> >>>> +			interrupt = <65>;
> >>>> +			dmas = <&edma 16
> >>>> +				&edma 17
> >>>> +				&edma 18
> >>>> +				&edma 19>;
> >>>> +			dma-names = "tx0", "rx0", "tx1", "rx1";
> >>>> +			ti,spi-num-cs = <2>;
> >>>> +			status = "disabled";
> >>>> +		};
> >>>> +
> >>>> +		spi1: spi at 481a0000 {
> >>>> +			compatible = "ti,omap4-mcspi";
> >>>> +			ti,hwmods = "spi1";
> >>>> +			#address-cells = <1>;
> >>>> +			#size-cells = <0>;
> >>>> +			reg = <0x481a0000 0x400>;
> >>>> +			interrupt-parent = <&intc>;
> >>>> +			interrupt = <125>;
> >>>> +			dmas = <&edma 42
> >>>> +				&edma 43
> >>>> +				&edma 44
> >>>> +				&edma 45>;
> >>>> +			dma-names = "tx0", "rx0", "tx1", "rx1";
> >>>> +			ti,spi-num-cs = <2>;
> >>>> +			status = "disabled";
> >>>> +		};
> >>>> +
> >>>>  		wdt2: wdt at 44e35000 {
> >>>>  			compatible = "ti,omap3-wdt";
> >>>>  			ti,hwmods = "wd_timer2";
> >>>> -- 
> >>>> 1.7.9.5
> >>>>
> >>>>
> >>>> _______________________________________________
> >>>> linux-arm-kernel mailing list
> >>>> linux-arm-kernel at lists.infradead.org
> >>>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> >>>>
> >>>
> >>>
> >>
> > 
> 
> 




More information about the linux-arm-kernel mailing list