[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240930-th1520-dwmac-v3-0-ae3e03c225ab@tenstorrent.com>
Date: Mon, 30 Sep 2024 23:23:23 -0700
From: Drew Fustini <dfustini@...storrent.com>
To: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Alexandre Torgue <alexandre.torgue@...s.st.com>,
Giuseppe Cavallaro <peppe.cavallaro@...com>,
Jose Abreu <joabreu@...opsys.com>, Jisheng Zhang <jszhang@...nel.org>,
Maxime Coquelin <mcoquelin.stm32@...il.com>,
Emil Renner Berthing <emil.renner.berthing@...onical.com>,
Drew Fustini <drew@...7.com>, Guo Ren <guoren@...nel.org>,
Fu Wei <wefu@...hat.com>, Conor Dooley <conor@...nel.org>,
Paul Walmsley <paul.walmsley@...ive.com>,
Palmer Dabbelt <palmer@...belt.com>, Albert Ou <aou@...s.berkeley.edu>,
Drew Fustini <dfustini@...storrent.com>
Cc: netdev@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-riscv@...ts.infradead.org
Subject: [PATCH v3 0/3] Add the dwmac driver support for T-HEAD TH1520 SoC
This series is based on 6.12-rc1 and depends on this pinctrl series:
20240930-th1520-pinctrl-v3-0-32cea2bdbecb@...storrent.com
I have a branch with this series and the dependencies:
https://github.com/pdp7/linux/tree/b4/th1520-dwmac
Regarding clocks, the gmac nodes in th1520.dtsi have the "stmmac_clk"
clock set to CLK_GMAC_AXI in the AP_SUBSYS clock controller. This
corresponds to the enable bit for the GMAC axi4_clk gate which is
handled by the clk-th1520-ap driver. thead_dwmac_fix_speed() does not
modify anything in the AP_SUBSYS clock controller. It only writes to
GMAC APB registers. It seems unnecessary to create a new clock driver
just for the GMAC APB registers. Refer to section 1.6.2 in the TH1520
Peripheral Interface User Manual [1].
I've removed the properties that I added in v2: thead,rx-internal-delay
and thead,tx-internal-delay. The units for the delay field in the rgmii
delay control registers are not documented. Andrew Lunn suggested I
just hard code the delay field to 0 since I don't know the units and
the boards work with the hardware reset value of 0.
[1] https://git.beagleboard.org/beaglev-ahead/beaglev-ahead/-/tree/main/docs
Changes in v3:
- Rebase on v6.12-rc1
- Remove thead,rx-internal-delay and thead,tx-internal-delay properties
- Remove unneeded call to thead_dwmac_fix_speed() during probe
- Fix filename for the yaml file in MAINTAINERS patch
Changes in v2:
- Drop the first patch as it is no longer needed due to upstream commit
d01e0e98de31 ("dt-bindings: net: dwmac: Validate PBL for all IP-cores")
- Rename compatible from "thead,th1520-dwmac" to "thead,th1520-gmac"
- Add thead,rx-internal-delay and thead,tx-internal-delay properties
and check that it does not exceed the maximum value
- Convert from stmmac_dvr_probe() to devm_stmmac_pltfr_probe() and
delete the .remove_new hook as it is no longer needed
- Handle return value of regmap_write() in case it fails
- Add phy reset delay properties to the BeagleV Ahead device tree
- Link: https://lore.kernel.org/linux-riscv/20240926-th1520-dwmac-v2-0-f34f28ad1dc9@tenstorrent.com/
Changes in v1:
- remove thead,gmacapb that references syscon for APB registers
- add a second memory region to gmac nodes for the APB registers
- Link: https://lore.kernel.org/all/20240713-thead-dwmac-v1-0-81f04480cd31@tenstorrent.com/
---
Emil Renner Berthing (1):
riscv: dts: thead: Add TH1520 ethernet nodes
Jisheng Zhang (2):
dt-bindings: net: Add T-HEAD dwmac support
net: stmmac: Add glue layer for T-HEAD TH1520 SoC
.../devicetree/bindings/net/snps,dwmac.yaml | 1 +
.../devicetree/bindings/net/thead,th1520-gmac.yaml | 97 +++++++
MAINTAINERS | 2 +
arch/riscv/boot/dts/thead/th1520-beaglev-ahead.dts | 91 +++++++
.../boot/dts/thead/th1520-lichee-module-4a.dtsi | 129 +++++++++
arch/riscv/boot/dts/thead/th1520.dtsi | 50 ++++
drivers/net/ethernet/stmicro/stmmac/Kconfig | 11 +
drivers/net/ethernet/stmicro/stmmac/Makefile | 1 +
drivers/net/ethernet/stmicro/stmmac/dwmac-thead.c | 291 +++++++++++++++++++++
9 files changed, 673 insertions(+)
---
base-commit: 6b16e599500bd0002164d9edcb8bf7652d9888fa
change-id: 20240930-th1520-dwmac-34f5dd0cccf8
Best regards,
--
Drew Fustini <dfustini@...storrent.com>
Powered by blists - more mailing lists