115 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			115 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| // SPDX-License-Identifier: GPL-2.0
 | |
| #include "versatile-ab.dts"
 | |
| 
 | |
| / {
 | |
| 	model = "ARM Versatile PB";
 | |
| 	compatible = "arm,versatile-pb";
 | |
| 
 | |
| 	amba {
 | |
| 		/* The Versatile PB is using more SIC IRQ lines than the AB */
 | |
| 		sic: intc@10003000 {
 | |
| 			clear-mask = <0xffffffff>;
 | |
| 			/*
 | |
| 			 * Valid interrupt lines mask according to
 | |
| 			 * figure 3-30 page 3-74 of ARM DUI 0224B
 | |
| 			 */
 | |
| 			valid-mask = <0x7fe003ff>;
 | |
| 		};
 | |
| 
 | |
| 		gpio2: gpio@101e6000 {
 | |
| 			compatible = "arm,pl061", "arm,primecell";
 | |
| 			reg = <0x101e6000 0x1000>;
 | |
| 			interrupts = <8>;
 | |
| 			gpio-controller;
 | |
| 			#gpio-cells = <2>;
 | |
| 			interrupt-controller;
 | |
| 			#interrupt-cells = <2>;
 | |
| 			clocks = <&pclk>;
 | |
| 			clock-names = "apb_pclk";
 | |
| 		};
 | |
| 
 | |
| 		gpio3: gpio@101e7000 {
 | |
| 			compatible = "arm,pl061", "arm,primecell";
 | |
| 			reg = <0x101e7000 0x1000>;
 | |
| 			interrupts = <9>;
 | |
| 			gpio-controller;
 | |
| 			#gpio-cells = <2>;
 | |
| 			interrupt-controller;
 | |
| 			#interrupt-cells = <2>;
 | |
| 			clocks = <&pclk>;
 | |
| 			clock-names = "apb_pclk";
 | |
| 		};
 | |
| 
 | |
| 		pci@10001000 {
 | |
| 			compatible = "arm,versatile-pci";
 | |
| 			device_type = "pci";
 | |
| 			reg = <0x10001000 0x1000
 | |
| 			       0x41000000 0x10000
 | |
| 			       0x42000000 0x100000>;
 | |
| 			bus-range = <0 0xff>;
 | |
| 			#address-cells = <3>;
 | |
| 			#size-cells = <2>;
 | |
| 			#interrupt-cells = <1>;
 | |
| 
 | |
| 			ranges = <0x01000000 0 0x00000000 0x43000000 0 0x00010000   /* downstream I/O */
 | |
| 				  0x02000000 0 0x50000000 0x50000000 0 0x10000000   /* non-prefetchable memory */
 | |
| 				  0x42000000 0 0x60000000 0x60000000 0 0x10000000>; /* prefetchable memory */
 | |
| 
 | |
| 			interrupt-map-mask = <0x1800 0 0 7>;
 | |
| 			interrupt-map = <0x1800 0 0 1 &sic 28
 | |
| 					 0x1800 0 0 2 &sic 29
 | |
| 					 0x1800 0 0 3 &sic 30
 | |
| 					 0x1800 0 0 4 &sic 27
 | |
| 
 | |
| 					 0x1000 0 0 1 &sic 27
 | |
| 					 0x1000 0 0 2 &sic 28
 | |
| 					 0x1000 0 0 3 &sic 29
 | |
| 					 0x1000 0 0 4 &sic 30
 | |
| 
 | |
| 					 0x0800 0 0 1 &sic 30
 | |
| 					 0x0800 0 0 2 &sic 27
 | |
| 					 0x0800 0 0 3 &sic 28
 | |
| 					 0x0800 0 0 4 &sic 29
 | |
| 
 | |
| 					 0x0000 0 0 1 &sic 29
 | |
| 					 0x0000 0 0 2 &sic 30
 | |
| 					 0x0000 0 0 3 &sic 27
 | |
| 					 0x0000 0 0 4 &sic 28>;
 | |
| 		};
 | |
| 
 | |
| 		fpga {
 | |
| 			mmc@5000 {
 | |
| 				/*
 | |
| 				 * Overrides the interrupt assignment from
 | |
| 				 * the Versatile AB board file.
 | |
| 				 */
 | |
| 				interrupts-extended = <&sic 22 &sic 23>;
 | |
| 			};
 | |
| 			uart@9000 {
 | |
| 				compatible = "arm,pl011", "arm,primecell";
 | |
| 				reg = <0x9000 0x1000>;
 | |
| 				interrupt-parent = <&sic>;
 | |
| 				interrupts = <6>;
 | |
| 				clocks = <&xtal24mhz>, <&pclk>;
 | |
| 				clock-names = "uartclk", "apb_pclk";
 | |
| 			};
 | |
| 			sci@a000 {
 | |
| 				compatible = "arm,primecell";
 | |
| 				reg = <0xa000 0x1000>;
 | |
| 				interrupt-parent = <&sic>;
 | |
| 				interrupts = <5>;
 | |
| 				clocks = <&xtal24mhz>;
 | |
| 				clock-names = "apb_pclk";
 | |
| 			};
 | |
| 			mmc@b000 {
 | |
| 				compatible = "arm,pl180", "arm,primecell";
 | |
| 				reg = <0xb000 0x1000>;
 | |
| 				interrupt-parent = <&sic>;
 | |
| 				interrupts = <1>, <2>;
 | |
| 				clocks = <&xtal24mhz>, <&pclk>;
 | |
| 				clock-names = "mclk", "apb_pclk";
 | |
| 			};
 | |
| 		};
 | |
| 	};
 | |
| };
 | 
