[PATCH 2/2] ARM: zynq: Add partition description

Michal Simek michal.simek at amd.com
Tue Nov 7 13:38:55 CET 2023



On 11/1/23 12:22, Michal Simek wrote:
> Xilinx is using standard mtd partition layout for quite a long time. It is
> used for testing purpose on evaluation boards.
> Also #address/size-cells shouldn't be present without nodes which should
> use them that's why move them from zynq-7000.dtsi to nand/nor nodes
> directly.
> 
> The patch was tested on zc706 and zedboard(with also increasing max
> frequency and rx bus width).
> 
> Signed-off-by: Michal Simek <michal.simek at amd.com>
> ---
> 
>   arch/arm/dts/bitmain-antminer-s9.dts |  2 ++
>   arch/arm/dts/zynq-7000.dtsi          |  4 ----
>   arch/arm/dts/zynq-zc702.dts          | 25 ++++++++++++++++++++++++
>   arch/arm/dts/zynq-zc706.dts          | 25 ++++++++++++++++++++++++
>   arch/arm/dts/zynq-zc770-xm010.dts    | 25 ++++++++++++++++++++++++
>   arch/arm/dts/zynq-zc770-xm011.dts    | 19 ++++++++++++++++++
>   arch/arm/dts/zynq-zc770-xm012.dts    | 25 ++++++++++++++++++++++++
>   arch/arm/dts/zynq-zc770-xm013.dts    | 25 ++++++++++++++++++++++++
>   arch/arm/dts/zynq-zed.dts            | 29 +++++++++++++++++++++++++++-
>   9 files changed, 174 insertions(+), 5 deletions(-)
> 
> diff --git a/arch/arm/dts/bitmain-antminer-s9.dts b/arch/arm/dts/bitmain-antminer-s9.dts
> index 0228b4b30e5b..f5ad95a276b6 100644
> --- a/arch/arm/dts/bitmain-antminer-s9.dts
> +++ b/arch/arm/dts/bitmain-antminer-s9.dts
> @@ -52,6 +52,8 @@
>   
>   &nfc0 {
>   	status = "okay";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
>   	nand at 0 {
>   		reg = <0>;
>   	};
> diff --git a/arch/arm/dts/zynq-7000.dtsi b/arch/arm/dts/zynq-7000.dtsi
> index fb61fe98e3de..f8c786ab0b7b 100644
> --- a/arch/arm/dts/zynq-7000.dtsi
> +++ b/arch/arm/dts/zynq-7000.dtsi
> @@ -306,15 +306,11 @@
>   				compatible = "arm,pl353-nand-r2p1";
>   				reg = <0 0 0x1000000>;
>   				status = "disabled";
> -				#address-cells = <1>;
> -				#size-cells = <0>;
>   			};
>   			nor0: flash at 1,0 {
>   				status = "disabled";
>   				compatible = "cfi-flash";
>   				reg = <1 0 0x2000000>;
> -				#address-cells = <1>;
> -				#size-cells = <1>;
>   			};
>   		};
>   
> diff --git a/arch/arm/dts/zynq-zc702.dts b/arch/arm/dts/zynq-zc702.dts
> index 8d47f24b757b..0106d7bb1778 100644
> --- a/arch/arm/dts/zynq-zc702.dts
> +++ b/arch/arm/dts/zynq-zc702.dts
> @@ -406,6 +406,31 @@
>   		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 at 0 {
> +				label = "qspi-fsbl-uboot";
> +				reg = <0x0 0x100000>;
> +			};
> +			partition at 100000 {
> +				label = "qspi-linux";
> +				reg = <0x100000 0x500000>;
> +			};
> +			partition at 600000 {
> +				label = "qspi-device-tree";
> +				reg = <0x600000 0x20000>;
> +			};
> +			partition at 620000 {
> +				label = "qspi-rootfs";
> +				reg = <0x620000 0x5e0000>;
> +			};
> +			partition at c00000 {
> +				label = "qspi-bitstream";
> +				reg = <0xc00000 0x400000>;
> +			};
> +		};
>   	};
>   };
>   
> diff --git a/arch/arm/dts/zynq-zc706.dts b/arch/arm/dts/zynq-zc706.dts
> index 18963a395156..ceea982546e8 100644
> --- a/arch/arm/dts/zynq-zc706.dts
> +++ b/arch/arm/dts/zynq-zc706.dts
> @@ -317,6 +317,31 @@
>   		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 at 0 {
> +				label = "qspi-fsbl-uboot";
> +				reg = <0x0 0x100000>;
> +			};
> +			partition at 100000 {
> +				label = "qspi-linux";
> +				reg = <0x100000 0x500000>;
> +			};
> +			partition at 600000 {
> +				label = "qspi-device-tree";
> +				reg = <0x600000 0x20000>;
> +			};
> +			partition at 620000 {
> +				label = "qspi-rootfs";
> +				reg = <0x620000 0x5e0000>;
> +			};
> +			partition at c00000 {
> +				label = "qspi-bitstream";
> +				reg = <0xc00000 0x400000>;
> +			};
> +		};
>   	};
>   };
>   
> diff --git a/arch/arm/dts/zynq-zc770-xm010.dts b/arch/arm/dts/zynq-zc770-xm010.dts
> index 17680d7f8ec8..199384bec967 100644
> --- a/arch/arm/dts/zynq-zc770-xm010.dts
> +++ b/arch/arm/dts/zynq-zc770-xm010.dts
> @@ -69,6 +69,31 @@
>   		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 at 0 {
> +				label = "qspi-fsbl-uboot";
> +				reg = <0x0 0x100000>;
> +			};
> +			partition at 100000 {
> +				label = "qspi-linux";
> +				reg = <0x100000 0x500000>;
> +			};
> +			partition at 600000 {
> +				label = "qspi-device-tree";
> +				reg = <0x600000 0x20000>;
> +			};
> +			partition at 620000 {
> +				label = "qspi-rootfs";
> +				reg = <0x620000 0x5e0000>;
> +			};
> +			partition at c00000 {
> +				label = "qspi-bitstream";
> +				reg = <0xc00000 0x400000>;
> +			};
> +		};
>   	};
>   };
>   
> diff --git a/arch/arm/dts/zynq-zc770-xm011.dts b/arch/arm/dts/zynq-zc770-xm011.dts
> index d1e971254e51..f9a086fe66d3 100644
> --- a/arch/arm/dts/zynq-zc770-xm011.dts
> +++ b/arch/arm/dts/zynq-zc770-xm011.dts
> @@ -49,8 +49,27 @@
>   
>   &nfc0 {
>   	status = "okay";
> +	#address-cells = <1>;
> +	#size-cells = <0>;
>   	nand at 0 {
>   		reg = <0>;
> +		partitions {
> +			compatible = "fixed-partitions";
> +			#address-cells = <1>;
> +			#size-cells = <1>;
> +			partition at 0 {
> +				label = "nand-fsbl-uboot";
> +				reg = <0x0 0x1000000>;
> +			};
> +			partition at 1000000 {
> +				label = "nand-linux";
> +				reg = <0x1000000 0x2000000>;
> +			};
> +			partition at 3000000 {
> +				label = "nand-rootfs";
> +				reg = <0x3000000 0x200000>;
> +			};
> +		};
>   	};
>   };
>   
> diff --git a/arch/arm/dts/zynq-zc770-xm012.dts b/arch/arm/dts/zynq-zc770-xm012.dts
> index 6e36634e3d4e..24520e7d3965 100644
> --- a/arch/arm/dts/zynq-zc770-xm012.dts
> +++ b/arch/arm/dts/zynq-zc770-xm012.dts
> @@ -56,6 +56,31 @@
>   &nor0 {
>   	status = "okay";
>   	bank-width = <1>;
> +	partitions {
> +		compatible = "fixed-partitions";
> +		#address-cells = <1>;
> +		#size-cells = <1>;
> +		partition at 0 {
> +			label = "nor-fsbl-uboot";
> +			reg = <0x0 0x100000>;
> +		};
> +		partition at 100000 {
> +			label = "nor-linux";
> +			reg = <0x100000 0x500000>;
> +		};
> +		partition at 600000 {
> +			label = "nor-device-tree";
> +			reg = <0x600000 0x20000>;
> +		};
> +		partition at 620000 {
> +			label = "nor-rootfs";
> +			reg = <0x620000 0x5e0000>;
> +		};
> +		partition at c00000 {
> +			label = "nor-bitstream";
> +			reg = <0xc00000 0x400000>;
> +		};
> +	};
>   };
>   
>   &smcc {
> diff --git a/arch/arm/dts/zynq-zc770-xm013.dts b/arch/arm/dts/zynq-zc770-xm013.dts
> index 582aa1f1b873..add75999f47a 100644
> --- a/arch/arm/dts/zynq-zc770-xm013.dts
> +++ b/arch/arm/dts/zynq-zc770-xm013.dts
> @@ -69,6 +69,31 @@
>   		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 at 0 {
> +				label = "qspi-fsbl-uboot";
> +				reg = <0x0 0x100000>;
> +			};
> +			partition at 100000 {
> +				label = "qspi-linux";
> +				reg = <0x100000 0x500000>;
> +			};
> +			partition at 600000 {
> +				label = "qspi-device-tree";
> +				reg = <0x600000 0x20000>;
> +			};
> +			partition at 620000 {
> +				label = "qspi-rootfs";
> +				reg = <0x620000 0x5e0000>;
> +			};
> +			partition at c00000 {
> +				label = "qspi-bitstream";
> +				reg = <0xc00000 0x400000>;
> +			};
> +		};
>   	};
>   };
>   
> diff --git a/arch/arm/dts/zynq-zed.dts b/arch/arm/dts/zynq-zed.dts
> index 5320b4b233ae..70bc41822e36 100644
> --- a/arch/arm/dts/zynq-zed.dts
> +++ b/arch/arm/dts/zynq-zed.dts
> @@ -55,8 +55,35 @@
>   	flash at 0 {
>   		compatible = "spansion,s25fl256s1", "jedec,spi-nor";
>   		reg = <0>;
> -		spi-max-frequency = <30000000>;
> +		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 at 0 {
> +				label = "qspi-fsbl-uboot";
> +				reg = <0x0 0x100000>;
> +			};
> +			partition at 100000 {
> +				label = "qspi-linux";
> +				reg = <0x100000 0x500000>;
> +			};
> +			partition at 600000 {
> +				label = "qspi-device-tree";
> +				reg = <0x600000 0x20000>;
> +			};
> +			partition at 620000 {
> +				label = "qspi-rootfs";
> +				reg = <0x620000 0x5e0000>;
> +			};
> +			partition at c00000 {
> +				label = "qspi-bitstream";
> +				reg = <0xc00000 0x400000>;
> +			};
> +		};
>   	};
>   };
>   

Applied.
M


More information about the U-Boot mailing list