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

ipq8074.dtsi (21218B)


      1// SPDX-License-Identifier: GPL-2.0-only
      2/*
      3 * Copyright (c) 2017, The Linux Foundation. All rights reserved.
      4 */
      5
      6#include <dt-bindings/interrupt-controller/arm-gic.h>
      7#include <dt-bindings/clock/qcom,gcc-ipq8074.h>
      8
      9/ {
     10	model = "Qualcomm Technologies, Inc. IPQ8074";
     11	compatible = "qcom,ipq8074";
     12
     13	clocks {
     14		sleep_clk: sleep_clk {
     15			compatible = "fixed-clock";
     16			clock-frequency = <32768>;
     17			#clock-cells = <0>;
     18		};
     19
     20		xo: xo {
     21			compatible = "fixed-clock";
     22			clock-frequency = <19200000>;
     23			#clock-cells = <0>;
     24		};
     25	};
     26
     27	cpus {
     28		#address-cells = <0x1>;
     29		#size-cells = <0x0>;
     30
     31		CPU0: cpu@0 {
     32			device_type = "cpu";
     33			compatible = "arm,cortex-a53";
     34			reg = <0x0>;
     35			next-level-cache = <&L2_0>;
     36			enable-method = "psci";
     37		};
     38
     39		CPU1: cpu@1 {
     40			device_type = "cpu";
     41			compatible = "arm,cortex-a53";
     42			enable-method = "psci";
     43			reg = <0x1>;
     44			next-level-cache = <&L2_0>;
     45		};
     46
     47		CPU2: cpu@2 {
     48			device_type = "cpu";
     49			compatible = "arm,cortex-a53";
     50			enable-method = "psci";
     51			reg = <0x2>;
     52			next-level-cache = <&L2_0>;
     53		};
     54
     55		CPU3: cpu@3 {
     56			device_type = "cpu";
     57			compatible = "arm,cortex-a53";
     58			enable-method = "psci";
     59			reg = <0x3>;
     60			next-level-cache = <&L2_0>;
     61		};
     62
     63		L2_0: l2-cache {
     64			compatible = "cache";
     65			cache-level = <0x2>;
     66		};
     67	};
     68
     69	pmu {
     70		compatible = "arm,cortex-a53-pmu";
     71		interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
     72	};
     73
     74	psci {
     75		compatible = "arm,psci-1.0";
     76		method = "smc";
     77	};
     78
     79	reserved-memory {
     80		#address-cells = <2>;
     81		#size-cells = <2>;
     82		ranges;
     83
     84		smem@4ab00000 {
     85			compatible = "qcom,smem";
     86			reg = <0x0 0x4ab00000 0x0 0x00100000>;
     87			no-map;
     88
     89			hwlocks = <&tcsr_mutex 0>;
     90		};
     91
     92		memory@4ac00000 {
     93			no-map;
     94			reg = <0x0 0x4ac00000 0x0 0x00400000>;
     95		};
     96	};
     97
     98	firmware {
     99		scm {
    100			compatible = "qcom,scm-ipq8074", "qcom,scm";
    101		};
    102	};
    103
    104	soc: soc {
    105		#address-cells = <0x1>;
    106		#size-cells = <0x1>;
    107		ranges = <0 0 0 0xffffffff>;
    108		compatible = "simple-bus";
    109
    110		ssphy_1: phy@58000 {
    111			compatible = "qcom,ipq8074-qmp-usb3-phy";
    112			reg = <0x00058000 0x1c4>;
    113			#address-cells = <1>;
    114			#size-cells = <1>;
    115			ranges;
    116
    117			clocks = <&gcc GCC_USB1_AUX_CLK>,
    118				<&gcc GCC_USB1_PHY_CFG_AHB_CLK>,
    119				<&xo>;
    120			clock-names = "aux", "cfg_ahb", "ref";
    121
    122			resets =  <&gcc GCC_USB1_PHY_BCR>,
    123				<&gcc GCC_USB3PHY_1_PHY_BCR>;
    124			reset-names = "phy","common";
    125			status = "disabled";
    126
    127			usb1_ssphy: phy@58200 {
    128				reg = <0x00058200 0x130>,       /* Tx */
    129				      <0x00058400 0x200>,     /* Rx */
    130				      <0x00058800 0x1f8>,     /* PCS  */
    131				      <0x00058600 0x044>;     /* PCS misc*/
    132				#phy-cells = <0>;
    133				#clock-cells = <1>;
    134				clocks = <&gcc GCC_USB1_PIPE_CLK>;
    135				clock-names = "pipe0";
    136				clock-output-names = "gcc_usb1_pipe_clk_src";
    137			};
    138		};
    139
    140		qusb_phy_1: phy@59000 {
    141			compatible = "qcom,ipq8074-qusb2-phy";
    142			reg = <0x00059000 0x180>;
    143			#phy-cells = <0>;
    144
    145			clocks = <&gcc GCC_USB1_PHY_CFG_AHB_CLK>,
    146				 <&xo>;
    147			clock-names = "cfg_ahb", "ref";
    148
    149			resets = <&gcc GCC_QUSB2_1_PHY_BCR>;
    150			status = "disabled";
    151		};
    152
    153		ssphy_0: phy@78000 {
    154			compatible = "qcom,ipq8074-qmp-usb3-phy";
    155			reg = <0x00078000 0x1c4>;
    156			#address-cells = <1>;
    157			#size-cells = <1>;
    158			ranges;
    159
    160			clocks = <&gcc GCC_USB0_AUX_CLK>,
    161				<&gcc GCC_USB0_PHY_CFG_AHB_CLK>,
    162				<&xo>;
    163			clock-names = "aux", "cfg_ahb", "ref";
    164
    165			resets =  <&gcc GCC_USB0_PHY_BCR>,
    166				<&gcc GCC_USB3PHY_0_PHY_BCR>;
    167			reset-names = "phy","common";
    168			status = "disabled";
    169
    170			usb0_ssphy: phy@78200 {
    171				reg = <0x00078200 0x130>,       /* Tx */
    172				      <0x00078400 0x200>,     /* Rx */
    173				      <0x00078800 0x1f8>,     /* PCS  */
    174				      <0x00078600 0x044>;     /* PCS misc*/
    175				#phy-cells = <0>;
    176				#clock-cells = <1>;
    177				clocks = <&gcc GCC_USB0_PIPE_CLK>;
    178				clock-names = "pipe0";
    179				clock-output-names = "gcc_usb0_pipe_clk_src";
    180			};
    181		};
    182
    183		qusb_phy_0: phy@79000 {
    184			compatible = "qcom,ipq8074-qusb2-phy";
    185			reg = <0x00079000 0x180>;
    186			#phy-cells = <0>;
    187
    188			clocks = <&gcc GCC_USB0_PHY_CFG_AHB_CLK>,
    189				 <&xo>;
    190			clock-names = "cfg_ahb", "ref";
    191
    192			resets = <&gcc GCC_QUSB2_0_PHY_BCR>;
    193			status = "disabled";
    194		};
    195
    196		pcie_qmp0: phy@86000 {
    197			compatible = "qcom,ipq8074-qmp-pcie-phy";
    198			reg = <0x00086000 0x1000>;
    199			#address-cells = <1>;
    200			#size-cells = <1>;
    201			ranges;
    202
    203			clocks = <&gcc GCC_PCIE0_AUX_CLK>,
    204				<&gcc GCC_PCIE0_AHB_CLK>;
    205			clock-names = "aux", "cfg_ahb";
    206			resets = <&gcc GCC_PCIE0_PHY_BCR>,
    207				<&gcc GCC_PCIE0PHY_PHY_BCR>;
    208			reset-names = "phy",
    209				      "common";
    210			status = "disabled";
    211
    212			pcie_phy0: phy@86200 {
    213				reg = <0x86200 0x16c>,
    214				      <0x86400 0x200>,
    215				      <0x86800 0x4f4>;
    216				#phy-cells = <0>;
    217				#clock-cells = <0>;
    218				clocks = <&gcc GCC_PCIE0_PIPE_CLK>;
    219				clock-names = "pipe0";
    220				clock-output-names = "pcie_0_pipe_clk";
    221			};
    222		};
    223
    224		pcie_qmp1: phy@8e000 {
    225			compatible = "qcom,ipq8074-qmp-pcie-phy";
    226			reg = <0x0008e000 0x1000>;
    227			#address-cells = <1>;
    228			#size-cells = <1>;
    229			ranges;
    230
    231			clocks = <&gcc GCC_PCIE1_AUX_CLK>,
    232				<&gcc GCC_PCIE1_AHB_CLK>;
    233			clock-names = "aux", "cfg_ahb";
    234			resets = <&gcc GCC_PCIE1_PHY_BCR>,
    235				<&gcc GCC_PCIE1PHY_PHY_BCR>;
    236			reset-names = "phy",
    237				      "common";
    238			status = "disabled";
    239
    240			pcie_phy1: phy@8e200 {
    241				reg = <0x8e200 0x16c>,
    242				      <0x8e400 0x200>,
    243				      <0x8e800 0x4f4>;
    244				#phy-cells = <0>;
    245				#clock-cells = <0>;
    246				clocks = <&gcc GCC_PCIE1_PIPE_CLK>;
    247				clock-names = "pipe0";
    248				clock-output-names = "pcie_1_pipe_clk";
    249			};
    250		};
    251
    252		mdio: mdio@90000 {
    253			compatible = "qcom,ipq4019-mdio";
    254			reg = <0x00090000 0x64>;
    255			#address-cells = <1>;
    256			#size-cells = <0>;
    257
    258			clocks = <&gcc GCC_MDIO_AHB_CLK>;
    259			clock-names = "gcc_mdio_ahb_clk";
    260
    261			status = "disabled";
    262		};
    263
    264		prng: rng@e3000 {
    265			compatible = "qcom,prng-ee";
    266			reg = <0x000e3000 0x1000>;
    267			clocks = <&gcc GCC_PRNG_AHB_CLK>;
    268			clock-names = "core";
    269			status = "disabled";
    270		};
    271
    272		cryptobam: dma-controller@704000 {
    273			compatible = "qcom,bam-v1.7.0";
    274			reg = <0x00704000 0x20000>;
    275			interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>;
    276			clocks = <&gcc GCC_CRYPTO_AHB_CLK>;
    277			clock-names = "bam_clk";
    278			#dma-cells = <1>;
    279			qcom,ee = <1>;
    280			qcom,controlled-remotely;
    281			status = "disabled";
    282		};
    283
    284		crypto: crypto@73a000 {
    285			compatible = "qcom,crypto-v5.1";
    286			reg = <0x0073a000 0x6000>;
    287			clocks = <&gcc GCC_CRYPTO_AHB_CLK>,
    288				 <&gcc GCC_CRYPTO_AXI_CLK>,
    289				 <&gcc GCC_CRYPTO_CLK>;
    290			clock-names = "iface", "bus", "core";
    291			dmas = <&cryptobam 2>, <&cryptobam 3>;
    292			dma-names = "rx", "tx";
    293			status = "disabled";
    294		};
    295
    296		tlmm: pinctrl@1000000 {
    297			compatible = "qcom,ipq8074-pinctrl";
    298			reg = <0x01000000 0x300000>;
    299			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
    300			gpio-controller;
    301			gpio-ranges = <&tlmm 0 0 70>;
    302			#gpio-cells = <0x2>;
    303			interrupt-controller;
    304			#interrupt-cells = <0x2>;
    305
    306			serial_4_pins: serial4-pinmux {
    307				pins = "gpio23", "gpio24";
    308				function = "blsp4_uart1";
    309				drive-strength = <8>;
    310				bias-disable;
    311			};
    312
    313			i2c_0_pins: i2c-0-pinmux {
    314				pins = "gpio42", "gpio43";
    315				function = "blsp1_i2c";
    316				drive-strength = <8>;
    317				bias-disable;
    318			};
    319
    320			spi_0_pins: spi-0-pins {
    321				pins = "gpio38", "gpio39", "gpio40", "gpio41";
    322				function = "blsp0_spi";
    323				drive-strength = <8>;
    324				bias-disable;
    325			};
    326
    327			hsuart_pins: hsuart-pins {
    328				pins = "gpio46", "gpio47", "gpio48", "gpio49";
    329				function = "blsp2_uart";
    330				drive-strength = <8>;
    331				bias-disable;
    332			};
    333
    334			qpic_pins: qpic-pins {
    335				pins = "gpio1", "gpio3", "gpio4",
    336				       "gpio5", "gpio6", "gpio7",
    337				       "gpio8", "gpio10", "gpio11",
    338				       "gpio12", "gpio13", "gpio14",
    339				       "gpio15", "gpio16", "gpio17";
    340				function = "qpic";
    341				drive-strength = <8>;
    342				bias-disable;
    343			};
    344		};
    345
    346		gcc: gcc@1800000 {
    347			compatible = "qcom,gcc-ipq8074";
    348			reg = <0x01800000 0x80000>;
    349			#clock-cells = <0x1>;
    350			#reset-cells = <0x1>;
    351		};
    352
    353		tcsr_mutex: hwlock@1905000 {
    354			compatible = "qcom,tcsr-mutex";
    355			reg = <0x01905000 0x20000>;
    356			#hwlock-cells = <1>;
    357		};
    358
    359		spmi_bus: spmi@200f000 {
    360			compatible = "qcom,spmi-pmic-arb";
    361			reg = <0x0200f000 0x001000>,
    362			      <0x02400000 0x800000>,
    363			      <0x02c00000 0x800000>,
    364			      <0x03800000 0x200000>,
    365			      <0x0200a000 0x000700>;
    366			reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
    367			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
    368			interrupt-names = "periph_irq";
    369			qcom,ee = <0>;
    370			qcom,channel = <0>;
    371			#address-cells = <2>;
    372			#size-cells = <0>;
    373			interrupt-controller;
    374			#interrupt-cells = <4>;
    375			cell-index = <0>;
    376		};
    377
    378		sdhc_1: sdhci@7824900 {
    379			compatible = "qcom,sdhci-msm-v4";
    380			reg = <0x7824900 0x500>, <0x7824000 0x800>;
    381			reg-names = "hc_mem", "core_mem";
    382
    383			interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
    384				     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
    385			interrupt-names = "hc_irq", "pwr_irq";
    386
    387			clocks = <&xo>,
    388				 <&gcc GCC_SDCC1_AHB_CLK>,
    389				 <&gcc GCC_SDCC1_APPS_CLK>;
    390			clock-names = "xo", "iface", "core";
    391			max-frequency = <384000000>;
    392			mmc-ddr-1_8v;
    393			mmc-hs200-1_8v;
    394			mmc-hs400-1_8v;
    395			bus-width = <8>;
    396
    397			status = "disabled";
    398		};
    399
    400		blsp_dma: dma-controller@7884000 {
    401			compatible = "qcom,bam-v1.7.0";
    402			reg = <0x07884000 0x2b000>;
    403			interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>;
    404			clocks = <&gcc GCC_BLSP1_AHB_CLK>;
    405			clock-names = "bam_clk";
    406			#dma-cells = <1>;
    407			qcom,ee = <0>;
    408		};
    409
    410		blsp1_uart1: serial@78af000 {
    411			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
    412			reg = <0x078af000 0x200>;
    413			interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
    414			clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>,
    415				 <&gcc GCC_BLSP1_AHB_CLK>;
    416			clock-names = "core", "iface";
    417			status = "disabled";
    418		};
    419
    420		blsp1_uart3: serial@78b1000 {
    421			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
    422			reg = <0x078b1000 0x200>;
    423			interrupts = <GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>;
    424			clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>,
    425				<&gcc GCC_BLSP1_AHB_CLK>;
    426			clock-names = "core", "iface";
    427			dmas = <&blsp_dma 4>,
    428				<&blsp_dma 5>;
    429			dma-names = "tx", "rx";
    430			pinctrl-0 = <&hsuart_pins>;
    431			pinctrl-names = "default";
    432			status = "disabled";
    433		};
    434
    435		blsp1_uart5: serial@78b3000 {
    436			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
    437			reg = <0x078b3000 0x200>;
    438			interrupts = <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>;
    439			clocks = <&gcc GCC_BLSP1_UART5_APPS_CLK>,
    440				 <&gcc GCC_BLSP1_AHB_CLK>;
    441			clock-names = "core", "iface";
    442			pinctrl-0 = <&serial_4_pins>;
    443			pinctrl-names = "default";
    444			status = "disabled";
    445		};
    446
    447		blsp1_spi1: spi@78b5000 {
    448			compatible = "qcom,spi-qup-v2.2.1";
    449			#address-cells = <1>;
    450			#size-cells = <0>;
    451			reg = <0x078b5000 0x600>;
    452			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
    453			spi-max-frequency = <50000000>;
    454			clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>,
    455				<&gcc GCC_BLSP1_AHB_CLK>;
    456			clock-names = "core", "iface";
    457			dmas = <&blsp_dma 12>, <&blsp_dma 13>;
    458			dma-names = "tx", "rx";
    459			pinctrl-0 = <&spi_0_pins>;
    460			pinctrl-names = "default";
    461			status = "disabled";
    462		};
    463
    464		blsp1_i2c2: i2c@78b6000 {
    465			compatible = "qcom,i2c-qup-v2.2.1";
    466			#address-cells = <1>;
    467			#size-cells = <0>;
    468			reg = <0x078b6000 0x600>;
    469			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
    470			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>,
    471				 <&gcc GCC_BLSP1_AHB_CLK>;
    472			clock-names = "core", "iface";
    473			clock-frequency = <400000>;
    474			dmas = <&blsp_dma 14>, <&blsp_dma 15>;
    475			dma-names = "tx", "rx";
    476			pinctrl-0 = <&i2c_0_pins>;
    477			pinctrl-names = "default";
    478			status = "disabled";
    479		};
    480
    481		blsp1_i2c3: i2c@78b7000 {
    482			compatible = "qcom,i2c-qup-v2.2.1";
    483			#address-cells = <1>;
    484			#size-cells = <0>;
    485			reg = <0x078b7000 0x600>;
    486			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
    487			clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>,
    488				 <&gcc GCC_BLSP1_AHB_CLK>;
    489			clock-names = "core", "iface";
    490			clock-frequency = <100000>;
    491			dmas = <&blsp_dma 16>, <&blsp_dma 17>;
    492			dma-names = "tx", "rx";
    493			status = "disabled";
    494		};
    495
    496		blsp1_i2c5: i2c@78b9000 {
    497			compatible = "qcom,i2c-qup-v2.2.1";
    498			#address-cells = <1>;
    499			#size-cells = <0>;
    500			reg = <0x78b9000 0x600>;
    501			interrupts = <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>;
    502			clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>,
    503				 <&gcc GCC_BLSP1_AHB_CLK>;
    504			clock-names = "core", "iface";
    505			clock-frequency = <400000>;
    506			dmas = <&blsp_dma 20>, <&blsp_dma 21>;
    507			dma-names = "tx", "rx";
    508			status = "disabled";
    509		};
    510
    511		blsp1_i2c6: i2c@78ba000 {
    512			compatible = "qcom,i2c-qup-v2.2.1";
    513			#address-cells = <1>;
    514			#size-cells = <0>;
    515			reg = <0x078ba000 0x600>;
    516			interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
    517			clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>,
    518				 <&gcc GCC_BLSP1_AHB_CLK>;
    519			clock-names = "core", "iface";
    520			clock-frequency = <100000>;
    521			dmas = <&blsp_dma 22>, <&blsp_dma 23>;
    522			dma-names = "tx", "rx";
    523			status = "disabled";
    524		};
    525
    526		qpic_bam: dma-controller@7984000 {
    527			compatible = "qcom,bam-v1.7.0";
    528			reg = <0x07984000 0x1a000>;
    529			interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
    530			clocks = <&gcc GCC_QPIC_AHB_CLK>;
    531			clock-names = "bam_clk";
    532			#dma-cells = <1>;
    533			qcom,ee = <0>;
    534			status = "disabled";
    535		};
    536
    537		qpic_nand: nand@79b0000 {
    538			compatible = "qcom,ipq8074-nand";
    539			reg = <0x079b0000 0x10000>;
    540			#address-cells = <1>;
    541			#size-cells = <0>;
    542			clocks = <&gcc GCC_QPIC_CLK>,
    543				 <&gcc GCC_QPIC_AHB_CLK>;
    544			clock-names = "core", "aon";
    545
    546			dmas = <&qpic_bam 0>,
    547			       <&qpic_bam 1>,
    548			       <&qpic_bam 2>;
    549			dma-names = "tx", "rx", "cmd";
    550			pinctrl-0 = <&qpic_pins>;
    551			pinctrl-names = "default";
    552			status = "disabled";
    553		};
    554
    555		usb_0: usb@8af8800 {
    556			compatible = "qcom,ipq8074-dwc3", "qcom,dwc3";
    557			reg = <0x08af8800 0x400>;
    558			#address-cells = <1>;
    559			#size-cells = <1>;
    560			ranges;
    561
    562			clocks = <&gcc GCC_SYS_NOC_USB0_AXI_CLK>,
    563				<&gcc GCC_USB0_MASTER_CLK>,
    564				<&gcc GCC_USB0_SLEEP_CLK>,
    565				<&gcc GCC_USB0_MOCK_UTMI_CLK>;
    566			clock-names = "cfg_noc",
    567				"core",
    568				"sleep",
    569				"mock_utmi";
    570
    571			assigned-clocks = <&gcc GCC_SYS_NOC_USB0_AXI_CLK>,
    572					  <&gcc GCC_USB0_MASTER_CLK>,
    573					  <&gcc GCC_USB0_MOCK_UTMI_CLK>;
    574			assigned-clock-rates = <133330000>,
    575						<133330000>,
    576						<19200000>;
    577
    578			resets = <&gcc GCC_USB0_BCR>;
    579			status = "disabled";
    580
    581			dwc_0: usb@8a00000 {
    582				compatible = "snps,dwc3";
    583				reg = <0x8a00000 0xcd00>;
    584				interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>;
    585				phys = <&qusb_phy_0>, <&usb0_ssphy>;
    586				phy-names = "usb2-phy", "usb3-phy";
    587				snps,is-utmi-l1-suspend;
    588				snps,hird-threshold = /bits/ 8 <0x0>;
    589				snps,dis_u2_susphy_quirk;
    590				snps,dis_u3_susphy_quirk;
    591				dr_mode = "host";
    592			};
    593		};
    594
    595		usb_1: usb@8cf8800 {
    596			compatible = "qcom,ipq8074-dwc3", "qcom,dwc3";
    597			reg = <0x08cf8800 0x400>;
    598			#address-cells = <1>;
    599			#size-cells = <1>;
    600			ranges;
    601
    602			clocks = <&gcc GCC_SYS_NOC_USB1_AXI_CLK>,
    603				<&gcc GCC_USB1_MASTER_CLK>,
    604				<&gcc GCC_USB1_SLEEP_CLK>,
    605				<&gcc GCC_USB1_MOCK_UTMI_CLK>;
    606			clock-names = "cfg_noc",
    607				"core",
    608				"sleep",
    609				"mock_utmi";
    610
    611			assigned-clocks = <&gcc GCC_SYS_NOC_USB1_AXI_CLK>,
    612					  <&gcc GCC_USB1_MASTER_CLK>,
    613					  <&gcc GCC_USB1_MOCK_UTMI_CLK>;
    614			assigned-clock-rates = <133330000>,
    615						<133330000>,
    616						<19200000>;
    617
    618			resets = <&gcc GCC_USB1_BCR>;
    619			status = "disabled";
    620
    621			dwc_1: usb@8c00000 {
    622				compatible = "snps,dwc3";
    623				reg = <0x8c00000 0xcd00>;
    624				interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
    625				phys = <&qusb_phy_1>, <&usb1_ssphy>;
    626				phy-names = "usb2-phy", "usb3-phy";
    627				snps,is-utmi-l1-suspend;
    628				snps,hird-threshold = /bits/ 8 <0x0>;
    629				snps,dis_u2_susphy_quirk;
    630				snps,dis_u3_susphy_quirk;
    631				dr_mode = "host";
    632			};
    633		};
    634
    635		intc: interrupt-controller@b000000 {
    636			compatible = "qcom,msm-qgic2";
    637			#address-cells = <1>;
    638			#size-cells = <1>;
    639			interrupt-controller;
    640			#interrupt-cells = <0x3>;
    641			reg = <0x0b000000 0x1000>, <0x0b002000 0x1000>;
    642			ranges = <0 0xb00a000 0xffd>;
    643
    644			v2m@0 {
    645				compatible = "arm,gic-v2m-frame";
    646				msi-controller;
    647				reg = <0x0 0xffd>;
    648			};
    649		};
    650
    651		timer {
    652			compatible = "arm,armv8-timer";
    653			interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
    654				     <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
    655				     <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
    656				     <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
    657		};
    658
    659		watchdog: watchdog@b017000 {
    660			compatible = "qcom,kpss-wdt";
    661			reg = <0xb017000 0x1000>;
    662			interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>;
    663			clocks = <&sleep_clk>;
    664			timeout-sec = <30>;
    665		};
    666
    667		timer@b120000 {
    668			#address-cells = <1>;
    669			#size-cells = <1>;
    670			ranges;
    671			compatible = "arm,armv7-timer-mem";
    672			reg = <0x0b120000 0x1000>;
    673
    674			frame@b120000 {
    675				frame-number = <0>;
    676				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
    677					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
    678				reg = <0x0b121000 0x1000>,
    679				      <0x0b122000 0x1000>;
    680			};
    681
    682			frame@b123000 {
    683				frame-number = <1>;
    684				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
    685				reg = <0x0b123000 0x1000>;
    686				status = "disabled";
    687			};
    688
    689			frame@b124000 {
    690				frame-number = <2>;
    691				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
    692				reg = <0x0b124000 0x1000>;
    693				status = "disabled";
    694			};
    695
    696			frame@b125000 {
    697				frame-number = <3>;
    698				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
    699				reg = <0x0b125000 0x1000>;
    700				status = "disabled";
    701			};
    702
    703			frame@b126000 {
    704				frame-number = <4>;
    705				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
    706				reg = <0x0b126000 0x1000>;
    707				status = "disabled";
    708			};
    709
    710			frame@b127000 {
    711				frame-number = <5>;
    712				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
    713				reg = <0x0b127000 0x1000>;
    714				status = "disabled";
    715			};
    716
    717			frame@b128000 {
    718				frame-number = <6>;
    719				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
    720				reg = <0x0b128000 0x1000>;
    721				status = "disabled";
    722			};
    723		};
    724
    725		pcie1: pci@10000000 {
    726			compatible = "qcom,pcie-ipq8074";
    727			reg =  <0x10000000 0xf1d>,
    728			       <0x10000f20 0xa8>,
    729			       <0x00088000 0x2000>,
    730			       <0x10100000 0x1000>;
    731			reg-names = "dbi", "elbi", "parf", "config";
    732			device_type = "pci";
    733			linux,pci-domain = <1>;
    734			bus-range = <0x00 0xff>;
    735			num-lanes = <1>;
    736			#address-cells = <3>;
    737			#size-cells = <2>;
    738
    739			phys = <&pcie_phy1>;
    740			phy-names = "pciephy";
    741
    742			ranges = <0x81000000 0 0x10200000 0x10200000
    743				  0 0x100000   /* downstream I/O */
    744				  0x82000000 0 0x10300000 0x10300000
    745				  0 0xd00000>; /* non-prefetchable memory */
    746
    747			interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
    748			interrupt-names = "msi";
    749			#interrupt-cells = <1>;
    750			interrupt-map-mask = <0 0 0 0x7>;
    751			interrupt-map = <0 0 0 1 &intc 0 142
    752					 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
    753					<0 0 0 2 &intc 0 143
    754					 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
    755					<0 0 0 3 &intc 0 144
    756					 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
    757					<0 0 0 4 &intc 0 145
    758					 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
    759
    760			clocks = <&gcc GCC_SYS_NOC_PCIE1_AXI_CLK>,
    761				 <&gcc GCC_PCIE1_AXI_M_CLK>,
    762				 <&gcc GCC_PCIE1_AXI_S_CLK>,
    763				 <&gcc GCC_PCIE1_AHB_CLK>,
    764				 <&gcc GCC_PCIE1_AUX_CLK>;
    765			clock-names = "iface",
    766				      "axi_m",
    767				      "axi_s",
    768				      "ahb",
    769				      "aux";
    770			resets = <&gcc GCC_PCIE1_PIPE_ARES>,
    771				 <&gcc GCC_PCIE1_SLEEP_ARES>,
    772				 <&gcc GCC_PCIE1_CORE_STICKY_ARES>,
    773				 <&gcc GCC_PCIE1_AXI_MASTER_ARES>,
    774				 <&gcc GCC_PCIE1_AXI_SLAVE_ARES>,
    775				 <&gcc GCC_PCIE1_AHB_ARES>,
    776				 <&gcc GCC_PCIE1_AXI_MASTER_STICKY_ARES>;
    777			reset-names = "pipe",
    778				      "sleep",
    779				      "sticky",
    780				      "axi_m",
    781				      "axi_s",
    782				      "ahb",
    783				      "axi_m_sticky";
    784			status = "disabled";
    785		};
    786
    787		pcie0: pci@20000000 {
    788			compatible = "qcom,pcie-ipq8074";
    789			reg = <0x20000000 0xf1d>,
    790			      <0x20000f20 0xa8>,
    791			      <0x00080000 0x2000>,
    792			      <0x20100000 0x1000>;
    793			reg-names = "dbi", "elbi", "parf", "config";
    794			device_type = "pci";
    795			linux,pci-domain = <0>;
    796			bus-range = <0x00 0xff>;
    797			num-lanes = <1>;
    798			#address-cells = <3>;
    799			#size-cells = <2>;
    800
    801			phys = <&pcie_phy0>;
    802			phy-names = "pciephy";
    803
    804			ranges = <0x81000000 0 0x20200000 0x20200000
    805				  0 0x100000   /* downstream I/O */
    806				  0x82000000 0 0x20300000 0x20300000
    807				  0 0xd00000>; /* non-prefetchable memory */
    808
    809			interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
    810			interrupt-names = "msi";
    811			#interrupt-cells = <1>;
    812			interrupt-map-mask = <0 0 0 0x7>;
    813			interrupt-map = <0 0 0 1 &intc 0 75
    814					 IRQ_TYPE_LEVEL_HIGH>, /* int_a */
    815					<0 0 0 2 &intc 0 78
    816					 IRQ_TYPE_LEVEL_HIGH>, /* int_b */
    817					<0 0 0 3 &intc 0 79
    818					 IRQ_TYPE_LEVEL_HIGH>, /* int_c */
    819					<0 0 0 4 &intc 0 83
    820					 IRQ_TYPE_LEVEL_HIGH>; /* int_d */
    821
    822			clocks = <&gcc GCC_SYS_NOC_PCIE0_AXI_CLK>,
    823				 <&gcc GCC_PCIE0_AXI_M_CLK>,
    824				 <&gcc GCC_PCIE0_AXI_S_CLK>,
    825				 <&gcc GCC_PCIE0_AHB_CLK>,
    826				 <&gcc GCC_PCIE0_AUX_CLK>;
    827
    828			clock-names = "iface",
    829				      "axi_m",
    830				      "axi_s",
    831				      "ahb",
    832				      "aux";
    833			resets = <&gcc GCC_PCIE0_PIPE_ARES>,
    834				 <&gcc GCC_PCIE0_SLEEP_ARES>,
    835				 <&gcc GCC_PCIE0_CORE_STICKY_ARES>,
    836				 <&gcc GCC_PCIE0_AXI_MASTER_ARES>,
    837				 <&gcc GCC_PCIE0_AXI_SLAVE_ARES>,
    838				 <&gcc GCC_PCIE0_AHB_ARES>,
    839				 <&gcc GCC_PCIE0_AXI_MASTER_STICKY_ARES>;
    840			reset-names = "pipe",
    841				      "sleep",
    842				      "sticky",
    843				      "axi_m",
    844				      "axi_s",
    845				      "ahb",
    846				      "axi_m_sticky";
    847			status = "disabled";
    848		};
    849	};
    850};