config AMD_XGBE
        tristate "AMD 10GbE Ethernet driver"
 -      depends on ((OF_NET && OF_ADDRESS) || ACPI) && HAS_IOMEM && HAS_DMA
 -      depends on ARM64 || COMPILE_TEST
 +      depends on ((OF_NET && OF_ADDRESS) || ACPI || PCI) && HAS_IOMEM && HAS_DMA
 +      depends on X86 || ARM64 || COMPILE_TEST
        select BITREVERSE
        select CRC32
-       select PTP_1588_CLOCK
 +      select PHYLIB
 +      select AMD_XGBE_HAVE_ECC if X86
+       imply PTP_1588_CLOCK
        ---help---
          This driver supports the AMD 10GbE Ethernet device found on an
          AMD SoC.
 
  
        xgbe_debugfs_exit(pdata);
  
-       xgbe_ptp_unregister(pdata);
+       if (IS_REACHABLE(CONFIG_PTP_1588_CLOCK))
+               xgbe_ptp_unregister(pdata);
  
 +      pdata->phy_if.phy_exit(pdata);
 +
        flush_workqueue(pdata->an_workqueue);
        destroy_workqueue(pdata->an_workqueue);
  
 
        select CRC32
        select I2C
        select I2C_ALGOBIT
-       select PTP_1588_CLOCK
+       imply PTP_1588_CLOCK
        ---help---
          This driver supports 10/40-gigabit Ethernet cards based on
 -        the Solarflare SFC4000, SFC9000-family and SFC9100-family
 -        controllers.
 +        the Solarflare SFC9000-family and SFC9100-family controllers.
  
          To compile this driver as a module, choose M here.  The module
          will be called sfc.
 
          will be called cpsw.
  
  config TI_CPTS
 -      bool "TI Common Platform Time Sync (CPTS) Support"
 -      depends on TI_CPSW
 +      tristate "TI Common Platform Time Sync (CPTS) Support"
 +      depends on TI_CPSW || TI_KEYSTONE_NETCP
-       select PTP_1588_CLOCK
+       imply PTP_1588_CLOCK
        ---help---
          This driver supports the Common Platform Time Sync unit of
 -        the CPSW Ethernet Switch. The unit can time stamp PTP UDP/IPv4
 -        and Layer 2 packets, and the driver offers a PTP Hardware Clock.
 +        the CPSW Ethernet Switch and Keystone 2 1g/10g Switch Subsystem.
 +        The unit can time stamp PTP UDP/IPv4 and Layer 2 packets, and the
 +        driver offers a PTP Hardware Clock.
  
  config TI_KEYSTONE_NETCP
        tristate "TI Keystone NETCP Core Support"