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

qcom-msm8226.dtsi (12758B)


      1// SPDX-License-Identifier: BSD-3-Clause
      2/*
      3 * Copyright (c) 2020, The Linux Foundation. All rights reserved.
      4 */
      5
      6/dts-v1/;
      7
      8#include <dt-bindings/interrupt-controller/arm-gic.h>
      9#include <dt-bindings/clock/qcom,gcc-msm8974.h>
     10#include <dt-bindings/gpio/gpio.h>
     11#include <dt-bindings/reset/qcom,gcc-msm8974.h>
     12
     13/ {
     14	#address-cells = <1>;
     15	#size-cells = <1>;
     16	interrupt-parent = <&intc>;
     17
     18	chosen { };
     19
     20	memory@0 {
     21		device_type = "memory";
     22		reg = <0x0 0x0>;
     23	};
     24
     25	clocks {
     26		xo_board: xo_board {
     27			compatible = "fixed-clock";
     28			#clock-cells = <0>;
     29			clock-frequency = <19200000>;
     30		};
     31
     32		sleep_clk: sleep_clk {
     33			compatible = "fixed-clock";
     34			#clock-cells = <0>;
     35			clock-frequency = <32768>;
     36		};
     37	};
     38
     39	firmware {
     40		scm {
     41			compatible = "qcom,scm-msm8226", "qcom,scm";
     42			clocks = <&gcc GCC_CE1_CLK>, <&gcc GCC_CE1_AXI_CLK>, <&gcc GCC_CE1_AHB_CLK>;
     43			clock-names = "core", "bus", "iface";
     44		};
     45	};
     46
     47	tcsr_mutex: hwlock {
     48		compatible = "qcom,tcsr-mutex";
     49		syscon = <&tcsr_mutex_block 0 0x80>;
     50
     51		#hwlock-cells = <1>;
     52	};
     53
     54	reserved-memory {
     55		#address-cells = <1>;
     56		#size-cells = <1>;
     57		ranges;
     58
     59		smem_region: smem@3000000 {
     60			reg = <0x3000000 0x100000>;
     61			no-map;
     62		};
     63	};
     64
     65	smd {
     66		compatible = "qcom,smd";
     67
     68		rpm {
     69			interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>;
     70			qcom,ipc = <&apcs 8 0>;
     71			qcom,smd-edge = <15>;
     72
     73			rpm_requests: rpm-requests {
     74				compatible = "qcom,rpm-msm8226";
     75				qcom,smd-channels = "rpm_requests";
     76
     77				rpmpd: power-controller {
     78					compatible = "qcom,msm8226-rpmpd";
     79					#power-domain-cells = <1>;
     80					operating-points-v2 = <&rpmpd_opp_table>;
     81
     82					rpmpd_opp_table: opp-table {
     83						compatible = "operating-points-v2";
     84
     85						rpmpd_opp_ret: opp1 {
     86							opp-level = <1>;
     87						};
     88						rpmpd_opp_svs_krait: opp2 {
     89							opp-level = <2>;
     90						};
     91						rpmpd_opp_svs_soc: opp3 {
     92							opp-level = <3>;
     93						};
     94						rpmpd_opp_nom: opp4 {
     95							opp-level = <4>;
     96						};
     97						rpmpd_opp_turbo: opp5 {
     98							opp-level = <5>;
     99						};
    100						rpmpd_opp_super_turbo: opp6 {
    101							opp-level = <6>;
    102						};
    103					};
    104				};
    105			};
    106		};
    107	};
    108
    109	smem {
    110		compatible = "qcom,smem";
    111
    112		memory-region = <&smem_region>;
    113		qcom,rpm-msg-ram = <&rpm_msg_ram>;
    114
    115		hwlocks = <&tcsr_mutex 3>;
    116	};
    117
    118	soc: soc {
    119		compatible = "simple-bus";
    120		#address-cells = <1>;
    121		#size-cells = <1>;
    122		ranges;
    123
    124		intc: interrupt-controller@f9000000 {
    125			compatible = "qcom,msm-qgic2";
    126			reg = <0xf9000000 0x1000>,
    127			      <0xf9002000 0x1000>;
    128			interrupt-controller;
    129			#interrupt-cells = <3>;
    130		};
    131
    132		apcs: syscon@f9011000 {
    133			compatible = "syscon";
    134			reg = <0xf9011000 0x1000>;
    135		};
    136
    137		sdhc_1: sdhci@f9824900 {
    138			compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4";
    139			reg = <0xf9824900 0x11c>, <0xf9824000 0x800>;
    140			reg-names = "hc_mem", "core_mem";
    141			interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>,
    142				     <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>;
    143			interrupt-names = "hc_irq", "pwr_irq";
    144			clocks = <&gcc GCC_SDCC1_APPS_CLK>,
    145				 <&gcc GCC_SDCC1_AHB_CLK>,
    146				 <&xo_board>;
    147			clock-names = "core", "iface", "xo";
    148			pinctrl-names = "default";
    149			pinctrl-0 = <&sdhc1_default_state>;
    150			status = "disabled";
    151		};
    152
    153		sdhc_2: sdhci@f98a4900 {
    154			compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4";
    155			reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>;
    156			reg-names = "hc_mem", "core_mem";
    157			interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>,
    158				     <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
    159			interrupt-names = "hc_irq", "pwr_irq";
    160			clocks = <&gcc GCC_SDCC2_APPS_CLK>,
    161				 <&gcc GCC_SDCC2_AHB_CLK>,
    162				 <&xo_board>;
    163			clock-names = "core", "iface", "xo";
    164			pinctrl-names = "default";
    165			pinctrl-0 = <&sdhc2_default_state>;
    166			status = "disabled";
    167		};
    168
    169		sdhc_3: sdhci@f9864900 {
    170			compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4";
    171			reg = <0xf9864900 0x11c>, <0xf9864000 0x800>;
    172			reg-names = "hc_mem", "core_mem";
    173			interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>,
    174				     <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>;
    175			interrupt-names = "hc_irq", "pwr_irq";
    176			clocks = <&gcc GCC_SDCC3_APPS_CLK>,
    177				 <&gcc GCC_SDCC3_AHB_CLK>,
    178				 <&xo_board>;
    179			clock-names = "core", "iface", "xo";
    180			pinctrl-names = "default";
    181			pinctrl-0 = <&sdhc3_default_state>;
    182			status = "disabled";
    183		};
    184
    185		blsp1_uart1: serial@f991d000 {
    186			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
    187			reg = <0xf991d000 0x1000>;
    188			interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>;
    189			clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
    190			clock-names = "core", "iface";
    191			status = "disabled";
    192		};
    193
    194		blsp1_uart3: serial@f991f000 {
    195			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
    196			reg = <0xf991f000 0x1000>;
    197			interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
    198			clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
    199			clock-names = "core", "iface";
    200			status = "disabled";
    201		};
    202
    203		blsp1_uart4: serial@f9920000 {
    204			compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm";
    205			reg = <0xf9920000 0x1000>;
    206			interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
    207			clocks = <&gcc GCC_BLSP1_UART4_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
    208			clock-names = "core", "iface";
    209			status = "disabled";
    210		};
    211
    212		blsp1_i2c1: i2c@f9923000 {
    213			status = "disabled";
    214			compatible = "qcom,i2c-qup-v2.1.1";
    215			reg = <0xf9923000 0x1000>;
    216			interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
    217			clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
    218			clock-names = "core", "iface";
    219			pinctrl-names = "default";
    220			pinctrl-0 = <&blsp1_i2c1_pins>;
    221			#address-cells = <1>;
    222			#size-cells = <0>;
    223		};
    224
    225		blsp1_i2c2: i2c@f9924000 {
    226			status = "disabled";
    227			compatible = "qcom,i2c-qup-v2.1.1";
    228			reg = <0xf9924000 0x1000>;
    229			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
    230			clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
    231			clock-names = "core", "iface";
    232			pinctrl-names = "default";
    233			pinctrl-0 = <&blsp1_i2c2_pins>;
    234			#address-cells = <1>;
    235			#size-cells = <0>;
    236		};
    237
    238		blsp1_i2c3: i2c@f9925000 {
    239			status = "disabled";
    240			compatible = "qcom,i2c-qup-v2.1.1";
    241			reg = <0xf9925000 0x1000>;
    242			interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
    243			clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
    244			clock-names = "core", "iface";
    245			pinctrl-names = "default";
    246			pinctrl-0 = <&blsp1_i2c3_pins>;
    247			#address-cells = <1>;
    248			#size-cells = <0>;
    249		};
    250
    251		blsp1_i2c4: i2c@f9926000 {
    252			status = "disabled";
    253			compatible = "qcom,i2c-qup-v2.1.1";
    254			reg = <0xf9926000 0x1000>;
    255			interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
    256			clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
    257			clock-names = "core", "iface";
    258			pinctrl-names = "default";
    259			pinctrl-0 = <&blsp1_i2c4_pins>;
    260			#address-cells = <1>;
    261			#size-cells = <0>;
    262		};
    263
    264		blsp1_i2c5: i2c@f9927000 {
    265			status = "disabled";
    266			compatible = "qcom,i2c-qup-v2.1.1";
    267			reg = <0xf9927000 0x1000>;
    268			interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
    269			clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>;
    270			clock-names = "core", "iface";
    271			pinctrl-names = "default";
    272			pinctrl-0 = <&blsp1_i2c5_pins>;
    273			#address-cells = <1>;
    274			#size-cells = <0>;
    275		};
    276
    277		usb: usb@f9a55000 {
    278			compatible = "qcom,ci-hdrc";
    279			reg = <0xf9a55000 0x200>,
    280			      <0xf9a55200 0x200>;
    281			interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>;
    282			clocks = <&gcc GCC_USB_HS_AHB_CLK>,
    283				 <&gcc GCC_USB_HS_SYSTEM_CLK>;
    284			clock-names = "iface", "core";
    285			assigned-clocks = <&gcc GCC_USB_HS_SYSTEM_CLK>;
    286			assigned-clock-rates = <75000000>;
    287			resets = <&gcc GCC_USB_HS_BCR>;
    288			reset-names = "core";
    289			phy_type = "ulpi";
    290			dr_mode = "otg";
    291			hnp-disable;
    292			srp-disable;
    293			adp-disable;
    294			ahb-burst-config = <0>;
    295			phy-names = "usb-phy";
    296			phys = <&usb_hs_phy>;
    297			status = "disabled";
    298			#reset-cells = <1>;
    299
    300			ulpi {
    301				usb_hs_phy: phy {
    302					compatible = "qcom,usb-hs-phy-msm8226",
    303						     "qcom,usb-hs-phy";
    304					#phy-cells = <0>;
    305					clocks = <&xo_board>, <&gcc GCC_USB2A_PHY_SLEEP_CLK>;
    306					clock-names = "ref", "sleep";
    307					resets = <&gcc GCC_USB2A_PHY_BCR>, <&usb 0>;
    308					reset-names = "phy", "por";
    309					qcom,init-seq = /bits/ 8 <0x0 0x44
    310						0x1 0x68 0x2 0x24 0x3 0x13>;
    311				};
    312			};
    313		};
    314
    315		gcc: clock-controller@fc400000 {
    316			compatible = "qcom,gcc-msm8226";
    317			reg = <0xfc400000 0x4000>;
    318			#clock-cells = <1>;
    319			#reset-cells = <1>;
    320			#power-domain-cells = <1>;
    321		};
    322
    323		tlmm: pinctrl@fd510000 {
    324			compatible = "qcom,msm8226-pinctrl";
    325			reg = <0xfd510000 0x4000>;
    326			gpio-controller;
    327			#gpio-cells = <2>;
    328			gpio-ranges = <&tlmm 0 0 117>;
    329			interrupt-controller;
    330			#interrupt-cells = <2>;
    331			interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
    332
    333			blsp1_i2c1_pins: blsp1-i2c1 {
    334				pins = "gpio2", "gpio3";
    335				function = "blsp_i2c1";
    336				drive-strength = <2>;
    337				bias-disable;
    338			};
    339
    340			blsp1_i2c2_pins: blsp1-i2c2 {
    341				pins = "gpio6", "gpio7";
    342				function = "blsp_i2c2";
    343				drive-strength = <2>;
    344				bias-disable;
    345			};
    346
    347			blsp1_i2c3_pins: blsp1-i2c3 {
    348				pins = "gpio10", "gpio11";
    349				function = "blsp_i2c3";
    350				drive-strength = <2>;
    351				bias-disable;
    352			};
    353
    354			blsp1_i2c4_pins: blsp1-i2c4 {
    355				pins = "gpio14", "gpio15";
    356				function = "blsp_i2c4";
    357				drive-strength = <2>;
    358				bias-disable;
    359			};
    360
    361			blsp1_i2c5_pins: blsp1-i2c5 {
    362				pins = "gpio18", "gpio19";
    363				function = "blsp_i2c5";
    364				drive-strength = <2>;
    365				bias-disable;
    366			};
    367
    368			sdhc1_default_state: sdhc1-default-state {
    369				clk {
    370					pins = "sdc1_clk";
    371					drive-strength = <10>;
    372					bias-disable;
    373				};
    374
    375				cmd-data {
    376					pins = "sdc1_cmd", "sdc1_data";
    377					drive-strength = <10>;
    378					bias-pull-up;
    379				};
    380			};
    381
    382			sdhc2_default_state: sdhc2-default-state {
    383				clk {
    384					pins = "sdc2_clk";
    385					drive-strength = <10>;
    386					bias-disable;
    387				};
    388
    389				cmd-data {
    390					pins = "sdc2_cmd", "sdc2_data";
    391					drive-strength = <10>;
    392					bias-pull-up;
    393				};
    394			};
    395
    396			sdhc3_default_state: sdhc3-default-state {
    397				clk {
    398					pins = "gpio44";
    399					function = "sdc3";
    400					drive-strength = <8>;
    401					bias-disable;
    402				};
    403
    404				cmd {
    405					pins = "gpio43";
    406					function = "sdc3";
    407					drive-strength = <8>;
    408					bias-pull-up;
    409				};
    410
    411				data {
    412					pins = "gpio39", "gpio40", "gpio41", "gpio42";
    413					function = "sdc3";
    414					drive-strength = <8>;
    415					bias-pull-up;
    416				};
    417			};
    418		};
    419
    420		restart@fc4ab000 {
    421			compatible = "qcom,pshold";
    422			reg = <0xfc4ab000 0x4>;
    423		};
    424
    425		spmi_bus: spmi@fc4cf000 {
    426			compatible = "qcom,spmi-pmic-arb";
    427			reg-names = "core", "intr", "cnfg";
    428			reg = <0xfc4cf000 0x1000>,
    429			      <0xfc4cb000 0x1000>,
    430			      <0xfc4ca000 0x1000>;
    431			interrupt-names = "periph_irq";
    432			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
    433			qcom,ee = <0>;
    434			qcom,channel = <0>;
    435			#address-cells = <2>;
    436			#size-cells = <0>;
    437			interrupt-controller;
    438			#interrupt-cells = <4>;
    439		};
    440
    441		rng@f9bff000 {
    442			compatible = "qcom,prng";
    443			reg = <0xf9bff000 0x200>;
    444			clocks = <&gcc GCC_PRNG_AHB_CLK>;
    445			clock-names = "core";
    446		};
    447
    448		timer@f9020000 {
    449			compatible = "arm,armv7-timer-mem";
    450			reg = <0xf9020000 0x1000>;
    451			#address-cells = <1>;
    452			#size-cells = <1>;
    453			ranges;
    454
    455			frame@f9021000 {
    456				frame-number = <0>;
    457				interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>,
    458					     <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
    459				reg = <0xf9021000 0x1000>,
    460				      <0xf9022000 0x1000>;
    461			};
    462
    463			frame@f9023000 {
    464				frame-number = <1>;
    465				interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>;
    466				reg = <0xf9023000 0x1000>;
    467				status = "disabled";
    468			};
    469
    470			frame@f9024000 {
    471				frame-number = <2>;
    472				interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>;
    473				reg = <0xf9024000 0x1000>;
    474				status = "disabled";
    475			};
    476
    477			frame@f9025000 {
    478				frame-number = <3>;
    479				interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>;
    480				reg = <0xf9025000 0x1000>;
    481				status = "disabled";
    482			};
    483
    484			frame@f9026000 {
    485				frame-number = <4>;
    486				interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
    487				reg = <0xf9026000 0x1000>;
    488				status = "disabled";
    489			};
    490
    491			frame@f9027000 {
    492				frame-number = <5>;
    493				interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>;
    494				reg = <0xf9027000 0x1000>;
    495				status = "disabled";
    496			};
    497
    498			frame@f9028000 {
    499				frame-number = <6>;
    500				interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>;
    501				reg = <0xf9028000 0x1000>;
    502				status = "disabled";
    503			};
    504		};
    505
    506		rpm_msg_ram: memory@fc428000 {
    507			compatible = "qcom,rpm-msg-ram";
    508			reg = <0xfc428000 0x4000>;
    509		};
    510
    511		tcsr_mutex_block: syscon@fd484000 {
    512			compatible = "syscon";
    513			reg = <0xfd484000 0x2000>;
    514		};
    515	};
    516
    517	timer {
    518		compatible = "arm,armv7-timer";
    519		interrupts = <GIC_PPI 2
    520				(GIC_CPU_MASK_RAW(15) | IRQ_TYPE_LEVEL_LOW)>,
    521			     <GIC_PPI 3
    522				(GIC_CPU_MASK_RAW(15) | IRQ_TYPE_LEVEL_LOW)>,
    523			     <GIC_PPI 4
    524				(GIC_CPU_MASK_RAW(15) | IRQ_TYPE_LEVEL_LOW)>,
    525			     <GIC_PPI 1
    526				(GIC_CPU_MASK_RAW(15) | IRQ_TYPE_LEVEL_LOW)>;
    527	};
    528};