xref: /freebsd-src/sys/contrib/device-tree/src/arm/intel/ixp/intel-ixp42x-gateway-7001.dts (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: ISC
2f126890aSEmmanuel Vadot/*
3f126890aSEmmanuel Vadot * Device Tree file for Gateway 7001 AP based on IXP422
4f126890aSEmmanuel Vadot * Derived from boardfiles written by Imre Kaloz
5f126890aSEmmanuel Vadot */
6f126890aSEmmanuel Vadot
7f126890aSEmmanuel Vadot/dts-v1/;
8f126890aSEmmanuel Vadot
9f126890aSEmmanuel Vadot#include "intel-ixp42x.dtsi"
10f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h>
11f126890aSEmmanuel Vadot
12f126890aSEmmanuel Vadot/ {
13f126890aSEmmanuel Vadot	model = "Gateway 7001 AP";
14f126890aSEmmanuel Vadot	compatible = "gateway,7001", "intel,ixp42x";
15f126890aSEmmanuel Vadot	#address-cells = <1>;
16f126890aSEmmanuel Vadot	#size-cells = <1>;
17f126890aSEmmanuel Vadot
18f126890aSEmmanuel Vadot	memory@0 {
19f126890aSEmmanuel Vadot		/* 32 MB SDRAM */
20f126890aSEmmanuel Vadot		device_type = "memory";
21f126890aSEmmanuel Vadot		reg = <0x00000000 0x2000000>;
22f126890aSEmmanuel Vadot	};
23f126890aSEmmanuel Vadot
24f126890aSEmmanuel Vadot	chosen {
25f126890aSEmmanuel Vadot		bootargs = "console=ttyS0,115200n8";
26f126890aSEmmanuel Vadot		stdout-path = "uart1:115200n8";
27f126890aSEmmanuel Vadot	};
28f126890aSEmmanuel Vadot
29f126890aSEmmanuel Vadot	aliases {
30f126890aSEmmanuel Vadot		/* second UART is the primary console */
31f126890aSEmmanuel Vadot		serial0 = &uart1;
32f126890aSEmmanuel Vadot	};
33f126890aSEmmanuel Vadot
34f126890aSEmmanuel Vadot	soc {
35f126890aSEmmanuel Vadot		bus@c4000000 {
36f126890aSEmmanuel Vadot			flash@0,0 {
37f126890aSEmmanuel Vadot				compatible = "intel,ixp4xx-flash", "cfi-flash";
38f126890aSEmmanuel Vadot				bank-width = <2>;
39f126890aSEmmanuel Vadot				/*
40f126890aSEmmanuel Vadot				 * 8 MB of flash
41f126890aSEmmanuel Vadot				 */
42f126890aSEmmanuel Vadot				reg = <0 0x00000000 0x800000>;
43f126890aSEmmanuel Vadot
44f126890aSEmmanuel Vadot				/* Configure expansion bus to allow writes */
45f126890aSEmmanuel Vadot				intel,ixp4xx-eb-write-enable = <1>;
46f126890aSEmmanuel Vadot
47f126890aSEmmanuel Vadot				partitions {
48f126890aSEmmanuel Vadot					compatible = "redboot-fis";
49f126890aSEmmanuel Vadot					/* Eraseblock at 0x7e0000 */
50f126890aSEmmanuel Vadot					fis-index-block = <0x3f>;
51f126890aSEmmanuel Vadot				};
52f126890aSEmmanuel Vadot			};
53f126890aSEmmanuel Vadot		};
54f126890aSEmmanuel Vadot
55f126890aSEmmanuel Vadot		pci@c0000000 {
56f126890aSEmmanuel Vadot			status = "okay";
57f126890aSEmmanuel Vadot
58f126890aSEmmanuel Vadot			/*
59f126890aSEmmanuel Vadot			 * Taken from Gateway 7001 PCI boardfile (gateway7001-pci.c)
60f126890aSEmmanuel Vadot			 * We have slots (IDSEL) 1 and 2 with one assigned IRQ
61f126890aSEmmanuel Vadot			 * each handling all IRQs.
62f126890aSEmmanuel Vadot			 */
63*8d13bc63SEmmanuel Vadot			#interrupt-cells = <1>;
64*8d13bc63SEmmanuel Vadot			interrupt-map-mask = <0xf800 0 0 7>;
65f126890aSEmmanuel Vadot			interrupt-map =
66f126890aSEmmanuel Vadot			/* IDSEL 1 */
67f126890aSEmmanuel Vadot			<0x0800 0 0 1 &gpio0 11 IRQ_TYPE_LEVEL_LOW>, /* INT A on slot 1 is irq 11 */
68f126890aSEmmanuel Vadot			<0x0800 0 0 2 &gpio0 11 IRQ_TYPE_LEVEL_LOW>, /* INT B on slot 1 is irq 11 */
69f126890aSEmmanuel Vadot			<0x0800 0 0 3 &gpio0 11 IRQ_TYPE_LEVEL_LOW>, /* INT C on slot 1 is irq 11 */
70f126890aSEmmanuel Vadot			<0x0800 0 0 4 &gpio0 11 IRQ_TYPE_LEVEL_LOW>, /* INT D on slot 1 is irq 11 */
71f126890aSEmmanuel Vadot			/* IDSEL 2 */
72f126890aSEmmanuel Vadot			<0x1000 0 0 1 &gpio0 10 IRQ_TYPE_LEVEL_LOW>, /* INT A on slot 2 is irq 10 */
73f126890aSEmmanuel Vadot			<0x1000 0 0 2 &gpio0 10 IRQ_TYPE_LEVEL_LOW>, /* INT B on slot 2 is irq 10 */
74f126890aSEmmanuel Vadot			<0x1000 0 0 3 &gpio0 10 IRQ_TYPE_LEVEL_LOW>, /* INT C on slot 2 is irq 10 */
75f126890aSEmmanuel Vadot			<0x1000 0 0 4 &gpio0 10 IRQ_TYPE_LEVEL_LOW>; /* INT D on slot 2 is irq 10 */
76f126890aSEmmanuel Vadot		};
77f126890aSEmmanuel Vadot
78f126890aSEmmanuel Vadot		ethernet@c8009000 {
79f126890aSEmmanuel Vadot			status = "okay";
80f126890aSEmmanuel Vadot			queue-rx = <&qmgr 3>;
81f126890aSEmmanuel Vadot			queue-txready = <&qmgr 20>;
82f126890aSEmmanuel Vadot			phy-mode = "rgmii";
83f126890aSEmmanuel Vadot			phy-handle = <&phy1>;
84f126890aSEmmanuel Vadot
85f126890aSEmmanuel Vadot			mdio {
86f126890aSEmmanuel Vadot				#address-cells = <1>;
87f126890aSEmmanuel Vadot				#size-cells = <0>;
88f126890aSEmmanuel Vadot
89f126890aSEmmanuel Vadot				phy1: ethernet-phy@1 {
90f126890aSEmmanuel Vadot					reg = <1>;
91f126890aSEmmanuel Vadot				};
92f126890aSEmmanuel Vadot			};
93f126890aSEmmanuel Vadot		};
94f126890aSEmmanuel Vadot
95f126890aSEmmanuel Vadot		ethernet@c800a000 {
96f126890aSEmmanuel Vadot			status = "okay";
97f126890aSEmmanuel Vadot			queue-rx = <&qmgr 4>;
98f126890aSEmmanuel Vadot			queue-txready = <&qmgr 21>;
99f126890aSEmmanuel Vadot			phy-mode = "rgmii";
100f126890aSEmmanuel Vadot			phy-handle = <&phy2>;
101f126890aSEmmanuel Vadot
102f126890aSEmmanuel Vadot			mdio {
103f126890aSEmmanuel Vadot				#address-cells = <1>;
104f126890aSEmmanuel Vadot				#size-cells = <0>;
105f126890aSEmmanuel Vadot
106f126890aSEmmanuel Vadot				phy2: ethernet-phy@2 {
107f126890aSEmmanuel Vadot					reg = <2>;
108f126890aSEmmanuel Vadot				};
109f126890aSEmmanuel Vadot			};
110f126890aSEmmanuel Vadot		};
111f126890aSEmmanuel Vadot	};
112f126890aSEmmanuel Vadot};
113