mirror of
https://github.com/coolsnowwolf/lede.git
synced 2025-07-29 05:56:59 +08:00

This target adds support for the StarFive JH7100 and JH7110 SoCs, based on 6.12, as well as a couple boards equipped with these. Installation: Standard SD-card installation via dd-ing the generated image to an SD-card of at least 256Mb. Signed-off-by: Zoltan HERPAI <wigyori@uid0.hu>
177 lines
4.1 KiB
Diff
177 lines
4.1 KiB
Diff
From 5605ebdd7f7033da8f1bcb77cb180ef16235d5c8 Mon Sep 17 00:00:00 2001
|
|
From: Hal Feng <hal.feng@starfivetech.com>
|
|
Date: Tue, 11 Apr 2023 16:31:15 +0800
|
|
Subject: [PATCH 01/55] riscv: dts: starfive: Add full support (except VIN and
|
|
VOUT) for JH7110 and VisionFive 2 board
|
|
|
|
Merge all StarFive dts patches together except VIN and VOUT.
|
|
|
|
Signed-off-by: Hal Feng <hal.feng@starfivetech.com>
|
|
---
|
|
.../boot/dts/starfive/jh7110-common.dtsi | 2 +
|
|
.../jh7110-starfive-visionfive-2.dtsi | 100 ++++++++++++++++++
|
|
arch/riscv/boot/dts/starfive/jh7110.dtsi | 21 ++++
|
|
3 files changed, 123 insertions(+)
|
|
|
|
--- a/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
|
|
+++ b/arch/riscv/boot/dts/starfive/jh7110-common.dtsi
|
|
@@ -18,6 +18,8 @@
|
|
i2c6 = &i2c6;
|
|
mmc0 = &mmc0;
|
|
mmc1 = &mmc1;
|
|
+ pcie0 = &pcie0;
|
|
+ pcie1 = &pcie1;
|
|
serial0 = &uart0;
|
|
};
|
|
|
|
--- a/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
|
|
+++ b/arch/riscv/boot/dts/starfive/jh7110-starfive-visionfive-2.dtsi
|
|
@@ -29,6 +29,24 @@
|
|
};
|
|
};
|
|
|
|
+&i2srx {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&i2srx_pins>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&i2stx0 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&mclk_ext_pins>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&i2stx1 {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&i2stx1_pins>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&mmc0 {
|
|
non-removable;
|
|
};
|
|
@@ -40,3 +58,85 @@
|
|
&pcie1 {
|
|
status = "okay";
|
|
};
|
|
+
|
|
+&sysgpio {
|
|
+ i2srx_pins: i2srx-0 {
|
|
+ clk-sd-pins {
|
|
+ pinmux = <GPIOMUX(38, GPOUT_LOW,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_I2SRX_BCLK)>,
|
|
+ <GPIOMUX(63, GPOUT_LOW,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_I2SRX_LRCK)>,
|
|
+ <GPIOMUX(38, GPOUT_LOW,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_I2STX1_BCLK)>,
|
|
+ <GPIOMUX(63, GPOUT_LOW,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_I2STX1_LRCK)>,
|
|
+ <GPIOMUX(61, GPOUT_LOW,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_I2SRX_SDIN0)>;
|
|
+ input-enable;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ i2stx1_pins: i2stx1-0 {
|
|
+ sd-pins {
|
|
+ pinmux = <GPIOMUX(44, GPOUT_SYS_I2STX1_SDO0,
|
|
+ GPOEN_ENABLE,
|
|
+ GPI_NONE)>;
|
|
+ bias-disable;
|
|
+ input-disable;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ mclk_ext_pins: mclk-ext-0 {
|
|
+ mclk-ext-pins {
|
|
+ pinmux = <GPIOMUX(4, GPOUT_LOW,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_MCLK_EXT)>;
|
|
+ input-enable;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ tdm_pins: tdm-0 {
|
|
+ tx-pins {
|
|
+ pinmux = <GPIOMUX(44, GPOUT_SYS_TDM_TXD,
|
|
+ GPOEN_ENABLE,
|
|
+ GPI_NONE)>;
|
|
+ bias-pull-up;
|
|
+ drive-strength = <2>;
|
|
+ input-disable;
|
|
+ input-schmitt-disable;
|
|
+ slew-rate = <0>;
|
|
+ };
|
|
+
|
|
+ rx-pins {
|
|
+ pinmux = <GPIOMUX(61, GPOUT_HIGH,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_TDM_RXD)>;
|
|
+ input-enable;
|
|
+ };
|
|
+
|
|
+ sync-pins {
|
|
+ pinmux = <GPIOMUX(63, GPOUT_HIGH,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_TDM_SYNC)>;
|
|
+ input-enable;
|
|
+ };
|
|
+
|
|
+ pcmclk-pins {
|
|
+ pinmux = <GPIOMUX(38, GPOUT_HIGH,
|
|
+ GPOEN_DISABLE,
|
|
+ GPI_SYS_TDM_CLK)>;
|
|
+ input-enable;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&tdm {
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&tdm_pins>;
|
|
+ status = "okay";
|
|
+};
|
|
--- a/arch/riscv/boot/dts/starfive/jh7110.dtsi
|
|
+++ b/arch/riscv/boot/dts/starfive/jh7110.dtsi
|
|
@@ -259,6 +259,7 @@
|
|
clock-output-names = "dvp_clk";
|
|
#clock-cells = <0>;
|
|
};
|
|
+
|
|
gmac0_rgmii_rxin: gmac0-rgmii-rxin-clock {
|
|
compatible = "fixed-clock";
|
|
clock-output-names = "gmac0_rgmii_rxin";
|
|
@@ -919,6 +920,26 @@
|
|
#gpio-cells = <2>;
|
|
};
|
|
|
|
+ timer@13050000 {
|
|
+ compatible = "starfive,jh7110-timer";
|
|
+ reg = <0x0 0x13050000 0x0 0x10000>;
|
|
+ interrupts = <69>, <70>, <71>, <72>;
|
|
+ clocks = <&syscrg JH7110_SYSCLK_TIMER_APB>,
|
|
+ <&syscrg JH7110_SYSCLK_TIMER0>,
|
|
+ <&syscrg JH7110_SYSCLK_TIMER1>,
|
|
+ <&syscrg JH7110_SYSCLK_TIMER2>,
|
|
+ <&syscrg JH7110_SYSCLK_TIMER3>;
|
|
+ clock-names = "apb", "ch0", "ch1",
|
|
+ "ch2", "ch3";
|
|
+ resets = <&syscrg JH7110_SYSRST_TIMER_APB>,
|
|
+ <&syscrg JH7110_SYSRST_TIMER0>,
|
|
+ <&syscrg JH7110_SYSRST_TIMER1>,
|
|
+ <&syscrg JH7110_SYSRST_TIMER2>,
|
|
+ <&syscrg JH7110_SYSRST_TIMER3>;
|
|
+ reset-names = "apb", "ch0", "ch1",
|
|
+ "ch2", "ch3";
|
|
+ };
|
|
+
|
|
watchdog@13070000 {
|
|
compatible = "starfive,jh7110-wdt";
|
|
reg = <0x0 0x13070000 0x0 0x10000>;
|