armsr: armv8: add Broadcom GENET and MDIO modules
[openwrt/staging/stintel.git] / target / linux / armsr / modules.mk
1 define KernelPackage/acpi-mdio
2 SUBMENU:=$(NETWORK_DEVICES_MENU)
3 TITLE:=ACPI MDIO support
4 DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-mdio-devres
5 KCONFIG:=CONFIG_ACPI_MDIO
6 FILES:=$(LINUX_DIR)/drivers/net/mdio/acpi_mdio.ko
7 AUTOLOAD:=$(call AutoLoad,11,acpi_mdio)
8 endef
9
10 define KernelPackage/acpi-mdio/description
11 Kernel driver for ACPI MDIO support
12 endef
13
14 $(eval $(call KernelPackage,acpi-mdio))
15
16 define KernelPackage/bcmgenet
17 SUBMENU=$(NETWORK_DEVICES_MENU)
18 DEPENDS:=@(TARGET_armsr_armv8) +kmod-mdio-bcm-unimac
19 TITLE:=Broadcom GENET internal MAC (Raspberry Pi 4)
20 KCONFIG:=CONFIG_BCMGENET
21 FILES=$(LINUX_DIR)/drivers/net/ethernet/broadcom/genet/genet.ko
22 AUTOLOAD=$(call AutoLoad,30,genet)
23 endef
24
25 $(eval $(call KernelPackage,bcmgenet))
26
27 define KernelPackage/mdio-bcm-unimac
28 SUBMENU=$(NETWORK_DEVICES_MENU)
29 DEPENDS:=@(TARGET_armsr_armv8) +kmod-of-mdio
30 TITLE:=Broadcom UniMAC MDIO bus controller
31 KCONFIG:=CONFIG_MDIO_BCM_UNIMAC
32 FILES=$(LINUX_DIR)/drivers/net/mdio/mdio-bcm-unimac.ko
33 AUTOLOAD=$(call AutoLoad,30,mdio-bcm-unimac)
34 endef
35
36 $(eval $(call KernelPackage,mdio-bcm-unimac))
37
38 define KernelPackage/fsl-pcs-lynx
39 SUBMENU=$(NETWORK_DEVICES_MENU)
40 DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-of-mdio +kmod-phylink
41 TITLE:=NXP (Freescale) Lynx PCS
42 HIDDEN:=1
43 KCONFIG:=CONFIG_PCS_LYNX
44 FILES=$(LINUX_DIR)/drivers/net/pcs/pcs-lynx.ko
45 AUTOLOAD=$(call AutoLoad,30,pcs-lynx)
46 endef
47
48 $(eval $(call KernelPackage,fsl-pcs-lynx))
49
50 define KernelPackage/pcs-xpcs
51 SUBMENU:=$(NETWORK_DEVICES_MENU)
52 TITLE:=Synopsis DesignWare PCS driver
53 DEPENDS:=@(TARGET_armsr_armv8) +kmod-phylink
54 KCONFIG:=CONFIG_PCS_XPCS
55 FILES:=$(LINUX_DIR)/drivers/net/pcs/pcs_xpcs.ko
56 AUTOLOAD:=$(call AutoLoad,20,pcs_xpcs)
57 endef
58
59 $(eval $(call KernelPackage,pcs-xpcs))
60
61 define KernelPackage/fsl-fec
62 SUBMENU:=$(NETWORK_DEVICES_MENU)
63 DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-of-mdio \
64 +kmod-ptp +kmod-net-selftests
65 TITLE:=NXP (Freescale) FEC Ethernet controller (i.MX)
66 KCONFIG:=CONFIG_FEC
67 FILES:=$(LINUX_DIR)/drivers/net/ethernet/freescale/fec.ko
68 AUTOLOAD:=$(call AutoLoad,35,fec)
69 endef
70
71 $(eval $(call KernelPackage,fsl-fec))
72
73 define KernelPackage/fsl-xgmac-mdio
74 SUBMENU=$(NETWORK_DEVICES_MENU)
75 DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-of-mdio +kmod-acpi-mdio
76 TITLE:=NXP (Freescale) MDIO bus
77 KCONFIG:=CONFIG_FSL_XGMAC_MDIO
78 FILES=$(LINUX_DIR)/drivers/net/ethernet/freescale/xgmac_mdio.ko
79 AUTOLOAD=$(call AutoLoad,30,xgmac_mdio)
80 endef
81
82 $(eval $(call KernelPackage,fsl-xgmac-mdio))
83
84 define KernelPackage/fsl-mc-dpio
85 SUBMENU:=$(OTHER_MENU)
86 TITLE:=NXP DPAA2 DPIO (Data Path IO) driver
87 HIDDEN:=1
88 KCONFIG:=CONFIG_FSL_MC_BUS=y \
89 CONFIG_FSL_MC_DPIO
90 FILES:=$(LINUX_DIR)/drivers/soc/fsl/dpio/fsl-mc-dpio.ko
91 AUTOLOAD=$(call AutoLoad,30,fsl-mc-dpio)
92 endef
93
94 $(eval $(call KernelPackage,fsl-mc-dpio))
95
96 define KernelPackage/fsl-enetc-net
97 SUBMENU:=$(NETWORK_DEVICES_MENU)
98 TITLE:=:NXP ENETC (LS1028A) Ethernet
99 DEPENDS:=@(TARGET_armsr_armv8) +kmod-phylink +kmod-fsl-pcs-lynx
100 KCONFIG:= \
101 CONFIG_FSL_ENETC \
102 CONFIG_FSL_ENETC_VF \
103 CONFIG_FSL_ENETC_QOS
104 FILES:= \
105 $(LINUX_DIR)/drivers/net/ethernet/freescale/enetc/fsl-enetc.ko \
106 $(LINUX_DIR)/drivers/net/ethernet/freescale/enetc/fsl-enetc-vf.ko \
107 $(LINUX_DIR)/drivers/net/ethernet/freescale/enetc/fsl-enetc-mdio.ko \
108 $(LINUX_DIR)/drivers/net/ethernet/freescale/enetc/fsl-enetc-ierb.ko
109 AUTOLOAD=$(call AutoLoad,35,fsl-enetc)
110 endef
111
112 $(eval $(call KernelPackage,fsl-enetc-net))
113
114 define KernelPackage/fsl-dpaa1-net
115 SUBMENU:=$(NETWORK_DEVICES_MENU)
116 TITLE:=NXP DPAA1 (LS1043/LS1046) Ethernet
117 DEPENDS:=@(TARGET_armsr_armv8) +kmod-fsl-xgmac-mdio +kmod-libphy +kmod-crypto-crc32
118 KCONFIG:= \
119 CONFIG_FSL_DPAA=y \
120 CONFIG_FSL_DPAA_ETH \
121 CONFIG_FSL_FMAN \
122 CONFIG_FSL_DPAA_CHECKING=n \
123 CONFIG_FSL_BMAN_TEST=n \
124 CONFIG_FSL_QMAN_TEST=n
125 MODULES:= \
126 $(LINUX_DIR)/drivers/net/ethernet/freescale/dpaa/fsl_dpa.ko \
127 $(LINUX_DIR)/drivers/net/ethernet/freescale/fman/fsl_dpaa_fman.ko \
128 $(LINUX_DIR)/drivers/net/ethernet/freescale/fman/fsl_dpaa_mac.ko
129 AUTOLOAD=$(call AutoLoad,35,fsl-dpa)
130 endef
131
132 $(eval $(call KernelPackage,fsl-dpaa1-net))
133
134 define KernelPackage/fsl-dpaa2-net
135 SUBMENU:=$(NETWORK_DEVICES_MENU)
136 TITLE:=NXP DPAA2 Ethernet
137 DEPENDS:=@(TARGET_armsr_armv8) +kmod-fsl-xgmac-mdio +kmod-phylink \
138 +kmod-fsl-pcs-lynx +kmod-fsl-mc-dpio
139 KCONFIG:= \
140 CONFIG_FSL_MC_UAPI_SUPPORT=y \
141 CONFIG_FSL_DPAA2_ETH
142 FILES:= \
143 $(LINUX_DIR)/drivers/net/ethernet/freescale/dpaa2/fsl-dpaa2-eth.ko
144 AUTOLOAD=$(call AutoLoad,35,fsl-dpaa2-eth)
145 endef
146
147 $(eval $(call KernelPackage,fsl-dpaa2-net))
148
149 define KernelPackage/fsl-dpaa2-console
150 SUBMENU:=$(OTHER_MENU)
151 TITLE:=NXP DPAA2 Debug console
152 DEPENDS:=@(TARGET_armsr_armv8)
153 KCONFIG:=CONFIG_DPAA2_CONSOLE
154 FILES=$(LINUX_DIR)/drivers/soc/fsl/dpaa2-console.ko
155 AUTOLOAD=$(call AutoLoad,40,dpaa2-console)
156 endef
157
158 define KernelPackage/fsl-dpaa2-console/description
159 Kernel modules for the NXP DPAA2 debug consoles
160 (Management Complex and AIOP).
161 endef
162
163 $(eval $(call KernelPackage,fsl-dpaa2-console))
164
165 define KernelPackage/marvell-mdio
166 SUBMENU:=$(NETWORK_DEVICES_MENU)
167 TITLE:=Marvell Armada platform MDIO driver
168 DEPENDS:=@(TARGET_armsr_armv8) +kmod-libphy +kmod-of-mdio +kmod-acpi-mdio
169 KCONFIG:=CONFIG_MVMDIO
170 FILES=$(LINUX_DIR)/drivers/net/ethernet/marvell/mvmdio.ko
171 AUTOLOAD=$(call AutoLoad,30,marvell-mdio)
172 endef
173
174 $(eval $(call KernelPackage,marvell-mdio))
175
176 define KernelPackage/mvneta
177 SUBMENU:=$(NETWORK_DEVICES_MENU)
178 TITLE:=Marvell Armada 370/38x/XP/37xx network driver
179 DEPENDS:=@(TARGET_armsr_armv8) +kmod-marvell-mdio +kmod-phylink
180 KCONFIG:=CONFIG_MVNETA
181 FILES:=$(LINUX_DIR)/drivers/net/ethernet/marvell/mvneta.ko
182 AUTOLOAD=$(call AutoLoad,30,mvneta)
183 endef
184
185 $(eval $(call KernelPackage,mvneta))
186
187 define KernelPackage/mvpp2
188 SUBMENU:=$(NETWORK_DEVICES_MENU)
189 TITLE:=Marvell Armada 375/7K/8K network driver
190 DEPENDS:=@(TARGET_armsr_armv8) +kmod-marvell-mdio +kmod-phylink
191 KCONFIG:=CONFIG_MVPP2 \
192 CONFIG_MVPP2_PTP=n
193 FILES=$(LINUX_DIR)/drivers/net/ethernet/marvell/mvpp2/mvpp2.ko
194 AUTOLOAD=$(call AutoLoad,40,mvpp2)
195 endef
196
197 $(eval $(call KernelPackage,mvpp2))
198
199 define KernelPackage/imx2-wdt
200 SUBMENU:=$(OTHER_MENU)
201 TITLE:=NXP (Freescale) i.MX2+ and Layerscape watchdog driver
202 KCONFIG:=CONFIG_IMX2_WDT
203 FILES=$(LINUX_DIR)/drivers/watchdog/imx2_wdt.ko
204 AUTOLOAD=$(call AutoLoad,60,imx2_wdt)
205 endef
206
207 $(eval $(call KernelPackage,imx2-wdt))
208
209 define KernelPackage/imx7-ulp-wdt
210 SUBMENU:=$(OTHER_MENU)
211 TITLE:=NXP (Freescale) i.MX7ULP and later watchdog
212 KCONFIG:=CONFIG_IMX7ULP_WDT
213 FILES=$(LINUX_DIR)/drivers/watchdog/imx7ulp_wdt.ko
214 AUTOLOAD=$(call AutoLoad,60,imx7ulp_wdt)
215 endef
216
217 $(eval $(call KernelPackage,imx7-ulp-wdt))
218
219 define KernelPackage/stmmac-core
220 SUBMENU=$(NETWORK_DEVICES_MENU)
221 TITLE:=Synopsis Ethernet Controller core (NXP,STMMicro,others)
222 DEPENDS:=@(TARGET_armsr_armv8) +kmod-pcs-xpcs +kmod-ptp \
223 +kmod-of-mdio
224 KCONFIG:=CONFIG_STMMAC_ETH \
225 CONFIG_STMMAC_SELFTESTS=n \
226 CONFIG_STMMAC_PLATFORM \
227 CONFIG_CONFIG_DWMAC_DWC_QOS_ETH=n \
228 CONFIG_DWMAC_GENERIC
229 FILES=$(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/stmmac.ko \
230 $(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/stmmac-platform.ko \
231 $(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/dwmac-generic.ko
232 AUTOLOAD=$(call AutoLoad,40,stmmac stmmac-platform dwmac-generic)
233 endef
234
235 $(eval $(call KernelPackage,stmmac-core))
236
237 define KernelPackage/dwmac-imx
238 SUBMENU=$(NETWORK_DEVICES_MENU)
239 TITLE:=NXP i.MX8 Ethernet controller
240 DEPENDS:=+kmod-stmmac-core
241 KCONFIG:=CONFIG_DWMAC_IMX8
242 FILES=$(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/dwmac-imx.ko
243 AUTOLOAD=$(call AutoLoad,45,dwmac-imx)
244 endef
245
246 $(eval $(call KernelPackage,dwmac-imx))
247
248 define KernelPackage/dwmac-sun8i
249 SUBMENU=$(NETWORK_DEVICES_MENU)
250 TITLE:=Allwinner H3/A83T/A64 (sun8i) Ethernet
251 DEPENDS:=+kmod-stmmac-core +kmod-mdio-bus-mux
252 KCONFIG:=CONFIG_DWMAC_SUN8I
253 FILES=$(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.ko
254 AUTOLOAD=$(call AutoLoad,45,dwmac-sun8i)
255 endef
256
257 $(eval $(call KernelPackage,dwmac-sun8i))
258
259 define KernelPackage/dwmac-rockchip
260 SUBMENU=$(NETWORK_DEVICES_MENU)
261 TITLE:=Rockchip RK3328/RK3399/RK3568 Ethernet
262 DEPENDS:=+kmod-stmmac-core +kmod-mdio-bus-mux
263 KCONFIG:=CONFIG_DWMAC_ROCKCHIP
264 FILES=$(LINUX_DIR)/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.ko
265 AUTOLOAD=$(call AutoLoad,45,dwmac-rk)
266 endef
267
268 $(eval $(call KernelPackage,dwmac-rockchip))
269
270 define KernelPackage/thunderx-net
271 SUBMENU:=$(NETWORK_DEVICES_MENU)
272 TITLE:=Marvell (Cavium) ThunderX/2 network drivers
273 DEPENDS:=@(TARGET_armsr_armv8) +kmod-phylink +kmod-of-mdio
274 KCONFIG:=CONFIG_NET_VENDOR_CAVIUM \
275 CONFIG_THUNDER_NIC_PF \
276 CONFIG_THUNDER_NIC_VF \
277 CONFIG_THUNDER_NIC_BGX \
278 CONFIG_THUNDER_NIC_RGX
279 FILES=$(LINUX_DIR)/drivers/net/ethernet/cavium/thunder/nicvf.ko \
280 $(LINUX_DIR)/drivers/net/ethernet/cavium/thunder/nicpf.ko \
281 $(LINUX_DIR)/drivers/net/ethernet/cavium/thunder/thunder_xcv.ko \
282 $(LINUX_DIR)/drivers/net/ethernet/cavium/thunder/thunder_bgx.ko
283 AUTOLOAD=$(call AutoLoad,40,nicpf nicvf thunder_xcv thunder_bgx)
284 endef
285
286 $(eval $(call KernelPackage,thunderx-net))
287
288 define KernelPackage/wdt-sp805
289 SUBMENU:=$(OTHER_MENU)
290 TITLE:=ARM SP805 Watchdog
291 KCONFIG:=CONFIG_ARM_SP805_WATCHDOG
292 FILES=$(LINUX_DIR)/drivers/watchdog/sp805_wdt.ko
293 AUTOLOAD=$(call AutoLoad,50,sp805_wdt)
294 endef
295
296 define KernelPackage/wdt-sp805/description
297 Support for the ARM SP805 wathchdog module.
298 This is present in the NXP Layerscape family,
299 HiSilicon HI3660 among others.
300 endef
301
302 $(eval $(call KernelPackage,wdt-sp805))
303