ARM: zynq: Enable QSPIs on platforms

Enable QSPIs with default MTD layout used for testing.
Zybos, Microzed and Zturn are only enabling controller without specifying
MTD map.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/b10d922fec7fde0948205b266bf7e960113859c5.1733920873.git.michal.simek@amd.com
This commit is contained in:
Michal Simek 2024-12-11 13:41:32 +01:00
parent edb2e908dd
commit dd6c921af2
10 changed files with 257 additions and 0 deletions

View File

@ -18,6 +18,7 @@ / {
aliases {
ethernet0 = &gem0;
serial0 = &uart0;
spi0 = &qspi;
};
chosen {
@ -51,6 +52,44 @@ ethernet_phy: ethernet-phy@1 {
};
};
&qspi {
status = "okay";
num-cs = <1>;
flash@0 { /* 16 MB */
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-max-frequency = <50000000>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <4>;
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "qspi-fsbl-uboot-bs";
reg = <0x0 0x400000>; /* 4MB */
};
partition@400000 {
label = "qspi-linux";
reg = <0x400000 0x400000>; /* 4MB */
};
partition@800000 {
label = "qspi-rootfs";
reg = <0x800000 0x400000>; /* 4MB */
};
partition@c00000 {
label = "qspi-devicetree";
reg = <0xc00000 0x100000>; /* 1MB */
};
partition@d00000 {
label = "qspi-scratch";
reg = <0xd00000 0x200000>; /* 2MB */
};
partition@f00000 {
label = "qspi-uboot-env";
reg = <0xf00000 0x100000>; /* 1MB */
};
};
};
&sdhci1 {
status = "okay";
broken-cd ;

View File

@ -13,6 +13,7 @@ / {
aliases {
ethernet0 = &gem0;
serial0 = &uart1;
spi0 = &qspi;
};
memory@0 {
@ -35,6 +36,11 @@ &clkc {
ps-clk-frequency = <33333333>;
};
&qspi {
bootph-all;
status = "okay";
};
&gem0 {
status = "okay";
phy-mode = "rgmii-id";

View File

@ -15,6 +15,7 @@ aliases {
ethernet0 = &gem0;
i2c0 = &i2c0;
serial0 = &uart1;
spi0 = &qspi;
mmc0 = &sdhci0;
nvmem0 = &eeprom;
rtc0 = &rtc;
@ -391,6 +392,44 @@ conf-tx {
};
};
&qspi {
bootph-all;
status = "okay";
num-cs = <1>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <4>;
spi-max-frequency = <50000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "qspi-fsbl-uboot";
reg = <0x0 0x100000>;
};
partition@100000 {
label = "qspi-linux";
reg = <0x100000 0x500000>;
};
partition@600000 {
label = "qspi-device-tree";
reg = <0x600000 0x20000>;
};
partition@620000 {
label = "qspi-rootfs";
reg = <0x620000 0x5e0000>;
};
partition@c00000 {
label = "qspi-bitstream";
reg = <0xc00000 0x400000>;
};
};
};
};
&sdhci0 {
bootph-all;
status = "okay";

View File

@ -14,6 +14,7 @@ aliases {
ethernet0 = &gem0;
i2c0 = &i2c0;
serial0 = &uart1;
spi0 = &qspi;
mmc0 = &sdhci0;
nvmem0 = &eeprom;
rtc0 = &rtc;
@ -304,6 +305,45 @@ conf-tx {
};
};
&qspi {
bootph-all;
status = "okay";
num-cs = <2>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>, <1>;
parallel-memories = /bits/ 64 <0x1000000 0x1000000>; /* 16MB */
spi-tx-bus-width = <1>;
spi-rx-bus-width = <4>;
spi-max-frequency = <50000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "qspi-fsbl-uboot";
reg = <0x0 0x100000>;
};
partition@100000 {
label = "qspi-linux";
reg = <0x100000 0x500000>;
};
partition@600000 {
label = "qspi-device-tree";
reg = <0x600000 0x20000>;
};
partition@620000 {
label = "qspi-rootfs";
reg = <0x620000 0x5e0000>;
};
partition@c00000 {
label = "qspi-bitstream";
reg = <0xc00000 0x400000>;
};
};
};
};
&sdhci0 {
bootph-all;
status = "okay";

View File

@ -15,6 +15,7 @@ aliases {
ethernet0 = &gem0;
i2c0 = &i2c0;
serial0 = &uart1;
spi0 = &qspi;
spi1 = &spi1;
};
@ -56,7 +57,43 @@ eeprom: eeprom@52 {
compatible = "atmel,24c02";
reg = <0x52>;
};
};
&qspi {
status = "okay";
num-cs = <1>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0x0>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <4>;
spi-max-frequency = <50000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "qspi-fsbl-uboot";
reg = <0x0 0x100000>;
};
partition@100000 {
label = "qspi-linux";
reg = <0x100000 0x500000>;
};
partition@600000 {
label = "qspi-device-tree";
reg = <0x600000 0x20000>;
};
partition@620000 {
label = "qspi-rootfs";
reg = <0x620000 0x5e0000>;
};
partition@c00000 {
label = "qspi-bitstream";
reg = <0xc00000 0x400000>;
};
};
};
};
&sdhci0 {

View File

@ -15,6 +15,7 @@ aliases {
ethernet0 = &gem1;
i2c0 = &i2c1;
serial0 = &uart0;
spi0 = &qspi;
spi1 = &spi0;
};
@ -57,6 +58,44 @@ si570: clock-generator@55 {
};
};
&qspi {
status = "okay";
num-cs = <2>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>, <1>;
parallel-memories = /bits/ 64 <0x1000000 0x1000000>; /* 16MB */
spi-tx-bus-width = <1>;
spi-rx-bus-width = <4>;
spi-max-frequency = <50000000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "qspi-fsbl-uboot";
reg = <0x0 0x100000>;
};
partition@100000 {
label = "qspi-linux";
reg = <0x100000 0x500000>;
};
partition@600000 {
label = "qspi-device-tree";
reg = <0x600000 0x20000>;
};
partition@620000 {
label = "qspi-rootfs";
reg = <0x620000 0x5e0000>;
};
partition@c00000 {
label = "qspi-bitstream";
reg = <0xc00000 0x400000>;
};
};
};
};
&spi0 {
status = "okay";
num-cs = <4>;

View File

@ -13,6 +13,7 @@ / {
aliases {
ethernet0 = &gem0;
serial0 = &uart1;
spi0 = &qspi;
mmc0 = &sdhci0;
};
@ -46,6 +47,45 @@ ethernet_phy: ethernet-phy@0 {
};
};
&qspi {
bootph-all;
status = "okay";
num-cs = <1>;
flash@0 {
compatible = "jedec,spi-nor";
reg = <0>;
spi-tx-bus-width = <1>;
spi-rx-bus-width = <4>;
spi-max-frequency = <50000000>;
m25p,fast-read;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "qspi-fsbl-uboot";
reg = <0x0 0x100000>;
};
partition@100000 {
label = "qspi-linux";
reg = <0x100000 0x500000>;
};
partition@600000 {
label = "qspi-device-tree";
reg = <0x600000 0x20000>;
};
partition@620000 {
label = "qspi-rootfs";
reg = <0x620000 0x5e0000>;
};
partition@c00000 {
label = "qspi-bitstream";
reg = <0xc00000 0x400000>;
};
};
};
};
&sdhci0 {
bootph-all;
status = "okay";

View File

@ -63,6 +63,11 @@ &clkc {
ps-clk-frequency = <33333333>;
};
&qspi {
bootph-all;
status = "okay";
};
&gem0 {
status = "okay";
phy-mode = "rgmii-id";

View File

@ -10,6 +10,7 @@ / {
aliases {
ethernet0 = &gem0;
serial0 = &uart1;
spi0 = &qspi;
};
memory@0 {
@ -52,6 +53,11 @@ ethernet_phy: ethernet-phy@0 {
};
};
&qspi {
bootph-all;
status = "okay";
};
&sdhci0 {
bootph-all;
status = "okay";

View File

@ -13,6 +13,7 @@ / {
aliases {
ethernet0 = &gem0;
serial0 = &uart1;
spi0 = &qspi;
mmc0 = &sdhci0;
};
@ -47,6 +48,11 @@ ethernet_phy: ethernet-phy@0 {
};
};
&qspi {
bootph-all;
status = "okay";
};
&sdhci0 {
bootph-all;
status = "okay";