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

bcm21664.dtsi (8361B)


      1/*
      2 * Copyright (C) 2014 Broadcom Corporation
      3 *
      4 * This program is free software; you can redistribute it and/or
      5 * modify it under the terms of the GNU General Public License as
      6 * published by the Free Software Foundation version 2.
      7 *
      8 * This program is distributed "as is" WITHOUT ANY WARRANTY of any
      9 * kind, whether express or implied; without even the implied warranty
     10 * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     11 * GNU General Public License for more details.
     12 */
     13
     14#include <dt-bindings/interrupt-controller/arm-gic.h>
     15#include <dt-bindings/interrupt-controller/irq.h>
     16
     17#include "dt-bindings/clock/bcm21664.h"
     18
     19/ {
     20	#address-cells = <1>;
     21	#size-cells = <1>;
     22	model = "BCM21664 SoC";
     23	compatible = "brcm,bcm21664";
     24	interrupt-parent = <&gic>;
     25
     26	chosen {
     27		bootargs = "console=ttyS0,115200n8";
     28	};
     29
     30	cpus {
     31		#address-cells = <1>;
     32		#size-cells = <0>;
     33
     34		cpu0: cpu@0 {
     35			device_type = "cpu";
     36			compatible = "arm,cortex-a9";
     37			reg = <0>;
     38		};
     39
     40		cpu1: cpu@1 {
     41			device_type = "cpu";
     42			compatible = "arm,cortex-a9";
     43			enable-method = "brcm,bcm11351-cpu-method";
     44			secondary-boot-reg = <0x35004178>;
     45			reg = <1>;
     46		};
     47	};
     48
     49	gic: interrupt-controller@3ff00100 {
     50		compatible = "arm,cortex-a9-gic";
     51		#interrupt-cells = <3>;
     52		#address-cells = <0>;
     53		interrupt-controller;
     54		reg = <0x3ff01000 0x1000>,
     55		      <0x3ff00100 0x100>;
     56	};
     57
     58	smc@3404e000 {
     59		compatible = "brcm,bcm21664-smc", "brcm,kona-smc";
     60		reg = <0x3404e000 0x400>; /* 1 KiB in SRAM */
     61	};
     62
     63	uart@3e000000 {
     64		compatible = "brcm,bcm21664-dw-apb-uart", "snps,dw-apb-uart";
     65		status = "disabled";
     66		reg = <0x3e000000 0x118>;
     67		clocks = <&slave_ccu BCM21664_SLAVE_CCU_UARTB>;
     68		interrupts = <GIC_SPI 67 IRQ_TYPE_LEVEL_HIGH>;
     69		reg-shift = <2>;
     70		reg-io-width = <4>;
     71	};
     72
     73	uart@3e001000 {
     74		compatible = "brcm,bcm21664-dw-apb-uart", "snps,dw-apb-uart";
     75		status = "disabled";
     76		reg = <0x3e001000 0x118>;
     77		clocks = <&slave_ccu BCM21664_SLAVE_CCU_UARTB2>;
     78		interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>;
     79		reg-shift = <2>;
     80		reg-io-width = <4>;
     81	};
     82
     83	uart@3e002000 {
     84		compatible = "brcm,bcm21664-dw-apb-uart", "snps,dw-apb-uart";
     85		status = "disabled";
     86		reg = <0x3e002000 0x118>;
     87		clocks = <&slave_ccu BCM21664_SLAVE_CCU_UARTB3>;
     88		interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>;
     89		reg-shift = <2>;
     90		reg-io-width = <4>;
     91	};
     92
     93	L2: cache-controller@3ff20000 {
     94		compatible = "arm,pl310-cache";
     95		reg = <0x3ff20000 0x1000>;
     96		cache-unified;
     97		cache-level = <2>;
     98	};
     99
    100	brcm,resetmgr@35001f00 {
    101		compatible = "brcm,bcm21664-resetmgr";
    102		reg = <0x35001f00 0x24>;
    103	};
    104
    105	timer@35006000 {
    106		compatible = "brcm,kona-timer";
    107		reg = <0x35006000 0x1c>;
    108		interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
    109		clocks = <&aon_ccu BCM21664_AON_CCU_HUB_TIMER>;
    110	};
    111
    112	gpio: gpio@35003000 {
    113		compatible = "brcm,bcm21664-gpio", "brcm,kona-gpio";
    114		reg = <0x35003000 0x524>;
    115		interrupts =
    116		       <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH
    117			GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH
    118			GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH
    119			GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
    120		#gpio-cells = <2>;
    121		#interrupt-cells = <2>;
    122		gpio-controller;
    123		interrupt-controller;
    124	};
    125
    126	sdio1: sdio@3f180000 {
    127		compatible = "brcm,kona-sdhci";
    128		reg = <0x3f180000 0x801c>;
    129		interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>;
    130		clocks = <&master_ccu BCM21664_MASTER_CCU_SDIO1>;
    131		status = "disabled";
    132	};
    133
    134	sdio2: sdio@3f190000 {
    135		compatible = "brcm,kona-sdhci";
    136		reg = <0x3f190000 0x801c>;
    137		interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>;
    138		clocks = <&master_ccu BCM21664_MASTER_CCU_SDIO2>;
    139		status = "disabled";
    140	};
    141
    142	sdio3: sdio@3f1a0000 {
    143		compatible = "brcm,kona-sdhci";
    144		reg = <0x3f1a0000 0x801c>;
    145		interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
    146		clocks = <&master_ccu BCM21664_MASTER_CCU_SDIO3>;
    147		status = "disabled";
    148	};
    149
    150	sdio4: sdio@3f1b0000 {
    151		compatible = "brcm,kona-sdhci";
    152		reg = <0x3f1b0000 0x801c>;
    153		interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
    154		clocks = <&master_ccu BCM21664_MASTER_CCU_SDIO4>;
    155		status = "disabled";
    156	};
    157
    158	i2c@3e016000 {
    159		compatible = "brcm,bcm21664-i2c", "brcm,kona-i2c";
    160		reg = <0x3e016000 0x70>;
    161		interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
    162		#address-cells = <1>;
    163		#size-cells = <0>;
    164		clocks = <&slave_ccu BCM21664_SLAVE_CCU_BSC1>;
    165		status = "disabled";
    166	};
    167
    168	i2c@3e017000 {
    169		compatible = "brcm,bcm21664-i2c", "brcm,kona-i2c";
    170		reg = <0x3e017000 0x70>;
    171		interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>;
    172		#address-cells = <1>;
    173		#size-cells = <0>;
    174		clocks = <&slave_ccu BCM21664_SLAVE_CCU_BSC2>;
    175		status = "disabled";
    176	};
    177
    178	i2c@3e018000 {
    179		compatible = "brcm,bcm21664-i2c", "brcm,kona-i2c";
    180		reg = <0x3e018000 0x70>;
    181		interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>;
    182		#address-cells = <1>;
    183		#size-cells = <0>;
    184		clocks = <&slave_ccu BCM21664_SLAVE_CCU_BSC3>;
    185		status = "disabled";
    186	};
    187
    188	i2c@3e01c000 {
    189		compatible = "brcm,bcm21664-i2c", "brcm,kona-i2c";
    190		reg = <0x3e01c000 0x70>;
    191		interrupts = <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
    192		#address-cells = <1>;
    193		#size-cells = <0>;
    194		clocks = <&slave_ccu BCM21664_SLAVE_CCU_BSC4>;
    195		status = "disabled";
    196	};
    197
    198	clocks {
    199		#address-cells = <1>;
    200		#size-cells = <1>;
    201		ranges;
    202
    203		/*
    204		 * Fixed clocks are defined before CCUs whose
    205		 * clocks may depend on them.
    206		 */
    207
    208		ref_32k_clk: ref_32k {
    209			#clock-cells = <0>;
    210			compatible = "fixed-clock";
    211			clock-frequency = <32768>;
    212		};
    213
    214		bbl_32k_clk: bbl_32k {
    215			#clock-cells = <0>;
    216			compatible = "fixed-clock";
    217			clock-frequency = <32768>;
    218		};
    219
    220		ref_13m_clk: ref_13m {
    221			#clock-cells = <0>;
    222			compatible = "fixed-clock";
    223			clock-frequency = <13000000>;
    224		};
    225
    226		var_13m_clk: var_13m {
    227			#clock-cells = <0>;
    228			compatible = "fixed-clock";
    229			clock-frequency = <13000000>;
    230		};
    231
    232		dft_19_5m_clk: dft_19_5m {
    233			#clock-cells = <0>;
    234			compatible = "fixed-clock";
    235			clock-frequency = <19500000>;
    236		};
    237
    238		ref_crystal_clk: ref_crystal {
    239			#clock-cells = <0>;
    240			compatible = "fixed-clock";
    241			clock-frequency = <26000000>;
    242		};
    243
    244		ref_52m_clk: ref_52m {
    245			#clock-cells = <0>;
    246			compatible = "fixed-clock";
    247			clock-frequency = <52000000>;
    248		};
    249
    250		var_52m_clk: var_52m {
    251			#clock-cells = <0>;
    252			compatible = "fixed-clock";
    253			clock-frequency = <52000000>;
    254		};
    255
    256		usb_otg_ahb_clk: usb_otg_ahb {
    257			#clock-cells = <0>;
    258			compatible = "fixed-clock";
    259			clock-frequency = <52000000>;
    260		};
    261
    262		ref_96m_clk: ref_96m {
    263			#clock-cells = <0>;
    264			compatible = "fixed-clock";
    265			clock-frequency = <96000000>;
    266		};
    267
    268		var_96m_clk: var_96m {
    269			#clock-cells = <0>;
    270			compatible = "fixed-clock";
    271			clock-frequency = <96000000>;
    272		};
    273
    274		ref_104m_clk: ref_104m {
    275			#clock-cells = <0>;
    276			compatible = "fixed-clock";
    277			clock-frequency = <104000000>;
    278		};
    279
    280		var_104m_clk: var_104m {
    281			#clock-cells = <0>;
    282			compatible = "fixed-clock";
    283			clock-frequency = <104000000>;
    284		};
    285
    286		ref_156m_clk: ref_156m {
    287			#clock-cells = <0>;
    288			compatible = "fixed-clock";
    289			clock-frequency = <156000000>;
    290		};
    291
    292		var_156m_clk: var_156m {
    293			#clock-cells = <0>;
    294			compatible = "fixed-clock";
    295			clock-frequency = <156000000>;
    296		};
    297
    298		root_ccu: root_ccu@35001000 {
    299			compatible = BCM21664_DT_ROOT_CCU_COMPAT;
    300			reg = <0x35001000 0x0f00>;
    301			#clock-cells = <1>;
    302			clock-output-names = "frac_1m";
    303		};
    304
    305		aon_ccu: aon_ccu@35002000 {
    306			compatible = BCM21664_DT_AON_CCU_COMPAT;
    307			reg = <0x35002000 0x0f00>;
    308			#clock-cells = <1>;
    309			clock-output-names = "hub_timer";
    310		};
    311
    312		master_ccu: master_ccu@3f001000 {
    313			compatible = BCM21664_DT_MASTER_CCU_COMPAT;
    314			reg = <0x3f001000 0x0f00>;
    315			#clock-cells = <1>;
    316			clock-output-names = "sdio1",
    317					     "sdio2",
    318					     "sdio3",
    319					     "sdio4",
    320					     "sdio1_sleep",
    321					     "sdio2_sleep",
    322					     "sdio3_sleep",
    323					     "sdio4_sleep";
    324		};
    325
    326		slave_ccu: slave_ccu@3e011000 {
    327			compatible = BCM21664_DT_SLAVE_CCU_COMPAT;
    328			reg = <0x3e011000 0x0f00>;
    329			#clock-cells = <1>;
    330			clock-output-names = "uartb",
    331					     "uartb2",
    332					     "uartb3",
    333					     "bsc1",
    334					     "bsc2",
    335					     "bsc3",
    336					     "bsc4";
    337		};
    338	};
    339
    340	usbotg: usb@3f120000 {
    341		compatible = "snps,dwc2";
    342		reg = <0x3f120000 0x10000>;
    343		interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>;
    344		clocks = <&usb_otg_ahb_clk>;
    345		clock-names = "otg";
    346		phys = <&usbphy>;
    347		phy-names = "usb2-phy";
    348		status = "disabled";
    349	};
    350
    351	usbphy: usb-phy@3f130000 {
    352		compatible = "brcm,kona-usb2-phy";
    353		reg = <0x3f130000 0x28>;
    354		#phy-cells = <0>;
    355		status = "disabled";
    356	};
    357};