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

rk3288-vmarc-som.dtsi (7748B)


      1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
      2/*
      3 * Copyright (c) 2019 Fuzhou Rockchip Electronics Co., Ltd
      4 * Copyright (c) 2019 Vamrs Limited
      5 * Copyright (c) 2019 Amarula Solutions(India)
      6 */
      7
      8#include <dt-bindings/gpio/gpio.h>
      9#include <dt-bindings/pinctrl/rockchip.h>
     10
     11/ {
     12	compatible = "vamrs,rk3288-vmarc-som", "rockchip,rk3288";
     13
     14	vccio_flash: vccio-flash-regulator {
     15		compatible = "regulator-fixed";
     16		regulator-name = "vccio_flash";
     17		regulator-min-microvolt = <1800000>;
     18		regulator-max-microvolt = <1800000>;
     19		vin-supply = <&vcc_io>;
     20	};
     21};
     22
     23&emmc {
     24	bus-width = <8>;
     25	cap-mmc-highspeed;
     26	disable-wp;
     27	non-removable;
     28	pinctrl-names = "default";
     29	pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_pwr &emmc_bus8>;
     30	vmmc-supply = <&vcc_io>;
     31	vqmmc-supply = <&vccio_flash>;
     32	status = "okay";
     33};
     34
     35&gmac {
     36	assigned-clocks = <&cru SCLK_MAC>;
     37	phy-supply = <&vcc_io>;
     38	snps,reset-gpio = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>;
     39};
     40
     41&hdmi {
     42	ddc-i2c-bus = <&i2c5>;
     43	pinctrl-names = "default";
     44	pinctrl-0 = <&hdmi_cec_c0>;
     45};
     46
     47&i2c0 {
     48	clock-frequency = <400000>;
     49	status = "okay";
     50
     51	rk808: pmic@1b {
     52		compatible = "rockchip,rk808";
     53		reg = <0x1b>;
     54		interrupt-parent = <&gpio0>;
     55		interrupts = <RK_PA4 IRQ_TYPE_LEVEL_LOW>;
     56		pinctrl-names = "default";
     57		pinctrl-0 = <&pmic_int &global_pwroff>;
     58		rockchip,system-power-controller;
     59		wakeup-source;
     60		#clock-cells = <1>;
     61		clock-output-names = "rk808-clkout1", "rk808-clkout2";
     62
     63		vcc1-supply = <&vcc5v0_sys>;
     64		vcc2-supply = <&vcc5v0_sys>;
     65		vcc3-supply = <&vcc5v0_sys>;
     66		vcc4-supply = <&vcc5v0_sys>;
     67		vcc6-supply = <&vcc5v0_sys>;
     68		vcc7-supply = <&vcc5v0_sys>;
     69		vcc8-supply = <&vcc_io>;
     70		vcc9-supply = <&vcc_io>;
     71		vcc10-supply = <&vcc5v0_sys>;
     72		vcc11-supply = <&vcc5v0_sys>;
     73		vcc12-supply = <&vcc_io>;
     74		vddio-supply = <&vcc_io>;
     75
     76		regulators {
     77			vdd_cpu: DCDC_REG1 {
     78				regulator-name = "vdd_arm";
     79				regulator-always-on;
     80				regulator-boot-on;
     81				regulator-min-microvolt = <750000>;
     82				regulator-max-microvolt = <1400000>;
     83				regulator-state-mem {
     84					regulator-off-in-suspend;
     85				};
     86			};
     87
     88			vdd_gpu: DCDC_REG2 {
     89				regulator-name = "vdd_gpu";
     90				regulator-always-on;
     91				regulator-boot-on;
     92				regulator-min-microvolt = <850000>;
     93				regulator-max-microvolt = <1250000>;
     94				regulator-ramp-delay = <6000>;
     95				regulator-state-mem {
     96					regulator-off-in-suspend;
     97				};
     98			};
     99
    100			vcc_ddr: DCDC_REG3 {
    101				regulator-name = "vcc_ddr";
    102				regulator-always-on;
    103				regulator-boot-on;
    104				regulator-state-mem {
    105					regulator-on-in-suspend;
    106				};
    107			};
    108
    109			vcc_io: DCDC_REG4 {
    110				regulator-name = "vcc_io";
    111				regulator-always-on;
    112				regulator-boot-on;
    113				regulator-min-microvolt = <3300000>;
    114				regulator-max-microvolt = <3300000>;
    115				regulator-state-mem {
    116					regulator-on-in-suspend;
    117					regulator-suspend-microvolt = <3300000>;
    118				};
    119			};
    120
    121			vcc_tp: LDO_REG1 {
    122				regulator-name = "vcc_tp";
    123				regulator-always-on;
    124				regulator-boot-on;
    125				regulator-min-microvolt = <3300000>;
    126				regulator-max-microvolt = <3300000>;
    127				regulator-state-mem {
    128					regulator-off-in-suspend;
    129				};
    130			};
    131
    132			vcca_codec: LDO_REG2 {
    133				regulator-name = "vcca_codec";
    134				regulator-always-on;
    135				regulator-boot-on;
    136				regulator-min-microvolt = <3300000>;
    137				regulator-max-microvolt = <3300000>;
    138				regulator-state-mem {
    139					regulator-on-in-suspend;
    140					regulator-suspend-microvolt = <3300000>;
    141				};
    142			};
    143
    144			vdd_10: LDO_REG3 {
    145				regulator-name = "vdd_10";
    146				regulator-always-on;
    147				regulator-boot-on;
    148				regulator-min-microvolt = <1000000>;
    149				regulator-max-microvolt = <1000000>;
    150				regulator-state-mem {
    151					regulator-on-in-suspend;
    152					regulator-suspend-microvolt = <1000000>;
    153				};
    154			};
    155
    156			vcc_wl: LDO_REG4 {
    157				regulator-name = "vcc_wl";
    158				regulator-always-on;
    159				regulator-boot-on;
    160				regulator-min-microvolt = <1800000>;
    161				regulator-max-microvolt = <1800000>;
    162				regulator-state-mem {
    163					regulator-on-in-suspend;
    164				};
    165			};
    166
    167			vccio_sd: LDO_REG5 {
    168				regulator-name = "vccio_sd";
    169				regulator-always-on;
    170				regulator-boot-on;
    171				regulator-min-microvolt = <1800000>;
    172				regulator-max-microvolt = <3300000>;
    173				regulator-state-mem {
    174					regulator-on-in-suspend;
    175					regulator-suspend-microvolt = <3300000>;
    176				};
    177			};
    178
    179			vdd10_lcd: LDO_REG6 {
    180				regulator-name = "vdd10_lcd";
    181				regulator-always-on;
    182				regulator-boot-on;
    183				regulator-min-microvolt = <1000000>;
    184				regulator-max-microvolt = <1000000>;
    185				regulator-state-mem {
    186					regulator-off-in-suspend;
    187				};
    188			};
    189
    190			vcc_18: LDO_REG7 {
    191				regulator-name = "vcc_18";
    192				regulator-always-on;
    193				regulator-boot-on;
    194				regulator-min-microvolt = <1800000>;
    195				regulator-max-microvolt = <1800000>;
    196				regulator-state-mem {
    197					regulator-on-in-suspend;
    198					regulator-suspend-microvolt = <1800000>;
    199				};
    200			};
    201
    202			vcc18_lcd: LDO_REG8 {
    203				regulator-name = "vcc18_lcd";
    204				regulator-always-on;
    205				regulator-boot-on;
    206				regulator-min-microvolt = <1800000>;
    207				regulator-max-microvolt = <1800000>;
    208				regulator-state-mem {
    209					regulator-off-in-suspend;
    210				};
    211			};
    212
    213			vcc_sd: SWITCH_REG1 {
    214				regulator-name = "vcc_sd";
    215				regulator-always-on;
    216				regulator-boot-on;
    217				regulator-state-mem {
    218					regulator-off-in-suspend;
    219				};
    220			};
    221
    222			vcc_lcd: SWITCH_REG2 {
    223				regulator-name = "vcc_lcd";
    224				regulator-always-on;
    225				regulator-boot-on;
    226				regulator-state-mem {
    227					regulator-off-in-suspend;
    228				};
    229			};
    230		};
    231	};
    232};
    233
    234&i2c1 {
    235	clock-frequency = <400000>;
    236	status = "okay";
    237
    238	hym8563: rtc@51 {
    239		compatible = "haoyu,hym8563";
    240		reg = <0x51>;
    241		interrupt-parent = <&gpio5>;
    242		interrupts = <RK_PC3 IRQ_TYPE_LEVEL_LOW>;
    243		#clock-cells = <0>;
    244		clock-frequency = <32768>;
    245		clock-output-names = "hym8563";
    246		pinctrl-names = "default";
    247		pinctrl-0 = <&hym8563_int>;
    248	};
    249};
    250
    251&i2c5 {
    252	status = "okay";
    253};
    254
    255&io_domains {
    256	bb-supply = <&vcc_io>;
    257	flash0-supply = <&vccio_flash>;
    258	gpio1830-supply = <&vcc_18>;
    259	gpio30-supply = <&vcc_io>;
    260	sdcard-supply = <&vccio_sd>;
    261	wifi-supply = <&vcc_wl>;
    262	status = "okay";
    263};
    264
    265&pinctrl {
    266	hym8563 {
    267		hym8563_int: hym8563-int {
    268			rockchip,pins = <5 RK_PC3 RK_FUNC_GPIO &pcfg_pull_up>;
    269		};
    270	};
    271
    272	pcfg_pull_none_drv_8ma: pcfg-pull-none-drv-8ma {
    273		drive-strength = <8>;
    274	};
    275
    276	pcfg_pull_up_drv_8ma: pcfg-pull-up-drv-8ma {
    277		bias-pull-up;
    278		drive-strength = <8>;
    279	};
    280
    281	pmic {
    282		pmic_int: pmic-int {
    283			rockchip,pins = <0 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>;
    284		};
    285	};
    286
    287	sdio-pwrseq {
    288		wifi_enable_h: wifi-enable-h {
    289			rockchip,pins = <4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
    290		};
    291	};
    292
    293	sdmmc {
    294		sdmmc_bus4: sdmmc-bus4 {
    295			rockchip,pins =
    296				<6 RK_PC0 1 &pcfg_pull_up_drv_8ma>,
    297				<6 RK_PC1 1 &pcfg_pull_up_drv_8ma>,
    298				<6 RK_PC2 1 &pcfg_pull_up_drv_8ma>,
    299				<6 RK_PC3 1 &pcfg_pull_up_drv_8ma>;
    300		};
    301
    302		sdmmc_clk: sdmmc-clk {
    303			rockchip,pins = <6 RK_PC4 1 &pcfg_pull_none_drv_8ma>;
    304		};
    305
    306		sdmmc_cmd: sdmmc-cmd {
    307			rockchip,pins = <6 RK_PC5 1 &pcfg_pull_up_drv_8ma>;
    308		};
    309	};
    310
    311	vbus_host {
    312		usb1_en_oc: usb1-en-oc {
    313			rockchip,pins = <0 RK_PC1 RK_FUNC_GPIO &pcfg_pull_up>;
    314		};
    315	};
    316
    317	vbus_typec {
    318		usb0_en_oc: usb0-en-oc {
    319			rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_up>;
    320		};
    321	};
    322};
    323
    324&sdio_pwrseq {
    325	/*
    326	 * On the module itself this is one of these (depending
    327	 * on the actual card populated):
    328	 * - SDIO_RESET_L_WL_REG_ON
    329	 * - PDN (power down when low)
    330	 */
    331	reset-gpios = <&gpio4 RK_PD4 GPIO_ACTIVE_LOW>;	/* WIFI_REG_ON */
    332};
    333
    334&usbphy {
    335	status = "okay";
    336};
    337
    338&usb_host0_ehci {
    339	status = "okay";
    340};
    341
    342&usb_host0_ohci {
    343	status = "okay";
    344};
    345
    346&usb_host1 {
    347	status = "okay";
    348};
    349
    350&usb_otg {
    351	status = "okay";
    352};
    353
    354&vbus_host {
    355	enable-active-high;
    356	gpio = <&gpio0 RK_PC1 GPIO_ACTIVE_HIGH>; /* USB1_EN_OC# */
    357};
    358
    359&vbus_typec {
    360	enable-active-high;
    361	gpio = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>; /* USB0_EN_OC# */
    362};