cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

Kconfig (8377B)


      1# SPDX-License-Identifier: GPL-2.0-only
      2#
      3# MDIO Layer Configuration
      4#
      5
      6menuconfig MDIO_DEVICE
      7	tristate "MDIO bus device drivers"
      8	help
      9	  MDIO devices and driver infrastructure code.
     10
     11if MDIO_DEVICE
     12
     13config MDIO_BUS
     14	tristate
     15	default m if PHYLIB=m
     16	default MDIO_DEVICE
     17	help
     18	  This internal symbol is used for link time dependencies and it
     19	  reflects whether the mdio_bus/mdio_device code is built as a
     20	  loadable module or built-in.
     21
     22config FWNODE_MDIO
     23	def_tristate PHYLIB
     24	depends on (ACPI || OF) || COMPILE_TEST
     25	select FIXED_PHY
     26	help
     27	  FWNODE MDIO bus (Ethernet PHY) accessors
     28
     29config OF_MDIO
     30	def_tristate PHYLIB
     31	depends on OF
     32	depends on PHYLIB
     33	select FIXED_PHY
     34	help
     35	  OpenFirmware MDIO bus (Ethernet PHY) accessors
     36
     37config ACPI_MDIO
     38	def_tristate PHYLIB
     39	depends on ACPI
     40	depends on PHYLIB
     41	help
     42	  ACPI MDIO bus (Ethernet PHY) accessors
     43
     44if MDIO_BUS
     45
     46config MDIO_DEVRES
     47	tristate
     48
     49config MDIO_SUN4I
     50	tristate "Allwinner sun4i MDIO interface support"
     51	depends on ARCH_SUNXI || COMPILE_TEST
     52	help
     53	  This driver supports the MDIO interface found in the network
     54	  interface units of the Allwinner SoC that have an EMAC (A10,
     55	  A12, A10s, etc.)
     56
     57config MDIO_XGENE
     58	tristate "APM X-Gene SoC MDIO bus controller"
     59	depends on ARCH_XGENE || COMPILE_TEST
     60	help
     61	  This module provides a driver for the MDIO busses found in the
     62	  APM X-Gene SoC's.
     63
     64config MDIO_ASPEED
     65	tristate "ASPEED MDIO bus controller"
     66	depends on ARCH_ASPEED || COMPILE_TEST
     67	depends on OF_MDIO && HAS_IOMEM
     68	help
     69	  This module provides a driver for the independent MDIO bus
     70	  controllers found in the ASPEED AST2600 SoC. This is a driver for the
     71	  third revision of the ASPEED MDIO register interface - the first two
     72	  revisions are the "old" and "new" interfaces found in the AST2400 and
     73	  AST2500, embedded in the MAC. For legacy reasons, FTGMAC100 driver
     74	  continues to drive the embedded MDIO controller for the AST2400 and
     75	  AST2500 SoCs, so say N if AST2600 support is not required.
     76
     77config MDIO_BITBANG
     78	tristate "Bitbanged MDIO buses"
     79	help
     80	  This module implements the MDIO bus protocol in software,
     81	  for use by low level drivers that export the ability to
     82	  drive the relevant pins.
     83
     84	  If in doubt, say N.
     85
     86config MDIO_BCM_IPROC
     87	tristate "Broadcom iProc MDIO bus controller"
     88	depends on ARCH_BCM_IPROC || COMPILE_TEST
     89	depends on HAS_IOMEM && OF_MDIO
     90	default ARCH_BCM_IPROC
     91	help
     92	  This module provides a driver for the MDIO busses found in the
     93	  Broadcom iProc SoC's.
     94
     95config MDIO_BCM_UNIMAC
     96	tristate "Broadcom UniMAC MDIO bus controller"
     97	depends on HAS_IOMEM
     98	help
     99	  This module provides a driver for the Broadcom UniMAC MDIO busses.
    100	  This hardware can be found in the Broadcom GENET Ethernet MAC
    101	  controllers as well as some Broadcom Ethernet switches such as the
    102	  Starfighter 2 switches.
    103
    104config MDIO_CAVIUM
    105	tristate
    106
    107config MDIO_GPIO
    108	tristate "GPIO lib-based bitbanged MDIO buses"
    109	depends on MDIO_BITBANG
    110	depends on GPIOLIB || COMPILE_TEST
    111	help
    112	  Supports GPIO lib-based MDIO busses.
    113
    114	  To compile this driver as a module, choose M here: the module
    115	  will be called mdio-gpio.
    116
    117config MDIO_HISI_FEMAC
    118	tristate "Hisilicon FEMAC MDIO bus controller"
    119	depends on HAS_IOMEM && OF_MDIO
    120	help
    121	  This module provides a driver for the MDIO busses found in the
    122	  Hisilicon SoC that have an Fast Ethernet MAC.
    123
    124config MDIO_I2C
    125	tristate
    126	depends on I2C
    127	help
    128	  Support I2C based PHYs.  This provides a MDIO bus bridged
    129	  to I2C to allow PHYs connected in I2C mode to be accessed
    130	  using the existing infrastructure.
    131
    132	  This is library mode.
    133
    134config MDIO_MVUSB
    135	tristate "Marvell USB to MDIO Adapter"
    136	depends on USB
    137	select MDIO_DEVRES
    138	help
    139	  A USB to MDIO converter present on development boards for
    140	  Marvell's Link Street family of Ethernet switches.
    141
    142config MDIO_MSCC_MIIM
    143	tristate "Microsemi MIIM interface support"
    144	depends on HAS_IOMEM && REGMAP_MMIO
    145	select MDIO_DEVRES
    146	help
    147	  This driver supports the MIIM (MDIO) interface found in the network
    148	  switches of the Microsemi SoCs; it is recommended to switch on
    149	  CONFIG_HIGH_RES_TIMERS
    150
    151config MDIO_MOXART
    152	tristate "MOXA ART MDIO interface support"
    153	depends on ARCH_MOXART || COMPILE_TEST
    154	help
    155	  This driver supports the MDIO interface found in the network
    156	  interface units of the MOXA ART SoC
    157
    158config MDIO_OCTEON
    159	tristate "Octeon and some ThunderX SOCs MDIO buses"
    160	depends on (64BIT && OF_MDIO) || COMPILE_TEST
    161	depends on HAS_IOMEM
    162	select MDIO_CAVIUM
    163	select MDIO_DEVRES
    164	help
    165	  This module provides a driver for the Octeon and ThunderX MDIO
    166	  buses. It is required by the Octeon and ThunderX ethernet device
    167	  drivers on some systems.
    168
    169config MDIO_IPQ4019
    170	tristate "Qualcomm IPQ4019 MDIO interface support"
    171	depends on HAS_IOMEM && OF_MDIO
    172	depends on COMMON_CLK
    173	help
    174	  This driver supports the MDIO interface found in Qualcomm
    175	  IPQ40xx, IPQ60xx, IPQ807x and IPQ50xx series Soc-s.
    176
    177config MDIO_IPQ8064
    178	tristate "Qualcomm IPQ8064 MDIO interface support"
    179	depends on HAS_IOMEM && OF_MDIO
    180	depends on MFD_SYSCON
    181	help
    182	  This driver supports the MDIO interface found in the network
    183	  interface units of the IPQ8064 SoC
    184
    185config MDIO_THUNDER
    186	tristate "ThunderX SOCs MDIO buses"
    187	depends on 64BIT
    188	depends on PCI
    189	select MDIO_CAVIUM
    190	select MDIO_DEVRES
    191	help
    192	  This driver supports the MDIO interfaces found on Cavium
    193	  ThunderX SoCs when the MDIO bus device appears as a PCI
    194	  device.
    195
    196comment "MDIO Multiplexers"
    197
    198config MDIO_BUS_MUX
    199	tristate
    200	depends on OF_MDIO
    201	help
    202	  This module provides a driver framework for MDIO bus
    203	  multiplexers which connect one of several child MDIO busses
    204	  to a parent bus.  Switching between child busses is done by
    205	  device specific drivers.
    206
    207config MDIO_BUS_MUX_MESON_G12A
    208	tristate "Amlogic G12a based MDIO bus multiplexer"
    209	depends on ARCH_MESON || COMPILE_TEST
    210	depends on OF_MDIO && HAS_IOMEM && COMMON_CLK
    211	select MDIO_BUS_MUX
    212	default m if ARCH_MESON
    213	help
    214	  This module provides a driver for the MDIO multiplexer/glue of
    215	  the amlogic g12a SoC. The multiplexers connects either the external
    216	  or the internal MDIO bus to the parent bus.
    217
    218config MDIO_BUS_MUX_BCM6368
    219	tristate "Broadcom BCM6368 MDIO bus multiplexers"
    220	depends on OF && OF_MDIO && (BMIPS_GENERIC || COMPILE_TEST)
    221	select MDIO_BUS_MUX
    222	default BMIPS_GENERIC
    223	help
    224	  This module provides a driver for MDIO bus multiplexers found in
    225	  BCM6368 based Broadcom SoCs. This multiplexer connects one of several
    226	  child MDIO bus to a parent bus. Buses could be internal as well as
    227	  external and selection logic lies inside the same multiplexer.
    228
    229config MDIO_BUS_MUX_BCM_IPROC
    230	tristate "Broadcom iProc based MDIO bus multiplexers"
    231	depends on OF && OF_MDIO && (ARCH_BCM_IPROC || COMPILE_TEST)
    232	select MDIO_BUS_MUX
    233	default ARCH_BCM_IPROC
    234	help
    235	  This module provides a driver for MDIO bus multiplexers found in
    236	  iProc based Broadcom SoCs. This multiplexer connects one of several
    237	  child MDIO bus to a parent bus. Buses could be internal as well as
    238	  external and selection logic lies inside the same multiplexer.
    239
    240config MDIO_BUS_MUX_GPIO
    241	tristate "GPIO controlled MDIO bus multiplexers"
    242	depends on OF_GPIO && OF_MDIO
    243	select MDIO_BUS_MUX
    244	help
    245	  This module provides a driver for MDIO bus multiplexers that
    246	  are controlled via GPIO lines.  The multiplexer connects one of
    247	  several child MDIO busses to a parent bus.  Child bus
    248	  selection is under the control of GPIO lines.
    249
    250config MDIO_BUS_MUX_MULTIPLEXER
    251	tristate "MDIO bus multiplexer using kernel multiplexer subsystem"
    252	depends on OF_MDIO
    253	select MULTIPLEXER
    254	select MDIO_BUS_MUX
    255	help
    256	  This module provides a driver for MDIO bus multiplexer
    257	  that is controlled via the kernel multiplexer subsystem. The
    258	  bus multiplexer connects one of several child MDIO busses to
    259	  a parent bus.  Child bus selection is under the control of
    260	  the kernel multiplexer subsystem.
    261
    262config MDIO_BUS_MUX_MMIOREG
    263	tristate "MMIO device-controlled MDIO bus multiplexers"
    264	depends on OF_MDIO && HAS_IOMEM
    265	select MDIO_BUS_MUX
    266	help
    267	  This module provides a driver for MDIO bus multiplexers that
    268	  are controlled via a simple memory-mapped device, like an FPGA.
    269	  The multiplexer connects one of several child MDIO busses to a
    270	  parent bus.  Child bus selection is under the control of one of
    271	  the FPGA's registers.
    272
    273	  Currently, only 8/16/32 bits registers are supported.
    274
    275
    276endif
    277endif