ixp4xx_eth: Probe the PTP module from the device tree
authorLinus Walleij <linus.walleij@linaro.org>
Sat, 28 Aug 2021 17:15:48 +0000 (19:15 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 30 Aug 2021 08:59:11 +0000 (09:59 +0100)
This adds device tree probing support for the PTP module
adjacent to the ethernet module. It is pretty straight
forward, all resources are in the device tree as they
come to the platform device.

Cc: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/xscale/ptp_ixp46x.c

index c7ff150..ecece21 100644 (file)
@@ -6,6 +6,7 @@
  */
 #include <linux/device.h>
 #include <linux/module.h>
+#include <linux/mod_devicetable.h>
 #include <linux/err.h>
 #include <linux/init.h>
 #include <linux/interrupt.h>
@@ -311,9 +312,19 @@ static int ptp_ixp_probe(struct platform_device *pdev)
        return 0;
 }
 
+static const struct of_device_id ptp_ixp_match[] = {
+       {
+               .compatible = "intel,ixp46x-ptp-timer",
+       },
+       { },
+};
+
 static struct platform_driver ptp_ixp_driver = {
-       .driver.name = "ptp-ixp46x",
-       .driver.suppress_bind_attrs = true,
+       .driver = {
+               .name = "ptp-ixp46x",
+               .of_match_table = ptp_ixp_match,
+               .suppress_bind_attrs = true,
+       },
        .probe = ptp_ixp_probe,
 };
 module_platform_driver(ptp_ixp_driver);