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

sun8i-h3-nanopi-duo2.dts (3585B)


      1// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
      2/*
      3 * Copyright (C) 2019 Karl Palsson <karlp@tweak.net.au>
      4 */
      5
      6/dts-v1/;
      7#include "sun8i-h3.dtsi"
      8#include "sunxi-common-regulators.dtsi"
      9
     10#include <dt-bindings/gpio/gpio.h>
     11#include <dt-bindings/input/input.h>
     12
     13/ {
     14	model = "FriendlyARM NanoPi Duo2";
     15	compatible = "friendlyarm,nanopi-duo2", "allwinner,sun8i-h3";
     16
     17	aliases {
     18		serial0 = &uart0;
     19	};
     20
     21	chosen {
     22		stdout-path = "serial0:115200n8";
     23	};
     24
     25	leds {
     26		compatible = "gpio-leds";
     27
     28		led-0 {
     29			label = "nanopi:red:pwr";
     30			gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PL10 */
     31			default-state = "on";
     32		};
     33
     34		led-1 {
     35			label = "nanopi:green:status";
     36			gpios = <&pio 0 10 GPIO_ACTIVE_HIGH>; /* PA10 */
     37		};
     38	};
     39
     40	r_gpio_keys {
     41		compatible = "gpio-keys";
     42
     43		k1 {
     44			label = "k1";
     45			linux,code = <BTN_0>;
     46			gpios = <&r_pio 0 3 GPIO_ACTIVE_LOW>; /* PL3 */
     47		};
     48	};
     49
     50	reg_vdd_cpux: vdd-cpux-regulator {
     51		compatible = "regulator-gpio";
     52		regulator-name = "vdd-cpux";
     53		regulator-min-microvolt = <1100000>;
     54		regulator-max-microvolt = <1300000>;
     55		regulator-always-on;
     56		regulator-boot-on;
     57		regulator-ramp-delay = <50>; /* 4ms */
     58
     59		enable-active-high;
     60		enable-gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
     61		gpios = <&r_pio 0 6 GPIO_ACTIVE_HIGH>; /* PL6 */
     62		gpios-states = <0x1>;
     63		states = <1100000 0>, <1300000 1>;
     64	};
     65
     66	reg_vcc_dram: vcc-dram {
     67		compatible = "regulator-fixed";
     68		regulator-name = "vcc-dram";
     69		regulator-min-microvolt = <1500000>;
     70		regulator-max-microvolt = <1500000>;
     71		regulator-always-on;
     72		regulator-boot-on;
     73		enable-active-high;
     74		gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>; /* PL9 */
     75		vin-supply = <&reg_vcc5v0>;
     76        };
     77
     78	reg_vdd_sys: vdd-sys {
     79		compatible = "regulator-fixed";
     80		regulator-name = "vdd-sys";
     81		regulator-min-microvolt = <1200000>;
     82		regulator-max-microvolt = <1200000>;
     83		regulator-always-on;
     84		regulator-boot-on;
     85		enable-active-high;
     86		gpio = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */
     87		vin-supply = <&reg_vcc5v0>;
     88        };
     89
     90	wifi_pwrseq: wifi_pwrseq {
     91		compatible = "mmc-pwrseq-simple";
     92		reset-gpios = <&r_pio 0 7 GPIO_ACTIVE_LOW>; /* PL7 */
     93		clocks = <&rtc 1>;
     94		clock-names = "ext_clock";
     95	};
     96
     97};
     98
     99&cpu0 {
    100	cpu-supply = <&reg_vdd_cpux>;
    101};
    102
    103&ehci0 {
    104	status = "okay";
    105};
    106
    107&mmc0 {
    108	bus-width = <4>;
    109	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
    110	status = "okay";
    111	vmmc-supply = <&reg_vcc3v3>;
    112};
    113
    114&mmc1 {
    115	vmmc-supply = <&reg_vcc3v3>;
    116	vqmmc-supply = <&reg_vcc3v3>;
    117	mmc-pwrseq = <&wifi_pwrseq>;
    118	bus-width = <4>;
    119	non-removable;
    120	status = "okay";
    121
    122	sdio_wifi: sdio_wifi@1 {
    123		reg = <1>;
    124		compatible = "brcm,bcm4329-fmac";
    125		interrupt-parent = <&pio>;
    126		interrupts = <6 10 IRQ_TYPE_LEVEL_LOW>; /* PG10 / EINT10 */
    127		interrupt-names = "host-wake";
    128	};
    129};
    130
    131&ohci0 {
    132	status = "okay";
    133};
    134
    135&reg_usb0_vbus {
    136	gpio = <&r_pio 0 2 GPIO_ACTIVE_HIGH>; /* PL2 */
    137	status = "okay";
    138};
    139
    140&uart0 {
    141	pinctrl-names = "default";
    142	pinctrl-0 = <&uart0_pa_pins>;
    143	status = "okay";
    144};
    145
    146&uart2 {
    147	pinctrl-names = "default";
    148	pinctrl-0 = <&uart2_pins>, <&uart2_rts_cts_pins>;
    149	uart-has-rtscts;
    150	status = "okay";
    151
    152	bluetooth {
    153		compatible = "brcm,bcm43438-bt";
    154		clocks = <&rtc 1>;
    155		clock-names = "lpo";
    156		vbat-supply = <&reg_vcc3v3>;
    157		vddio-supply = <&reg_vcc3v3>;
    158		device-wakeup-gpios = <&pio 0 8 GPIO_ACTIVE_HIGH>; /* PA8 */
    159		host-wakeup-gpios = <&pio 0 7 GPIO_ACTIVE_HIGH>; /* PA7 */
    160		shutdown-gpios = <&pio 6 13 GPIO_ACTIVE_HIGH>; /* PG13 */
    161	};
    162};
    163
    164&usb_otg {
    165	status = "okay";
    166	dr_mode = "otg";
    167};
    168
    169&usbphy {
    170	usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
    171	usb0_vbus-supply = <&reg_usb0_vbus>;
    172	status = "okay";
    173};