Re: [RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
On Sun, Oct 28, 2012 at 05:01:29PM +0530, Sekhar Nori wrote: On 10/18/2012 6:56 PM, Matt Porter wrote: Adds AM33XX SPI support for am335x-bone and am335x-evm. Signed-off-by: Matt Porter mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; + am3358_pinmux: pinmux@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 */ + ; Is there a single pinmux setting that provides SPI functionality on the bone headers? Or this is specific to a cape you tested with? No, there are two usable settings for spi1 and one setting for spi0. I'm dropping this from the series since it's specific to how I wired up the homebrew cape I use for spi testing on the Bone. I publish the branch where all these extra test-specific patches (that aren't intended to be merged) are at in the cover letter. Anybody that needs context of how/what worked and was tested can grab them there. -Matt ___ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
Re: [RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
On Thu, Jan 10, 2013 at 01:46:53PM -0600, Nishanth Menon wrote: On 14:35-20130110, Matt Porter wrote: On Sun, Oct 28, 2012 at 05:01:29PM +0530, Sekhar Nori wrote: On 10/18/2012 6:56 PM, Matt Porter wrote: Adds AM33XX SPI support for am335x-bone and am335x-evm. Signed-off-by: Matt Porter mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; + am3358_pinmux: pinmux@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 */ minor comment: doing as a 0x33 is better for both d1, d0 as D0,D1 can be switched between SDI and SDO as needed with ti,pindir-d0-out-d1-in Yes, thanks. Forgot about the new property and feature even though I told somebody about it yesterday. :) + 0x19c 0x13 /* mcasp0_ahclkr.spi1_cs0, OUTPUT_PULLUP | MODE3 */ + ; Is there a single pinmux setting that provides SPI functionality on the bone headers? Or this is specific to a cape you tested with? No, there are two usable settings for spi1 and one setting for spi0. I'm dropping this from the series since it's specific to how I wired up the homebrew cape I use for spi testing on the Bone. I publish the branch where all these extra test-specific patches (that aren't intended to be merged) are at in the cover letter. Anybody that needs context of how/what worked and was tested can grab them there. Possibly dumb question: Cant we have pre-usable spi configurations? Like spi1_configuration1_pins, spi2_configuration1_pins, spi0_configuration1_pins? If documented with P9 pin names in the bone dts, it saves a bit of effort in looking up pad offset when dealing with capes. Yes, let's introduce these things separately. I plan to reintroduce patches to fix the incorrect 1-based numbering on many of the AM33xx as previous ones were dropped...and I think this makes sense on top of that. -Matt -- Regards, Nishanth Menon -- To unsubscribe from this list: send the line unsubscribe linux-omap in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ___ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
Re: [RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
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 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 mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; + am3358_pinmux: pinmux@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@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@0 { + compatible = spansion,s25fl064k, m25p80; + spi-max-frequency = 2400; + 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@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@4803 { + compatible = ti,omap4-mcspi; + ti,hwmods = spi0; + #address-cells = 1; + #size-cells = 0; + reg = 0x4803 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@481a { + compatible = ti,omap4-mcspi; + ti,hwmods = spi1; + #address-cells = 1; + #size-cells = 0; + reg = 0x481a 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;
Re: [RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
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. 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 mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; + am3358_pinmux: pinmux@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@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@0 { + compatible = spansion,s25fl064k, m25p80; + spi-max-frequency = 2400; + 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@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@4803 { + compatible = ti,omap4-mcspi; + ti,hwmods = spi0; + #address-cells = 1; + #size-cells = 0; + reg = 0x4803 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@481a { + compatible = ti,omap4-mcspi; + ti,hwmods = spi1; + #address-cells = 1; + #size-cells = 0; + reg = 0x481a 0x400; + interrupt-parent = intc; + interrupt = 125; + dmas = edma 42 + edma 43 + edma 44 +
RE: [RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
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 mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; +am3358_pinmux: pinmux@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@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@0 { +compatible = spansion,s25fl064k, m25p80; +spi-max-frequency = 2400; +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@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@4803 { +compatible = ti,omap4-mcspi; +ti,hwmods = spi0; +#address-cells = 1; +#size-cells = 0; +reg = 0x4803 0x400; +interrupt-parent = intc; +interrupt = 65; +dmas = edma 16 +edma 17 +edma 18 +edma 19; +dma-names
RE: [RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
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] In case if you want I will resubmit a patch with subject line modified. 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 mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; + am3358_pinmux: pinmux@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@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@0 { + compatible = spansion,s25fl064k, m25p80; + spi-max-frequency = 2400; + 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@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@4803 { + compatible = ti,omap4-mcspi; + ti,hwmods = spi0; + #address-cells = 1; + #size-cells = 0; + reg = 0x4803 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@481a { + compatible = ti,omap4-mcspi; + ti,hwmods = spi1; + #address-cells = 1; + #size-cells = 0; + reg = 0x481a 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; + }; +
RE: [RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
On Thu, Oct 18, 2012 at 18:56:55, Porter, Matt wrote: Adds AM33XX SPI support for am335x-bone and am335x-evm. Signed-off-by: Matt Porter mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; + am3358_pinmux: pinmux@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@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@0 { + compatible = spansion,s25fl064k, m25p80; + spi-max-frequency = 2400; + 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@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@4803 { + compatible = ti,omap4-mcspi; + ti,hwmods = spi0; + #address-cells = 1; + #size-cells = 0; + reg = 0x4803 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@481a { + compatible = ti,omap4-mcspi; + ti,hwmods = spi1; + #address-cells = 1; + #size-cells = 0; + reg = 0x481a 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@44e35000 { compatible = ti,omap3-wdt; ti,hwmods = wd_timer2; -- 1.7.9.5 ___ linux-arm-kernel mailing list linux-arm-ker...@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel ___ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com
Re: [RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
On 10/18/2012 6:56 PM, Matt Porter wrote: Adds AM33XX SPI support for am335x-bone and am335x-evm. Signed-off-by: Matt Porter mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; + am3358_pinmux: pinmux@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 */ + ; Is there a single pinmux setting that provides SPI functionality on the bone headers? Or this is specific to a cape you tested with? Thanks, Sekhar ___ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
[RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
Adds AM33XX SPI support for am335x-bone and am335x-evm. Signed-off-by: Matt Porter mpor...@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 = 0x8000 0x1000; /* 256 MB */ }; + am3358_pinmux: pinmux@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 */ + ; + }; + }; + ocp { uart1: serial@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@0 { + compatible = spansion,s25fl064k, m25p80; + spi-max-frequency = 2400; + reg = 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@44e10800 { + compatible = pinctrl-single; + reg = 0x44e10800 0x0238; + #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 @@ -261,6 +270,40 @@ status = disabled; }; + spi0: spi@4803 { + compatible = ti,omap4-mcspi; + ti,hwmods = spi0; + #address-cells = 1; + #size-cells = 0; + reg = 0x4803 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@481a { + compatible = ti,omap4-mcspi; + ti,hwmods = spi1; + #address-cells = 1; + #size-cells = 0; + reg = 0x481a 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@44e35000 { compatible = ti,omap3-wdt; ti,hwmods = wd_timer2; -- 1.7.9.5 ___ Davinci-linux-open-source mailing list Davinci-linux-open-source@linux.davincidsp.com http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source