Jetpack/hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-a...

349 lines
8.2 KiB
Plaintext

/*
* tegra186-quill-p3310-a00-00-base.dts Quill A00 Board
*
* Copyright (c) 2015-2019, NVIDIA CORPORATION. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*/
#include <t18x-common-platforms/tegra186-quill-common-p3310-1000-a00.dtsi>
#include <t18x-common-platforms/tegra186-quill-power-tree-p3310-1000-a00-00.dtsi>
#include <t18x-common-platforms/tegra186-quill-camera-modules.dtsi>
#include <t18x-common-modules/tegra186-display-e3320-1000-a00.dtsi>
/* comms dtsi file should be included after gpio dtsi file */
#include <t18x-common-platforms/tegra186-quill-comms.dtsi>
#include <t18x-common-plugin-manager/tegra186-quill-p3310-1000-a00-plugin-manager.dtsi>
#include <t18x-common-modules/tegra186-super-module-e2614-p2597-1000-a00.dtsi>
#include <t18x-common-plugin-manager/tegra186-quill-display-plugin-manager.dtsi>
#include <t18x-common-prod/tegra186-priv-quill-p3310-1000-a00-prod.dtsi>
#include <t18x-common-plugin-manager/tegra186-quill-camera-plugin-manager.dtsi>
/ {
model = "quill";
compatible = "nvidia,quill", "nvidia,p2597-0000+p3310-1000", "nvidia,tegra186";
nvidia,dtsfilename = __FILE__;
nvidia,boardids = "3310:0000:A0";
nvidia,proc-boardid = "3310:0000:A0";
nvidia,fastboot-usb-vid = <0x0955>;
nvidia,fastboot-usb-pid = <0xee16>;
chosen {
board-has-eeprom;
#if TEGRA_BOOTARGUMENT_VERSION >= DT_VERSION_2
bootargs ="console=ttyS0,115200 androidboot.presilicon=true firmware_class.path=/etc/firmware";
#else
bootargs ="console=ttyS0,115200";
#endif
stdout-path = &uarta;
nvidia,tegra-joint_xpu_rail;
};
firmware {
android {
compatible = "android,firmware";
hardware = "quill";
vbmeta {
compatible = "android,vbmeta";
parts = "vbmeta,kernel,kernel-dtb,kernel-dtbo,APP,vendor,SOS";
};
fstab {
compatible = "android,fstab";
vendor {
compatible = "android,vendor";
dev = "/dev/block/platform/3460000.sdhci/by-name/vendor";
type = "ext4";
mnt_flags = "ro";
fsmgr_flags = "wait,avb";
};
odm {
compatible = "android,odm";
dev = "/dev/block/platform/3460000.sdhci/by-name/odm";
type = "ext4";
mnt_flags = "ro";
fsmgr_flags = "wait,avb";
};
};
};
};
memory@80000000 {
device_type = "memory";
reg = <0x0 0x80000000 0x0 0x70000000>;
};
usb_cd {
status = "okay";
phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>;
phy-names = "otg-phy";
};
xotg {
status = "okay";
phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>;
phy-names = "otg-usb2";
};
#if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
xudc@3550000 {
status = "okay";
phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>;
phy-names = "usb2";
nvidia,boost-cpu-freq = <1200>;
};
usb_cd {
status = "okay";
phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>;
phy-names = "otg-phy";
nvidia,xusb-padctl = <&xusb_padctl>;
};
#else
xudc@3550000 {
status = "okay";
phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>;
phy-names = "usb2";
emc-frequency = <150000000>;
nvidia,boost-cpu-freq = <1200>;
};
#endif
#if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
xhci@3530000 {
status = "okay";
phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
<&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-1}>,
<&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-2}>,
<&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-1}>;
phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-1";
};
#else
xhci@3530000 {
status = "okay";
phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>,
<&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(1)>,
<&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(1)>;
phy-names = "utmi-0", "utmi-1", "usb3-1";
nvidia,boost_cpu_freq = <800>;
};
#endif
#if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
xusb_padctl@3520000 {
status = "okay";
pinctrl-0 = <&vbus_en0_default_state>;
pinctrl-1 = <&vbus_en1_default_state>;
pinctrl-2 = <&vbus_en0_sfio_tristate_state>;
pinctrl-3 = <&vbus_en1_sfio_tristate_state>;
pinctrl-4 = <&vbus_en0_sfio_passthrough_state>;
pinctrl-5 = <&vbus_en1_sfio_passthrough_state>;
pinctrl-names = "vbus_en0_default", "vbus_en1_default",
"vbus_en0_sfio_tristate", "vbus_en1_sfio_tristate",
"vbus_en0_sfio_passthrough", "vbus_en1_sfio_passthrough";
pads {
usb2 {
lanes {
usb2-0 {
nvidia,function = "xusb";
status = "okay";
};
usb2-1 {
nvidia,function = "xusb";
status = "okay";
};
usb2-2 {
nvidia,function = "xusb";
status = "okay";
};
};
};
usb3 {
lanes {
usb3-0 {
nvidia,function = "xusb";
status = "okay";
};
usb3-1 {
nvidia,function = "xusb";
status = "okay";
};
usb3-2 {
nvidia,function = "xusb";
status = "okay";
};
};
};
};
ports {
usb2-0 {
status = "okay";
mode = "otg";
vbus-supply = <&vdd_usb0_5v>;
nvidia,oc-pin = <0>;
};
usb2-1 {
status = "okay";
mode = "host";
vbus-supply = <&vdd_usb1_5v>;
nvidia,oc-pin = <1>;
};
usb2-2 {
status = "okay";
mode = "host";
vbus-supply = <&vdd_usb2_5v>;
};
usb3-0 {
nvidia,usb2-companion = <2>;
};
usb3-1 {
nvidia,usb2-companion = <1>;
status = "okay";
};
};
};
#endif
pinctrl@3520000 {
status = "okay";
pinctrl-0 = <&tegra_xusb_padctl_pinmux_default>;
pinctrl-1 = <&vbus_en0_sfio_tristate_state>;
pinctrl-2 = <&vbus_en1_sfio_tristate_state>;
pinctrl-3 = <&vbus_en0_sfio_passthrough_state>;
pinctrl-4 = <&vbus_en1_sfio_passthrough_state>;
pinctrl-5 = <&vbus_en0_default_state>;
pinctrl-6 = <&vbus_en1_default_state>;
pinctrl-names = "default",
"vbus_en0_sfio_tristate", "vbus_en1_sfio_tristate",
"vbus_en0_sfio_passthrough", "vbus_en1_sfio_passthrough",
"vbus_en0_default", "vbus_en1_default";
tegra_xusb_padctl_pinmux_default: pinmux {
/* Quill does not support usb3-micro AB */
usb2-micro-AB {
nvidia,lanes = "otg-0";
nvidia,function = "xusb";
nvidia,port-cap = <TEGRA_PADCTL_PORT_OTG_CAP>;
nvidia,oc-pin = <0>;
};
usb2-std-A-port2 {
nvidia,lanes = "otg-1";
nvidia,function = "xusb";
nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
nvidia,oc-pin = <1>;
};
usb3-std-A-port2 {
nvidia,lanes = "usb3-1";
nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
nvidia,oc-pin = <1>;
};
e3325-usb3-std-A-HS {
nvidia,lanes = "otg-2";
nvidia,function = "xusb";
nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
status = "disabled";
};
e3325-usb3-std-A-SS {
nvidia,lanes = "usb3-0";
nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
status = "disabled";
};
};
};
pcie-controller@10003000 {
status = "okay";
pci@1,0 {
nvidia,num-lanes = <2>;
status = "okay";
};
pci@2,0 {
nvidia,num-lanes = <1>;
status = "disabled";
};
pci@3,0 {
nvidia,num-lanes = <1>;
status = "okay";
};
};
i2c@3160000 {
lp8557-backlight-s-wuxga-8-0@2c {
status = "disabled";
};
};
i2c@c240000 {
clock-frequency = <400000>;
};
cpufreq@e070000 {
cpu_emc_map =
< 499200 204000>,
< 652800 408000>,
<1420800 665600>,
<1920000 1866000>;
};
cpus {
status = "disabled";
};
host1x {
sor {
status = "disabled";
dp-display {
status = "disabled";
};
hdmi-display {
status = "disabled";
};
panel-s-edp-uhdtv-15-6 {
smartdimmer {
status = "disabled";
};
};
};
dpaux@155c0000 {
status = "disabled";
};
sor1 {
status = "okay";
nvidia,active-panel = <&sor1_hdmi_display>;
hdmi-display {
status = "okay";
};
dp-display {
status = "disabled";
};
};
nvdisplay@15200000 {
status = "disabled";
};
nvdisplay@15220000 {
status = "disabled";
};
};
tegra_udrm: tegra_udrm {
compatible = "nvidia,tegra-udrm";
};
};
#if LINUX_VERSION >= 414
#include <tegra186-linux-4.14.dtsi>
#endif