ar71xx: keep the RouterBOARD Power LED in On state
[oweals/openwrt.git] / target / linux / generic / patches-4.9 / 700-swconfig_switch_drivers.patch
1 --- a/drivers/net/phy/Kconfig
2 +++ b/drivers/net/phy/Kconfig
3 @@ -147,6 +147,89 @@ config MDIO_XGENE
4           This module provides a driver for the MDIO busses found in the
5           APM X-Gene SoC's.
6  
7 +comment "Switch configuration API + drivers"
8 +
9 +config SWCONFIG
10 +       tristate "Switch configuration API"
11 +       ---help---
12 +         Switch configuration API using netlink. This allows
13 +         you to configure the VLAN features of certain switches.
14 +
15 +config SWCONFIG_LEDS
16 +       bool "Switch LED trigger support"
17 +       depends on (SWCONFIG && LEDS_TRIGGERS)
18 +
19 +config ADM6996_PHY
20 +       tristate "Driver for ADM6996 switches"
21 +       select SWCONFIG
22 +       ---help---
23 +         Currently supports the ADM6996FC and ADM6996M switches.
24 +         Support for FC is very limited.
25 +
26 +config AR8216_PHY
27 +       tristate "Driver for Atheros AR8216 switches"
28 +       select ETHERNET_PACKET_MANGLE
29 +       select SWCONFIG
30 +
31 +config AR8216_PHY_LEDS
32 +       bool "Atheros AR8216 switch LED support"
33 +       depends on (AR8216_PHY && LEDS_CLASS)
34 +
35 +source "drivers/net/phy/b53/Kconfig"
36 +
37 +config IP17XX_PHY
38 +       tristate "Driver for IC+ IP17xx switches"
39 +       select SWCONFIG
40 +
41 +config MVSWITCH_PHY
42 +       tristate "Driver for Marvell 88E6060 switches"
43 +       select ETHERNET_PACKET_MANGLE
44 +
45 +config MVSW61XX_PHY
46 +       tristate "Driver for Marvell 88E6171/6172 switches"
47 +       select SWCONFIG
48 +
49 +config PSB6970_PHY
50 +       tristate "Lantiq XWAY Tantos (PSB6970) Ethernet switch"
51 +       select SWCONFIG
52 +       select ETHERNET_PACKET_MANGLE
53 +
54 +config RTL8306_PHY
55 +       tristate "Driver for Realtek RTL8306S switches"
56 +       select SWCONFIG
57 +
58 +config RTL8366_SMI
59 +       tristate "Driver for the RTL8366 SMI interface"
60 +       depends on GPIOLIB
61 +       ---help---
62 +         This module implements the SMI interface protocol which is used
63 +         by some RTL8366 ethernet switch devices via the generic GPIO API.
64 +
65 +if RTL8366_SMI
66 +
67 +config RTL8366_SMI_DEBUG_FS
68 +       bool "RTL8366 SMI interface debugfs support"
69 +        depends on DEBUG_FS
70 +        default n
71 +
72 +config RTL8366S_PHY
73 +       tristate "Driver for the Realtek RTL8366S switch"
74 +       select SWCONFIG
75 +
76 +config RTL8366RB_PHY
77 +       tristate "Driver for the Realtek RTL8366RB switch"
78 +       select SWCONFIG
79 +
80 +config RTL8367_PHY
81 +       tristate "Driver for the Realtek RTL8367R/M switches"
82 +       select SWCONFIG
83 +
84 +config RTL8367B_PHY
85 +       tristate "Driver fot the Realtek RTL8367R-VB switch"
86 +       select SWCONFIG
87 +
88 +endif # RTL8366_SMI
89 +
90  comment "MII PHY device drivers"
91  
92  config AMD_PHY
93 --- a/drivers/net/phy/Makefile
94 +++ b/drivers/net/phy/Makefile
95 @@ -5,6 +5,21 @@ libphy-$(CONFIG_SWPHY)         += swphy.o
96  
97  obj-$(CONFIG_PHYLIB)           += libphy.o
98  
99 +obj-$(CONFIG_SWCONFIG)         += swconfig.o
100 +obj-$(CONFIG_ADM6996_PHY)      += adm6996.o
101 +obj-$(CONFIG_AR8216_PHY)       += ar8216.o ar8327.o
102 +obj-$(CONFIG_SWCONFIG_B53)     += b53/
103 +obj-$(CONFIG_IP17XX_PHY)       += ip17xx.o
104 +obj-$(CONFIG_MVSWITCH_PHY)     += mvswitch.o
105 +obj-$(CONFIG_MVSW61XX_PHY)     += mvsw61xx.o
106 +obj-$(CONFIG_PSB6970_PHY)      += psb6970.o
107 +obj-$(CONFIG_RTL8306_PHY)      += rtl8306.o
108 +obj-$(CONFIG_RTL8366_SMI)      += rtl8366_smi.o
109 +obj-$(CONFIG_RTL8366S_PHY)     += rtl8366s.o
110 +obj-$(CONFIG_RTL8366RB_PHY)    += rtl8366rb.o
111 +obj-$(CONFIG_RTL8367_PHY)      += rtl8367.o
112 +obj-$(CONFIG_RTL8367B_PHY)     += rtl8367b.o
113 +
114  obj-$(CONFIG_MDIO_BCM_IPROC)   += mdio-bcm-iproc.o
115  obj-$(CONFIG_MDIO_BCM_UNIMAC)  += mdio-bcm-unimac.o
116  obj-$(CONFIG_MDIO_BITBANG)     += mdio-bitbang.o
117 --- a/include/uapi/linux/Kbuild
118 +++ b/include/uapi/linux/Kbuild
119 @@ -399,6 +399,7 @@ header-y += stddef.h
120  header-y += string.h
121  header-y += suspend_ioctls.h
122  header-y += swab.h
123 +header-y += switch.h
124  header-y += synclink.h
125  header-y += sync_file.h
126  header-y += sysctl.h