OSDN Git Service

ath10k: Use of_device_get_match_data() helper
authorMeng Tang <tangmeng@uniontech.com>
Fri, 18 Mar 2022 02:53:31 +0000 (10:53 +0800)
committerKalle Valo <quic_kvalo@quicinc.com>
Mon, 21 Mar 2022 10:48:24 +0000 (12:48 +0200)
Only the device data is needed, not the entire struct of_device_id.
Use of_device_get_match_data() instead of of_match_device().

Signed-off-by: Meng Tang <tangmeng@uniontech.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20220318025331.23030-1-tangmeng@uniontech.com
drivers/net/wireless/ath/ath10k/ahb.c

index ab8f77a..f0c615f 100644 (file)
@@ -728,20 +728,17 @@ static int ath10k_ahb_probe(struct platform_device *pdev)
        struct ath10k *ar;
        struct ath10k_ahb *ar_ahb;
        struct ath10k_pci *ar_pci;
-       const struct of_device_id *of_id;
        enum ath10k_hw_rev hw_rev;
        size_t size;
        int ret;
        struct ath10k_bus_params bus_params = {};
 
-       of_id = of_match_device(ath10k_ahb_of_match, &pdev->dev);
-       if (!of_id) {
-               dev_err(&pdev->dev, "failed to find matching device tree id\n");
+       hw_rev = (enum ath10k_hw_rev)of_device_get_match_data(&pdev->dev);
+       if (!hw_rev) {
+               dev_err(&pdev->dev, "OF data missing\n");
                return -EINVAL;
        }
 
-       hw_rev = (enum ath10k_hw_rev)of_id->data;
-
        size = sizeof(*ar_pci) + sizeof(*ar_ahb);
        ar = ath10k_core_create(size, &pdev->dev, ATH10K_BUS_AHB,
                                hw_rev, &ath10k_ahb_hif_ops);