OSDN Git Service

via-rhine: Use of_device_get_match_data to simplify code
authorTang Bin <tangbin@cmss.chinamobile.com>
Mon, 23 Aug 2021 11:33:36 +0000 (19:33 +0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 23 Aug 2021 11:56:15 +0000 (12:56 +0100)
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@cmss.chinamobile.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/via/via-rhine.c

index 961b623..3b73a9c 100644 (file)
@@ -1113,13 +1113,12 @@ err_out:
 
 static int rhine_init_one_platform(struct platform_device *pdev)
 {
-       const struct of_device_id *match;
        const u32 *quirks;
        int irq;
        void __iomem *ioaddr;
 
-       match = of_match_device(rhine_of_tbl, &pdev->dev);
-       if (!match)
+       quirks = of_device_get_match_data(&pdev->dev);
+       if (!quirks)
                return -EINVAL;
 
        ioaddr = devm_platform_ioremap_resource(pdev, 0);
@@ -1130,10 +1129,6 @@ static int rhine_init_one_platform(struct platform_device *pdev)
        if (!irq)
                return -EINVAL;
 
-       quirks = match->data;
-       if (!quirks)
-               return -EINVAL;
-
        return rhine_init_one_common(&pdev->dev, *quirks,
                                     (long)ioaddr, ioaddr, irq);
 }