ipq40xx: 5.10: move AR40xx to MDIO drivers
MDIO drivers were moved into their own sub directory of networking drivers. This has caused the AR40xx driver to probe before MDIO drivers and that wont work as it depends on the MDIO bus to be up so it can be fetched. Lets solve it by moving the AR40xx into MDIO folder so they get probed like before. Signed-off-by: Robert Marko <robert.marko@sartura.hr>
This commit is contained in:
		 Robert Marko
					Robert Marko
				
			
				
					committed by
					
						 Adrian Schmutzler
						Adrian Schmutzler
					
				
			
			
				
	
			
			
			 Adrian Schmutzler
						Adrian Schmutzler
					
				
			
						parent
						
							ccf214a408
						
					
				
				
					commit
					f4fb63d2ab
				
			
							
								
								
									
										1890
									
								
								target/linux/ipq40xx/files-5.4/drivers/net/phy/ar40xx.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1890
									
								
								target/linux/ipq40xx/files-5.4/drivers/net/phy/ar40xx.c
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										342
									
								
								target/linux/ipq40xx/files-5.4/drivers/net/phy/ar40xx.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										342
									
								
								target/linux/ipq40xx/files-5.4/drivers/net/phy/ar40xx.h
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,342 @@ | ||||
| /* | ||||
|  * Copyright (c) 2016, The Linux Foundation. All rights reserved. | ||||
|  * | ||||
|  * Permission to use, copy, modify, and/or distribute this software for | ||||
|  * any purpose with or without fee is hereby granted, provided that the | ||||
|  * above copyright notice and this permission notice appear in all copies. | ||||
|  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | ||||
|  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | ||||
|  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | ||||
|  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | ||||
|  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | ||||
|  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT | ||||
|  * OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||||
|  */ | ||||
|  | ||||
|  #ifndef __AR40XX_H | ||||
| #define __AR40XX_H | ||||
|  | ||||
| #define AR40XX_MAX_VLANS	128 | ||||
| #define AR40XX_NUM_PORTS	6 | ||||
| #define AR40XX_NUM_PHYS	5 | ||||
|  | ||||
| #define BITS(_s, _n)	(((1UL << (_n)) - 1) << _s) | ||||
|  | ||||
| struct ar40xx_priv { | ||||
| 	struct switch_dev dev; | ||||
|  | ||||
| 	u8  __iomem      *hw_addr; | ||||
| 	u8  __iomem      *psgmii_hw_addr; | ||||
| 	u32 mac_mode; | ||||
| 	struct reset_control *ess_rst; | ||||
| 	u32 cpu_bmp; | ||||
| 	u32 lan_bmp; | ||||
| 	u32 wan_bmp; | ||||
|  | ||||
| 	struct mii_bus *mii_bus; | ||||
| 	struct phy_device *phy; | ||||
|  | ||||
| 	/* mutex for qm task */ | ||||
| 	struct mutex qm_lock; | ||||
| 	struct delayed_work qm_dwork; | ||||
| 	u32 port_link_up[AR40XX_NUM_PORTS]; | ||||
| 	u32 ar40xx_port_old_link[AR40XX_NUM_PORTS]; | ||||
| 	u32 ar40xx_port_qm_buf[AR40XX_NUM_PORTS]; | ||||
|  | ||||
| 	u32 phy_t_status; | ||||
|  | ||||
| 	/* mutex for switch reg access */ | ||||
| 	struct mutex reg_mutex; | ||||
|  | ||||
| 	/* mutex for mib task */ | ||||
| 	struct mutex mib_lock; | ||||
| 	struct delayed_work mib_work; | ||||
| 	int mib_next_port; | ||||
| 	u64 *mib_stats; | ||||
|  | ||||
| 	char buf[2048]; | ||||
|  | ||||
| 	/* all fields below will be cleared on reset */ | ||||
| 	bool vlan; | ||||
| 	u16 vlan_id[AR40XX_MAX_VLANS]; | ||||
| 	u8 vlan_table[AR40XX_MAX_VLANS]; | ||||
| 	u8 vlan_tagged; | ||||
| 	u16 pvid[AR40XX_NUM_PORTS]; | ||||
|  | ||||
| 	/* mirror */ | ||||
| 	bool mirror_rx; | ||||
| 	bool mirror_tx; | ||||
| 	int source_port; | ||||
| 	int monitor_port; | ||||
| }; | ||||
|  | ||||
| #define AR40XX_PORT_LINK_UP 1 | ||||
| #define AR40XX_PORT_LINK_DOWN 0 | ||||
| #define AR40XX_QM_NOT_EMPTY  1 | ||||
| #define AR40XX_QM_EMPTY  0 | ||||
|  | ||||
| #define AR40XX_LAN_VLAN	1 | ||||
| #define AR40XX_WAN_VLAN	2 | ||||
|  | ||||
| enum ar40xx_port_wrapper_cfg { | ||||
| 	PORT_WRAPPER_PSGMII = 0, | ||||
| }; | ||||
|  | ||||
| struct ar40xx_mib_desc { | ||||
| 	u32 size; | ||||
| 	u32 offset; | ||||
| 	const char *name; | ||||
| }; | ||||
|  | ||||
| #define AR40XX_PORT_CPU	0 | ||||
|  | ||||
| #define AR40XX_PSGMII_MODE_CONTROL	0x1b4 | ||||
| #define   AR40XX_PSGMII_ATHR_CSCO_MODE_25M	BIT(0) | ||||
|  | ||||
| #define AR40XX_PSGMIIPHY_TX_CONTROL	 0x288 | ||||
|  | ||||
| #define AR40XX_MII_ATH_MMD_ADDR		0x0d | ||||
| #define AR40XX_MII_ATH_MMD_DATA		0x0e | ||||
| #define AR40XX_MII_ATH_DBG_ADDR		0x1d | ||||
| #define AR40XX_MII_ATH_DBG_DATA		0x1e | ||||
|  | ||||
| #define AR40XX_STATS_RXBROAD		0x00 | ||||
| #define AR40XX_STATS_RXPAUSE		0x04 | ||||
| #define AR40XX_STATS_RXMULTI		0x08 | ||||
| #define AR40XX_STATS_RXFCSERR		0x0c | ||||
| #define AR40XX_STATS_RXALIGNERR		0x10 | ||||
| #define AR40XX_STATS_RXRUNT		0x14 | ||||
| #define AR40XX_STATS_RXFRAGMENT		0x18 | ||||
| #define AR40XX_STATS_RX64BYTE		0x1c | ||||
| #define AR40XX_STATS_RX128BYTE		0x20 | ||||
| #define AR40XX_STATS_RX256BYTE		0x24 | ||||
| #define AR40XX_STATS_RX512BYTE		0x28 | ||||
| #define AR40XX_STATS_RX1024BYTE		0x2c | ||||
| #define AR40XX_STATS_RX1518BYTE		0x30 | ||||
| #define AR40XX_STATS_RXMAXBYTE		0x34 | ||||
| #define AR40XX_STATS_RXTOOLONG		0x38 | ||||
| #define AR40XX_STATS_RXGOODBYTE		0x3c | ||||
| #define AR40XX_STATS_RXBADBYTE		0x44 | ||||
| #define AR40XX_STATS_RXOVERFLOW		0x4c | ||||
| #define AR40XX_STATS_FILTERED		0x50 | ||||
| #define AR40XX_STATS_TXBROAD		0x54 | ||||
| #define AR40XX_STATS_TXPAUSE		0x58 | ||||
| #define AR40XX_STATS_TXMULTI		0x5c | ||||
| #define AR40XX_STATS_TXUNDERRUN		0x60 | ||||
| #define AR40XX_STATS_TX64BYTE		0x64 | ||||
| #define AR40XX_STATS_TX128BYTE		0x68 | ||||
| #define AR40XX_STATS_TX256BYTE		0x6c | ||||
| #define AR40XX_STATS_TX512BYTE		0x70 | ||||
| #define AR40XX_STATS_TX1024BYTE		0x74 | ||||
| #define AR40XX_STATS_TX1518BYTE		0x78 | ||||
| #define AR40XX_STATS_TXMAXBYTE		0x7c | ||||
| #define AR40XX_STATS_TXOVERSIZE		0x80 | ||||
| #define AR40XX_STATS_TXBYTE		0x84 | ||||
| #define AR40XX_STATS_TXCOLLISION	0x8c | ||||
| #define AR40XX_STATS_TXABORTCOL		0x90 | ||||
| #define AR40XX_STATS_TXMULTICOL		0x94 | ||||
| #define AR40XX_STATS_TXSINGLECOL	0x98 | ||||
| #define AR40XX_STATS_TXEXCDEFER		0x9c | ||||
| #define AR40XX_STATS_TXDEFER		0xa0 | ||||
| #define AR40XX_STATS_TXLATECOL		0xa4 | ||||
|  | ||||
| #define AR40XX_REG_MODULE_EN			0x030 | ||||
| #define   AR40XX_MODULE_EN_MIB			BIT(0) | ||||
|  | ||||
| #define AR40XX_REG_MIB_FUNC			0x034 | ||||
| #define   AR40XX_MIB_BUSY		BIT(17) | ||||
| #define   AR40XX_MIB_CPU_KEEP			BIT(20) | ||||
| #define   AR40XX_MIB_FUNC		BITS(24, 3) | ||||
| #define   AR40XX_MIB_FUNC_S		24 | ||||
| #define   AR40XX_MIB_FUNC_NO_OP		0x0 | ||||
| #define   AR40XX_MIB_FUNC_FLUSH		0x1 | ||||
|  | ||||
| #define AR40XX_ESS_SERVICE_TAG		0x48 | ||||
| #define AR40XX_ESS_SERVICE_TAG_STAG	BIT(17) | ||||
|  | ||||
| #define AR40XX_REG_PORT_STATUS(_i)		(0x07c + (_i) * 4) | ||||
| #define   AR40XX_PORT_SPEED			BITS(0, 2) | ||||
| #define   AR40XX_PORT_STATUS_SPEED_S	0 | ||||
| #define   AR40XX_PORT_TX_EN			BIT(2) | ||||
| #define   AR40XX_PORT_RX_EN			BIT(3) | ||||
| #define   AR40XX_PORT_STATUS_TXFLOW	BIT(4) | ||||
| #define   AR40XX_PORT_STATUS_RXFLOW	BIT(5) | ||||
| #define   AR40XX_PORT_DUPLEX			BIT(6) | ||||
| #define   AR40XX_PORT_TXHALF_FLOW		BIT(7) | ||||
| #define   AR40XX_PORT_STATUS_LINK_UP	BIT(8) | ||||
| #define   AR40XX_PORT_AUTO_LINK_EN		BIT(9) | ||||
| #define   AR40XX_PORT_STATUS_FLOW_CONTROL  BIT(12) | ||||
|  | ||||
| #define AR40XX_REG_MAX_FRAME_SIZE		0x078 | ||||
| #define   AR40XX_MAX_FRAME_SIZE_MTU		BITS(0, 14) | ||||
|  | ||||
| #define AR40XX_REG_PORT_HEADER(_i)		(0x09c + (_i) * 4) | ||||
|  | ||||
| #define AR40XX_REG_EEE_CTRL			0x100 | ||||
| #define   AR40XX_EEE_CTRL_DISABLE_PHY(_i)	BIT(4 + (_i) * 2) | ||||
|  | ||||
| #define AR40XX_REG_PORT_VLAN0(_i)		(0x420 + (_i) * 0x8) | ||||
| #define   AR40XX_PORT_VLAN0_DEF_SVID		BITS(0, 12) | ||||
| #define   AR40XX_PORT_VLAN0_DEF_SVID_S		0 | ||||
| #define   AR40XX_PORT_VLAN0_DEF_CVID		BITS(16, 12) | ||||
| #define   AR40XX_PORT_VLAN0_DEF_CVID_S		16 | ||||
|  | ||||
| #define AR40XX_REG_PORT_VLAN1(_i)		(0x424 + (_i) * 0x8) | ||||
| #define   AR40XX_PORT_VLAN1_CORE_PORT		BIT(9) | ||||
| #define   AR40XX_PORT_VLAN1_PORT_TLS_MODE	BIT(7) | ||||
| #define   AR40XX_PORT_VLAN1_PORT_VLAN_PROP	BIT(6) | ||||
| #define   AR40XX_PORT_VLAN1_OUT_MODE		BITS(12, 2) | ||||
| #define   AR40XX_PORT_VLAN1_OUT_MODE_S		12 | ||||
| #define   AR40XX_PORT_VLAN1_OUT_MODE_UNMOD	0 | ||||
| #define   AR40XX_PORT_VLAN1_OUT_MODE_UNTAG	1 | ||||
| #define   AR40XX_PORT_VLAN1_OUT_MODE_TAG		2 | ||||
| #define   AR40XX_PORT_VLAN1_OUT_MODE_UNTOUCH	3 | ||||
|  | ||||
| #define AR40XX_REG_VTU_FUNC0			0x0610 | ||||
| #define   AR40XX_VTU_FUNC0_EG_MODE		BITS(4, 14) | ||||
| #define   AR40XX_VTU_FUNC0_EG_MODE_S(_i)	(4 + (_i) * 2) | ||||
| #define   AR40XX_VTU_FUNC0_EG_MODE_KEEP		0 | ||||
| #define   AR40XX_VTU_FUNC0_EG_MODE_UNTAG	1 | ||||
| #define   AR40XX_VTU_FUNC0_EG_MODE_TAG		2 | ||||
| #define   AR40XX_VTU_FUNC0_EG_MODE_NOT		3 | ||||
| #define   AR40XX_VTU_FUNC0_IVL			BIT(19) | ||||
| #define   AR40XX_VTU_FUNC0_VALID		BIT(20) | ||||
|  | ||||
| #define AR40XX_REG_VTU_FUNC1			0x0614 | ||||
| #define   AR40XX_VTU_FUNC1_OP			BITS(0, 3) | ||||
| #define   AR40XX_VTU_FUNC1_OP_NOOP		0 | ||||
| #define   AR40XX_VTU_FUNC1_OP_FLUSH		1 | ||||
| #define   AR40XX_VTU_FUNC1_OP_LOAD		2 | ||||
| #define   AR40XX_VTU_FUNC1_OP_PURGE		3 | ||||
| #define   AR40XX_VTU_FUNC1_OP_REMOVE_PORT	4 | ||||
| #define   AR40XX_VTU_FUNC1_OP_GET_NEXT		5 | ||||
| #define   AR40XX7_VTU_FUNC1_OP_GET_ONE		6 | ||||
| #define   AR40XX_VTU_FUNC1_FULL			BIT(4) | ||||
| #define   AR40XX_VTU_FUNC1_PORT			BIT(8, 4) | ||||
| #define   AR40XX_VTU_FUNC1_PORT_S		8 | ||||
| #define   AR40XX_VTU_FUNC1_VID			BIT(16, 12) | ||||
| #define   AR40XX_VTU_FUNC1_VID_S		16 | ||||
| #define   AR40XX_VTU_FUNC1_BUSY			BIT(31) | ||||
|  | ||||
| #define AR40XX_REG_FWD_CTRL0			0x620 | ||||
| #define   AR40XX_FWD_CTRL0_CPU_PORT_EN		BIT(10) | ||||
| #define   AR40XX_FWD_CTRL0_MIRROR_PORT		BITS(4, 4) | ||||
| #define   AR40XX_FWD_CTRL0_MIRROR_PORT_S	4 | ||||
|  | ||||
| #define AR40XX_REG_FWD_CTRL1			0x624 | ||||
| #define   AR40XX_FWD_CTRL1_UC_FLOOD		BITS(0, 7) | ||||
| #define   AR40XX_FWD_CTRL1_UC_FLOOD_S		0 | ||||
| #define   AR40XX_FWD_CTRL1_MC_FLOOD		BITS(8, 7) | ||||
| #define   AR40XX_FWD_CTRL1_MC_FLOOD_S		8 | ||||
| #define   AR40XX_FWD_CTRL1_BC_FLOOD		BITS(16, 7) | ||||
| #define   AR40XX_FWD_CTRL1_BC_FLOOD_S		16 | ||||
| #define   AR40XX_FWD_CTRL1_IGMP			BITS(24, 7) | ||||
| #define   AR40XX_FWD_CTRL1_IGMP_S		24 | ||||
|  | ||||
| #define AR40XX_REG_PORT_LOOKUP(_i)		(0x660 + (_i) * 0xc) | ||||
| #define   AR40XX_PORT_LOOKUP_MEMBER		BITS(0, 7) | ||||
| #define   AR40XX_PORT_LOOKUP_IN_MODE		BITS(8, 2) | ||||
| #define   AR40XX_PORT_LOOKUP_IN_MODE_S		8 | ||||
| #define   AR40XX_PORT_LOOKUP_STATE		BITS(16, 3) | ||||
| #define   AR40XX_PORT_LOOKUP_STATE_S		16 | ||||
| #define   AR40XX_PORT_LOOKUP_LEARN		BIT(20) | ||||
| #define   AR40XX_PORT_LOOKUP_LOOPBACK		BIT(21) | ||||
| #define   AR40XX_PORT_LOOKUP_ING_MIRROR_EN	BIT(25) | ||||
|  | ||||
| #define AR40XX_REG_ATU_FUNC			0x60c | ||||
| #define   AR40XX_ATU_FUNC_OP			BITS(0, 4) | ||||
| #define   AR40XX_ATU_FUNC_OP_NOOP		0x0 | ||||
| #define   AR40XX_ATU_FUNC_OP_FLUSH		0x1 | ||||
| #define   AR40XX_ATU_FUNC_OP_LOAD		0x2 | ||||
| #define   AR40XX_ATU_FUNC_OP_PURGE		0x3 | ||||
| #define   AR40XX_ATU_FUNC_OP_FLUSH_LOCKED	0x4 | ||||
| #define   AR40XX_ATU_FUNC_OP_FLUSH_UNICAST	0x5 | ||||
| #define   AR40XX_ATU_FUNC_OP_GET_NEXT		0x6 | ||||
| #define   AR40XX_ATU_FUNC_OP_SEARCH_MAC		0x7 | ||||
| #define   AR40XX_ATU_FUNC_OP_CHANGE_TRUNK	0x8 | ||||
| #define   AR40XX_ATU_FUNC_BUSY			BIT(31) | ||||
|  | ||||
| #define AR40XX_REG_QM_DEBUG_ADDR		0x820 | ||||
| #define AR40XX_REG_QM_DEBUG_VALUE		0x824 | ||||
| #define   AR40XX_REG_QM_PORT0_3_QNUM		0x1d | ||||
| #define   AR40XX_REG_QM_PORT4_6_QNUM		0x1e | ||||
|  | ||||
| #define AR40XX_REG_PORT_HOL_CTRL1(_i)		(0x974 + (_i) * 0x8) | ||||
| #define   AR40XX_PORT_HOL_CTRL1_EG_MIRROR_EN	BIT(16) | ||||
|  | ||||
| #define AR40XX_REG_PORT_FLOWCTRL_THRESH(_i)	(0x9b0 + (_i) * 0x4) | ||||
| #define   AR40XX_PORT0_FC_THRESH_ON_DFLT	0x60 | ||||
| #define   AR40XX_PORT0_FC_THRESH_OFF_DFLT	0x90 | ||||
|  | ||||
| #define AR40XX_PHY_DEBUG_0   0 | ||||
| #define AR40XX_PHY_MANU_CTRL_EN  BIT(12) | ||||
|  | ||||
| #define AR40XX_PHY_DEBUG_2   2 | ||||
|  | ||||
| #define AR40XX_PHY_SPEC_STATUS 0x11 | ||||
| #define   AR40XX_PHY_SPEC_STATUS_LINK		BIT(10) | ||||
| #define   AR40XX_PHY_SPEC_STATUS_DUPLEX		BIT(13) | ||||
| #define   AR40XX_PHY_SPEC_STATUS_SPEED		BITS(14, 2) | ||||
|  | ||||
| /* port forwarding state */ | ||||
| enum { | ||||
| 	AR40XX_PORT_STATE_DISABLED = 0, | ||||
| 	AR40XX_PORT_STATE_BLOCK = 1, | ||||
| 	AR40XX_PORT_STATE_LISTEN = 2, | ||||
| 	AR40XX_PORT_STATE_LEARN = 3, | ||||
| 	AR40XX_PORT_STATE_FORWARD = 4 | ||||
| }; | ||||
|  | ||||
| /* ingress 802.1q mode */ | ||||
| enum { | ||||
| 	AR40XX_IN_PORT_ONLY = 0, | ||||
| 	AR40XX_IN_PORT_FALLBACK = 1, | ||||
| 	AR40XX_IN_VLAN_ONLY = 2, | ||||
| 	AR40XX_IN_SECURE = 3 | ||||
| }; | ||||
|  | ||||
| /* egress 802.1q mode */ | ||||
| enum { | ||||
| 	AR40XX_OUT_KEEP = 0, | ||||
| 	AR40XX_OUT_STRIP_VLAN = 1, | ||||
| 	AR40XX_OUT_ADD_VLAN = 2 | ||||
| }; | ||||
|  | ||||
| /* port speed */ | ||||
| enum { | ||||
| 	AR40XX_PORT_SPEED_10M = 0, | ||||
| 	AR40XX_PORT_SPEED_100M = 1, | ||||
| 	AR40XX_PORT_SPEED_1000M = 2, | ||||
| 	AR40XX_PORT_SPEED_ERR = 3, | ||||
| }; | ||||
|  | ||||
| #define AR40XX_MIB_WORK_DELAY	2000 /* msecs */ | ||||
|  | ||||
| #define AR40XX_QM_WORK_DELAY    100 | ||||
|  | ||||
| #define   AR40XX_MIB_FUNC_CAPTURE	0x3 | ||||
|  | ||||
| #define AR40XX_REG_PORT_STATS_START	0x1000 | ||||
| #define AR40XX_REG_PORT_STATS_LEN		0x100 | ||||
|  | ||||
| #define AR40XX_PORTS_ALL	0x3f | ||||
|  | ||||
| #define AR40XX_PSGMII_ID	5 | ||||
| #define AR40XX_PSGMII_CALB_NUM	100 | ||||
| #define AR40XX_MALIBU_PSGMII_MODE_CTRL	0x6d | ||||
| #define AR40XX_MALIBU_PHY_PSGMII_MODE_CTRL_ADJUST_VAL	0x220c | ||||
| #define AR40XX_MALIBU_PHY_MMD7_DAC_CTRL	0x801a | ||||
| #define AR40XX_MALIBU_DAC_CTRL_MASK	0x380 | ||||
| #define AR40XX_MALIBU_DAC_CTRL_VALUE	0x280 | ||||
| #define AR40XX_MALIBU_PHY_RLP_CTRL       0x805a | ||||
| #define AR40XX_PSGMII_TX_DRIVER_1_CTRL	0xb | ||||
| #define AR40XX_MALIBU_PHY_PSGMII_REDUCE_SERDES_TX_AMP	0x8a | ||||
| #define AR40XX_MALIBU_PHY_LAST_ADDR	4 | ||||
|  | ||||
| static inline struct ar40xx_priv * | ||||
| swdev_to_ar40xx(struct switch_dev *swdev) | ||||
| { | ||||
| 	return container_of(swdev, struct ar40xx_priv, dev); | ||||
| } | ||||
|  | ||||
| #endif | ||||
| @@ -1,8 +1,8 @@ | ||||
| --- a/drivers/net/phy/Kconfig | ||||
| +++ b/drivers/net/phy/Kconfig | ||||
| @@ -388,6 +388,13 @@ config XILINX_GMII2RGMII | ||||
|  	  the Reduced Gigabit Media Independent Interface(RGMII) between | ||||
|  	  Ethernet physical media devices and the Gigabit Ethernet controller. | ||||
| --- a/drivers/net/mdio/Kconfig | ||||
| +++ b/drivers/net/mdio/Kconfig | ||||
| @@ -27,6 +27,13 @@ config OF_MDIO | ||||
|  	help | ||||
|  	  OpenFirmware MDIO bus (Ethernet PHY) accessors | ||||
|   | ||||
| +config AR40XX_PHY | ||||
| +   tristate "Driver for Qualcomm Atheros IPQ40XX switches" | ||||
| @@ -11,16 +11,17 @@ | ||||
| +   help | ||||
| +      This is the driver for Qualcomm Atheros IPQ40XX ESS switches. | ||||
| + | ||||
|  endif # PHYLIB | ||||
|  if MDIO_BUS | ||||
|   | ||||
|  config MDIO_DEVRES | ||||
| --- a/drivers/net/mdio/Makefile | ||||
| +++ b/drivers/net/mdio/Makefile | ||||
| @@ -21,6 +21,8 @@ obj-$(CONFIG_MDIO_SUN4I)		+= mdio-sun4i. | ||||
|  obj-$(CONFIG_MDIO_THUNDER)		+= mdio-thunder.o | ||||
|  obj-$(CONFIG_MDIO_XGENE)		+= mdio-xgene.o | ||||
|   | ||||
|  config MICREL_KS8995MA | ||||
| --- a/drivers/net/phy/Makefile | ||||
| +++ b/drivers/net/phy/Makefile | ||||
| @@ -50,6 +50,7 @@ ifdef CONFIG_HWMON | ||||
|  aquantia-objs			+= aquantia_hwmon.o | ||||
|  endif | ||||
|  obj-$(CONFIG_AQUANTIA_PHY)	+= aquantia.o | ||||
| +obj-$(CONFIG_AR40XX_PHY)		+= ar40xx.o | ||||
|  obj-$(CONFIG_AT803X_PHY)	+= at803x.o | ||||
|  obj-$(CONFIG_AX88796B_PHY)	+= ax88796b.o | ||||
|  obj-$(CONFIG_BCM54140_PHY)	+= bcm54140.o | ||||
| + | ||||
|  obj-$(CONFIG_MDIO_BUS_MUX)		+= mdio-mux.o | ||||
|  obj-$(CONFIG_MDIO_BUS_MUX_BCM_IPROC)	+= mdio-mux-bcm-iproc.o | ||||
|  obj-$(CONFIG_MDIO_BUS_MUX_GPIO)		+= mdio-mux-gpio.o | ||||
|   | ||||
| @@ -40,7 +40,7 @@ Signed-off-by: Robert Marko <robert.marko@sartura.hr> | ||||
|  	help | ||||
| --- a/drivers/net/phy/Makefile | ||||
| +++ b/drivers/net/phy/Makefile | ||||
| @@ -86,6 +86,7 @@ obj-$(CONFIG_MICROSEMI_PHY)	+= mscc/ | ||||
| @@ -85,6 +85,7 @@ obj-$(CONFIG_MICROSEMI_PHY)	+= mscc/ | ||||
|  obj-$(CONFIG_NATIONAL_PHY)	+= national.o | ||||
|  obj-$(CONFIG_NXP_TJA11XX_PHY)	+= nxp-tja11xx.o | ||||
|  obj-$(CONFIG_QSEMI_PHY)		+= qsemi.o | ||||
|   | ||||
		Reference in New Issue
	
	Block a user