mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-31 23:27:20 +00:00

Sophgo SG2042_EVB_V2.0 [1] is a prototype development board based on SG2042 Currently supports serial port, sdcard/emmc, pwm, fan speed control. Link: https://github.com/sophgo/sophgo-hardware/tree/master/SG2042/SG2042-x4-EVB [1] Signed-off-by: Han Gao <rabenda.cn@gmail.com> Reviewed-by: Nutty Liu <liujingqi@lanxincomputing.com> Reviewed-by: Chen Wang <unicorn_wang@outlook.com> Link: https://lore.kernel.org/r/c1b6ccdc69af0c1457fc1486a6bc8a1e83671537.1751700954.git.rabenda.cn@gmail.com Signed-off-by: Inochi Amaoto <inochiama@gmail.com> Signed-off-by: Chen Wang <unicorn_wang@outlook.com> Signed-off-by: Chen Wang <wangchen20@iscas.ac.cn>
233 lines
4 KiB
Text
233 lines
4 KiB
Text
// SPDX-License-Identifier: GPL-2.0 OR MIT
|
|
/*
|
|
* Copyright (C) 2025 Sophgo Technology Inc. All rights reserved.
|
|
*/
|
|
|
|
#include "sg2042.dtsi"
|
|
|
|
#include <dt-bindings/gpio/gpio.h>
|
|
#include <dt-bindings/input/input.h>
|
|
|
|
/ {
|
|
model = "Sophgo SG2042 EVB V2.0";
|
|
compatible = "sophgo,sg2042-evb-v2", "sophgo,sg2042";
|
|
|
|
chosen {
|
|
stdout-path = "serial0";
|
|
};
|
|
|
|
pwmfan: pwm-fan {
|
|
compatible = "pwm-fan";
|
|
cooling-levels = <103 128 179 230 255>;
|
|
pwms = <&pwm 0 40000 0>;
|
|
#cooling-cells = <2>;
|
|
};
|
|
|
|
thermal-zones {
|
|
soc-thermal {
|
|
polling-delay-passive = <1000>;
|
|
polling-delay = <1000>;
|
|
thermal-sensors = <&mcu 0>;
|
|
|
|
trips {
|
|
soc_active1: soc-active1 {
|
|
temperature = <30000>;
|
|
hysteresis = <8000>;
|
|
type = "active";
|
|
};
|
|
|
|
soc_active2: soc-active2 {
|
|
temperature = <58000>;
|
|
hysteresis = <12000>;
|
|
type = "active";
|
|
};
|
|
|
|
soc_active3: soc-active3 {
|
|
temperature = <70000>;
|
|
hysteresis = <10000>;
|
|
type = "active";
|
|
};
|
|
|
|
soc_hot: soc-hot {
|
|
temperature = <80000>;
|
|
hysteresis = <5000>;
|
|
type = "hot";
|
|
};
|
|
};
|
|
|
|
cooling-maps {
|
|
map0 {
|
|
trip = <&soc_active1>;
|
|
cooling-device = <&pwmfan 0 1>;
|
|
};
|
|
|
|
map1 {
|
|
trip = <&soc_active2>;
|
|
cooling-device = <&pwmfan 1 2>;
|
|
};
|
|
|
|
map2 {
|
|
trip = <&soc_active3>;
|
|
cooling-device = <&pwmfan 2 3>;
|
|
};
|
|
|
|
map3 {
|
|
trip = <&soc_hot>;
|
|
cooling-device = <&pwmfan 3 4>;
|
|
};
|
|
};
|
|
};
|
|
|
|
board-thermal {
|
|
polling-delay-passive = <1000>;
|
|
polling-delay = <1000>;
|
|
thermal-sensors = <&mcu 1>;
|
|
|
|
trips {
|
|
board_active: board-active {
|
|
temperature = <75000>;
|
|
hysteresis = <8000>;
|
|
type = "active";
|
|
};
|
|
};
|
|
|
|
cooling-maps {
|
|
map4 {
|
|
trip = <&board_active>;
|
|
cooling-device = <&pwmfan 3 4>;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&cgi_main {
|
|
clock-frequency = <25000000>;
|
|
};
|
|
|
|
&cgi_dpll0 {
|
|
clock-frequency = <25000000>;
|
|
};
|
|
|
|
&cgi_dpll1 {
|
|
clock-frequency = <25000000>;
|
|
};
|
|
|
|
&emmc {
|
|
pinctrl-0 = <&emmc_cfg>;
|
|
pinctrl-names = "default";
|
|
bus-width = <4>;
|
|
no-sdio;
|
|
no-sd;
|
|
non-removable;
|
|
wp-inverted;
|
|
status = "okay";
|
|
};
|
|
|
|
&i2c1 {
|
|
pinctrl-0 = <&i2c1_cfg>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
|
|
mcu: syscon@17 {
|
|
compatible = "sophgo,sg2042-hwmon-mcu";
|
|
reg = <0x17>;
|
|
#thermal-sensor-cells = <1>;
|
|
};
|
|
};
|
|
|
|
&gmac0 {
|
|
phy-handle = <&phy0>;
|
|
phy-mode = "rgmii-id";
|
|
status = "okay";
|
|
|
|
mdio {
|
|
phy0: phy@0 {
|
|
compatible = "ethernet-phy-ieee802.3-c22";
|
|
reg = <0>;
|
|
reset-gpios = <&port0a 27 GPIO_ACTIVE_LOW>;
|
|
reset-assert-us = <100000>;
|
|
reset-deassert-us = <100000>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&pinctrl {
|
|
emmc_cfg: sdhci-emmc-cfg {
|
|
sdhci-emmc-wp-pins {
|
|
pinmux = <PINMUX(PIN_EMMC_WP, 0)>;
|
|
bias-disable;
|
|
drive-strength-microamp = <26800>;
|
|
input-schmitt-disable;
|
|
};
|
|
|
|
sdhci-emmc-cd-pins {
|
|
pinmux = <PINMUX(PIN_EMMC_CD, 0)>;
|
|
bias-pull-up;
|
|
drive-strength-microamp = <26800>;
|
|
input-schmitt-enable;
|
|
};
|
|
|
|
sdhci-emmc-rst-pwr-pins {
|
|
pinmux = <PINMUX(PIN_EMMC_RST, 0)>,
|
|
<PINMUX(PIN_EMMC_PWR_EN, 0)>;
|
|
bias-disable;
|
|
drive-strength-microamp = <26800>;
|
|
input-schmitt-disable;
|
|
};
|
|
};
|
|
|
|
i2c1_cfg: i2c1-cfg {
|
|
i2c1-pins {
|
|
pinmux = <PINMUX(PIN_IIC1_SDA, 0)>,
|
|
<PINMUX(PIN_IIC1_SCL, 0)>;
|
|
bias-pull-up;
|
|
drive-strength-microamp = <26800>;
|
|
input-schmitt-enable;
|
|
};
|
|
};
|
|
|
|
sd_cfg: sdhci-sd-cfg {
|
|
sdhci-sd-cd-wp-pins {
|
|
pinmux = <PINMUX(PIN_SDIO_CD, 0)>,
|
|
<PINMUX(PIN_SDIO_WP, 0)>;
|
|
bias-pull-up;
|
|
drive-strength-microamp = <26800>;
|
|
input-schmitt-enable;
|
|
};
|
|
|
|
sdhci-sd-rst-pwr-pins {
|
|
pinmux = <PINMUX(PIN_SDIO_RST, 0)>,
|
|
<PINMUX(PIN_SDIO_PWR_EN, 0)>;
|
|
bias-disable;
|
|
drive-strength-microamp = <26800>;
|
|
input-schmitt-disable;
|
|
};
|
|
};
|
|
|
|
uart0_cfg: uart0-cfg {
|
|
uart0-rx-pins {
|
|
pinmux = <PINMUX(PIN_UART0_TX, 0)>,
|
|
<PINMUX(PIN_UART0_RX, 0)>;
|
|
bias-pull-up;
|
|
drive-strength-microamp = <26800>;
|
|
input-schmitt-enable;
|
|
};
|
|
};
|
|
};
|
|
|
|
&sd {
|
|
pinctrl-0 = <&sd_cfg>;
|
|
pinctrl-names = "default";
|
|
bus-width = <4>;
|
|
no-sdio;
|
|
no-mmc;
|
|
wp-inverted;
|
|
status = "okay";
|
|
};
|
|
|
|
&uart0 {
|
|
pinctrl-0 = <&uart0_cfg>;
|
|
pinctrl-names = "default";
|
|
status = "okay";
|
|
};
|