Skip to content

Commit

Permalink
net: ethernet: renesas: rcar_gen4_ptp: Break out to module
Browse files Browse the repository at this point in the history
The Gen4 gPTP support will be shared between the existing Renesas
Ethernet Switch driver and the upcoming Renesas Ethernet-TSN driver. In
preparation for this break out the gPTP support to its own module.

Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
  • Loading branch information
Niklas Söderlund authored and Paolo Abeni committed Nov 23, 2023
1 parent be5f81d commit 8c1c662
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 2 deletions.
9 changes: 9 additions & 0 deletions drivers/net/ethernet/renesas/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,16 @@ config RENESAS_ETHER_SWITCH
select CRC32
select MII
select PHYLINK
select RENESAS_GEN4_PTP
help
Renesas Ethernet Switch device driver.

config RENESAS_GEN4_PTP
tristate "Renesas R-Car Gen4 gPTP support" if COMPILE_TEST
select CRC32
select MII
select PHYLIB
help
Renesas R-Car Gen4 gPTP device driver.

endif # NET_VENDOR_RENESAS
5 changes: 3 additions & 2 deletions drivers/net/ethernet/renesas/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,6 @@ obj-$(CONFIG_SH_ETH) += sh_eth.o
ravb-objs := ravb_main.o ravb_ptp.o
obj-$(CONFIG_RAVB) += ravb.o

rswitch_drv-objs := rswitch.o rcar_gen4_ptp.o
obj-$(CONFIG_RENESAS_ETHER_SWITCH) += rswitch_drv.o
obj-$(CONFIG_RENESAS_ETHER_SWITCH) += rswitch.o

obj-$(CONFIG_RENESAS_GEN4_PTP) += rcar_gen4_ptp.o
7 changes: 7 additions & 0 deletions drivers/net/ethernet/renesas/rcar_gen4_ptp.c
Original file line number Diff line number Diff line change
Expand Up @@ -176,13 +176,15 @@ int rcar_gen4_ptp_register(struct rcar_gen4_ptp_private *ptp_priv,

return 0;
}
EXPORT_SYMBOL_GPL(rcar_gen4_ptp_register);

int rcar_gen4_ptp_unregister(struct rcar_gen4_ptp_private *ptp_priv)
{
iowrite32(1, ptp_priv->addr + ptp_priv->offs->disable);

return ptp_clock_unregister(ptp_priv->clock);
}
EXPORT_SYMBOL_GPL(rcar_gen4_ptp_unregister);

struct rcar_gen4_ptp_private *rcar_gen4_ptp_alloc(struct platform_device *pdev)
{
Expand All @@ -196,3 +198,8 @@ struct rcar_gen4_ptp_private *rcar_gen4_ptp_alloc(struct platform_device *pdev)

return ptp;
}
EXPORT_SYMBOL_GPL(rcar_gen4_ptp_alloc);

MODULE_AUTHOR("Yoshihiro Shimoda");
MODULE_DESCRIPTION("Renesas R-Car Gen4 gPTP driver");
MODULE_LICENSE("GPL");

0 comments on commit 8c1c662

Please sign in to comment.