summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/xscale/Kconfig
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2021-08-28 19:15:44 +0200
committerDavid S. Miller <davem@davemloft.net>2021-08-30 10:59:11 +0200
commit9055a2f591629b952910503e72ddae1371c44bf1 (patch)
treed2e4146375b640a75f6b3a9500118359026eb57b /drivers/net/ethernet/xscale/Kconfig
parentMerge branch 'hns3-cleanups' (diff)
downloadlinux-9055a2f591629b952910503e72ddae1371c44bf1.tar.xz
linux-9055a2f591629b952910503e72ddae1371c44bf1.zip
ixp4xx_eth: make ptp support a platform driver
After the recent ixp4xx cleanups, the ptp driver has gained a build failure in some configurations: drivers/net/ethernet/xscale/ptp_ixp46x.c: In function 'ptp_ixp_init': drivers/net/ethernet/xscale/ptp_ixp46x.c:290:51: error: 'IXP4XX_TIMESYNC_BASE_VIRT' undeclared (first use in this function) Avoid the last bit of hardcoded constants from platform headers by turning the ptp driver bit into a platform driver and passing the IRQ and MMIO address as resources. This is a bit tricky: - The interface between the two drivers is now the new ixp46x_ptp_find() function, replacing the global ixp46x_phc_index variable. The call is done as late as possible, in hwtstamp_set(), to ensure that the ptp device is fully probed. - As the ptp driver is now called by the network driver, the link dependency is reversed, which in turn requires a small Makefile hack - The GPIO number is still left hardcoded. This is clearly not great, but it can be addressed later. Note that commit 98ac0cc270b7 ("ARM: ixp4xx: Convert to MULTI_IRQ_HANDLER") changed the IRQ number to something meaningless. Passing the correct IRQ in a resource fixes this. - When the PTP driver is disabled, ethtool .get_ts_info() now correctly lists only software timestamping regardless of the hardware. Signed-off-by: Arnd Bergmann <arnd@arndb.de> [Fix a missing include] Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/xscale/Kconfig')
-rw-r--r--drivers/net/ethernet/xscale/Kconfig4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/xscale/Kconfig b/drivers/net/ethernet/xscale/Kconfig
index 468ffe3d1707..0e878fa6e322 100644
--- a/drivers/net/ethernet/xscale/Kconfig
+++ b/drivers/net/ethernet/xscale/Kconfig
@@ -29,9 +29,9 @@ config IXP4XX_ETH
on IXP4xx processor.
config PTP_1588_CLOCK_IXP46X
- tristate "Intel IXP46x as PTP clock"
+ bool "Intel IXP46x as PTP clock"
depends on IXP4XX_ETH
- depends on PTP_1588_CLOCK
+ depends on PTP_1588_CLOCK=y || PTP_1588_CLOCK=IXP4XX_ETH
default y
help
This driver adds support for using the IXP46X as a PTP