260 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			260 lines
		
	
	
		
			4.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| // SPDX-License-Identifier: GPL-2.0
 | |
| /dts-v1/;
 | |
| 
 | |
| /memreserve/ 0x00000000 0x00001000;	// reserved
 | |
| /memreserve/ 0x00001000 0x000ef000;	// ROM data
 | |
| /memreserve/ 0x000f0000 0x004cc000;	// reserved
 | |
| 
 | |
| #include <dt-bindings/interrupt-controller/mips-gic.h>
 | |
| 
 | |
| / {
 | |
| 	#address-cells = <1>;
 | |
| 	#size-cells = <1>;
 | |
| 	compatible = "mti,sead-3";
 | |
| 	model = "MIPS SEAD-3";
 | |
| 
 | |
| 	chosen {
 | |
| 		stdout-path = "serial1:115200";
 | |
| 	};
 | |
| 
 | |
| 	aliases {
 | |
| 		serial0 = &uart0;
 | |
| 		serial1 = &uart1;
 | |
| 	};
 | |
| 
 | |
| 	cpus {
 | |
| 		cpu@0 {
 | |
| 			compatible = "mti,mips14KEc", "mti,mips14Kc";
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	memory {
 | |
| 		device_type = "memory";
 | |
| 		reg = <0x0 0x08000000>;
 | |
| 	};
 | |
| 
 | |
| 	cpu_intc: interrupt-controller {
 | |
| 		compatible = "mti,cpu-interrupt-controller";
 | |
| 
 | |
| 		interrupt-controller;
 | |
| 		#interrupt-cells = <1>;
 | |
| 	};
 | |
| 
 | |
| 	gic: interrupt-controller@1b1c0000 {
 | |
| 		compatible = "mti,gic";
 | |
| 		reg = <0x1b1c0000 0x20000>;
 | |
| 
 | |
| 		interrupt-controller;
 | |
| 		#interrupt-cells = <3>;
 | |
| 
 | |
| 		/*
 | |
| 		 * Declare the interrupt-parent even though the mti,gic
 | |
| 		 * binding doesn't require it, such that the kernel can
 | |
| 		 * figure out that cpu_intc is the root interrupt
 | |
| 		 * controller & should be probed first.
 | |
| 		 */
 | |
| 		interrupt-parent = <&cpu_intc>;
 | |
| 	};
 | |
| 
 | |
| 	usb@1b200000 {
 | |
| 		compatible = "generic-ehci";
 | |
| 		reg = <0x1b200000 0x1000>;
 | |
| 
 | |
| 		interrupt-parent = <&gic>;
 | |
| 		interrupts = <GIC_SHARED 0 IRQ_TYPE_LEVEL_HIGH>; /* GIC 0 or CPU 6 */
 | |
| 
 | |
| 		has-transaction-translator;
 | |
| 	};
 | |
| 
 | |
| 	flash@1c000000 {
 | |
| 		compatible = "intel,28f128j3", "cfi-flash";
 | |
| 		reg = <0x1c000000 0x2000000>;
 | |
| 		#address-cells = <1>;
 | |
| 		#size-cells = <1>;
 | |
| 		bank-width = <4>;
 | |
| 
 | |
| 		partitions {
 | |
| 			compatible = "fixed-partitions";
 | |
| 			#address-cells = <1>;
 | |
| 			#size-cells = <1>;
 | |
| 
 | |
| 			user-fs@0 {
 | |
| 				label = "User FS";
 | |
| 				reg = <0x0 0x1fc0000>;
 | |
| 			};
 | |
| 
 | |
| 			board-config@3e0000 {
 | |
| 				label = "Board Config";
 | |
| 				reg = <0x1fc0000 0x40000>;
 | |
| 			};
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	fpga_regs: system-controller@1f000000 {
 | |
| 		compatible = "mti,sead3-fpga", "syscon", "simple-mfd";
 | |
| 		reg = <0x1f000000 0x200>;
 | |
| 
 | |
| 		reboot {
 | |
| 			compatible = "syscon-reboot";
 | |
| 			regmap = <&fpga_regs>;
 | |
| 			offset = <0x50>;
 | |
| 			mask = <0x4d>;
 | |
| 		};
 | |
| 
 | |
| 		poweroff {
 | |
| 			compatible = "restart-poweroff";
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	system-controller@1f000200 {
 | |
| 		compatible = "mti,sead3-cpld", "syscon", "simple-mfd";
 | |
| 		reg = <0x1f000200 0x300>;
 | |
| 
 | |
| 		led@10.0 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x10>;
 | |
| 			mask = <0x1>;
 | |
| 			label = "pled0";
 | |
| 		};
 | |
| 		led@10.1 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x10>;
 | |
| 			mask = <0x2>;
 | |
| 			label = "pled1";
 | |
| 		};
 | |
| 		led@10.2 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x10>;
 | |
| 			mask = <0x4>;
 | |
| 			label = "pled2";
 | |
| 		};
 | |
| 		led@10.3 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x10>;
 | |
| 			mask = <0x8>;
 | |
| 			label = "pled3";
 | |
| 		};
 | |
| 		led@10.4 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x10>;
 | |
| 			mask = <0x10>;
 | |
| 			label = "pled4";
 | |
| 		};
 | |
| 		led@10.5 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x10>;
 | |
| 			mask = <0x20>;
 | |
| 			label = "pled5";
 | |
| 		};
 | |
| 		led@10.6 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x10>;
 | |
| 			mask = <0x40>;
 | |
| 			label = "pled6";
 | |
| 		};
 | |
| 		led@10.7 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x10>;
 | |
| 			mask = <0x80>;
 | |
| 			label = "pled7";
 | |
| 		};
 | |
