RE: [PATCH net-next 2/2] net: fec: Add initial s32v234 support

From: Wei Fang
Date: Tue Sep 13 2022 - 21:26:33 EST


Kindly Ping...

Best Regards,
Wei Fang

> -----Original Message-----
> From: Wei Fang
> Sent: 2022年9月7日 17:57
> To: davem@xxxxxxxxxxxxx; edumazet@xxxxxxxxxx; kuba@xxxxxxxxxx;
> pabeni@xxxxxxxxxx; robh+dt@xxxxxxxxxx; krzysztof.kozlowski+dt@xxxxxxxxxx;
> netdev@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx;
> linux-kernel@xxxxxxxxxxxxxxx
> Subject: [PATCH net-next 2/2] net: fec: Add initial s32v234 support
>
> From: Wei Fang <wei.fang@xxxxxxx>
>
> Update Kconfig to also check for ARCH_S32.
> Add compatible string and quirks for fsl,s32v234
>
> Signed-off-by: Wei Fang <wei.fang@xxxxxxx>
> ---
> drivers/net/ethernet/freescale/Kconfig | 6 +++---
> drivers/net/ethernet/freescale/fec_main.c | 12 ++++++++++++
> 2 files changed, 15 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/ethernet/freescale/Kconfig
> b/drivers/net/ethernet/freescale/Kconfig
> index e04e1c5cb013..b7bf45cec29d 100644
> --- a/drivers/net/ethernet/freescale/Kconfig
> +++ b/drivers/net/ethernet/freescale/Kconfig
> @@ -9,7 +9,7 @@ config NET_VENDOR_FREESCALE
> depends on FSL_SOC || QUICC_ENGINE || CPM1 || CPM2 ||
> PPC_MPC512x || \
> M523x || M527x || M5272 || M528x || M520x || M532x || \
> ARCH_MXC || ARCH_MXS || (PPC_MPC52xx &&
> PPC_BESTCOMM) || \
> - ARCH_LAYERSCAPE || COMPILE_TEST
> + ARCH_LAYERSCAPE || ARCH_S32 || COMPILE_TEST
> help
> If you have a network (Ethernet) card belonging to this class, say Y.
>
> @@ -23,7 +23,7 @@ if NET_VENDOR_FREESCALE config FEC
> tristate "FEC ethernet controller (of ColdFire and some i.MX CPUs)"
> depends on (M523x || M527x || M5272 || M528x || M520x || M532x
> || \
> - ARCH_MXC || SOC_IMX28 || COMPILE_TEST)
> + ARCH_MXC || ARCH_S32 || SOC_IMX28 || COMPILE_TEST)
> default ARCH_MXC || SOC_IMX28 if ARM
> depends on PTP_1588_CLOCK_OPTIONAL
> select CRC32
> @@ -31,7 +31,7 @@ config FEC
> imply NET_SELFTESTS
> help
> Say Y here if you want to use the built-in 10/100 Fast ethernet
> - controller on some Motorola ColdFire and Freescale i.MX processors.
> + controller on some Motorola ColdFire and Freescale i.MX/S32
> processors.
>
> config FEC_MPC52xx
> tristate "FEC MPC52xx driver"
> diff --git a/drivers/net/ethernet/freescale/fec_main.c
> b/drivers/net/ethernet/freescale/fec_main.c
> index 8ba8eb340b92..705348879b0c 100644
> --- a/drivers/net/ethernet/freescale/fec_main.c
> +++ b/drivers/net/ethernet/freescale/fec_main.c
> @@ -155,6 +155,13 @@ static const struct fec_devinfo fec_imx8qm_info = {
> FEC_QUIRK_DELAYED_CLKS_SUPPORT,
> };
>
> +static const struct fec_devinfo fec_s32v234_info = {
> + .quirks = FEC_QUIRK_ENET_MAC | FEC_QUIRK_HAS_GBIT |
> + FEC_QUIRK_HAS_BUFDESC_EX | FEC_QUIRK_HAS_CSUM |
> + FEC_QUIRK_HAS_VLAN | FEC_QUIRK_HAS_AVB |
> + FEC_QUIRK_ERR007885 | FEC_QUIRK_BUG_CAPTURE, };
> +
> static struct platform_device_id fec_devtype[] = {
> {
> /* keep it for coldfire */
> @@ -187,6 +194,9 @@ static struct platform_device_id fec_devtype[] = {
> }, {
> .name = "imx8qm-fec",
> .driver_data = (kernel_ulong_t)&fec_imx8qm_info,
> + }, {
> + .name = "s32v234-fec",
> + .driver_data = (kernel_ulong_t)&fec_s32v234_info,
> }, {
> /* sentinel */
> }
> @@ -203,6 +213,7 @@ enum imx_fec_type {
> IMX6UL_FEC,
> IMX8MQ_FEC,
> IMX8QM_FEC,
> + S32V234_FEC,
> };
>
> static const struct of_device_id fec_dt_ids[] = { @@ -215,6 +226,7 @@ static
> const struct of_device_id fec_dt_ids[] = {
> { .compatible = "fsl,imx6ul-fec", .data = &fec_devtype[IMX6UL_FEC], },
> { .compatible = "fsl,imx8mq-fec", .data = &fec_devtype[IMX8MQ_FEC], },
> { .compatible = "fsl,imx8qm-fec", .data = &fec_devtype[IMX8QM_FEC], },
> + { .compatible = "fsl,s32v234-fec", .data = &fec_devtype[S32V234_FEC],
> +},
> { /* sentinel */ }
> };
> MODULE_DEVICE_TABLE(of, fec_dt_ids);
> --
> 2.25.1