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

sun6i-a31s-primo81.dts (5978B)


      1/*
      2 * Copyright 2014 Siarhei Siamashka <siarhei.siamashka@gmail.com>
      3 * Copyright 2015 Karsten Merker <merker@debian.org>
      4 * Copyright 2015 Chen-Yu Tsai <wens@csie.org>
      5 *
      6 * This file is dual-licensed: you can use it either under the terms
      7 * of the GPL or the X11 license, at your option. Note that this dual
      8 * licensing only applies to this file, and not this project as a
      9 * whole.
     10 *
     11 *  a) This file is free software; you can redistribute it and/or
     12 *     modify it under the terms of the GNU General Public License as
     13 *     published by the Free Software Foundation; either version 2 of the
     14 *     License, or (at your option) any later version.
     15 *
     16 *     This file is distributed in the hope that it will be useful,
     17 *     but WITHOUT ANY WARRANTY; without even the implied warranty of
     18 *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     19 *     GNU General Public License for more details.
     20 *
     21 * Or, alternatively,
     22 *
     23 *  b) Permission is hereby granted, free of charge, to any person
     24 *     obtaining a copy of this software and associated documentation
     25 *     files (the "Software"), to deal in the Software without
     26 *     restriction, including without limitation the rights to use,
     27 *     copy, modify, merge, publish, distribute, sublicense, and/or
     28 *     sell copies of the Software, and to permit persons to whom the
     29 *     Software is furnished to do so, subject to the following
     30 *     conditions:
     31 *
     32 *     The above copyright notice and this permission notice shall be
     33 *     included in all copies or substantial portions of the Software.
     34 *
     35 *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
     36 *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
     37 *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
     38 *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
     39 *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
     40 *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
     41 *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
     42 *     OTHER DEALINGS IN THE SOFTWARE.
     43 */
     44
     45/dts-v1/;
     46#include "sun6i-a31s.dtsi"
     47#include "sunxi-common-regulators.dtsi"
     48
     49#include <dt-bindings/gpio/gpio.h>
     50#include <dt-bindings/input/input.h>
     51
     52/ {
     53	model = "MSI Primo81 tablet";
     54	compatible = "msi,primo81", "allwinner,sun6i-a31s";
     55
     56	hdmi-connector {
     57		compatible = "hdmi-connector";
     58		type = "c";
     59
     60		port {
     61			hdmi_con_in: endpoint {
     62				remote-endpoint = <&hdmi_out_con>;
     63			};
     64		};
     65	};
     66};
     67
     68&cpu0 {
     69	cpu-supply = <&reg_dcdc3>;
     70};
     71
     72&de {
     73	status = "okay";
     74};
     75
     76&ehci0 {
     77	/* rtl8188etv wifi is connected here */
     78	status = "okay";
     79};
     80
     81&hdmi {
     82	status = "okay";
     83};
     84
     85&hdmi_out {
     86	hdmi_out_con: endpoint {
     87		remote-endpoint = <&hdmi_con_in>;
     88	};
     89};
     90
     91&i2c0 {
     92	/* pull-ups and device VDDIO use AXP221 DLDO3 */
     93	status = "failed";
     94};
     95
     96&i2c1 {
     97	status = "okay";
     98
     99	ctp@5d {
    100		compatible = "goodix,gt911";
    101		reg = <0x5d>;
    102		interrupt-parent = <&pio>;
    103		interrupts = <0 3 IRQ_TYPE_LEVEL_HIGH>; /* PA3 */
    104		touchscreen-swapped-x-y;
    105	};
    106};
    107
    108&i2c2 {
    109	status = "okay";
    110
    111	accelerometer@1c {
    112		pinctrl-names = "default";
    113		pinctrl-0 = <&mma8452_int_primo81>;
    114		compatible = "fsl,mma8452";
    115		reg = <0x1c>;
    116		interrupt-parent = <&pio>;
    117		interrupts = <0 9 IRQ_TYPE_LEVEL_HIGH>; /* PA9 */
    118	};
    119};
    120
    121&lradc {
    122	vref-supply = <&reg_aldo3>;
    123	status = "okay";
    124
    125	button-158 {
    126		label = "Volume Up";
    127		linux,code = <KEY_VOLUMEUP>;
    128		channel = <0>;
    129		voltage = <158730>;
    130	};
    131
    132	button-349 {
    133		label = "Volume Down";
    134		linux,code = <KEY_VOLUMEDOWN>;
    135		channel = <0>;
    136		voltage = <349206>;
    137	};
    138};
    139
    140&mmc0 {
    141	vmmc-supply = <&reg_dcdc1>;
    142	bus-width = <4>;
    143	cd-gpios = <&pio 0 8 GPIO_ACTIVE_LOW>; /* PA8 */
    144	status = "okay";
    145};
    146
    147&pio {
    148	mma8452_int_primo81: mma8452-int-pin {
    149		pins = "PA9";
    150		function = "gpio_in";
    151		bias-pull-up;
    152	};
    153};
    154
    155&p2wi {
    156	status = "okay";
    157
    158	axp22x: pmic@68 {
    159		compatible = "x-powers,axp221";
    160		reg = <0x68>;
    161		interrupt-parent = <&r_intc>;
    162		interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_LOW>;
    163		x-powers,drive-vbus-en;
    164	};
    165};
    166
    167#include "axp22x.dtsi"
    168
    169&battery_power_supply {
    170	status = "okay";
    171};
    172
    173&reg_aldo3 {
    174	regulator-always-on;
    175	regulator-min-microvolt = <2700000>;
    176	regulator-max-microvolt = <3300000>;
    177	regulator-name = "avcc";
    178};
    179
    180&reg_dc1sw {
    181	regulator-name = "vcc-lcd";
    182};
    183
    184&reg_dc5ldo {
    185	regulator-min-microvolt = <700000>;
    186	regulator-max-microvolt = <1320000>;
    187	regulator-name = "vdd-cpus"; /* This is an educated guess */
    188};
    189
    190&reg_dcdc1 {
    191	regulator-always-on;
    192	regulator-min-microvolt = <3000000>;
    193	regulator-max-microvolt = <3000000>;
    194	regulator-name = "vcc-3v0";
    195};
    196
    197&reg_dcdc2 {
    198	regulator-min-microvolt = <700000>;
    199	regulator-max-microvolt = <1320000>;
    200	regulator-name = "vdd-gpu";
    201};
    202
    203&reg_dcdc3 {
    204	regulator-always-on;
    205	regulator-min-microvolt = <700000>;
    206	regulator-max-microvolt = <1320000>;
    207	regulator-name = "vdd-cpu";
    208};
    209
    210&reg_dcdc4 {
    211	regulator-always-on;
    212	regulator-min-microvolt = <700000>;
    213	regulator-max-microvolt = <1320000>;
    214	regulator-name = "vdd-sys-dll";
    215};
    216
    217&reg_dcdc5 {
    218	regulator-always-on;
    219	regulator-min-microvolt = <1500000>;
    220	regulator-max-microvolt = <1500000>;
    221	regulator-name = "vcc-dram";
    222};
    223
    224&reg_dldo1 {
    225	regulator-min-microvolt = <3300000>;
    226	regulator-max-microvolt = <3300000>;
    227	regulator-name = "vcc-wifi";
    228};
    229
    230&reg_dldo3 {
    231	regulator-min-microvolt = <2800000>;
    232	regulator-max-microvolt = <2800000>;
    233	regulator-name = "vddio-csi";
    234};
    235
    236&reg_drivevbus {
    237	regulator-name = "usb0-vbus";
    238	status = "okay";
    239};
    240
    241&reg_eldo3 {
    242	regulator-min-microvolt = <1080000>;
    243	regulator-max-microvolt = <1320000>;
    244	regulator-name = "vdd-mipi-bridge";
    245};
    246
    247&simplefb_lcd {
    248	vcc-lcd-supply = <&reg_dc1sw>;
    249	vdd-mipi-bridge-supply = <&reg_eldo3>;
    250};
    251
    252&usb_otg {
    253	dr_mode = "otg";
    254	status = "okay";
    255};
    256
    257&usb_power_supply {
    258	status = "okay";
    259};
    260
    261&usbphy {
    262	usb0_id_det-gpios = <&pio 0 15 GPIO_ACTIVE_HIGH>; /* PA15 */
    263	usb0_vbus_power-supply = <&usb_power_supply>;
    264	usb0_vbus-supply = <&reg_drivevbus>;
    265	usb1_vbus-supply = <&reg_dldo1>;
    266	status = "okay";
    267};