mirror of
https://github.com/torvalds/linux.git
synced 2024-12-27 13:22:23 +00:00
d1cbfd771c
In order to break the hard dependency between the PTP clock subsystem and ethernet drivers capable of being clock providers, this patch provides simple PTP stub functions to allow linkage of those drivers into the kernel even when the PTP subsystem is configured out. Drivers must be ready to accept NULL from ptp_clock_register() in that case. And to make it possible for PTP to be configured out, the select statement in those driver's Kconfig menu entries is converted to the new "imply" statement. This way the PTP subsystem may have Kconfig dependencies of its own, such as POSIX_TIMERS, without having to make those ethernet drivers unavailable if POSIX timers are cconfigured out. And when support for POSIX timers is selected again then the default config option for PTP clock support will automatically be adjusted accordingly. The pch_gbe driver is a bit special as it relies on extra code in drivers/ptp/ptp_pch.c. Therefore we let the make process descend into drivers/ptp/ even if PTP_1588_CLOCK is unselected. Signed-off-by: Nicolas Pitre <nico@linaro.org> Acked-by: Richard Cochran <richardcochran@gmail.com> Acked-by: Edward Cree <ecree@solarflare.com> Acked-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: John Stultz <john.stultz@linaro.org> Reviewed-by: Josh Triplett <josh@joshtriplett.org> Cc: Paul Bolle <pebolle@tiscali.nl> Cc: linux-kbuild@vger.kernel.org Cc: netdev@vger.kernel.org Cc: Michal Marek <mmarek@suse.com> Link: http://lkml.kernel.org/r/1478841010-28605-4-git-send-email-nicolas.pitre@linaro.org Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
129 lines
3.6 KiB
Plaintext
129 lines
3.6 KiB
Plaintext
#
|
|
# TI device configuration
|
|
#
|
|
|
|
config NET_VENDOR_TI
|
|
bool "Texas Instruments (TI) devices"
|
|
default y
|
|
depends on PCI || EISA || AR7 || ARCH_DAVINCI || ARCH_OMAP2PLUS || ARCH_KEYSTONE
|
|
---help---
|
|
If you have a network (Ethernet) card belonging to this class, say Y.
|
|
|
|
Note that the answer to this question doesn't directly affect the
|
|
kernel: saying N will just cause the configurator to skip all
|
|
the questions about TI devices. If you say Y, you will be asked for
|
|
your specific card in the following questions.
|
|
|
|
if NET_VENDOR_TI
|
|
|
|
config TI_DAVINCI_EMAC
|
|
tristate "TI DaVinci EMAC Support"
|
|
depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 )
|
|
select TI_DAVINCI_MDIO
|
|
select TI_DAVINCI_CPDMA
|
|
select PHYLIB
|
|
---help---
|
|
This driver supports TI's DaVinci Ethernet .
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called davinci_emac_driver. This is recommended.
|
|
|
|
config TI_DAVINCI_MDIO
|
|
tristate "TI DaVinci MDIO Support"
|
|
depends on ARCH_DAVINCI || ARCH_OMAP2PLUS || ARCH_KEYSTONE
|
|
select PHYLIB
|
|
---help---
|
|
This driver supports TI's DaVinci MDIO module.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called davinci_mdio. This is recommended.
|
|
|
|
config TI_DAVINCI_CPDMA
|
|
tristate "TI DaVinci CPDMA Support"
|
|
depends on ARCH_DAVINCI || ARCH_OMAP2PLUS
|
|
---help---
|
|
This driver supports TI's DaVinci CPDMA dma engine.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called davinci_cpdma. This is recommended.
|
|
|
|
config TI_CPSW_PHY_SEL
|
|
bool
|
|
---help---
|
|
This driver supports configuring of the phy mode connected to
|
|
the CPSW.
|
|
|
|
config TI_CPSW_ALE
|
|
tristate "TI CPSW ALE Support"
|
|
---help---
|
|
This driver supports TI's CPSW ALE module.
|
|
|
|
config TI_CPSW
|
|
tristate "TI CPSW Switch Support"
|
|
depends on ARCH_DAVINCI || ARCH_OMAP2PLUS
|
|
select TI_DAVINCI_CPDMA
|
|
select TI_DAVINCI_MDIO
|
|
select TI_CPSW_PHY_SEL
|
|
select TI_CPSW_ALE
|
|
select MFD_SYSCON
|
|
select REGMAP
|
|
---help---
|
|
This driver supports TI's CPSW Ethernet Switch.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called cpsw.
|
|
|
|
config TI_CPTS
|
|
bool "TI Common Platform Time Sync (CPTS) Support"
|
|
depends on TI_CPSW
|
|
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.
|
|
|
|
config TI_KEYSTONE_NETCP
|
|
tristate "TI Keystone NETCP Core Support"
|
|
select TI_CPSW_ALE
|
|
select TI_DAVINCI_MDIO
|
|
depends on OF
|
|
depends on KEYSTONE_NAVIGATOR_DMA && KEYSTONE_NAVIGATOR_QMSS
|
|
---help---
|
|
This driver supports TI's Keystone NETCP Core.
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called keystone_netcp.
|
|
|
|
config TI_KEYSTONE_NETCP_ETHSS
|
|
depends on TI_KEYSTONE_NETCP
|
|
tristate "TI Keystone NETCP Ethernet subsystem Support"
|
|
---help---
|
|
|
|
To compile this driver as a module, choose M here: the module
|
|
will be called keystone_netcp_ethss.
|
|
|
|
config TLAN
|
|
tristate "TI ThunderLAN support"
|
|
depends on (PCI || EISA)
|
|
---help---
|
|
If you have a PCI Ethernet network card based on the ThunderLAN chip
|
|
which is supported by this driver, say Y here.
|
|
|
|
Devices currently supported by this driver are Compaq Netelligent,
|
|
Compaq NetFlex and Olicom cards. Please read the file
|
|
<file:Documentation/networking/tlan.txt> for more details.
|
|
|
|
To compile this driver as a module, choose M here. The module
|
|
will be called tlan.
|
|
|
|
Please email feedback to <torben.mathiasen@compaq.com>.
|
|
|
|
config CPMAC
|
|
tristate "TI AR7 CPMAC Ethernet support"
|
|
depends on AR7
|
|
select PHYLIB
|
|
---help---
|
|
TI AR7 CPMAC Ethernet support
|
|
|
|
endif # NET_VENDOR_TI
|