Commit eb188a2a authored by Nícolas F. R. A. Prado's avatar Nícolas F. R. A. Prado Committed by Matthias Brugger

arm64: dts: mediatek: asurada: Add ChromeOS EC

Add support for the ChromeOS Embedded Controller present on the Asurada
platform. It is connected through the SPI1 bus and offers several
functionalities: base detection, PWM controller, I2C tunneling,
regulators, Type-C connector management, keyboard and Smart Battery
Metrics (SBS).
Signed-off-by: default avatarNícolas F. R. A. Prado <nfraprado@collabora.com>
Reviewed-by: default avatarAngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Tested-by: default avatarChen-Yu Tsai <wenst@chromium.org>
Link: https://lore.kernel.org/r/20220629155956.1138955-8-nfraprado@collabora.comSigned-off-by: default avatarMatthias Brugger <matthias.bgg@gmail.com>
parent 23e0fff3
...@@ -353,6 +353,14 @@ &pio { ...@@ -353,6 +353,14 @@ &pio {
"AUD_DAT_MISO0", "AUD_DAT_MISO0",
"AUD_DAT_MISO1"; "AUD_DAT_MISO1";
cros_ec_int: cros-ec-irq-default-pins {
pins-ec-ap-int-odl {
pinmux = <PINMUX_GPIO5__FUNC_GPIO5>;
input-enable;
bias-pull-up;
};
};
i2c0_pins: i2c0-default-pins { i2c0_pins: i2c0-default-pins {
pins-bus { pins-bus {
pinmux = <PINMUX_GPIO204__FUNC_SCL0>, pinmux = <PINMUX_GPIO204__FUNC_SCL0>,
...@@ -428,6 +436,74 @@ &spi1 { ...@@ -428,6 +436,74 @@ &spi1 {
mediatek,pad-select = <0>; mediatek,pad-select = <0>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&spi1_pins>; pinctrl-0 = <&spi1_pins>;
cros_ec: ec@0 {
compatible = "google,cros-ec-spi";
reg = <0>;
interrupts-extended = <&pio 5 IRQ_TYPE_LEVEL_LOW>;
spi-max-frequency = <3000000>;
pinctrl-names = "default";
pinctrl-0 = <&cros_ec_int>;
#address-cells = <1>;
#size-cells = <0>;
base_detection: cbas {
compatible = "google,cros-cbas";
};
cros_ec_pwm: pwm {
compatible = "google,cros-ec-pwm";
#pwm-cells = <1>;
status = "disabled";
};
i2c_tunnel: i2c-tunnel {
compatible = "google,cros-ec-i2c-tunnel";
google,remote-bus = <0>;
#address-cells = <1>;
#size-cells = <0>;
};
mt6360_ldo3_reg: regulator@0 {
compatible = "google,cros-ec-regulator";
reg = <0>;
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <3300000>;
};
mt6360_ldo5_reg: regulator@1 {
compatible = "google,cros-ec-regulator";
reg = <1>;
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
};
typec {
compatible = "google,cros-ec-typec";
#address-cells = <1>;
#size-cells = <0>;
usb_c0: connector@0 {
compatible = "usb-c-connector";
reg = <0>;
label = "left";
power-role = "dual";
data-role = "host";
try-power-role = "source";
};
usb_c1: connector@1 {
compatible = "usb-c-connector";
reg = <1>;
label = "right";
power-role = "dual";
data-role = "host";
try-power-role = "source";
};
};
};
}; };
&spi5 { &spi5 {
...@@ -442,3 +518,6 @@ &spi5 { ...@@ -442,3 +518,6 @@ &spi5 {
&uart0 { &uart0 {
status = "okay"; status = "okay";
}; };
#include <arm/cros-ec-keyboard.dtsi>
#include <arm/cros-ec-sbs.dtsi>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment