cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

keystone.dtsi (9501B)


      1// SPDX-License-Identifier: GPL-2.0
      2/*
      3 * Copyright (C) 2013-2017 Texas Instruments Incorporated - http://www.ti.com/
      4 */
      5
      6#include <dt-bindings/interrupt-controller/arm-gic.h>
      7#include <dt-bindings/gpio/gpio.h>
      8
      9/ {
     10	compatible = "ti,keystone";
     11	model = "Texas Instruments Keystone 2 SoC";
     12	#address-cells = <2>;
     13	#size-cells = <2>;
     14	interrupt-parent = <&gic>;
     15
     16	aliases {
     17		serial0	= &uart0;
     18		spi0 = &spi0;
     19		spi1 = &spi1;
     20		spi2 = &spi2;
     21	};
     22
     23	chosen { };
     24
     25	memory: memory@80000000 {
     26		device_type = "memory";
     27		reg = <0x00000000 0x80000000 0x00000000 0x40000000>;
     28	};
     29
     30	gic: interrupt-controller@2561000 {
     31		compatible = "arm,gic-400", "arm,cortex-a15-gic";
     32		#interrupt-cells = <3>;
     33		interrupt-controller;
     34		reg = <0x0 0x02561000 0x0 0x1000>,
     35		      <0x0 0x02562000 0x0 0x2000>,
     36		      <0x0 0x02564000 0x0 0x2000>,
     37		      <0x0 0x02566000 0x0 0x2000>;
     38		interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) |
     39				IRQ_TYPE_LEVEL_HIGH)>;
     40	};
     41
     42	timer {
     43		compatible = "arm,armv7-timer";
     44		interrupts =
     45			<GIC_PPI 13
     46				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
     47			<GIC_PPI 14
     48				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
     49			<GIC_PPI 11
     50				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
     51			<GIC_PPI 10
     52				(GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
     53	};
     54
     55	pmu {
     56		compatible = "arm,cortex-a15-pmu";
     57		interrupts = <GIC_SPI 20 IRQ_TYPE_EDGE_RISING>,
     58			     <GIC_SPI 21 IRQ_TYPE_EDGE_RISING>,
     59			     <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>,
     60			     <GIC_SPI 23 IRQ_TYPE_EDGE_RISING>;
     61	};
     62
     63	psci {
     64		compatible	= "arm,psci";
     65		method		= "smc";
     66		cpu_suspend	= <0x84000001>;
     67		cpu_off		= <0x84000002>;
     68		cpu_on		= <0x84000003>;
     69	};
     70
     71	soc0: soc@0 {
     72		#address-cells = <1>;
     73		#size-cells = <1>;
     74		compatible = "ti,keystone","simple-bus";
     75		interrupt-parent = <&gic>;
     76		ranges = <0x0 0x0 0x0 0xc0000000>;
     77		dma-ranges = <0x80000000 0x8 0x00000000 0x80000000>;
     78
     79		pllctrl: pll-controller@2310000 {
     80			compatible = "ti,keystone-pllctrl", "syscon";
     81			reg = <0x02310000 0x200>;
     82		};
     83
     84		psc: power-sleep-controller@2350000 {
     85			compatible = "syscon", "simple-mfd";
     86			reg = <0x02350000 0x1000>;
     87		};
     88
     89		devctrl: device-state-control@2620000 {
     90			compatible = "ti,keystone-devctrl", "syscon", "simple-mfd";
     91			reg = <0x02620000 0x1000>;
     92			#address-cells = <1>;
     93			#size-cells = <1>;
     94			ranges = <0x0 0x02620000 0x1000>;
     95
     96			kirq0: keystone_irq@2a0 {
     97				compatible = "ti,keystone-irq";
     98				reg = <0x2a0 0x4>;
     99				interrupts = <GIC_SPI 4 IRQ_TYPE_EDGE_RISING>;
    100				interrupt-controller;
    101				#interrupt-cells = <1>;
    102				ti,syscon-dev = <&devctrl 0x2a0>;
    103			};
    104
    105			rstctrl: reset-controller@328 {
    106				compatible = "ti,keystone-reset";
    107				reg = <0x328 0x10>;
    108				ti,syscon-pll = <&pllctrl 0xe4>;
    109				ti,syscon-dev = <&devctrl 0x328>;
    110				ti,wdt-list = <0>;
    111			};
    112		};
    113
    114		/include/ "keystone-clocks.dtsi"
    115
    116		uart0: serial@2530c00 {
    117			compatible = "ti,da830-uart", "ns16550a";
    118			current-speed = <115200>;
    119			reg-shift = <2>;
    120			reg-io-width = <4>;
    121			reg = <0x02530c00 0x100>;
    122			clocks	= <&clkuart0>;
    123			interrupts = <GIC_SPI 277 IRQ_TYPE_EDGE_RISING>;
    124		};
    125
    126		uart1:	serial@2531000 {
    127			compatible = "ti,da830-uart", "ns16550a";
    128			current-speed = <115200>;
    129			reg-shift = <2>;
    130			reg-io-width = <4>;
    131			reg = <0x02531000 0x100>;
    132			clocks	= <&clkuart1>;
    133			interrupts = <GIC_SPI 280 IRQ_TYPE_EDGE_RISING>;
    134		};
    135
    136		i2c0: i2c@2530000 {
    137			compatible = "ti,davinci-i2c";
    138			reg = <0x02530000 0x400>;
    139			clock-frequency = <100000>;
    140			clocks = <&clki2c>;
    141			interrupts = <GIC_SPI 283 IRQ_TYPE_EDGE_RISING>;
    142			#address-cells = <1>;
    143			#size-cells = <0>;
    144		};
    145
    146		i2c1: i2c@2530400 {
    147			compatible = "ti,davinci-i2c";
    148			reg = <0x02530400 0x400>;
    149			clock-frequency = <100000>;
    150			clocks = <&clki2c>;
    151			interrupts = <GIC_SPI 286 IRQ_TYPE_EDGE_RISING>;
    152			#address-cells = <1>;
    153			#size-cells = <0>;
    154		};
    155
    156		i2c2: i2c@2530800 {
    157			compatible = "ti,davinci-i2c";
    158			reg = <0x02530800 0x400>;
    159			clock-frequency = <100000>;
    160			clocks = <&clki2c>;
    161			interrupts = <GIC_SPI 289 IRQ_TYPE_EDGE_RISING>;
    162			#address-cells = <1>;
    163			#size-cells = <0>;
    164		};
    165
    166		spi0: spi@21000400 {
    167			compatible = "ti,keystone-spi", "ti,dm6441-spi";
    168			reg = <0x21000400 0x200>;
    169			num-cs = <4>;
    170			ti,davinci-spi-intr-line = <0>;
    171			interrupts = <GIC_SPI 292 IRQ_TYPE_EDGE_RISING>;
    172			clocks = <&clkspi>;
    173			#address-cells = <1>;
    174			#size-cells = <0>;
    175		};
    176
    177		spi1: spi@21000600 {
    178			compatible = "ti,keystone-spi", "ti,dm6441-spi";
    179			reg = <0x21000600 0x200>;
    180			num-cs = <4>;
    181			ti,davinci-spi-intr-line = <0>;
    182			interrupts = <GIC_SPI 296 IRQ_TYPE_EDGE_RISING>;
    183			clocks = <&clkspi>;
    184			#address-cells = <1>;
    185			#size-cells = <0>;
    186		};
    187
    188		spi2: spi@21000800 {
    189			compatible = "ti,keystone-spi", "ti,dm6441-spi";
    190			reg = <0x21000800 0x200>;
    191			num-cs = <4>;
    192			ti,davinci-spi-intr-line = <0>;
    193			interrupts = <GIC_SPI 300 IRQ_TYPE_EDGE_RISING>;
    194			clocks = <&clkspi>;
    195			#address-cells = <1>;
    196			#size-cells = <0>;
    197		};
    198
    199		usb_phy: usb_phy@2620738 {
    200			compatible = "ti,keystone-usbphy";
    201			#address-cells = <1>;
    202			#size-cells = <1>;
    203			reg = <0x2620738 24>;
    204			status = "disabled";
    205		};
    206
    207		keystone_usb0: usb@2680000 {
    208			compatible = "ti,keystone-dwc3";
    209			#address-cells = <1>;
    210			#size-cells = <1>;
    211			reg = <0x2680000 0x10000>;
    212			clocks = <&clkusb>;
    213			clock-names = "usb";
    214			interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>;
    215			ranges;
    216			dma-coherent;
    217			dma-ranges;
    218			status = "disabled";
    219
    220			usb0: usb@2690000 {
    221				compatible = "snps,dwc3";
    222				reg = <0x2690000 0x70000>;
    223				interrupts = <GIC_SPI 393 IRQ_TYPE_EDGE_RISING>;
    224				usb-phy = <&usb_phy>, <&usb_phy>;
    225			};
    226		};
    227
    228		wdt: wdt@22f0080 {
    229			compatible = "ti,keystone-wdt","ti,davinci-wdt";
    230			reg = <0x022f0080 0x80>;
    231			clocks = <&clkwdtimer0>;
    232		};
    233
    234		clock_event: timer@22f0000 {
    235			compatible = "ti,keystone-timer";
    236			reg = <0x022f0000 0x80>;
    237			interrupts = <GIC_SPI 110 IRQ_TYPE_EDGE_RISING>;
    238			clocks = <&clktimer15>;
    239		};
    240
    241		gpio0: gpio@260bf00 {
    242			compatible = "ti,keystone-gpio";
    243			reg = <0x0260bf00 0x100>;
    244			gpio-controller;
    245			#gpio-cells = <2>;
    246			/* HW Interrupts mapped to GPIO pins */
    247			interrupts = <GIC_SPI 120 IRQ_TYPE_EDGE_RISING>,
    248					<GIC_SPI 121 IRQ_TYPE_EDGE_RISING>,
    249					<GIC_SPI 122 IRQ_TYPE_EDGE_RISING>,
    250					<GIC_SPI 123 IRQ_TYPE_EDGE_RISING>,
    251					<GIC_SPI 124 IRQ_TYPE_EDGE_RISING>,
    252					<GIC_SPI 125 IRQ_TYPE_EDGE_RISING>,
    253					<GIC_SPI 126 IRQ_TYPE_EDGE_RISING>,
    254					<GIC_SPI 127 IRQ_TYPE_EDGE_RISING>,
    255					<GIC_SPI 128 IRQ_TYPE_EDGE_RISING>,
    256					<GIC_SPI 129 IRQ_TYPE_EDGE_RISING>,
    257					<GIC_SPI 130 IRQ_TYPE_EDGE_RISING>,
    258					<GIC_SPI 131 IRQ_TYPE_EDGE_RISING>,
    259					<GIC_SPI 132 IRQ_TYPE_EDGE_RISING>,
    260					<GIC_SPI 133 IRQ_TYPE_EDGE_RISING>,
    261					<GIC_SPI 134 IRQ_TYPE_EDGE_RISING>,
    262					<GIC_SPI 135 IRQ_TYPE_EDGE_RISING>,
    263					<GIC_SPI 136 IRQ_TYPE_EDGE_RISING>,
    264					<GIC_SPI 137 IRQ_TYPE_EDGE_RISING>,
    265					<GIC_SPI 138 IRQ_TYPE_EDGE_RISING>,
    266					<GIC_SPI 139 IRQ_TYPE_EDGE_RISING>,
    267					<GIC_SPI 140 IRQ_TYPE_EDGE_RISING>,
    268					<GIC_SPI 141 IRQ_TYPE_EDGE_RISING>,
    269					<GIC_SPI 142 IRQ_TYPE_EDGE_RISING>,
    270					<GIC_SPI 143 IRQ_TYPE_EDGE_RISING>,
    271					<GIC_SPI 144 IRQ_TYPE_EDGE_RISING>,
    272					<GIC_SPI 145 IRQ_TYPE_EDGE_RISING>,
    273					<GIC_SPI 146 IRQ_TYPE_EDGE_RISING>,
    274					<GIC_SPI 147 IRQ_TYPE_EDGE_RISING>,
    275					<GIC_SPI 148 IRQ_TYPE_EDGE_RISING>,
    276					<GIC_SPI 149 IRQ_TYPE_EDGE_RISING>,
    277					<GIC_SPI 150 IRQ_TYPE_EDGE_RISING>,
    278					<GIC_SPI 151 IRQ_TYPE_EDGE_RISING>;
    279			clocks = <&clkgpio>;
    280			clock-names = "gpio";
    281			ti,ngpio = <32>;
    282			ti,davinci-gpio-unbanked = <32>;
    283		};
    284
    285		aemif: aemif@21000A00 {
    286			compatible = "ti,keystone-aemif", "ti,davinci-aemif";
    287			#address-cells = <2>;
    288			#size-cells = <1>;
    289			clocks = <&clkaemif>;
    290			clock-names = "aemif";
    291			clock-ranges;
    292
    293			reg = <0x21000A00 0x00000100>;
    294			ranges = <0 0 0x30000000 0x10000000
    295				  1 0 0x21000A00 0x00000100>;
    296		};
    297
    298		pcie0: pcie@21800000 {
    299			compatible = "ti,keystone-pcie", "snps,dw-pcie";
    300			clocks = <&clkpcie>;
    301			clock-names = "pcie";
    302			#address-cells = <3>;
    303			#size-cells = <2>;
    304			reg =  <0x21801000 0x2000>, <0x21800000 0x1000>, <0x02620128 4>;
    305			ranges = <0x82000000 0 0x50000000 0x50000000
    306				  0 0x10000000>;
    307
    308			status = "disabled";
    309			device_type = "pci";
    310			num-lanes = <2>;
    311			bus-range = <0x00 0xff>;
    312
    313			/* error interrupt */
    314			interrupts = <GIC_SPI 38 IRQ_TYPE_EDGE_RISING>;
    315			#interrupt-cells = <1>;
    316			interrupt-map-mask = <0 0 0 7>;
    317			interrupt-map = <0 0 0 1 &pcie_intc0 0>, /* INT A */
    318					<0 0 0 2 &pcie_intc0 1>, /* INT B */
    319					<0 0 0 3 &pcie_intc0 2>, /* INT C */
    320					<0 0 0 4 &pcie_intc0 3>; /* INT D */
    321
    322			pcie_msi_intc0: msi-interrupt-controller {
    323				interrupt-controller;
    324				#interrupt-cells = <1>;
    325				interrupt-parent = <&gic>;
    326				interrupts = <GIC_SPI 30 IRQ_TYPE_EDGE_RISING>,
    327					<GIC_SPI 31 IRQ_TYPE_EDGE_RISING>,
    328					<GIC_SPI 32 IRQ_TYPE_EDGE_RISING>,
    329					<GIC_SPI 33 IRQ_TYPE_EDGE_RISING>,
    330					<GIC_SPI 34 IRQ_TYPE_EDGE_RISING>,
    331					<GIC_SPI 35 IRQ_TYPE_EDGE_RISING>,
    332					<GIC_SPI 36 IRQ_TYPE_EDGE_RISING>,
    333					<GIC_SPI 37 IRQ_TYPE_EDGE_RISING>;
    334			};
    335
    336			pcie_intc0: legacy-interrupt-controller {
    337				interrupt-controller;
    338				#interrupt-cells = <1>;
    339				interrupt-parent = <&gic>;
    340				interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>,
    341					<GIC_SPI 27 IRQ_TYPE_EDGE_RISING>,
    342					<GIC_SPI 28 IRQ_TYPE_EDGE_RISING>,
    343					<GIC_SPI 29 IRQ_TYPE_EDGE_RISING>;
    344			};
    345		};
    346
    347		emif: emif@21010000 {
    348			compatible = "ti,emif-keystone";
    349			reg = <0x21010000 0x200>;
    350			interrupts = <GIC_SPI 448 IRQ_TYPE_EDGE_RISING>;
    351			interrupt-parent = <&gic>;
    352		};
    353	};
    354};