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-msm8974-lge-nexus5-hammerhead.dts (11324B)


      1// SPDX-License-Identifier: GPL-2.0
      2#include "qcom-msm8974.dtsi"
      3#include "qcom-pm8841.dtsi"
      4#include "qcom-pm8941.dtsi"
      5#include <dt-bindings/input/input.h>
      6#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
      7
      8/ {
      9	model = "LGE MSM 8974 HAMMERHEAD";
     10	compatible = "lge,hammerhead", "qcom,msm8974";
     11
     12	aliases {
     13		serial0 = &blsp1_uart1;
     14		serial1 = &blsp2_uart4;
     15	};
     16
     17	chosen {
     18		stdout-path = "serial0:115200n8";
     19	};
     20
     21	gpio-keys {
     22		compatible = "gpio-keys";
     23
     24		pinctrl-names = "default";
     25		pinctrl-0 = <&gpio_keys_pin_a>;
     26
     27		volume-up {
     28			label = "volume_up";
     29			gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
     30			linux,input-type = <1>;
     31			linux,code = <KEY_VOLUMEUP>;
     32		};
     33
     34		volume-down {
     35			label = "volume_down";
     36			gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
     37			linux,input-type = <1>;
     38			linux,code = <KEY_VOLUMEDOWN>;
     39		};
     40	};
     41
     42	vreg_wlan: wlan-regulator {
     43		compatible = "regulator-fixed";
     44
     45		regulator-name = "wl-reg";
     46		regulator-min-microvolt = <3300000>;
     47		regulator-max-microvolt = <3300000>;
     48
     49		gpio = <&tlmm 26 GPIO_ACTIVE_HIGH>;
     50		enable-active-high;
     51
     52		pinctrl-names = "default";
     53		pinctrl-0 = <&wlan_regulator_pin>;
     54	};
     55};
     56
     57&blsp1_i2c1 {
     58	status = "okay";
     59	clock-frequency = <100000>;
     60
     61	charger: bq24192@6b {
     62		compatible = "ti,bq24192";
     63		reg = <0x6b>;
     64		interrupts-extended = <&spmi_bus 0 0xd5 0 IRQ_TYPE_EDGE_FALLING>;
     65
     66		omit-battery-class;
     67
     68		usb_otg_vbus: usb-otg-vbus { };
     69	};
     70
     71	fuelgauge: max17048@36 {
     72		compatible = "maxim,max17048";
     73		reg = <0x36>;
     74
     75		maxim,double-soc;
     76		maxim,rcomp = /bits/ 8 <0x4d>;
     77
     78		interrupt-parent = <&tlmm>;
     79		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
     80
     81		pinctrl-names = "default";
     82		pinctrl-0 = <&fuelgauge_pin>;
     83
     84		maxim,alert-low-soc-level = <2>;
     85	};
     86};
     87
     88&blsp1_i2c2 {
     89	status = "okay";
     90	clock-frequency = <355000>;
     91
     92	synaptics@70 {
     93		compatible = "syna,rmi4-i2c";
     94		reg = <0x70>;
     95
     96		interrupts-extended = <&tlmm 5 IRQ_TYPE_EDGE_FALLING>;
     97		vdd-supply = <&pm8941_l22>;
     98		vio-supply = <&pm8941_lvs3>;
     99
    100		pinctrl-names = "default";
    101		pinctrl-0 = <&touch_pin>;
    102
    103		#address-cells = <1>;
    104		#size-cells = <0>;
    105
    106		rmi4-f01@1 {
    107			reg = <0x1>;
    108			syna,nosleep-mode = <1>;
    109		};
    110
    111		rmi4-f12@12 {
    112			reg = <0x12>;
    113			syna,sensor-type = <1>;
    114		};
    115	};
    116};
    117
    118&blsp1_i2c3 {
    119	status = "okay";
    120	clock-frequency = <100000>;
    121
    122	avago_apds993@39 {
    123		compatible = "avago,apds9930";
    124		reg = <0x39>;
    125		interrupts-extended = <&tlmm 61 IRQ_TYPE_EDGE_FALLING>;
    126		vdd-supply = <&pm8941_l17>;
    127		vddio-supply = <&pm8941_lvs1>;
    128		led-max-microamp = <100000>;
    129		amstaos,proximity-diodes = <0>;
    130	};
    131};
    132
    133&blsp2_i2c5 {
    134	status = "okay";
    135	clock-frequency = <355000>;
    136
    137	led-controller@38 {
    138		compatible = "ti,lm3630a";
    139		status = "okay";
    140		reg = <0x38>;
    141
    142		#address-cells = <1>;
    143		#size-cells = <0>;
    144
    145		led@0 {
    146			reg = <0>;
    147			led-sources = <0 1>;
    148			label = "lcd-backlight";
    149			default-brightness = <200>;
    150		};
    151	};
    152};
    153
    154&blsp2_i2c6 {
    155	status = "okay";
    156	clock-frequency = <100000>;
    157
    158	mpu6515@68 {
    159		compatible = "invensense,mpu6515";
    160		reg = <0x68>;
    161		interrupts-extended = <&tlmm 73 IRQ_TYPE_EDGE_FALLING>;
    162		vddio-supply = <&pm8941_lvs1>;
    163
    164		pinctrl-names = "default";
    165		pinctrl-0 = <&mpu6515_pin>;
    166
    167		mount-matrix = "0", "-1", "0",
    168				"-1", "0", "0",
    169				"0", "0", "1";
    170
    171		i2c-gate {
    172			#address-cells = <1>;
    173			#size-cells = <0>;
    174			ak8963@f {
    175				compatible = "asahi-kasei,ak8963";
    176				reg = <0x0f>;
    177				gpios = <&tlmm 67 0>;
    178				vid-supply = <&pm8941_lvs1>;
    179				vdd-supply = <&pm8941_l17>;
    180			};
    181
    182			bmp280@76 {
    183				compatible = "bosch,bmp280";
    184				reg = <0x76>;
    185				vdda-supply = <&pm8941_lvs1>;
    186				vddd-supply = <&pm8941_l17>;
    187			};
    188		};
    189	};
    190};
    191
    192&blsp1_uart1 {
    193	status = "okay";
    194};
    195
    196&blsp2_uart4 {
    197	status = "okay";
    198
    199	bluetooth {
    200		compatible = "brcm,bcm43438-bt";
    201		max-speed = <3000000>;
    202
    203		pinctrl-names = "default";
    204		pinctrl-0 = <&bt_pin>;
    205
    206		host-wakeup-gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>;
    207		device-wakeup-gpios = <&tlmm 62 GPIO_ACTIVE_HIGH>;
    208		shutdown-gpios = <&tlmm 41 GPIO_ACTIVE_HIGH>;
    209	};
    210};
    211
    212&dsi0 {
    213	status = "okay";
    214
    215	vdda-supply = <&pm8941_l2>;
    216	vdd-supply = <&pm8941_lvs3>;
    217	vddio-supply = <&pm8941_l12>;
    218
    219	panel: panel@0 {
    220		reg = <0>;
    221		compatible = "lg,acx467akm-7";
    222
    223		pinctrl-names = "default";
    224		pinctrl-0 = <&panel_pin>;
    225
    226		port {
    227			panel_in: endpoint {
    228				remote-endpoint = <&dsi0_out>;
    229			};
    230		};
    231	};
    232};
    233
    234&dsi0_out {
    235	remote-endpoint = <&panel_in>;
    236	data-lanes = <0 1 2 3>;
    237};
    238
    239&dsi0_phy {
    240	status = "okay";
    241
    242	vddio-supply = <&pm8941_l12>;
    243};
    244
    245&mdss {
    246	status = "okay";
    247};
    248
    249&otg {
    250	status = "okay";
    251
    252	phys = <&usb_hs1_phy>;
    253	phy-select = <&tcsr 0xb000 0>;
    254
    255	extcon = <&charger>, <&usb_id>;
    256	vbus-supply = <&usb_otg_vbus>;
    257
    258	hnp-disable;
    259	srp-disable;
    260	adp-disable;
    261
    262	ulpi {
    263		phy@a {
    264			status = "okay";
    265
    266			v1p8-supply = <&pm8941_l6>;
    267			v3p3-supply = <&pm8941_l24>;
    268
    269			qcom,init-seq = /bits/ 8 <0x1 0x64>;
    270		};
    271	};
    272};
    273
    274&pm8941_gpios {
    275	gpio_keys_pin_a: gpio-keys-active {
    276		pins = "gpio2", "gpio3";
    277		function = "normal";
    278
    279		bias-pull-up;
    280		power-source = <PM8941_GPIO_S3>;
    281	};
    282
    283	fuelgauge_pin: fuelgauge-int {
    284		pins = "gpio9";
    285		function = "normal";
    286
    287		bias-disable;
    288		input-enable;
    289		power-source = <PM8941_GPIO_S3>;
    290	};
    291
    292	wlan_sleep_clk_pin: wl-sleep-clk {
    293		pins = "gpio16";
    294		function = "func2";
    295
    296		output-high;
    297		power-source = <PM8941_GPIO_S3>;
    298	};
    299
    300	wlan_regulator_pin: wl-reg-active {
    301		pins = "gpio17";
    302		function = "normal";
    303
    304		bias-disable;
    305		power-source = <PM8941_GPIO_S3>;
    306	};
    307
    308	otg {
    309		gpio-hog;
    310		gpios = <35 GPIO_ACTIVE_HIGH>;
    311		output-high;
    312		line-name = "otg-gpio";
    313	};
    314};
    315
    316&rpm_requests {
    317	pm8841-regulators {
    318		compatible = "qcom,rpm-pm8841-regulators";
    319
    320		pm8841_s1: s1 {
    321			regulator-min-microvolt = <675000>;
    322			regulator-max-microvolt = <1050000>;
    323		};
    324
    325		pm8841_s2: s2 {
    326			regulator-min-microvolt = <500000>;
    327			regulator-max-microvolt = <1050000>;
    328		};
    329
    330		pm8841_s3: s3 {
    331			regulator-min-microvolt = <1050000>;
    332			regulator-max-microvolt = <1050000>;
    333		};
    334
    335		pm8841_s4: s4 {
    336			regulator-min-microvolt = <815000>;
    337			regulator-max-microvolt = <900000>;
    338		};
    339	};
    340
    341	pm8941-regulators {
    342		compatible = "qcom,rpm-pm8941-regulators";
    343
    344		vdd_l1_l3-supply = <&pm8941_s1>;
    345		vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
    346		vdd_l4_l11-supply = <&pm8941_s1>;
    347		vdd_l5_l7-supply = <&pm8941_s2>;
    348		vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
    349		vdd_l8_l16_l18_l19-supply = <&vreg_vph_pwr>;
    350		vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
    351		vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
    352		vdd_l21-supply = <&vreg_boost>;
    353
    354		pm8941_s1: s1 {
    355			regulator-min-microvolt = <1300000>;
    356			regulator-max-microvolt = <1300000>;
    357			regulator-always-on;
    358			regulator-boot-on;
    359		};
    360
    361		pm8941_s2: s2 {
    362			regulator-min-microvolt = <2150000>;
    363			regulator-max-microvolt = <2150000>;
    364			regulator-boot-on;
    365		};
    366
    367		pm8941_s3: s3 {
    368			regulator-min-microvolt = <1800000>;
    369			regulator-max-microvolt = <1800000>;
    370			regulator-always-on;
    371			regulator-boot-on;
    372		};
    373
    374		pm8941_l1: l1 {
    375			regulator-min-microvolt = <1225000>;
    376			regulator-max-microvolt = <1225000>;
    377			regulator-always-on;
    378			regulator-boot-on;
    379		};
    380
    381		pm8941_l2: l2 {
    382			regulator-min-microvolt = <1200000>;
    383			regulator-max-microvolt = <1200000>;
    384		};
    385
    386		pm8941_l3: l3 {
    387			regulator-min-microvolt = <1225000>;
    388			regulator-max-microvolt = <1225000>;
    389		};
    390
    391		pm8941_l4: l4 {
    392			regulator-min-microvolt = <1225000>;
    393			regulator-max-microvolt = <1225000>;
    394		};
    395
    396		pm8941_l5: l5 {
    397			regulator-min-microvolt = <1800000>;
    398			regulator-max-microvolt = <1800000>;
    399		};
    400
    401		pm8941_l6: l6 {
    402			regulator-min-microvolt = <1800000>;
    403			regulator-max-microvolt = <1800000>;
    404			regulator-boot-on;
    405		};
    406
    407		pm8941_l7: l7 {
    408			regulator-min-microvolt = <1800000>;
    409			regulator-max-microvolt = <1800000>;
    410			regulator-boot-on;
    411		};
    412
    413		pm8941_l8: l8 {
    414			regulator-min-microvolt = <1800000>;
    415			regulator-max-microvolt = <1800000>;
    416		};
    417
    418		pm8941_l9: l9 {
    419			regulator-min-microvolt = <1800000>;
    420			regulator-max-microvolt = <2950000>;
    421		};
    422
    423		pm8941_l10: l10 {
    424			regulator-min-microvolt = <1800000>;
    425			regulator-max-microvolt = <2950000>;
    426		};
    427
    428		pm8941_l11: l11 {
    429			regulator-min-microvolt = <1300000>;
    430			regulator-max-microvolt = <1300000>;
    431		};
    432
    433		pm8941_l12: l12 {
    434			regulator-min-microvolt = <1800000>;
    435			regulator-max-microvolt = <1800000>;
    436			regulator-always-on;
    437			regulator-boot-on;
    438		};
    439
    440		pm8941_l13: l13 {
    441			regulator-min-microvolt = <1800000>;
    442			regulator-max-microvolt = <2950000>;
    443			regulator-boot-on;
    444		};
    445
    446		pm8941_l14: l14 {
    447			regulator-min-microvolt = <1800000>;
    448			regulator-max-microvolt = <1800000>;
    449		};
    450
    451		pm8941_l15: l15 {
    452			regulator-min-microvolt = <2050000>;
    453			regulator-max-microvolt = <2050000>;
    454		};
    455
    456		pm8941_l16: l16 {
    457			regulator-min-microvolt = <2700000>;
    458			regulator-max-microvolt = <2700000>;
    459		};
    460
    461		pm8941_l17: l17 {
    462			regulator-min-microvolt = <2850000>;
    463			regulator-max-microvolt = <2850000>;
    464		};
    465
    466		pm8941_l18: l18 {
    467			regulator-min-microvolt = <2850000>;
    468			regulator-max-microvolt = <2850000>;
    469		};
    470
    471		pm8941_l19: l19 {
    472			regulator-min-microvolt = <3000000>;
    473			regulator-max-microvolt = <3300000>;
    474		};
    475
    476		pm8941_l20: l20 {
    477			regulator-min-microvolt = <2950000>;
    478			regulator-max-microvolt = <2950000>;
    479			regulator-system-load = <200000>;
    480			regulator-allow-set-load;
    481			regulator-boot-on;
    482		};
    483
    484		pm8941_l21: l21 {
    485			regulator-min-microvolt = <2950000>;
    486			regulator-max-microvolt = <2950000>;
    487			regulator-boot-on;
    488		};
    489
    490		pm8941_l22: l22 {
    491			regulator-min-microvolt = <3000000>;
    492			regulator-max-microvolt = <3300000>;
    493		};
    494
    495		pm8941_l23: l23 {
    496			regulator-min-microvolt = <3000000>;
    497			regulator-max-microvolt = <3000000>;
    498		};
    499
    500		pm8941_l24: l24 {
    501			regulator-min-microvolt = <3075000>;
    502			regulator-max-microvolt = <3075000>;
    503			regulator-boot-on;
    504		};
    505
    506		pm8941_lvs1: lvs1 {};
    507		pm8941_lvs3: lvs3 {};
    508	};
    509};
    510
    511&sdhc_1 {
    512	status = "okay";
    513
    514	vmmc-supply = <&pm8941_l20>;
    515	vqmmc-supply = <&pm8941_s3>;
    516
    517	pinctrl-names = "default", "sleep";
    518	pinctrl-0 = <&sdc1_on>;
    519	pinctrl-1 = <&sdc1_off>;
    520};
    521
    522&sdhc_2 {
    523	status = "okay";
    524
    525	max-frequency = <100000000>;
    526	vmmc-supply = <&vreg_wlan>;
    527	vqmmc-supply = <&pm8941_s3>;
    528	non-removable;
    529
    530	pinctrl-names = "default", "sleep";
    531	pinctrl-0 = <&sdc2_on>;
    532	pinctrl-1 = <&sdc2_off>;
    533
    534	bcrmf@1 {
    535		compatible = "brcm,bcm4339-fmac", "brcm,bcm4329-fmac";
    536		reg = <1>;
    537
    538		brcm,drive-strength = <10>;
    539
    540		pinctrl-names = "default";
    541		pinctrl-0 = <&wlan_sleep_clk_pin>;
    542	};
    543};
    544
    545&tlmm {
    546	sdc1_on: sdc1-on {
    547		clk {
    548			pins = "sdc1_clk";
    549			drive-strength = <16>;
    550			bias-disable;
    551		};
    552
    553		cmd-data {
    554			pins = "sdc1_cmd", "sdc1_data";
    555			drive-strength = <10>;
    556			bias-pull-up;
    557		};
    558	};
    559
    560	sdc2_on: sdc2-on {
    561		clk {
    562			pins = "sdc2_clk";
    563			drive-strength = <6>;
    564			bias-disable;
    565		};
    566
    567		cmd-data {
    568			pins = "sdc2_cmd", "sdc2_data";
    569			drive-strength = <6>;
    570			bias-pull-up;
    571		};
    572	};
    573
    574	mpu6515_pin: mpu6515 {
    575		pins = "gpio73";
    576		function = "gpio";
    577		bias-disable;
    578		input-enable;
    579	};
    580
    581	touch_pin: touch {
    582		int {
    583			pins = "gpio5";
    584			function = "gpio";
    585
    586			drive-strength = <2>;
    587			bias-disable;
    588			input-enable;
    589		};
    590
    591		reset {
    592			pins = "gpio8";
    593			function = "gpio";
    594
    595			drive-strength = <2>;
    596			bias-pull-up;
    597		};
    598	};
    599
    600	panel_pin: panel {
    601		pins = "gpio12";
    602		function = "mdp_vsync";
    603		drive-strength = <2>;
    604		bias-disable;
    605	};
    606
    607	bt_pin: bt {
    608		hostwake {
    609			pins = "gpio42";
    610			function = "gpio";
    611		};
    612
    613		devwake {
    614			pins = "gpio62";
    615			function = "gpio";
    616		};
    617
    618		shutdown {
    619			pins = "gpio41";
    620			function = "gpio";
    621		};
    622	};
    623};