Re: [PATCH 3/3] can: mscan: mpc5xxx_can: Useof_device_get_match_data to simplify code

From: tangbin
Date: Mon Aug 23 2021 - 09:52:26 EST


Hi Marc:

On 2021/8/23 20:37, Marc Kleine-Budde wrote:
On 23.08.2021 19:33:38, Tang Bin wrote:
Retrieve OF match data, it's better and cleaner to use
'of_device_get_match_data' over 'of_match_device'.

Signed-off-by: Tang Bin <tangbin@xxxxxxxxxxxxxxxxxxxx>
Thanks for the patch!

LGTM, comment inside.

---
drivers/net/can/mscan/mpc5xxx_can.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/net/can/mscan/mpc5xxx_can.c b/drivers/net/can/mscan/mpc5xxx_can.c
index e254e04ae..3b7465acd 100644
--- a/drivers/net/can/mscan/mpc5xxx_can.c
+++ b/drivers/net/can/mscan/mpc5xxx_can.c
@@ -279,7 +279,6 @@ static u32 mpc512x_can_get_clock(struct platform_device *ofdev,
static const struct of_device_id mpc5xxx_can_table[];
static int mpc5xxx_can_probe(struct platform_device *ofdev)
{
- const struct of_device_id *match;
const struct mpc5xxx_can_data *data;
struct device_node *np = ofdev->dev.of_node;
struct net_device *dev;
@@ -289,10 +288,9 @@ static int mpc5xxx_can_probe(struct platform_device *ofdev)
int irq, mscan_clksrc = 0;
int err = -ENOMEM;
- match = of_match_device(mpc5xxx_can_table, &ofdev->dev);
- if (!match)
+ data = of_device_get_match_data(&ofdev->dev);
+ if (!data)
return -EINVAL;
Please remove the "BUG_ON(!data)", which comes later.

For this place, may I send another patch to fix this 'BUG_ON()' by itself, not in this patch series?

Thanks

Tang Bin


- data = match->data;
base = of_iomap(np, 0);
if (!base) {
--
2.20.1.windows.1




regards,
Marc