Re: [PATCH v2 4/4] arm64: dts: fsd: Add Ethernet support for PERIC Block of FSD SoC

From: Krzysztof Kozlowski
Date: Thu Jan 12 2023 - 04:41:36 EST


On 11/01/2023 08:54, Sriranjani P wrote:
> The FSD SoC contains two instances of Synopsys DWC QoS Ethernet IP, one in
> FSYS0 block and other in PERIC block.
>
> Adds device tree node for Ethernet in PERIC Block and enables the same for
> FSD platform.
>
> Signed-off-by: Pankaj Dubey <pankaj.dubey@xxxxxxxxxxx>
> Signed-off-by: Jayati Sahu <jayati.sahu@xxxxxxxxxxx>
> Signed-off-by: Sriranjani P <sriranjani.p@xxxxxxxxxxx>
> ---
> arch/arm64/boot/dts/tesla/fsd-evb.dts | 9 ++++
> arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi | 56 ++++++++++++++++++++++
> arch/arm64/boot/dts/tesla/fsd.dtsi | 29 +++++++++++
> 3 files changed, 94 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/tesla/fsd-evb.dts b/arch/arm64/boot/dts/tesla/fsd-evb.dts
> index ca0c1a28d562..2c0cbe775e04 100644
> --- a/arch/arm64/boot/dts/tesla/fsd-evb.dts
> +++ b/arch/arm64/boot/dts/tesla/fsd-evb.dts
> @@ -39,6 +39,15 @@
> };
> };
>
> +&ethernet_1 {
> + status = "okay";
> +
> + fixed-link {
> + speed = <1000>;
> + full-duplex;
> + };
> +};
> +
> &fin_pll {
> clock-frequency = <24000000>;
> };
> diff --git a/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi b/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
> index 7ccc0738a149..c955bf159786 100644
> --- a/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
> +++ b/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
> @@ -395,6 +395,62 @@
> samsung,pin-pud = <FSD_PIN_PULL_UP>;
> samsung,pin-drv = <FSD_PIN_DRV_LV1>;
> };
> +
> + eth1_tx_clk: eth1-tx-clk-pins {
> + samsung,pins = "gpf2-0";
> + samsung,pin-function = <FSD_PIN_FUNC_2>;
> + samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
> + samsung,pin-drv = <FSD_PIN_DRV_LV6>;
> + };
> +
> + eth1_tx_data: eth1-tx-data-pins {
> + samsung,pins = "gpf2-1", "gpf2-2", "gpf2-3", "gpf2-4";
> + samsung,pin-function = <FSD_PIN_FUNC_2>;
> + samsung,pin-pud = <FSD_PIN_PULL_UP>;
> + samsung,pin-drv = <FSD_PIN_DRV_LV6>;
> + };
> +
> + eth1_tx_ctrl: eth1-tx-ctrl-pins {
> + samsung,pins = "gpf2-5";
> + samsung,pin-function = <FSD_PIN_FUNC_2>;
> + samsung,pin-pud = <FSD_PIN_PULL_UP>;
> + samsung,pin-drv = <FSD_PIN_DRV_LV6>;
> + };
> +
> + eth1_phy_intr: eth1-phy-intr-pins {
> + samsung,pins = "gpf2-6";
> + samsung,pin-function = <FSD_PIN_FUNC_2>;
> + samsung,pin-pud = <FSD_PIN_PULL_UP>;
> + samsung,pin-drv = <FSD_PIN_DRV_LV4>;
> + };
> +
> + eth1_rx_clk: eth1-rx-clk-pins {
> + samsung,pins = "gpf3-0";
> + samsung,pin-function = <FSD_PIN_FUNC_2>;
> + samsung,pin-pud = <FSD_PIN_PULL_UP>;
> + samsung,pin-drv = <FSD_PIN_DRV_LV6>;
> + };
> +
> + eth1_rx_data: eth1-rx-data-pins {
> + samsung,pins = "gpf3-1", "gpf3-2", "gpf3-3", "gpf3-4";
> + samsung,pin-function = <FSD_PIN_FUNC_2>;
> + samsung,pin-pud = <FSD_PIN_PULL_UP>;
> + samsung,pin-drv = <FSD_PIN_DRV_LV6>;
> + };
> +
> + eth1_rx_ctrl: eth1-rx-ctrl-pins {
> + samsung,pins = "gpf3-5";
> + samsung,pin-function = <FSD_PIN_FUNC_2>;
> + samsung,pin-pud = <FSD_PIN_PULL_UP>;
> + samsung,pin-drv = <FSD_PIN_DRV_LV6>;
> + };
> +
> + eth1_mdio: eth1-mdio-pins {
> + samsung,pins = "gpf3-6", "gpf3-7";
> + samsung,pin-function = <FSD_PIN_FUNC_2>;
> + samsung,pin-pud = <FSD_PIN_PULL_UP>;
> + samsung,pin-drv = <FSD_PIN_DRV_LV4>;
> + };
> };
>
> &pinctrl_pmu {
> diff --git a/arch/arm64/boot/dts/tesla/fsd.dtsi b/arch/arm64/boot/dts/tesla/fsd.dtsi
> index ade707cc646b..8807055807dd 100644
> --- a/arch/arm64/boot/dts/tesla/fsd.dtsi
> +++ b/arch/arm64/boot/dts/tesla/fsd.dtsi
> @@ -33,6 +33,7 @@
> spi1 = &spi_1;
> spi2 = &spi_2;
> eth0 = &ethernet_0;
> + eth1 = &ethernet_1;

Nope for the reasons I explained last time.

> };
>
> cpus {
> @@ -882,6 +883,34 @@
> phy-mode = "rgmii";
> status = "disabled";
> };
> +
> + ethernet_1: ethernet@14300000 {

Do not add nodes to the end.

Best regards,
Krzysztof