blob: b89c53b1865ded52cccb85803b59dc622ec5afb5 [file]
// SPDX-License-Identifier: GPL-2.0+
/*
* Copyright (c) 2020 MediaTek Inc.
*
*/
/dts-v1/;
/plugin/;
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/memory/mt8696-larb-port.h>
#include <dt-bindings/phy/phy.h>
#include <dt-bindings/clock/mt8696-clk.h>
#include <dt-bindings/power/mt8696-power.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/gce/mt8696-gce.h>
#include <dt-bindings/pinctrl/mt8696-pinfunc.h>
#include <dt-bindings/soc/mediatek,boot-mode.h>
#include <dt-bindings/usb/pd.h>
/ {
board_id = <0x3>;
};
&odm {
extcon_usb: extcon-iddig {
compatible = "linux,extcon-usb-gpio";
status = "disabled";
};
extcon_kirkwood_usb: extcon-kirkwood {
compatible = "linux,extcon-usb-kirkwood";
status = "disabled";
};
gpio_keys: gpio_keys {
compatible = "gpio-keys";
};
/* WOW IRQ : GPIO0 => EINT11 */
mediatek,mt7921-wifi {
compatible = "mediatek,mt7663_wifi_ctrl";
interrupt-parent = <&pio>;
interrupts = <11 IRQ_TYPE_LEVEL_LOW 0 0x0>;
status = "okay";
};
/* WOBLE IRQ GPIO1 => EINT12*/
mediatek,mt7668-bt {
compatible = "mediatek,mt7668_bt_ctrl";
interrupt-parent = <&pio>;
interrupts = <12 IRQ_TYPE_LEVEL_LOW 1 0x0>;
status = "okay";
};
mmc_fixed_3v3: fixedregulator@0 {
compatible = "regulator-fixed";
regulator-name = "mmc_power";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
enable-active-high;
};
mmc_fixed_1v8_io: fixedregulator@1 {
compatible = "regulator-fixed";
regulator-name = "mmc_io";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
enable-active-high;
};
mmc2_fixed_pwr: fixedregulator@2 {
compatible = "regulator-fixed";
regulator-name = "sdio_power";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
enable-active-high;
regulator-always-on;
};
mmc2_fixed_pmu: fixedregulator@3 {
compatible = "regulator-fixed";
regulator-name = "sdio_pmu";
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1800000>;
startup-delay-us = <200000>;
gpio = <&pio 26 0>;
enable-active-high;
};
rt-pd-manager {
compatible = "mediatek,rt-pd-manager";
};
sound: sound {
compatible = "mediatek,mt8696-evb";
mediatek,platform = <&afe>;
status = "okay";
};
sound1: sound1 {
compatible = "mediatek,mt8696-card1";
mediatek,platform = <&afe32>;
mediatek,multi-in-audio-codec = <&earc_rx_codec>;
mediatek,multi-in-codec-dai-name = "mtk-earc-rx-codec-dai";
status = "okay";
};
ntc_ddr: thermal-sensor@0 {
compatible = "murata,ncp03wf104";
pullup-uv = <1800000>;
pullup-ohm = <100000>;
pulldown-ohm = <0>;
io-channels = <&auxadc 0>;
#thermal-sensor-cells = <0>;
};
ntc_wifi: thermal-sensor@1 {
compatible = "murata,ncp03wf104";
pullup-uv = <1800000>;
pullup-ohm = <100000>;
pulldown-ohm = <0>;
io-channels = <&auxadc 2>;
#thermal-sensor-cells = <0>;
};
ntc_soc_bottom: thermal-sensor@2 {
compatible = "murata,ncp03wf104";
pullup-uv = <1800000>;
pullup-ohm = <100000>;
pulldown-ohm = <0>;
io-channels = <&auxadc 3>;
#thermal-sensor-cells = <0>;
};
usb_vbus_5v0: fixedregulator@4 {
compatible = "regulator-fixed";
regulator-name = "vbus";
regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>;
regulator-type = "voltage";
regulator-always-on;
};
usb_vbus_3v3: fixedregulator@5 {
compatible = "regulator-fixed";
regulator-name = "usb vbus";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
};
&afe {
mediatek,etdm-clock-modes = <0 1>;
mediatek,etdm-out-data-modes = <1 1>;
mediatek,etdm-in-data-modes = <1 1>;
mediatek,hdmi-clk-force-on = <1>;
status = "okay";
};
&afe32 {
mediatek,etdm-in-data-modes = <1 1 0>;
mediatek,etdm-out-data-modes = <1 1 1>;
mediatek,spdif-in-arc-mux = <2>;
status = "okay";
};
&auxadc {
status = "okay";
};
&dramc {
support_ch_cnt = <2>;
ch_cnt = <2>;
mr_cnt = <4>;
};
&ethernet {
pinctrl-names = "default","sleep";
pinctrl-0 = <&eth_pins_default>;
pinctrl-1 = <&eth_pins_sleep>;
phy-handle = <&eth_phy>;
mac-address = [00 00 00 00 00 00];
phy-mode = "rgmii-rxid";
status = "okay";
mdio {
#address-cells = <1>;
#size-cells = <0>;
eth_phy: ethernet-phy@1 {
compatible = "ethernet-phy-id001c.c916";
realtek,aldps-enable;
reg = <1>;
};
};
};
&gpio_keys{
pinctrl-names = "default";
pinctrl-0 = <&gpio_keys_default>;
status = "okay";
connect_button: button@0 {
debounce_interval = <50>;
wakeup-source;
gpio-key,wakeup = <1>;
gpios = <&pio 97 1>;
label = "KEY_CONNECT";
linux,input-type = <0x1>;
linux,code = <218>;
};
};
&hdmitx {
pinctrl-names = "default";
pinctrl-0 = <&hdmi_default>;
};
&i2c0 {
status = "okay";
clock-frequency = <400000>;
rt1711h@4e {
compatible = "richtek,rt1711h";
reg = <0x4e>;
gpios = <&pio 76 GPIO_ACTIVE_LOW>;
/* port to connect with remote usb-role-switch endpoint */
port {
usb_role: endpoint {
remote-endpoint = <&tcpc_drd_switch>;
};
};
usb_con: connector {
compatible = "usb-c-connector";
label = "USB-C";
power-role = "sink";
data-role = "dual";
sink-pdos = <PDO_FIXED(5000, 900, PDO_FIXED_USB_COMM)>;
op-sink-microwatt = <4500000>;
no-vconn = "true";
no-send-disc = "true";
send-initial-get-src-cap = "true";
initial-get-src-cap-delay-ms = <200>;
ports {
#address-cells = <1>;
#size-cells = <0>;
/* port@0 for USB2 */
port@0 {
reg = <0>;
};
};
};
};
};
&i2c3 {
status = "okay";
clock-frequency = <400000>;
mt6395: mt6395@62 {
compatible = "mediatek,mt6395-regulator";
mt6395,irq-gpios = <&pio 4 0x0>;
reg = <0x62>;
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&pmic_pins_eint>;
};
};
&i2c4 {
status = "okay";
clock-frequency = <400000>;
ina231: ina231@40 {
compatible = "ti,ina231";
reg = <0x40>;
shunt-resistor = <10000>;
};
};
&irrx {
pinctrl-names = "default";
pinctrl-0 = <&irrx_pins_ir_input>;
status = "okay";
};
&mmc0 {
status = "okay";
pinctrl-names = "default", "state_uhs";
pinctrl-0 = <&mmc0_pins_default>;
pinctrl-1 = <&mmc0_pins_uhs>;
bus-width = <8>;
max-frequency = <200000000>;
cap-mmc-highspeed;
mmc-hs200-1_8v;
mmc-hs400-1_8v;
supports-cqe;
hs400-ds-delay = <0x13014>;
vmmc-supply = <&mmc_fixed_3v3>;
vqmmc-supply = <&mmc_fixed_1v8_io>;
non-removable;
no-sd;
no-sdio;
};
&mmc2 {
status = "okay";
pinctrl-names = "default", "state_uhs", "state_eint",
"state_dat1", "state_low";
pinctrl-0 = <&mmc2_pins_default>;
pinctrl-1 = <&mmc2_pins_uhs>;
pinctrl-2 = <&mmc2_pins_eint>;
pinctrl-3 = <&mmc2_pins_dat1>;
pinctrl-4 = <&mmc2_pins_low>;
eint-gpios = <&pio 44 0>;
bus-width = <4>;
max-frequency = <200000000>;
cap-sd-highspeed;
/*sd-uhs-ddr208;*/
sd-uhs-sdr104;
sd-uhs-sdr50;
sd-uhs-sdr25;
keep-power-in-suspend;
enable-sdio-wakeup;
cap-sdio-irq;
cap-sdio-async-int;
no-mmc;
no-sd;
non-removable;
vmmc-supply = <&mmc2_fixed_pwr>;
vqmmc-supply = <&mmc2_fixed_pmu>;
};
&pio {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pins_default>;
eth_pins_default: eth-default-pins {
tx-pins {
pinmux = <PINMUX_GPIO133__FUNC_GBE_TXD3>,
<PINMUX_GPIO134__FUNC_GBE_TXD2>,
<PINMUX_GPIO135__FUNC_GBE_TXD1>,
<PINMUX_GPIO136__FUNC_GBE_TXD0>,
<PINMUX_GPIO137__FUNC_GBE_TXC>,
<PINMUX_GPIO138__FUNC_GBE_TXEN>;
drive-strength = <MTK_DRIVE_8mA>;
};
rx-pins {
pinmux = <PINMUX_GPIO139__FUNC_GBE_RXD3>,
<PINMUX_GPIO140__FUNC_GBE_RXD2>,
<PINMUX_GPIO141__FUNC_GBE_RXD1>,
<PINMUX_GPIO142__FUNC_GBE_RXD0>,
<PINMUX_GPIO143__FUNC_GBE_RXDV>,
<PINMUX_GPIO145__FUNC_GBE_RXC>;
drive-strength = <MTK_DRIVE_8mA>;
};
mdio-pins {
pinmux = <PINMUX_GPIO146__FUNC_GBE_MDC>,
<PINMUX_GPIO147__FUNC_GBE_MDIO>;
drive-strength = <MTK_DRIVE_8mA>;
input-enable;
};
phy-rstb {
pinmux = <PINMUX_GPIO29__FUNC_GPIO29>;
output-high;
};
gbe-vio33-en {
pinmux = <PINMUX_GPIO150__FUNC_GPIO150>;
output-high;
};
};
eth_pins_sleep: eth-sleep-pins {
tx-pins {
pinmux = <PINMUX_GPIO133__FUNC_GPIO133>,
<PINMUX_GPIO134__FUNC_GPIO134>,
<PINMUX_GPIO135__FUNC_GPIO135>,
<PINMUX_GPIO136__FUNC_GPIO136>,
<PINMUX_GPIO137__FUNC_GPIO137>,
<PINMUX_GPIO138__FUNC_GPIO138>;
};
rx-pins {
pinmux = <PINMUX_GPIO139__FUNC_GPIO139>,
<PINMUX_GPIO140__FUNC_GPIO140>,
<PINMUX_GPIO141__FUNC_GPIO141>,
<PINMUX_GPIO142__FUNC_GPIO142>,
<PINMUX_GPIO143__FUNC_GPIO143>,
<PINMUX_GPIO145__FUNC_GPIO145>;
};
mdio-pins {
pinmux = <PINMUX_GPIO146__FUNC_GPIO146>,
<PINMUX_GPIO147__FUNC_GPIO147>;
input-disable;
bias-disable;
};
};
hdmi_default: hdmi {
hdmi_cec {
pinmux = <PINMUX_GPIO110__FUNC_HDMITX20_CEC>;
bias-disable;
};
hdmi_pins {
pinmux = <PINMUX_GPIO112__FUNC_HDMITX20_SCL>,
<PINMUX_GPIO113__FUNC_HDMITX20_SDA>;
bias-disable;
};
hdmi_hotplug {
pinmux = <PINMUX_GPIO111__FUNC_HDMITX20_HTPLG>;
bias-pull-down;
};
hdmi_5vctl {
pinmux = <PINMUX_GPIO2__FUNC_GPIO2>;
};
};
irrx_pins_ir_input: irrx_pin_ir {
pins_cmd_dat {
pinmux = <PINMUX_GPIO63__FUNC_IR_IN>;
bias-disable;
};
};
mmc0_pins_default: mmc0default {
pins_cmd_dat {
pinmux = <PINMUX_GPIO56__FUNC_MSDC0_DAT0>,
<PINMUX_GPIO55__FUNC_MSDC0_DAT1>,
<PINMUX_GPIO54__FUNC_MSDC0_DAT2>,
<PINMUX_GPIO53__FUNC_MSDC0_DAT3>,
<PINMUX_GPIO52__FUNC_MSDC0_DAT4>,
<PINMUX_GPIO51__FUNC_MSDC0_DAT5>,
<PINMUX_GPIO50__FUNC_MSDC0_DAT6>,
<PINMUX_GPIO49__FUNC_MSDC0_DAT7>,
<PINMUX_GPIO57__FUNC_MSDC0_CMD>;
input-enable;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
pins_clk {
pinmux = <PINMUX_GPIO48__FUNC_MSDC0_CLK>;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
};
pins_rst {
pinmux = <PINMUX_GPIO58__FUNC_MSDC0_RSTB>;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
};
mmc0_pins_uhs: mmc0 {
pins_cmd_dat {
pinmux = <PINMUX_GPIO56__FUNC_MSDC0_DAT0>,
<PINMUX_GPIO55__FUNC_MSDC0_DAT1>,
<PINMUX_GPIO54__FUNC_MSDC0_DAT2>,
<PINMUX_GPIO53__FUNC_MSDC0_DAT3>,
<PINMUX_GPIO52__FUNC_MSDC0_DAT4>,
<PINMUX_GPIO51__FUNC_MSDC0_DAT5>,
<PINMUX_GPIO50__FUNC_MSDC0_DAT6>,
<PINMUX_GPIO49__FUNC_MSDC0_DAT7>,
<PINMUX_GPIO57__FUNC_MSDC0_CMD>;
input-enable;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
pins_clk {
pinmux = <PINMUX_GPIO48__FUNC_MSDC0_CLK>;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
};
pins_ds {
pinmux = <PINMUX_GPIO47__FUNC_MSDC0_DSL>;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
};
pins_rst {
pinmux = <PINMUX_GPIO58__FUNC_MSDC0_RSTB>;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
};
mmc2_pins_default: mmc2default {
pins_clk {
pinmux = <PINMUX_GPIO40__FUNC_MSDC2_CLK>;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
};
pins_cmd_dat {
pinmux = <PINMUX_GPIO45__FUNC_MSDC2_DAT0>,
<PINMUX_GPIO44__FUNC_MSDC2_DAT1>,
<PINMUX_GPIO43__FUNC_MSDC2_DAT2>,
<PINMUX_GPIO42__FUNC_MSDC2_DAT3>,
<PINMUX_GPIO46__FUNC_MSDC2_CMD>;
input-enable;
drive-strength = <MTK_DRIVE_4mA>;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
};
mmc2_pins_uhs: mmc2 {
pins_clk {
pinmux = <PINMUX_GPIO40__FUNC_MSDC2_CLK>;
drive-strength = <MTK_DRIVE_6mA>;
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
};
pins_cmd_dat {
pinmux = <PINMUX_GPIO45__FUNC_MSDC2_DAT0>,
<PINMUX_GPIO44__FUNC_MSDC2_DAT1>,
<PINMUX_GPIO43__FUNC_MSDC2_DAT2>,
<PINMUX_GPIO42__FUNC_MSDC2_DAT3>,
<PINMUX_GPIO46__FUNC_MSDC2_CMD>;
input-enable;
drive-strength = <MTK_DRIVE_4mA>;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
pins_ds {
pinmux = <PINMUX_GPIO41__FUNC_MSDC2_DSL>;
drive-strength = <MTK_DRIVE_4mA>;
bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
};
};
mmc2_pins_eint: dat1_eint {
pins_dat1 {
pinmux = <PINMUX_GPIO44__FUNC_GPIO44>;
input-enable;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
};
mmc2_pins_dat1: sdio_dat1 {
pins_dat1 {
pinmux = <PINMUX_GPIO44__FUNC_MSDC2_DAT1>;
input-enable;
drive-strength = <MTK_DRIVE_4mA>;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
};
mmc2_pins_low: sdio_low {
pins_low {
pinmux = <PINMUX_GPIO45__FUNC_GPIO45>,
<PINMUX_GPIO43__FUNC_GPIO43>,
<PINMUX_GPIO42__FUNC_GPIO42>,
<PINMUX_GPIO46__FUNC_GPIO46>,
<PINMUX_GPIO41__FUNC_GPIO41>;
input-disable;
bias-disable;
};
};
pmic_pins_eint: pmic_pins_eint{
pmic_pins {
pinmux = <PINMUX_GPIO4__FUNC_GPIO4>;
bias-disable;
};
};
spi2_pins: spi2_pins {
pins_spi {
pinmux = <PINMUX_GPIO156__FUNC_SPI_CS>,
<PINMUX_GPIO151__FUNC_SPI_CK>,
<PINMUX_GPIO155__FUNC_SPI_IO0>,
<PINMUX_GPIO153__FUNC_SPI_IO1>,
<PINMUX_GPIO154__FUNC_SPI_IO2>,
<PINMUX_GPIO152__FUNC_SPI_IO3>;
bias-disable;
};
};
pinctrl_pins_default: gpios-default {
pins-chgaln {
pinmux = <PINMUX_GPIO92__FUNC_GPIO92>;
input-enable;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
pins-swopen {
pinmux = <PINMUX_GPIO93__FUNC_GPIO93>;
input-enable;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
};
pins-chgdet {
pinmux = <PINMUX_GPIO94__FUNC_GPIO94>;
input-enable;
};
pins-rt1716intr {
pinmux = <PINMUX_GPIO3__FUNC_GPIO3>;
input-enable;
bias-pull-up;
};
};
};
&pwm0 {
status = "okay";
};
&pio {
gpio_keys_default: gpiodefault {
pins_cmd_dat {
pinmux = <PINMUX_GPIO97__FUNC_GPIO97>;
bias-pull-up = <MTK_PUPD_SET_R1R0_01>;
input-enable;
};
};
};
&pwm1 {
status = "okay";
};
&spi2 {
pinctrl-names = "default";
pinctrl-0 = <&spi2_pins>;
status = "okay";
spidev: spi@0 {
compatible = "mediatek,spi-mt65xx-test";
reg = <0>;
spi-max-frequency = <2000000>;
cs-setup-ns = <90>;
};
};
&extcon_kirkwood_usb {
fsa831a,good-bat-fixed;
usb-role-switch;
chg-aln-gpio = <&pio 92 0>;
chgaln-gpio-pin = <92>;
chgaln-polarity = <1>;
sw-open-gpio = <&pio 93 0>;
swopen-gpio-pin = <93>;
swopen-polarity = <1>;
chg-det-gpio = <&pio 94 0>;
chgdet-gpio-pin = <94>;
chgdet-polarity = <1>;
android,usb-hal-ver = <0x13>;
status = "okay";
port {
tcpc_drd_switch: endpoint {
remote-endpoint = <&usb_role>;
};
};
};
&ssusb {
vusb33-supply = <&usb_vbus_3v3>;
vbus-supply = <&usb_vbus_5v0>;
mediatek,force-vbus;
/* valid string: "host", "peripheral", "otg" */
dr_mode = "otg";
/*usb3-lpm-capable;*/
/* wakeup-source; */
maximum-speed = "high-speed";
u3-should-port = <0>;
mediatek,clk-mgr;
/* TYPE-C: Both Host and Device are used as USB 2.0 */
extcon = <&extcon_kirkwood_usb>;
y-cable = "2";
usb-extconn = "2";
status = "okay";
};
&uart0 {
status = "okay";
};
&uart1 {
status = "okay";
};
&uart2 {
status = "okay";
};
&usb_host0 {
vusb33-supply = <&usb_vbus_3v3>;
vbus-supply = <&usb_vbus_5v0>;
status = "okay";
};
&u2port0 {
mediatek,discth = <0xf>;
mediatek,rev6 = <0x2>;
mediatek,eye-vrt = <0x5>;
mediatek,eye-term = <0x5>;
mediatek,eye-src = <0x4>;
status = "okay";
};
&thermal_zones {
soc_max {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <200>; /* milliseconds */
thermal-sensors = <&thermal 255>;
trips {
core_soc_trip0: trip-point@0 {
temperature = <95000>;
hysteresis = <1000>;
type = "passive";
};
core_soc_trip1: target@1 {
temperature = <97000>;
hysteresis = <1000>;
type = "passive";
};
core_soc_trip2: target@2 {
temperature = <99000>;
hysteresis = <1000>;
type = "passive";
};
core_soc_trip3: target@3 {
temperature = <101000>;
hysteresis = <1000>;
type = "passive";
};
core_soc_critical: soc-max-crit@0 {
temperature = <105000>;
hysteresis = <1000>;
type = "critical";
};
};
cooling-maps {
map0 {
trip = <&core_soc_trip0>;
cooling-device = <&cpu0 3 3>;
};
map1 {
trip = <&core_soc_trip1>;
cooling-device = <&cpu0 4 6>;
};
map2 {
trip = <&core_soc_trip2>;
cooling-device = <&cpu0 7 9>;
};
map3 {
trip = <&core_soc_trip3>;
cooling-device = <&cpu0 10 15>;
};
map4 {
trip = <&core_soc_trip1>;
cooling-device = <&clovelly 1 1>;
};
map5 {
trip = <&core_soc_trip2>;
cooling-device = <&clovelly 2 2>;
};
map6 {
trip = <&core_soc_trip3>;
cooling-device = <&clovelly 3 3>;
};
};
};
cpu-little0 {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <1000>; /* milliseconds */
thermal-sensors = <&thermal 0>;
trips {
cpu_little0_crit: cpu-little0-crit@0 {
temperature = <105000>;
hysteresis = <2000>;
type = "critical";
};
};
};
MFG-TEMP {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <1000>; /* milliseconds */
thermal-sensors = <&thermal 1>;
trips {
mfg_crit: mfg-crit@0 {
temperature = <105000>;
hysteresis = <2000>;
type = "critical";
};
};
};
MMSYS-TEMP {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <1000>; /* milliseconds */
thermal-sensors = <&thermal 2>;
trips {
mmsys_crit: mmsys-crit@0 {
temperature = <105000>;
hysteresis = <2000>;
type = "critical";
};
};
};
cpu-little1 {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <1000>; /* milliseconds */
thermal-sensors = <&thermal 3>;
trips {
cpu_little1_crit: cpu-little1-crit@0 {
temperature = <105000>;
hysteresis = <2000>;
type = "critical";
};
};
};
cpu-little2 {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <1000>; /* milliseconds */
thermal-sensors = <&thermal 4>;
trips {
cpu_little2_crit: cpu-little2-crit@0 {
temperature = <105000>;
hysteresis = <2000>;
type = "critical";
};
};
};
cpu-little3 {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <1000>; /* milliseconds */
thermal-sensors = <&thermal 5>;
trips {
cpu_little3_crit: cpu-little3-crit@0 {
temperature = <105000>;
hysteresis = <2000>;
type = "critical";
};
};
};
board_ddr: board_ddr {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <100>; /* milliseconds */
thermal-sensors = <&ntc_ddr>;
trips {
board_ddr_trip0: trip-point@0 {
temperature = <75200>;
hysteresis = <1000>;
type = "passive";
};
board_ddr_trip1: trip-point@1 {
temperature = <75400>;
hysteresis = <1000>;
type = "passive";
};
board_ddr_trip2: trip-point@2 {
temperature = <75600>;
hysteresis = <1000>;
type = "passive";
};
board_ddr_trip3: trip-point@3 {
temperature = <75800>;
hysteresis = <1000>;
type = "passive";
};
board_ddr_critical: trip-point@4 {
temperature = <85000>;
hysteresis = <1000>;
type = "critical";
};
};
cooling-maps {
cpufreq_cooling_map0 {
trip = <&board_ddr_trip0>;
cooling-device = <&cpu0 3 3>;
};
cpufreq_cooling_map1 {
trip = <&board_ddr_trip1>;
cooling-device = <&cpu0 4 6>;
};
cpufreq_cooling_map2 {
trip = <&board_ddr_trip2>;
cooling-device = <&cpu0 7 9>;
};
cpufreq_cooling_map3 {
trip = <&board_ddr_trip3>;
cooling-device = <&cpu0 10 15>;
};
gpufreq_cooling_map0 {
trip = <&board_ddr_trip1>;
cooling-device = <&clovelly 1 1>;
};
gpufreq_cooling_map1 {
trip = <&board_ddr_trip2>;
cooling-device = <&clovelly 2 2>;
};
gpufreq_cooling_map2 {
trip = <&board_ddr_trip3>;
cooling-device = <&clovelly 3 3>;
};
};
};
board_wifi: board_wifi {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <100>; /* milliseconds */
thermal-sensors = <&ntc_wifi>;
trips {
board_wifi_trip0: trip-point@0 {
temperature = <69200>;
hysteresis = <1000>;
type = "passive";
};
board_wifi_trip1: trip-point@1 {
temperature = <69400>;
hysteresis = <1000>;
type = "passive";
};
board_wifi_trip2: trip-point@2 {
temperature = <69600>;
hysteresis = <1000>;
type = "passive";
};
board_wifi_trip3: trip-point@3 {
temperature = <69800>;
hysteresis = <1000>;
type = "passive";
};
board_wifi_critical: trip-point@4 {
temperature = <85000>;
hysteresis = <1000>;
type = "critical";
};
};
cooling-maps {
cpufreq_cooling_map0 {
trip = <&board_wifi_trip0>;
cooling-device = <&cpu0 3 3>;
};
cpufreq_cooling_map1 {
trip = <&board_wifi_trip1>;
cooling-device = <&cpu0 4 6>;
};
cpufreq_cooling_map2 {
trip = <&board_wifi_trip2>;
cooling-device = <&cpu0 7 9>;
};
cpufreq_cooling_map3 {
trip = <&board_wifi_trip3>;
cooling-device = <&cpu0 10 15>;
};
gpufreq_cooling_map0 {
trip = <&board_wifi_trip1>;
cooling-device = <&clovelly 1 1>;
};
gpufreq_cooling_map1 {
trip = <&board_wifi_trip2>;
cooling-device = <&clovelly 2 2>;
};
gpufreq_cooling_map2 {
trip = <&board_wifi_trip3>;
cooling-device = <&clovelly 3 3>;
};
};
};
board_soc_bottom: board_soc_bottom {
polling-delay = <1000>; /* milliseconds */
polling-delay-passive = <100>; /* milliseconds */
thermal-sensors = <&ntc_soc_bottom>;
trips {
board_soc_bottom_trip0: trip-point@0 {
temperature = <74200>;
hysteresis = <1000>;
type = "passive";
};
board_soc_bottom_trip1: trip-point@1 {
temperature = <74400>;
hysteresis = <1000>;
type = "passive";
};
board_soc_bottom_trip2: trip-point@2 {
temperature = <74600>;
hysteresis = <1000>;
type = "passive";
};
board_soc_bottom_trip3: trip-point@3 {
temperature = <74800>;
hysteresis = <1000>;
type = "passive";
};
board_soc_bottom_critical: trip-point@4 {
temperature = <85000>;
hysteresis = <1000>;
type = "critical";
};
};
cooling-maps {
cpufreq_cooling_map0 {
trip = <&board_soc_bottom_trip0>;
cooling-device = <&cpu0 3 3>;
};
cpufreq_cooling_map1 {
trip = <&board_soc_bottom_trip1>;
cooling-device = <&cpu0 4 6>;
};
cpufreq_cooling_map2 {
trip = <&board_soc_bottom_trip2>;
cooling-device = <&cpu0 7 9>;
};
cpufreq_cooling_map3 {
trip = <&board_soc_bottom_trip3>;
cooling-device = <&cpu0 10 15>;
};
gpufreq_cooling_map0 {
trip = <&board_soc_bottom_trip1>;
cooling-device = <&clovelly 1 1>;
};
gpufreq_cooling_map1 {
trip = <&board_soc_bottom_trip2>;
cooling-device = <&clovelly 2 2>;
};
gpufreq_cooling_map2 {
trip = <&board_soc_bottom_trip3>;
cooling-device = <&clovelly 3 3>;
};
};
};
};
&pwmleds {
yellow_led {
pwms = <&pwm1 1 12300>;
pwm-names = "pwm1";
};
white_led {
pwms = <&pwm1 0 12300>;
pwm-names = "pwm0";
};
};
#include "mediatek/mt6395.dtsi"