[RFC PATCH v3 16/16] ARM: dts: add AM33XX SPI support
Philip, Avinash
avinashphilip at ti.com
Mon Oct 29 05:11:34 EDT 2012
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 <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