arm: dts: k3-j7200: Add nodes for OSPI0

TI J7200 has the Cadence OSPI controller for interfacing with OSPI
flashes. Add its nodes to allow using SPI flashes.

The PHY partition is added in U-Boot specific dtsi because it is not
currently required by Kernel so it will make it easier to sync with
Kernel.

Signed-off-by: Pratyush Yadav <p.yadav@ti.com>
This commit is contained in:
Pratyush Yadav 2021-04-14 23:53:46 +05:30 committed by Praneeth Bajjuri
parent c3e1d444f9
commit 7ee525eb8c
5 changed files with 97 additions and 0 deletions

View File

@ -197,3 +197,22 @@
&serdes0 { &serdes0 {
u-boot,dm-spl; u-boot,dm-spl;
}; };
&mcu_fss0_ospi0_pins_default {
u-boot,dm-spl;
};
&ospi0 {
u-boot,dm-spl;
status = "okay";
flash@0 {
u-boot,dm-spl;
partition@3fc0000 {
label = "ospi.phypattern";
reg = <0x3fc0000 0x40000>;
u-boot,dm-spl;
};
};
};

View File

@ -269,6 +269,23 @@
#size-cells = <1>; #size-cells = <1>;
mux-controls = <&hbmc_mux 0>; mux-controls = <&hbmc_mux 0>;
}; };
ospi0: spi@47040000 {
compatible = "ti,am654-ospi";
reg = <0x0 0x47040000 0x0 0x100>,
<0x5 0x00000000 0x1 0x0000000>;
interrupts = <GIC_SPI 840 IRQ_TYPE_LEVEL_HIGH>;
cdns,fifo-depth = <256>;
cdns,fifo-width = <4>;
cdns,trigger-address = <0x0>;
clocks = <&k3_clks 103 0>;
assigned-clocks = <&k3_clks 103 0>;
assigned-clock-parents = <&k3_clks 103 2>;
assigned-clock-rates = <166666666>;
power-domains = <&k3_pds 103 TI_SCI_PD_EXCLUSIVE>;
#address-cells = <1>;
#size-cells = <0>;
};
}; };
tscadc0: tscadc@40200000 { tscadc0: tscadc@40200000 {

View File

@ -293,4 +293,26 @@
&mcu_udmap { &mcu_udmap {
ti,sci = <&dm_tifs>; ti,sci = <&dm_tifs>;
}; };
&ospi0 {
reg = <0x0 0x47040000 0x0 0x100>,
<0x0 0x50000000 0x0 0x8000000>;
flash@0{
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-tx-bus-width = <8>;
spi-rx-bus-width = <8>;
spi-max-frequency = <25000000>;
cdns,tshsl-ns = <60>;
cdns,tsd2d-ns = <60>;
cdns,tchsh-ns = <60>;
cdns,tslch-ns = <60>;
cdns,read-delay = <4>;
cdns,phy-mode;
#address-cells = <1>;
#size-cells = <1>;
};
};
#include "k3-j7200-common-proc-board-u-boot.dtsi" #include "k3-j7200-common-proc-board-u-boot.dtsi"

View File

@ -46,6 +46,22 @@
J721E_WKUP_IOPAD(0x28, PIN_INPUT, 1) /* (A7) MCU_OSPI0_D7.MCU_HYPERBUS0_DQ7 */ J721E_WKUP_IOPAD(0x28, PIN_INPUT, 1) /* (A7) MCU_OSPI0_D7.MCU_HYPERBUS0_DQ7 */
>; >;
}; };
mcu_fss0_ospi0_pins_default: mcu-fss0-ospi0-pins-default {
pinctrl-single,pins = <
J721E_WKUP_IOPAD(0x0000, PIN_OUTPUT, 0) /* MCU_OSPI0_CLK */
J721E_WKUP_IOPAD(0x002c, PIN_OUTPUT, 0) /* MCU_OSPI0_CSn0 */
J721E_WKUP_IOPAD(0x000c, PIN_INPUT, 0) /* MCU_OSPI0_D0 */
J721E_WKUP_IOPAD(0x0010, PIN_INPUT, 0) /* MCU_OSPI0_D1 */
J721E_WKUP_IOPAD(0x0014, PIN_INPUT, 0) /* MCU_OSPI0_D2 */
J721E_WKUP_IOPAD(0x0018, PIN_INPUT, 0) /* MCU_OSPI0_D3 */
J721E_WKUP_IOPAD(0x001c, PIN_INPUT, 0) /* MCU_OSPI0_D4 */
J721E_WKUP_IOPAD(0x0020, PIN_INPUT, 0) /* MCU_OSPI0_D5 */
J721E_WKUP_IOPAD(0x0024, PIN_INPUT, 0) /* MCU_OSPI0_D6 */
J721E_WKUP_IOPAD(0x0028, PIN_INPUT, 0) /* MCU_OSPI0_D7 */
J721E_WKUP_IOPAD(0x0008, PIN_INPUT_PULLDOWN, 0) /* MCU_OSPI0_DQS */
>;
};
}; };
&main_pmx0 { &main_pmx0 {
@ -157,3 +173,25 @@
"GPIO_LIN_EN", "CAN_STB"; "GPIO_LIN_EN", "CAN_STB";
}; };
}; };
&ospi0 {
pinctrl-names = "default";
pinctrl-0 = <&mcu_fss0_ospi0_pins_default>;
flash@0{
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-tx-bus-width = <8>;
spi-rx-bus-width = <8>;
spi-max-frequency = <25000000>;
cdns,tshsl-ns = <60>;
cdns,tsd2d-ns = <60>;
cdns,tchsh-ns = <60>;
cdns,tslch-ns = <60>;
cdns,read-delay = <4>;
cdns,phy-mode;
cdns,phy-tx-start = <18>;
#address-cells = <1>;
#size-cells = <1>;
};
};

View File

@ -30,6 +30,7 @@
serial9 = &main_uart7; serial9 = &main_uart7;
serial10 = &main_uart8; serial10 = &main_uart8;
serial11 = &main_uart9; serial11 = &main_uart9;
spi0 = &ospi0;
}; };
chosen { }; chosen { };