Message ID | 20240529081039.639010-1-claudiu.beznea.uj@bp.renesas.com (mailing list archive) |
---|---|
Headers | show |
Series | Add Ethernet support for Renesas RZ/G3S SoC | expand |
Hi, > -----Original Message----- > From: Claudiu <claudiu.beznea@tuxon.dev> > Sent: Wednesday, May 29, 2024 5:10 PM > To: iwamatsu nobuhiro(岩松 信洋 ○DITC□DIT○OST) > <nobuhiro1.iwamatsu@toshiba.co.jp>; pavel@denx.de > Cc: cip-dev@lists.cip-project.org; biju.das.jz@bp.renesas.com; > prabhakar.mahadev-lad.rj@bp.renesas.com; paul.barker.ct@bp.renesas.com > Subject: [PATCH 5.10.y-cip 00/47] Add Ethernet support for Renesas RZ/G3S > SoC > > From: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com> > > Hi, > > Series adds Ethernet support for Renesas RZ/G3S SoC. Ethernet driver has > been enhanced with runtime PM support. The suspend to RAM support was > also improved. > > Series is split as follows: > - patch 01: add clock and reset support for the Ethernet IPs > - patches 02-07: add pinctrl support for the Ethernet IPs > - patches 08-43: add support for suspend to RAM and runtime PM on > the Ethernet driver; in this set there are many preparatory > patches for runtime PM support (as runtime PM > enable/disables > the Ethernet module clock and this influences the Ethernet > module state leanding to registers setup being lost) > along with improvements > - patches 45-47: add device tree support > > Thank you, > Claudiu Beznea > > Biju Das (2): > ravb: Add Rx checksum offload support for GbEth > ravb: Add Tx checksum offload support for GbEth > > Christophe JAILLET (1): > ravb: Use GFP_KERNEL instead of GFP_ATOMIC when possible > > Claudiu Beznea (36): > clk: renesas: r9a08g045: Add clock and reset support for ETH0 and ETH1 > pinctrl: renesas: rzg2l: Move arg and index in the main function block > pinctrl: renesas: rzg2l: Add pin configuration support for pinmux > groups > pinctrl: renesas: rzg2l: Add support to select power source for > Ethernet pins > pinctrl: renesas: rzg2l: Add output enable support > pinctrl: renesas: rzg2l: Add input enable to the Ethernet pins > pinctrl: renesas: rzg2l: Fix locking in rzg2l_dt_subnode_to_map() > net: ravb: Check return value of reset_control_deassert() > net: ravb: Make write access to CXR35 first before accessing other > EMAC registers > net: ravb: Stop DMA in case of failures on ravb_open() > net: ravb: Keep reverse order of operations in ravb_remove() > net: ravb: Wait for operating mode to be applied > dt-bindings: net: renesas,etheravb: Document RZ/G3S support > net: ravb: Let IP-specific receive function to interrogate descriptors > net: ravb: Rely on PM domain to enable gptp_clk > net: ravb: Make reset controller support mandatory > net: ravb: Assert/de-assert reset on suspend/resume > net: ravb: Move reference clock enable/disable on runtime PM APIs > net: ravb: Move getting/requesting IRQs in the probe() method > net: ravb: Split GTI computation and set operations > net: ravb: Move delay mode set in the driver's ndo_open API > net: ravb: Move DBAT configuration to the driver's ndo_open API > net: ravb: Move PTP initialization in the driver's ndo_open API for > ccc_gac platorms > net: ravb: Set config mode in ndo_open and reset mode in ndo_close > net: ravb: Simplify ravb_suspend() > net: ravb: Simplify ravb_resume() > net: ravb: Get rid of the temporary variable irq > net: ravb: Keep the reverse order of operations in ravb_close() > net: ravb: Return cached statistics if the interface is down > net: ravb: Move the update of ndev->features to ravb_set_features() > net: ravb: Do not apply features to hardware if the interface is down > net: ravb: Add runtime PM support > arm64: dts: renesas: r9a08g045: Add Ethernet nodes > arm64: dts: renesas: rzg3s-smarc-som: Use switches' names to select > on-board functionalities > arm64: dts: renesas: rzg3s-smarc-som: Enable the Ethernet interfaces > arm64: dts: renesas: rzg3s-smarc-som: Guard Ethernet IRQ GPIO hogs > > Geert Uytterhoeven (1): > net: ravb: Fix registered interrupt names > > Paul Barker (3): > net: ravb: Count packets instead of descriptors in GbEth RX path > net: ravb: Fix GbEth jumbo packet RX checksum handling > net: ravb: Fix RX byte accounting for jumbo packets > > Sergey Shtylyov (1): > ravb: ravb_close() always returns 0 > > Yang Li (1): > ethernet: renesas: Use div64_ul instead of do_div > > Yoshihiro Shimoda (1): > net: ravb: Fix lack of register setting after system resumed for Gen3 > > YueHaibing (1): > ravb: Fix potential use-after-free in ravb_rx_gbeth() > > .../bindings/net/renesas,etheravb.yaml | 1 + > arch/arm64/boot/dts/renesas/r9a08g045.dtsi | 38 + > .../boot/dts/renesas/rzg3s-smarc-som.dtsi | 177 ++- > drivers/clk/renesas/r9a08g045-cpg.c | 10 + > drivers/net/ethernet/renesas/Kconfig | 1 + > drivers/net/ethernet/renesas/ravb.h | 40 +- > drivers/net/ethernet/renesas/ravb_main.c | 1074 > ++++++++++------- > drivers/pinctrl/renesas/pinctrl-rzg2l.c | 164 ++- > 8 files changed, 1030 insertions(+), 475 deletions(-) > I reviewed this series, LGTM. If the test passes and there are no other comments, I can apply. https://gitlab.com/cip-project/cip-kernel/linux-cip/-/pipelines/1311347806 Reviewed-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp> Best regards, Nobuhiro
Hi, > > I reviewed this series, LGTM. > If the test passes and there are no other comments, I can apply. > > https://gitlab.com/cip-project/cip-kernel/linux-cip/-/pipelines/1311347806 > > Reviewed-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp> > Applied, thank you. Best regards, Nobuhiro
From: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com> Hi, Series adds Ethernet support for Renesas RZ/G3S SoC. Ethernet driver has been enhanced with runtime PM support. The suspend to RAM support was also improved. Series is split as follows: - patch 01: add clock and reset support for the Ethernet IPs - patches 02-07: add pinctrl support for the Ethernet IPs - patches 08-43: add support for suspend to RAM and runtime PM on the Ethernet driver; in this set there are many preparatory patches for runtime PM support (as runtime PM enable/disables the Ethernet module clock and this influences the Ethernet module state leanding to registers setup being lost) along with improvements - patches 45-47: add device tree support Thank you, Claudiu Beznea Biju Das (2): ravb: Add Rx checksum offload support for GbEth ravb: Add Tx checksum offload support for GbEth Christophe JAILLET (1): ravb: Use GFP_KERNEL instead of GFP_ATOMIC when possible Claudiu Beznea (36): clk: renesas: r9a08g045: Add clock and reset support for ETH0 and ETH1 pinctrl: renesas: rzg2l: Move arg and index in the main function block pinctrl: renesas: rzg2l: Add pin configuration support for pinmux groups pinctrl: renesas: rzg2l: Add support to select power source for Ethernet pins pinctrl: renesas: rzg2l: Add output enable support pinctrl: renesas: rzg2l: Add input enable to the Ethernet pins pinctrl: renesas: rzg2l: Fix locking in rzg2l_dt_subnode_to_map() net: ravb: Check return value of reset_control_deassert() net: ravb: Make write access to CXR35 first before accessing other EMAC registers net: ravb: Stop DMA in case of failures on ravb_open() net: ravb: Keep reverse order of operations in ravb_remove() net: ravb: Wait for operating mode to be applied dt-bindings: net: renesas,etheravb: Document RZ/G3S support net: ravb: Let IP-specific receive function to interrogate descriptors net: ravb: Rely on PM domain to enable gptp_clk net: ravb: Make reset controller support mandatory net: ravb: Assert/de-assert reset on suspend/resume net: ravb: Move reference clock enable/disable on runtime PM APIs net: ravb: Move getting/requesting IRQs in the probe() method net: ravb: Split GTI computation and set operations net: ravb: Move delay mode set in the driver's ndo_open API net: ravb: Move DBAT configuration to the driver's ndo_open API net: ravb: Move PTP initialization in the driver's ndo_open API for ccc_gac platorms net: ravb: Set config mode in ndo_open and reset mode in ndo_close net: ravb: Simplify ravb_suspend() net: ravb: Simplify ravb_resume() net: ravb: Get rid of the temporary variable irq net: ravb: Keep the reverse order of operations in ravb_close() net: ravb: Return cached statistics if the interface is down net: ravb: Move the update of ndev->features to ravb_set_features() net: ravb: Do not apply features to hardware if the interface is down net: ravb: Add runtime PM support arm64: dts: renesas: r9a08g045: Add Ethernet nodes arm64: dts: renesas: rzg3s-smarc-som: Use switches' names to select on-board functionalities arm64: dts: renesas: rzg3s-smarc-som: Enable the Ethernet interfaces arm64: dts: renesas: rzg3s-smarc-som: Guard Ethernet IRQ GPIO hogs Geert Uytterhoeven (1): net: ravb: Fix registered interrupt names Paul Barker (3): net: ravb: Count packets instead of descriptors in GbEth RX path net: ravb: Fix GbEth jumbo packet RX checksum handling net: ravb: Fix RX byte accounting for jumbo packets Sergey Shtylyov (1): ravb: ravb_close() always returns 0 Yang Li (1): ethernet: renesas: Use div64_ul instead of do_div Yoshihiro Shimoda (1): net: ravb: Fix lack of register setting after system resumed for Gen3 YueHaibing (1): ravb: Fix potential use-after-free in ravb_rx_gbeth() .../bindings/net/renesas,etheravb.yaml | 1 + arch/arm64/boot/dts/renesas/r9a08g045.dtsi | 38 + .../boot/dts/renesas/rzg3s-smarc-som.dtsi | 177 ++- drivers/clk/renesas/r9a08g045-cpg.c | 10 + drivers/net/ethernet/renesas/Kconfig | 1 + drivers/net/ethernet/renesas/ravb.h | 40 +- drivers/net/ethernet/renesas/ravb_main.c | 1074 ++++++++++------- drivers/pinctrl/renesas/pinctrl-rzg2l.c | 164 ++- 8 files changed, 1030 insertions(+), 475 deletions(-)