162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * DTS file for SPEAr1310 Evaluation Baord
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * Copyright 2012 Viresh Kumar <vireshk@kernel.org>
662306a36Sopenharmony_ci */
762306a36Sopenharmony_ci
862306a36Sopenharmony_ci/dts-v1/;
962306a36Sopenharmony_ci/include/ "spear1310.dtsi"
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci/ {
1262306a36Sopenharmony_ci	model = "ST SPEAr1310 Evaluation Board";
1362306a36Sopenharmony_ci	compatible = "st,spear1310-evb", "st,spear1310";
1462306a36Sopenharmony_ci	#address-cells = <1>;
1562306a36Sopenharmony_ci	#size-cells = <1>;
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ci	memory {
1862306a36Sopenharmony_ci		reg = <0 0x40000000>;
1962306a36Sopenharmony_ci	};
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci	ahb {
2262306a36Sopenharmony_ci		pinmux@e0700000 {
2362306a36Sopenharmony_ci			pinctrl-names = "default";
2462306a36Sopenharmony_ci			pinctrl-0 = <&state_default>;
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci			state_default: pinmux {
2762306a36Sopenharmony_ci				i2c0 {
2862306a36Sopenharmony_ci					st,pins = "i2c0_grp";
2962306a36Sopenharmony_ci					st,function = "i2c0";
3062306a36Sopenharmony_ci				};
3162306a36Sopenharmony_ci				i2s0 {
3262306a36Sopenharmony_ci					st,pins = "i2s0_grp";
3362306a36Sopenharmony_ci					st,function = "i2s0";
3462306a36Sopenharmony_ci				};
3562306a36Sopenharmony_ci				i2s1 {
3662306a36Sopenharmony_ci					st,pins = "i2s1_grp";
3762306a36Sopenharmony_ci					st,function = "i2s1";
3862306a36Sopenharmony_ci				};
3962306a36Sopenharmony_ci				gpio {
4062306a36Sopenharmony_ci					st,pins = "arm_gpio_grp";
4162306a36Sopenharmony_ci					st,function = "arm_gpio";
4262306a36Sopenharmony_ci				};
4362306a36Sopenharmony_ci				clcd {
4462306a36Sopenharmony_ci					st,pins = "clcd_grp" , "clcd_high_res";
4562306a36Sopenharmony_ci					st,function = "clcd";
4662306a36Sopenharmony_ci				};
4762306a36Sopenharmony_ci				eth {
4862306a36Sopenharmony_ci					st,pins = "gmii_grp";
4962306a36Sopenharmony_ci					st,function = "gmii";
5062306a36Sopenharmony_ci				};
5162306a36Sopenharmony_ci				ssp0 {
5262306a36Sopenharmony_ci					st,pins = "ssp0_grp";
5362306a36Sopenharmony_ci					st,function = "ssp0";
5462306a36Sopenharmony_ci				};
5562306a36Sopenharmony_ci				kbd {
5662306a36Sopenharmony_ci					st,pins = "keyboard_6x6_grp";
5762306a36Sopenharmony_ci					st,function = "keyboard";
5862306a36Sopenharmony_ci				};
5962306a36Sopenharmony_ci				sdhci {
6062306a36Sopenharmony_ci					st,pins = "sdhci_grp";
6162306a36Sopenharmony_ci					st,function = "sdhci";
6262306a36Sopenharmony_ci				};
6362306a36Sopenharmony_ci				smi-pmx {
6462306a36Sopenharmony_ci					st,pins = "smi_2_chips_grp";
6562306a36Sopenharmony_ci					st,function = "smi";
6662306a36Sopenharmony_ci				};
6762306a36Sopenharmony_ci				uart0 {
6862306a36Sopenharmony_ci					st,pins = "uart0_grp";
6962306a36Sopenharmony_ci					st,function = "uart0";
7062306a36Sopenharmony_ci				};
7162306a36Sopenharmony_ci				rs485 {
7262306a36Sopenharmony_ci					st,pins = "rs485_0_1_tdm_0_1_grp";
7362306a36Sopenharmony_ci					st,function = "rs485_0_1_tdm_0_1";
7462306a36Sopenharmony_ci				};
7562306a36Sopenharmony_ci				i2c1_2 {
7662306a36Sopenharmony_ci					st,pins = "i2c_1_2_grp";
7762306a36Sopenharmony_ci					st,function = "i2c_1_2";
7862306a36Sopenharmony_ci				};
7962306a36Sopenharmony_ci				smii {
8062306a36Sopenharmony_ci					st,pins = "smii_0_1_2_grp";
8162306a36Sopenharmony_ci					st,function = "smii_0_1_2";
8262306a36Sopenharmony_ci				};
8362306a36Sopenharmony_ci				nand {
8462306a36Sopenharmony_ci					st,pins = "nand_8bit_grp",
8562306a36Sopenharmony_ci						"nand_16bit_grp";
8662306a36Sopenharmony_ci					st,function = "nand";
8762306a36Sopenharmony_ci				};
8862306a36Sopenharmony_ci				sata {
8962306a36Sopenharmony_ci					st,pins = "sata0_grp";
9062306a36Sopenharmony_ci					st,function = "sata";
9162306a36Sopenharmony_ci				};
9262306a36Sopenharmony_ci				pcie {
9362306a36Sopenharmony_ci					st,pins = "pcie1_grp", "pcie2_grp";
9462306a36Sopenharmony_ci					st,function = "pci_express";
9562306a36Sopenharmony_ci				};
9662306a36Sopenharmony_ci			};
9762306a36Sopenharmony_ci		};
9862306a36Sopenharmony_ci
9962306a36Sopenharmony_ci		ahci@b1000000 {
10062306a36Sopenharmony_ci			status = "okay";
10162306a36Sopenharmony_ci		};
10262306a36Sopenharmony_ci
10362306a36Sopenharmony_ci		miphy@eb800000 {
10462306a36Sopenharmony_ci			status = "okay";
10562306a36Sopenharmony_ci		};
10662306a36Sopenharmony_ci
10762306a36Sopenharmony_ci		cf@b2800000 {
10862306a36Sopenharmony_ci			status = "okay";
10962306a36Sopenharmony_ci		};
11062306a36Sopenharmony_ci
11162306a36Sopenharmony_ci		dma@ea800000 {
11262306a36Sopenharmony_ci			status = "okay";
11362306a36Sopenharmony_ci		};
11462306a36Sopenharmony_ci
11562306a36Sopenharmony_ci		dma@eb000000 {
11662306a36Sopenharmony_ci			status = "okay";
11762306a36Sopenharmony_ci		};
11862306a36Sopenharmony_ci
11962306a36Sopenharmony_ci		fsmc: flash@b0000000 {
12062306a36Sopenharmony_ci			status = "okay";
12162306a36Sopenharmony_ci
12262306a36Sopenharmony_ci			partition@0 {
12362306a36Sopenharmony_ci				label = "xloader";
12462306a36Sopenharmony_ci				reg = <0x0 0x80000>;
12562306a36Sopenharmony_ci			};
12662306a36Sopenharmony_ci			partition@80000 {
12762306a36Sopenharmony_ci				label = "u-boot";
12862306a36Sopenharmony_ci				reg = <0x80000 0x140000>;
12962306a36Sopenharmony_ci			};
13062306a36Sopenharmony_ci			partition@1C0000 {
13162306a36Sopenharmony_ci				label = "environment";
13262306a36Sopenharmony_ci				reg = <0x1C0000 0x40000>;
13362306a36Sopenharmony_ci			};
13462306a36Sopenharmony_ci			partition@200000 {
13562306a36Sopenharmony_ci				label = "dtb";
13662306a36Sopenharmony_ci				reg = <0x200000 0x40000>;
13762306a36Sopenharmony_ci			};
13862306a36Sopenharmony_ci			partition@240000 {
13962306a36Sopenharmony_ci				label = "linux";
14062306a36Sopenharmony_ci				reg = <0x240000 0xC00000>;
14162306a36Sopenharmony_ci			};
14262306a36Sopenharmony_ci			partition@E40000 {
14362306a36Sopenharmony_ci				label = "rootfs";
14462306a36Sopenharmony_ci				reg = <0xE40000 0x0>;
14562306a36Sopenharmony_ci			};
14662306a36Sopenharmony_ci		};
14762306a36Sopenharmony_ci
14862306a36Sopenharmony_ci		gpio_keys {
14962306a36Sopenharmony_ci			compatible = "gpio-keys";
15062306a36Sopenharmony_ci			#address-cells = <1>;
15162306a36Sopenharmony_ci			#size-cells = <0>;
15262306a36Sopenharmony_ci
15362306a36Sopenharmony_ci			button@1 {
15462306a36Sopenharmony_ci				label = "wakeup";
15562306a36Sopenharmony_ci				linux,code = <0x100>;
15662306a36Sopenharmony_ci				gpios = <&gpio0 7 0x4>;
15762306a36Sopenharmony_ci				debounce-interval = <20>;
15862306a36Sopenharmony_ci				wakeup-source;
15962306a36Sopenharmony_ci			};
16062306a36Sopenharmony_ci		};
16162306a36Sopenharmony_ci
16262306a36Sopenharmony_ci		gmac0: eth@e2000000 {
16362306a36Sopenharmony_ci			phy-mode = "gmii";
16462306a36Sopenharmony_ci			status = "okay";
16562306a36Sopenharmony_ci		};
16662306a36Sopenharmony_ci
16762306a36Sopenharmony_ci		sdhci@b3000000 {
16862306a36Sopenharmony_ci			status = "okay";
16962306a36Sopenharmony_ci		};
17062306a36Sopenharmony_ci
17162306a36Sopenharmony_ci		smi: flash@ea000000 {
17262306a36Sopenharmony_ci			status = "okay";
17362306a36Sopenharmony_ci			clock-rate = <50000000>;
17462306a36Sopenharmony_ci
17562306a36Sopenharmony_ci			flash@e6000000 {
17662306a36Sopenharmony_ci				#address-cells = <1>;
17762306a36Sopenharmony_ci				#size-cells = <1>;
17862306a36Sopenharmony_ci				reg = <0xe6000000 0x800000>;
17962306a36Sopenharmony_ci				st,smi-fast-mode;
18062306a36Sopenharmony_ci
18162306a36Sopenharmony_ci				partition@0 {
18262306a36Sopenharmony_ci					label = "xloader";
18362306a36Sopenharmony_ci					reg = <0x0 0x10000>;
18462306a36Sopenharmony_ci				};
18562306a36Sopenharmony_ci				partition@10000 {
18662306a36Sopenharmony_ci					label = "u-boot";
18762306a36Sopenharmony_ci					reg = <0x10000 0x50000>;
18862306a36Sopenharmony_ci				};
18962306a36Sopenharmony_ci				partition@60000 {
19062306a36Sopenharmony_ci					label = "environment";
19162306a36Sopenharmony_ci					reg = <0x60000 0x10000>;
19262306a36Sopenharmony_ci				};
19362306a36Sopenharmony_ci				partition@70000 {
19462306a36Sopenharmony_ci					label = "dtb";
19562306a36Sopenharmony_ci					reg = <0x70000 0x10000>;
19662306a36Sopenharmony_ci				};
19762306a36Sopenharmony_ci				partition@80000 {
19862306a36Sopenharmony_ci					label = "linux";
19962306a36Sopenharmony_ci					reg = <0x80000 0x310000>;
20062306a36Sopenharmony_ci				};
20162306a36Sopenharmony_ci				partition@390000 {
20262306a36Sopenharmony_ci					label = "rootfs";
20362306a36Sopenharmony_ci					reg = <0x390000 0x0>;
20462306a36Sopenharmony_ci				};
20562306a36Sopenharmony_ci			};
20662306a36Sopenharmony_ci		};
20762306a36Sopenharmony_ci
20862306a36Sopenharmony_ci		ehci@e4800000 {
20962306a36Sopenharmony_ci			status = "okay";
21062306a36Sopenharmony_ci		};
21162306a36Sopenharmony_ci
21262306a36Sopenharmony_ci		ehci@e5800000 {
21362306a36Sopenharmony_ci			status = "okay";
21462306a36Sopenharmony_ci		};
21562306a36Sopenharmony_ci
21662306a36Sopenharmony_ci		ohci@e4000000 {
21762306a36Sopenharmony_ci			status = "okay";
21862306a36Sopenharmony_ci		};
21962306a36Sopenharmony_ci
22062306a36Sopenharmony_ci		ohci@e5000000 {
22162306a36Sopenharmony_ci			status = "okay";
22262306a36Sopenharmony_ci		};
22362306a36Sopenharmony_ci
22462306a36Sopenharmony_ci		apb {
22562306a36Sopenharmony_ci			adc@e0080000 {
22662306a36Sopenharmony_ci				status = "okay";
22762306a36Sopenharmony_ci			};
22862306a36Sopenharmony_ci
22962306a36Sopenharmony_ci			gpio0: gpio@e0600000 {
23062306a36Sopenharmony_ci			       status = "okay";
23162306a36Sopenharmony_ci			};
23262306a36Sopenharmony_ci
23362306a36Sopenharmony_ci			gpio1: gpio@e0680000 {
23462306a36Sopenharmony_ci			       status = "okay";
23562306a36Sopenharmony_ci			};
23662306a36Sopenharmony_ci
23762306a36Sopenharmony_ci			gpio@d8400000 {
23862306a36Sopenharmony_ci			       status = "okay";
23962306a36Sopenharmony_ci			};
24062306a36Sopenharmony_ci
24162306a36Sopenharmony_ci			i2c0: i2c@e0280000 {
24262306a36Sopenharmony_ci			       status = "okay";
24362306a36Sopenharmony_ci			};
24462306a36Sopenharmony_ci
24562306a36Sopenharmony_ci			kbd@e0300000 {
24662306a36Sopenharmony_ci				linux,keymap = < 0x00000001
24762306a36Sopenharmony_ci						 0x00010002
24862306a36Sopenharmony_ci						 0x00020003
24962306a36Sopenharmony_ci						 0x00030004
25062306a36Sopenharmony_ci						 0x00040005
25162306a36Sopenharmony_ci						 0x00050006
25262306a36Sopenharmony_ci						 0x00060007
25362306a36Sopenharmony_ci						 0x00070008
25462306a36Sopenharmony_ci						 0x00080009
25562306a36Sopenharmony_ci						 0x0100000a
25662306a36Sopenharmony_ci						 0x0101000c
25762306a36Sopenharmony_ci						 0x0102000d
25862306a36Sopenharmony_ci						 0x0103000e
25962306a36Sopenharmony_ci						 0x0104000f
26062306a36Sopenharmony_ci						 0x01050010
26162306a36Sopenharmony_ci						 0x01060011
26262306a36Sopenharmony_ci						 0x01070012
26362306a36Sopenharmony_ci						 0x01080013
26462306a36Sopenharmony_ci						 0x02000014
26562306a36Sopenharmony_ci						 0x02010015
26662306a36Sopenharmony_ci						 0x02020016
26762306a36Sopenharmony_ci						 0x02030017
26862306a36Sopenharmony_ci						 0x02040018
26962306a36Sopenharmony_ci						 0x02050019
27062306a36Sopenharmony_ci						 0x0206001a
27162306a36Sopenharmony_ci						 0x0207001b
27262306a36Sopenharmony_ci						 0x0208001c
27362306a36Sopenharmony_ci						 0x0300001d
27462306a36Sopenharmony_ci						 0x0301001e
27562306a36Sopenharmony_ci						 0x0302001f
27662306a36Sopenharmony_ci						 0x03030020
27762306a36Sopenharmony_ci						 0x03040021
27862306a36Sopenharmony_ci						 0x03050022
27962306a36Sopenharmony_ci						 0x03060023
28062306a36Sopenharmony_ci						 0x03070024
28162306a36Sopenharmony_ci						 0x03080025
28262306a36Sopenharmony_ci						 0x04000026
28362306a36Sopenharmony_ci						 0x04010027
28462306a36Sopenharmony_ci						 0x04020028
28562306a36Sopenharmony_ci						 0x04030029
28662306a36Sopenharmony_ci						 0x0404002a
28762306a36Sopenharmony_ci						 0x0405002b
28862306a36Sopenharmony_ci						 0x0406002c
28962306a36Sopenharmony_ci						 0x0407002d
29062306a36Sopenharmony_ci						 0x0408002e
29162306a36Sopenharmony_ci						 0x0500002f
29262306a36Sopenharmony_ci						 0x05010030
29362306a36Sopenharmony_ci						 0x05020031
29462306a36Sopenharmony_ci						 0x05030032
29562306a36Sopenharmony_ci						 0x05040033
29662306a36Sopenharmony_ci						 0x05050034
29762306a36Sopenharmony_ci						 0x05060035
29862306a36Sopenharmony_ci						 0x05070036
29962306a36Sopenharmony_ci						 0x05080037
30062306a36Sopenharmony_ci						 0x06000038
30162306a36Sopenharmony_ci						 0x06010039
30262306a36Sopenharmony_ci						 0x0602003a
30362306a36Sopenharmony_ci						 0x0603003b
30462306a36Sopenharmony_ci						 0x0604003c
30562306a36Sopenharmony_ci						 0x0605003d
30662306a36Sopenharmony_ci						 0x0606003e
30762306a36Sopenharmony_ci						 0x0607003f
30862306a36Sopenharmony_ci						 0x06080040
30962306a36Sopenharmony_ci						 0x07000041
31062306a36Sopenharmony_ci						 0x07010042
31162306a36Sopenharmony_ci						 0x07020043
31262306a36Sopenharmony_ci						 0x07030044
31362306a36Sopenharmony_ci						 0x07040045
31462306a36Sopenharmony_ci						 0x07050046
31562306a36Sopenharmony_ci						 0x07060047
31662306a36Sopenharmony_ci						 0x07070048
31762306a36Sopenharmony_ci						 0x07080049
31862306a36Sopenharmony_ci						 0x0800004a
31962306a36Sopenharmony_ci						 0x0801004b
32062306a36Sopenharmony_ci						 0x0802004c
32162306a36Sopenharmony_ci						 0x0803004d
32262306a36Sopenharmony_ci						 0x0804004e
32362306a36Sopenharmony_ci						 0x0805004f
32462306a36Sopenharmony_ci						 0x08060050
32562306a36Sopenharmony_ci						 0x08070051
32662306a36Sopenharmony_ci						 0x08080052 >;
32762306a36Sopenharmony_ci			       autorepeat;
32862306a36Sopenharmony_ci			       st,mode = <0>;
32962306a36Sopenharmony_ci			       suspended_rate = <2000000>;
33062306a36Sopenharmony_ci			       status = "okay";
33162306a36Sopenharmony_ci			};
33262306a36Sopenharmony_ci
33362306a36Sopenharmony_ci			rtc@e0580000 {
33462306a36Sopenharmony_ci			       status = "okay";
33562306a36Sopenharmony_ci			};
33662306a36Sopenharmony_ci
33762306a36Sopenharmony_ci			serial@e0000000 {
33862306a36Sopenharmony_ci			       status = "okay";
33962306a36Sopenharmony_ci				pinctrl-names = "default";
34062306a36Sopenharmony_ci				pinctrl-0 = <>;
34162306a36Sopenharmony_ci			};
34262306a36Sopenharmony_ci
34362306a36Sopenharmony_ci			spi0: spi@e0100000 {
34462306a36Sopenharmony_ci				status = "okay";
34562306a36Sopenharmony_ci				num-cs = <3>;
34662306a36Sopenharmony_ci				cs-gpios = <&gpio1 7 0>, <&spics 0 0>, <&spics 1 0>;
34762306a36Sopenharmony_ci
34862306a36Sopenharmony_ci				stmpe610@0 {
34962306a36Sopenharmony_ci					compatible = "st,stmpe610";
35062306a36Sopenharmony_ci					reg = <0>;
35162306a36Sopenharmony_ci					#address-cells = <1>;
35262306a36Sopenharmony_ci					#size-cells = <0>;
35362306a36Sopenharmony_ci					spi-max-frequency = <1000000>;
35462306a36Sopenharmony_ci					spi-cpha;
35562306a36Sopenharmony_ci					pl022,hierarchy = <0>;
35662306a36Sopenharmony_ci					pl022,interface = <0>;
35762306a36Sopenharmony_ci					pl022,slave-tx-disable;
35862306a36Sopenharmony_ci					pl022,com-mode = <0>;
35962306a36Sopenharmony_ci					pl022,rx-level-trig = <0>;
36062306a36Sopenharmony_ci					pl022,tx-level-trig = <0>;
36162306a36Sopenharmony_ci					pl022,ctrl-len = <0x7>;
36262306a36Sopenharmony_ci					pl022,wait-state = <0>;
36362306a36Sopenharmony_ci					pl022,duplex = <0>;
36462306a36Sopenharmony_ci					interrupts = <6 0x4>;
36562306a36Sopenharmony_ci					interrupt-parent = <&gpio1>;
36662306a36Sopenharmony_ci					irq-trigger = <0x2>;
36762306a36Sopenharmony_ci
36862306a36Sopenharmony_ci					stmpe_touchscreen {
36962306a36Sopenharmony_ci						compatible = "st,stmpe-ts";
37062306a36Sopenharmony_ci						ts,sample-time = <4>;
37162306a36Sopenharmony_ci						ts,mod-12b = <1>;
37262306a36Sopenharmony_ci						ts,ref-sel = <0>;
37362306a36Sopenharmony_ci						ts,adc-freq = <1>;
37462306a36Sopenharmony_ci						ts,ave-ctrl = <1>;
37562306a36Sopenharmony_ci						ts,touch-det-delay = <2>;
37662306a36Sopenharmony_ci						ts,settling = <2>;
37762306a36Sopenharmony_ci						ts,fraction-z = <7>;
37862306a36Sopenharmony_ci						ts,i-drive = <1>;
37962306a36Sopenharmony_ci					};
38062306a36Sopenharmony_ci				};
38162306a36Sopenharmony_ci
38262306a36Sopenharmony_ci				flash@1 {
38362306a36Sopenharmony_ci					compatible = "st,m25p80";
38462306a36Sopenharmony_ci					reg = <1>;
38562306a36Sopenharmony_ci					spi-max-frequency = <12000000>;
38662306a36Sopenharmony_ci					spi-cpol;
38762306a36Sopenharmony_ci					spi-cpha;
38862306a36Sopenharmony_ci					pl022,hierarchy = <0>;
38962306a36Sopenharmony_ci					pl022,interface = <0>;
39062306a36Sopenharmony_ci					pl022,slave-tx-disable;
39162306a36Sopenharmony_ci					pl022,com-mode = <0x2>;
39262306a36Sopenharmony_ci					pl022,rx-level-trig = <0>;
39362306a36Sopenharmony_ci					pl022,tx-level-trig = <0>;
39462306a36Sopenharmony_ci					pl022,ctrl-len = <0x11>;
39562306a36Sopenharmony_ci					pl022,wait-state = <0>;
39662306a36Sopenharmony_ci					pl022,duplex = <0>;
39762306a36Sopenharmony_ci				};
39862306a36Sopenharmony_ci			};
39962306a36Sopenharmony_ci
40062306a36Sopenharmony_ci			wdt@ec800620 {
40162306a36Sopenharmony_ci			       status = "okay";
40262306a36Sopenharmony_ci			};
40362306a36Sopenharmony_ci		};
40462306a36Sopenharmony_ci	};
40562306a36Sopenharmony_ci};
406