diff options
| -rw-r--r-- | arch/riscv/boot/dts/spacemit/k3-pico-itx.dts | 23 | ||||
| -rw-r--r-- | arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi | 24 | ||||
| -rw-r--r-- | arch/riscv/boot/dts/spacemit/k3.dtsi | 36 |
3 files changed, 83 insertions, 0 deletions
diff --git a/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts b/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts index 95061af4738d..9eca5d6b4b89 100644 --- a/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts +++ b/arch/riscv/boot/dts/spacemit/k3-pico-itx.dts @@ -28,6 +28,11 @@ reg = <0x1 0x00000000 0x4 0x00000000>; }; + fan0: pwm-fan { + compatible = "pwm-fan"; + pwms = <&cros_ec_pwm 0>; + }; + reg_aux_vcc3v3: regulator-aux-vcc3v3 { compatible = "regulator-fixed"; regulator-name = "AUX_VCC3V3"; @@ -407,3 +412,21 @@ phy-names = "usb2-phy", "usb3-phy"; status = "okay"; }; + +&espi0 { + pinctrl-names = "default"; + pinctrl-0 = <&espi0_2_cfg>; + status = "okay"; + ec: ec@0 { + status = "okay"; + interrupt-parent = <&gpio>; + interrupts = <1 11 IRQ_TYPE_EDGE_RISING>; + gpio-controller; + #gpio-cells = <2>; + + cros_ec_pwm: pwm { + compatible = "google,cros-ec-pwm"; + #pwm-cells = <1>; + }; + }; +}; diff --git a/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi b/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi index 4e8df3073fa4..9fb4ab66328c 100644 --- a/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3-pinctrl.dtsi @@ -798,4 +798,28 @@ power-source = <1800>; }; }; + + espi0_2_cfg: espi0-2-cfg { + espi0-0-pins { + pinmux = <K3_PADCONF(91, 4)>, /* espi0 d0 */ + <K3_PADCONF(92, 4)>, /* espi0 d1 */ + <K3_PADCONF(93, 4)>, /* espi0 d2 */ + <K3_PADCONF(94, 4)>, /* espi0 d3 */ + <K3_PADCONF(95, 4)>, /* espi0 cs */ + <K3_PADCONF(97, 4)>, /* espi0 reset */ + <K3_PADCONF(98, 4)>; /* espi0 alert */ + + bias-pull-up; /* normal pull-up */ + drive-strength = <25>; /* DS8 */ + power-source = <1800>; + }; + + espi0-1-pins { + pinmux = <K3_PADCONF(96, 4)>; /* espi0 clk */ + + bias-pull-down; /* normal pull-down */ + drive-strength = <25>; /* DS8 */ + power-source = <1800>; + }; + }; }; diff --git a/arch/riscv/boot/dts/spacemit/k3.dtsi b/arch/riscv/boot/dts/spacemit/k3.dtsi index f5f016049bc2..631169f178d8 100644 --- a/arch/riscv/boot/dts/spacemit/k3.dtsi +++ b/arch/riscv/boot/dts/spacemit/k3.dtsi @@ -1585,5 +1585,41 @@ riscv,num-sources = <512>; status = "reserved"; }; + + espi0: espi@cac8c000 { + compatible = "spacemit,k3-espi"; + reg = <0x0 0xcac8c000 0x0 0x1000>; + #address-cells = <1>; + #size-cells = <1>; + ranges = <0x0 0x0 0x84000000 0x1000>; + pr-mem-base0 = <0x84000000>; + pr-mem-base1 = <0xcac8c000>; + clocks = <&syscon_apmu CLK_APMU_ESPI_SCLK_SRC>, + <&syscon_apmu CLK_APMU_ESPI_SCLK>, + <&syscon_apmu CLK_APMU_ESPI_MCLK>; + clock-names = "sclk_src", "sclk", "mclk"; + resets = <&syscon_apmu RESET_APMU_ESPI_MCLK>, + <&syscon_apmu RESET_APMU_ESPI_SCLK>; + assigned-clocks = <&syscon_apmu CLK_APMU_ESPI_SCLK>; + assigned-clock-parents = <&syscon_apmu CLK_APMU_ESPI_SCLK_SRC>; + operating-frequency = <20>; + io-mode = "single"; + alert-mode = "io1"; + alert-type = "open-drain"; + watchdog-timeout = <0xffff>; + crc-enable; + auto-gating-enable; + peripheral-channel-enable; + vwire-channel-enable; + oob-channel-enable; + flash-channel-enable; + status = "disabled"; + + ec: ec@0 { + compatible = "google,cros-ec-espi"; + reg = <0x0 0x1000>; + status = "disabled"; + }; + }; }; }; |
