* [PATCH v2 0/2] net: fec: Fix device_get_match_data usage
@ 2023-10-17 6:34 Alexander Stein
2023-10-17 6:34 ` [PATCH v2 1/2] " Alexander Stein
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Alexander Stein @ 2023-10-17 6:34 UTC (permalink / raw)
To: Wei Fang, Shenwei Wang, Clark Wang, David S . Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Rob Herring
Cc: Alexander Stein, NXP Linux Team, netdev
Hi,
this is v2 adressing the regression introduced by commit b0377116decd
("net: ethernet: Use device_get_match_data()").
Changes in v2:
* Update the OF device data pointers to the actual device specific struct
fec_devinfo.
* Add Patch 2 (unrelated to regression) to remove platform IDs for
non-Coldfire
You could also remove the (!dev_info) case for Coldfire as this platform
has no quirks. But IMHO this should be kept as long as Coldfire platform
data is supported.
Best regards,
Alexander
Alexander Stein (2):
net: fec: Fix device_get_match_data usage
net: fec: Remove non-Coldfire platform IDs
drivers/net/ethernet/freescale/fec_main.c | 63 ++++-------------------
1 file changed, 10 insertions(+), 53 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH v2 1/2] net: fec: Fix device_get_match_data usage
2023-10-17 6:34 [PATCH v2 0/2] net: fec: Fix device_get_match_data usage Alexander Stein
@ 2023-10-17 6:34 ` Alexander Stein
2023-10-18 11:33 ` Simon Horman
2023-10-17 6:34 ` [PATCH v2 2/2] net: fec: Remove non-Coldfire platform IDs Alexander Stein
` (2 subsequent siblings)
3 siblings, 1 reply; 7+ messages in thread
From: Alexander Stein @ 2023-10-17 6:34 UTC (permalink / raw)
To: Wei Fang, Shenwei Wang, Clark Wang, David S . Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Rob Herring
Cc: Alexander Stein, NXP Linux Team, netdev
device_get_match_data() expects that of_device_id->data points to actual
fec_devinfo data, not a platform_device_id entry.
Fix this by adjusting OF device data pointers to their corresponding
structs.
enum imx_fec_type is now unused and can be removed.
Fixes: b0377116decd ("net: ethernet: Use device_get_match_data()")
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
drivers/net/ethernet/freescale/fec_main.c | 33 +++++++----------------
1 file changed, 10 insertions(+), 23 deletions(-)
diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
index 5eb756871a963..2530463be2a1f 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -222,30 +222,17 @@ static struct platform_device_id fec_devtype[] = {
};
MODULE_DEVICE_TABLE(platform, fec_devtype);
-enum imx_fec_type {
- IMX25_FEC = 1, /* runs on i.mx25/50/53 */
- IMX27_FEC, /* runs on i.mx27/35/51 */
- IMX28_FEC,
- IMX6Q_FEC,
- MVF600_FEC,
- IMX6SX_FEC,
- IMX6UL_FEC,
- IMX8MQ_FEC,
- IMX8QM_FEC,
- S32V234_FEC,
-};
-
static const struct of_device_id fec_dt_ids[] = {
- { .compatible = "fsl,imx25-fec", .data = &fec_devtype[IMX25_FEC], },
- { .compatible = "fsl,imx27-fec", .data = &fec_devtype[IMX27_FEC], },
- { .compatible = "fsl,imx28-fec", .data = &fec_devtype[IMX28_FEC], },
- { .compatible = "fsl,imx6q-fec", .data = &fec_devtype[IMX6Q_FEC], },
- { .compatible = "fsl,mvf600-fec", .data = &fec_devtype[MVF600_FEC], },
- { .compatible = "fsl,imx6sx-fec", .data = &fec_devtype[IMX6SX_FEC], },
- { .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], },
+ { .compatible = "fsl,imx25-fec", .data = &fec_imx25_info, },
+ { .compatible = "fsl,imx27-fec", .data = &fec_imx27_info, },
+ { .compatible = "fsl,imx28-fec", .data = &fec_imx28_info, },
+ { .compatible = "fsl,imx6q-fec", .data = &fec_imx6q_info, },
+ { .compatible = "fsl,mvf600-fec", .data = &fec_mvf600_info, },
+ { .compatible = "fsl,imx6sx-fec", .data = &fec_imx6x_info, },
+ { .compatible = "fsl,imx6ul-fec", .data = &fec_imx6ul_info, },
+ { .compatible = "fsl,imx8mq-fec", .data = &fec_imx8mq_info, },
+ { .compatible = "fsl,imx8qm-fec", .data = &fec_imx8qm_info, },
+ { .compatible = "fsl,s32v234-fec", .data = &fec_s32v234_info, },
{ /* sentinel */ }
};
MODULE_DEVICE_TABLE(of, fec_dt_ids);
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v2 2/2] net: fec: Remove non-Coldfire platform IDs
2023-10-17 6:34 [PATCH v2 0/2] net: fec: Fix device_get_match_data usage Alexander Stein
2023-10-17 6:34 ` [PATCH v2 1/2] " Alexander Stein
@ 2023-10-17 6:34 ` Alexander Stein
2023-10-18 11:33 ` Simon Horman
2023-10-17 14:37 ` [PATCH v2 0/2] net: fec: Fix device_get_match_data usage Rob Herring
2023-10-19 1:00 ` patchwork-bot+netdevbpf
3 siblings, 1 reply; 7+ messages in thread
From: Alexander Stein @ 2023-10-17 6:34 UTC (permalink / raw)
To: Wei Fang, Shenwei Wang, Clark Wang, David S . Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Rob Herring
Cc: Alexander Stein, NXP Linux Team, netdev
All i.MX platforms (non-Coldfire) use DT nowadays, so their platform ID
entries can be removed.
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
---
drivers/net/ethernet/freescale/fec_main.c | 30 -----------------------
1 file changed, 30 deletions(-)
diff --git a/drivers/net/ethernet/freescale/fec_main.c b/drivers/net/ethernet/freescale/fec_main.c
index 2530463be2a1f..032c15b541ff2 100644
--- a/drivers/net/ethernet/freescale/fec_main.c
+++ b/drivers/net/ethernet/freescale/fec_main.c
@@ -186,36 +186,6 @@ static struct platform_device_id fec_devtype[] = {
/* keep it for coldfire */
.name = DRIVER_NAME,
.driver_data = 0,
- }, {
- .name = "imx25-fec",
- .driver_data = (kernel_ulong_t)&fec_imx25_info,
- }, {
- .name = "imx27-fec",
- .driver_data = (kernel_ulong_t)&fec_imx27_info,
- }, {
- .name = "imx28-fec",
- .driver_data = (kernel_ulong_t)&fec_imx28_info,
- }, {
- .name = "imx6q-fec",
- .driver_data = (kernel_ulong_t)&fec_imx6q_info,
- }, {
- .name = "mvf600-fec",
- .driver_data = (kernel_ulong_t)&fec_mvf600_info,
- }, {
- .name = "imx6sx-fec",
- .driver_data = (kernel_ulong_t)&fec_imx6x_info,
- }, {
- .name = "imx6ul-fec",
- .driver_data = (kernel_ulong_t)&fec_imx6ul_info,
- }, {
- .name = "imx8mq-fec",
- .driver_data = (kernel_ulong_t)&fec_imx8mq_info,
- }, {
- .name = "imx8qm-fec",
- .driver_data = (kernel_ulong_t)&fec_imx8qm_info,
- }, {
- .name = "s32v234-fec",
- .driver_data = (kernel_ulong_t)&fec_s32v234_info,
}, {
/* sentinel */
}
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v2 0/2] net: fec: Fix device_get_match_data usage
2023-10-17 6:34 [PATCH v2 0/2] net: fec: Fix device_get_match_data usage Alexander Stein
2023-10-17 6:34 ` [PATCH v2 1/2] " Alexander Stein
2023-10-17 6:34 ` [PATCH v2 2/2] net: fec: Remove non-Coldfire platform IDs Alexander Stein
@ 2023-10-17 14:37 ` Rob Herring
2023-10-19 1:00 ` patchwork-bot+netdevbpf
3 siblings, 0 replies; 7+ messages in thread
From: Rob Herring @ 2023-10-17 14:37 UTC (permalink / raw)
To: Alexander Stein
Cc: Wei Fang, Shenwei Wang, Clark Wang, David S . Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, NXP Linux Team, netdev
On Tue, Oct 17, 2023 at 1:34 AM Alexander Stein
<alexander.stein@ew.tq-group.com> wrote:
>
> Hi,
>
> this is v2 adressing the regression introduced by commit b0377116decd
> ("net: ethernet: Use device_get_match_data()").
>
> Changes in v2:
> * Update the OF device data pointers to the actual device specific struct
> fec_devinfo.
> * Add Patch 2 (unrelated to regression) to remove platform IDs for
> non-Coldfire
>
> You could also remove the (!dev_info) case for Coldfire as this platform
> has no quirks. But IMHO this should be kept as long as Coldfire platform
> data is supported.
>
> Best regards,
> Alexander
>
> Alexander Stein (2):
> net: fec: Fix device_get_match_data usage
> net: fec: Remove non-Coldfire platform IDs
>
> drivers/net/ethernet/freescale/fec_main.c | 63 ++++-------------------
> 1 file changed, 10 insertions(+), 53 deletions(-)
Reviewed-by: Rob Herring <robh@kernel.org>
Thanks for fixing this.
Rob
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 2/2] net: fec: Remove non-Coldfire platform IDs
2023-10-17 6:34 ` [PATCH v2 2/2] net: fec: Remove non-Coldfire platform IDs Alexander Stein
@ 2023-10-18 11:33 ` Simon Horman
0 siblings, 0 replies; 7+ messages in thread
From: Simon Horman @ 2023-10-18 11:33 UTC (permalink / raw)
To: Alexander Stein
Cc: Wei Fang, Shenwei Wang, Clark Wang, David S . Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Rob Herring,
NXP Linux Team, netdev
On Tue, Oct 17, 2023 at 08:34:19AM +0200, Alexander Stein wrote:
> All i.MX platforms (non-Coldfire) use DT nowadays, so their platform ID
> entries can be removed.
>
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Reviewed-by: Simon Horman <horms@kernel.org>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 1/2] net: fec: Fix device_get_match_data usage
2023-10-17 6:34 ` [PATCH v2 1/2] " Alexander Stein
@ 2023-10-18 11:33 ` Simon Horman
0 siblings, 0 replies; 7+ messages in thread
From: Simon Horman @ 2023-10-18 11:33 UTC (permalink / raw)
To: Alexander Stein
Cc: Wei Fang, Shenwei Wang, Clark Wang, David S . Miller,
Eric Dumazet, Jakub Kicinski, Paolo Abeni, Rob Herring,
NXP Linux Team, netdev
On Tue, Oct 17, 2023 at 08:34:18AM +0200, Alexander Stein wrote:
> device_get_match_data() expects that of_device_id->data points to actual
> fec_devinfo data, not a platform_device_id entry.
> Fix this by adjusting OF device data pointers to their corresponding
> structs.
> enum imx_fec_type is now unused and can be removed.
>
> Fixes: b0377116decd ("net: ethernet: Use device_get_match_data()")
> Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Reviewed-by: Simon Horman <horms@kernel.org>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v2 0/2] net: fec: Fix device_get_match_data usage
2023-10-17 6:34 [PATCH v2 0/2] net: fec: Fix device_get_match_data usage Alexander Stein
` (2 preceding siblings ...)
2023-10-17 14:37 ` [PATCH v2 0/2] net: fec: Fix device_get_match_data usage Rob Herring
@ 2023-10-19 1:00 ` patchwork-bot+netdevbpf
3 siblings, 0 replies; 7+ messages in thread
From: patchwork-bot+netdevbpf @ 2023-10-19 1:00 UTC (permalink / raw)
To: Alexander Stein
Cc: wei.fang, shenwei.wang, xiaoning.wang, davem, edumazet, kuba,
pabeni, robh, linux-imx, netdev
Hello:
This series was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Tue, 17 Oct 2023 08:34:17 +0200 you wrote:
> Hi,
>
> this is v2 adressing the regression introduced by commit b0377116decd
> ("net: ethernet: Use device_get_match_data()").
>
> Changes in v2:
> * Update the OF device data pointers to the actual device specific struct
> fec_devinfo.
> * Add Patch 2 (unrelated to regression) to remove platform IDs for
> non-Coldfire
>
> [...]
Here is the summary with links:
- [v2,1/2] net: fec: Fix device_get_match_data usage
https://git.kernel.org/netdev/net-next/c/e6809dba5ec3
- [v2,2/2] net: fec: Remove non-Coldfire platform IDs
https://git.kernel.org/netdev/net-next/c/50254bfe1438
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2023-10-19 1:00 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-17 6:34 [PATCH v2 0/2] net: fec: Fix device_get_match_data usage Alexander Stein
2023-10-17 6:34 ` [PATCH v2 1/2] " Alexander Stein
2023-10-18 11:33 ` Simon Horman
2023-10-17 6:34 ` [PATCH v2 2/2] net: fec: Remove non-Coldfire platform IDs Alexander Stein
2023-10-18 11:33 ` Simon Horman
2023-10-17 14:37 ` [PATCH v2 0/2] net: fec: Fix device_get_match_data usage Rob Herring
2023-10-19 1:00 ` patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).