summaryrefslogtreecommitdiff
path: root/arch/arm/dts/zynq-cse-qspi.dtsi
blob: 2e4afafebf5192837b64011fa51354649d0cc7ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
// SPDX-License-Identifier: GPL-2.0+
/*
 * Xilinx CSE QSPI board DTS
 *
 * Copyright (C) 2015 - 2017 Xilinx, Inc.
 */
/dts-v1/;

/ {
	#address-cells = <1>;
	#size-cells = <1>;
	model = "Zynq CSE QSPI Board";
	compatible = "xlnx,zynq-cse-qspi", "xlnx,zynq-7000";

	aliases {
		spi0 = &qspi;
		serial0 = &dcc;
	};

	memory@fffc0000 {
		device_type = "memory";
		reg = <0xFFFC0000 0x40000>;
	};

	chosen {
		stdout-path = "serial0:115200n8";
	};

	dcc: dcc {
		compatible = "arm,dcc";
		status = "disabled";
		bootph-all;
	};

	amba: amba {
		bootph-all;
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <1>;
		interrupt-parent = <&intc>;
		ranges;

		intc: interrupt-controller@f8f01000 {
			compatible = "arm,cortex-a9-gic";
			#interrupt-cells = <3>;
			interrupt-controller;
			reg = <0xF8F01000 0x1000>,
			      <0xF8F00100 0x100>;
		};

		qspi: spi@e000d000 {
			clock-names = "ref_clk", "pclk";
			clocks = <&clkc 10>, <&clkc 43>;
			compatible = "xlnx,zynq-qspi-1.0";
			status = "okay";
			interrupt-parent = <&intc>;
			interrupts = <0 19 4>;
			reg = <0xe000d000 0x1000>;
			#address-cells = <1>;
			#size-cells = <0>;
			num-cs = <1>;
			flash0: flash@0 {
				compatible = "n25q128a11", "jedec,spi-nor";
				reg = <0x0>;
				spi-tx-bus-width = <1>;
				spi-rx-bus-width = <4>;
				spi-max-frequency = <50000000>;
				#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>;
				};
			};
		};

		slcr: slcr@f8000000 {
			bootph-all;
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "xlnx,zynq-slcr", "syscon", "simple-bus";
			reg = <0xF8000000 0x1000>;
			ranges;
			clkc: clkc@100 {
				#clock-cells = <1>;
				compatible = "xlnx,ps7-clkc";
				fclk-enable = <0xf>;
				bootph-all;
				clock-output-names = "armpll", "ddrpll", "iopll", "cpu_6or4x",
						"cpu_3or2x", "cpu_2x", "cpu_1x", "ddr2x", "ddr3x",
						"dci", "lqspi", "smc", "pcap", "gem0", "gem1",
						"fclk0", "fclk1", "fclk2", "fclk3", "can0", "can1",
						"sdio0", "sdio1", "uart0", "uart1", "spi0", "spi1",
						"dma", "usb0_aper", "usb1_aper", "gem0_aper",
						"gem1_aper", "sdio0_aper", "sdio1_aper",
						"spi0_aper", "spi1_aper", "can0_aper", "can1_aper",
						"i2c0_aper", "i2c1_aper", "uart0_aper", "uart1_aper",
						"gpio_aper", "lqspi_aper", "smc_aper", "swdt",
						"dbg_trc", "dbg_apb";
				reg = <0x100 0x100>;
			};
		};

		scutimer: timer@f8f00600 {
			bootph-all;
			compatible = "arm,cortex-a9-twd-timer";
			reg = <0xf8f00600 0x20>;
			clock-frequency = <333333333>;
		};
	};

};

&dcc {
	status = "okay";
};