| 
 | |
| 		led@18.0 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x18>;
 | |
| 			mask = <0x1>;
 | |
| 			label = "fled0";
 | |
| 		};
 | |
| 		led@18.1 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x18>;
 | |
| 			mask = <0x2>;
 | |
| 			label = "fled1";
 | |
| 		};
 | |
| 		led@18.2 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x18>;
 | |
| 			mask = <0x4>;
 | |
| 			label = "fled2";
 | |
| 		};
 | |
| 		led@18.3 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x18>;
 | |
| 			mask = <0x8>;
 | |
| 			label = "fled3";
 | |
| 		};
 | |
| 		led@18.4 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x18>;
 | |
| 			mask = <0x10>;
 | |
| 			label = "fled4";
 | |
| 		};
 | |
| 		led@18.5 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x18>;
 | |
| 			mask = <0x20>;
 | |
| 			label = "fled5";
 | |
| 		};
 | |
| 		led@18.6 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x18>;
 | |
| 			mask = <0x40>;
 | |
| 			label = "fled6";
 | |
| 		};
 | |
| 		led@18.7 {
 | |
| 			compatible = "register-bit-led";
 | |
| 			offset = <0x18>;
 | |
| 			mask = <0x80>;
 | |
| 			label = "fled7";
 | |
| 		};
 | |
| 
 | |
| 		lcd@200 {
 | |
| 			compatible = "mti,sead3-lcd";
 | |
| 			offset = <0x200>;
 | |
| 		};
 | |
| 	};
 | |
| 
 | |
| 	/* UART connected to FTDI & miniUSB socket */
 | |
| 	uart0: uart@1f000900 {
 | |
| 		compatible = "ns16550a";
 | |
| 		reg = <0x1f000900 0x20>;
 | |
| 		reg-io-width = <4>;
 | |
| 		reg-shift = <2>;
 | |
| 
 | |
| 		clock-frequency = <14745600>;
 | |
| 
 | |
| 		interrupt-parent = <&gic>;
 | |
| 		interrupts = <GIC_SHARED 3 IRQ_TYPE_LEVEL_HIGH>; /* GIC 3 or CPU 4 */
 | |
| 
 | |
| 		no-loopback-test;
 | |
| 	};
 | |
| 
 | |
| 	/* UART connected to RS232 socket */
 | |
| 	uart1: uart@1f000800 {
 | |
| 		compatible = "ns16550a";
 | |
| 		reg = <0x1f000800 0x20>;
 | |
| 		reg-io-width = <4>;
 | |
| 		reg-shift = <2>;
 | |
| 
 | |
| 		clock-frequency = <14745600>;
 | |
| 
 | |
| 		interrupt-parent = <&gic>;
 | |
| 		interrupts = <GIC_SHARED 2 IRQ_TYPE_LEVEL_HIGH>; /* GIC 2 or CPU 4 */
 | |
| 
 | |
| 		no-loopback-test;
 | |
| 	};
 | |
| 
 | |
| 	ethernet@1f010000 {
 | |
| 		compatible = "smsc,lan9115";
 | |
| 		reg = <0x1f010000 0x10000>;
 | |
| 		reg-io-width = <4>;
 | |
| 
 | |
| 		interrupt-parent = <&gic>;
 | |
| 		interrupts = <GIC_SHARED 0 IRQ_TYPE_LEVEL_HIGH>; /* GIC 0 or CPU 6 */
 | |
| 
 | |
| 		phy-mode = "mii";
 | |
| 		smsc,irq-push-pull;
 | |
| 		smsc,save-mac-address;
 | |
| 	};
 | |
| };
 |