files.sunxi revision 1.48
1#	$NetBSD: files.sunxi,v 1.48 2018/04/03 12:52:16 bouyer Exp $
2#
3# Configuration info for Allwinner sunxi family SoCs
4#
5#
6
7file	arch/arm/sunxi/sunxi_platform.c		soc_sunxi
8
9# CCU
10define	sunxi_ccu
11file	arch/arm/sunxi/sunxi_ccu.c		sunxi_ccu
12file	arch/arm/sunxi/sunxi_ccu_div.c		sunxi_ccu
13file	arch/arm/sunxi/sunxi_ccu_fixed_factor.c	sunxi_ccu
14file	arch/arm/sunxi/sunxi_ccu_fractional.c	sunxi_ccu
15file	arch/arm/sunxi/sunxi_ccu_gate.c		sunxi_ccu
16file	arch/arm/sunxi/sunxi_ccu_nm.c		sunxi_ccu
17file	arch/arm/sunxi/sunxi_ccu_nkmp.c		sunxi_ccu
18file	arch/arm/sunxi/sunxi_ccu_phase.c	sunxi_ccu
19file	arch/arm/sunxi/sunxi_ccu_prediv.c	sunxi_ccu
20file	arch/arm/sunxi/sunxi_ccu_display.c	sunxi_ccu
21
22# CCU (A10/A20)
23device	sun4ia10ccu: sunxi_ccu
24attach	sun4ia10ccu at fdt with sunxi_a10_ccu
25file	arch/arm/sunxi/sun4i_a10_ccu.c		sunxi_a10_ccu
26
27# CCU (A13)
28device	sun5ia13ccu: sunxi_ccu
29attach	sun5ia13ccu at fdt with sunxi_a13_ccu
30file	arch/arm/sunxi/sun5i_a13_ccu.c		sunxi_a13_ccu
31
32# CCU (A31)
33device	sun6ia31ccu: sunxi_ccu
34attach	sun6ia31ccu at fdt with sunxi_a31_ccu
35file	arch/arm/sunxi/sun6i_a31_ccu.c		sunxi_a31_ccu
36
37# CCU (A83T)
38device	sun8ia83tccu: sunxi_ccu
39attach	sun8ia83tccu at fdt with sunxi_a83t_ccu
40file	arch/arm/sunxi/sun8i_a83t_ccu.c		sunxi_a83t_ccu
41
42# CCU (H3)
43device	sun8ih3ccu: sunxi_ccu
44attach	sun8ih3ccu at fdt with sunxi_h3_ccu
45file	arch/arm/sunxi/sun8i_h3_ccu.c		sunxi_h3_ccu
46
47# CCU (H3 PRCM)
48device	sun8ih3rccu: sunxi_ccu
49attach	sun8ih3rccu at fdt with sunxi_h3_r_ccu
50file	arch/arm/sunxi/sun8i_h3_r_ccu.c		sunxi_h3_r_ccu
51
52# CCU (A80)
53device	sun9ia80ccu: sunxi_ccu
54attach	sun9ia80ccu at fdt with sunxi_a80_ccu
55file	arch/arm/sunxi/sun9i_a80_ccu.c		sunxi_a80_ccu
56
57# CCU (A64)
58device	sun50ia64ccu: sunxi_ccu
59attach	sun50ia64ccu at fdt with sunxi_a64_ccu
60file	arch/arm/sunxi/sun50i_a64_ccu.c		sunxi_a64_ccu
61
62# Misc. clock resets
63device	sunxiresets
64attach	sunxiresets at fdt with sunxi_resets
65file	arch/arm/sunxi/sunxi_resets.c		sunxi_resets
66
67# Misc. clock gates
68device	sunxigates
69attach	sunxigates at fdt with sunxi_gates
70file	arch/arm/sunxi/sunxi_gates.c		sunxi_gates
71
72# GMAC MII/RGMII clock mux
73device	sunxigmacclk
74attach	sunxigmacclk at fdt with sunxi_gmacclk
75file	arch/arm/sunxi/sunxi_gmacclk.c		sunxi_gmacclk
76
77# SD/MMC-COMM (A80)
78device	sun9immcclk
79attach	sun9immcclk at fdt with sunxi_a80_mmcclk
80file	arch/arm/sunxi/sun9i_a80_mmcclk.c	sunxi_a80_mmcclk
81
82# Interrupt controller
83device	sunxiintc: pic, pic_splfuncs
84attach	sunxiintc at fdt with sunxi_intc
85file	arch/arm/sunxi/sunxi_intc.c		sunxi_intc
86
87# GPIO
88device	sunxigpio: gpiobus
89attach	sunxigpio at fdt with sunxi_gpio
90file	arch/arm/sunxi/sunxi_gpio.c		sunxi_gpio
91file	arch/arm/sunxi/sun4i_a10_gpio.c		sunxi_gpio & soc_sun4i_a10
92file	arch/arm/sunxi/sun5i_a13_gpio.c		sunxi_gpio & soc_sun5i_a13
93file	arch/arm/sunxi/sun6i_a31_gpio.c		sunxi_gpio & soc_sun6i_a31
94file	arch/arm/sunxi/sun7i_a20_gpio.c		sunxi_gpio & soc_sun7i_a20
95file	arch/arm/sunxi/sun8i_a83t_gpio.c	sunxi_gpio & soc_sun8i_a83t
96file	arch/arm/sunxi/sun8i_h3_gpio.c		sunxi_gpio & soc_sun8i_h3
97file	arch/arm/sunxi/sun9i_a80_gpio.c		sunxi_gpio & soc_sun9i_a80
98file	arch/arm/sunxi/sun50i_a64_gpio.c	sunxi_gpio & soc_sun50i_a64
99file	arch/arm/sunxi/sun50i_h6_gpio.c		sunxi_gpio & soc_sun50i_h6
100
101# UART
102attach	com at fdt with sunxi_com
103file	arch/arm/sunxi/sunxi_com.c		sunxi_com needs-flag
104
105# SD/MMC
106device	sunximmc: sdmmcbus
107attach	sunximmc at fdt with sunxi_mmc
108file	arch/arm/sunxi/sunxi_mmc.c		sunxi_mmc
109defparam opt_sunximmc.h				SUNXI_MMC_DEBUG
110
111# USB PHY
112device	sunxiusbphy
113attach	sunxiusbphy at fdt with sunxi_usbphy
114file	arch/arm/sunxi/sunxi_usbphy.c		sunxi_usbphy
115
116# EHCI
117attach	ehci at fdt with ehci_fdt
118file	dev/fdt/ehci_fdt.c			ehci_fdt	
119
120# OHCI
121attach	ohci at fdt with ohci_fdt
122file	dev/fdt/ohci_fdt.c			ohci_fdt
123
124# TWI
125device	sunxitwi: i2cbus, i2cexec, mvi2c
126attach	sunxitwi at fdt with sunxi_twi
127file	arch/arm/sunxi/sunxi_twi.c		sunxi_twi
128
129# P2WI/RSB
130device	sunxirsb: i2cbus, i2cexec
131attach	sunxirsb at fdt with sunxi_rsb
132file	arch/arm/sunxi/sunxi_rsb.c		sunxi_rsb
133
134# RTC
135device	sunxirtc
136attach	sunxirtc at fdt with sunxi_rtc
137file	arch/arm/sunxi/sunxi_rtc.c		sunxi_rtc
138
139# EMAC (common)
140device	emac: arp, ether, ifnet, mii
141
142# EMAC (sun4i/sun5i/sun7i)
143ifdef arm
144attach	emac at fdt with sun4i_emac
145file	arch/arm/sunxi/sun4i_emac.c		sun4i_emac
146endif
147
148# EMAC (sun8i/sun50i)
149attach	emac at fdt with sunxi_emac
150file	arch/arm/sunxi/sunxi_emac.c		sunxi_emac
151
152# GMAC
153attach	awge at fdt with sunxi_gmac
154file	arch/arm/sunxi/sunxi_gmac.c		sunxi_gmac
155
156# Timer
157device	sunxitimer
158attach	sunxitimer at fdt with sunxi_timer
159file	arch/arm/sunxi/sunxi_timer.c		sunxi_timer
160
161# Watchdog
162device	sunxiwdt: sysmon_wdog
163attach	sunxiwdt at fdt with sunxi_wdt
164file	arch/arm/sunxi/sunxi_wdt.c		sunxi_wdt
165
166# DMA controller (sun4i)
167device	sun4idma
168attach	sun4idma at fdt with sun4i_dma
169file	arch/arm/sunxi/sun4i_dma.c		sun4i_dma
170
171# DMA controller (sun6i)
172device	sun6idma
173attach	sun6idma at fdt with sun6i_dma
174file	arch/arm/sunxi/sun6i_dma.c		sun6i_dma
175
176# Audio codec
177device	sunxicodec: audiobus, auconv, mulaw, aurateconv
178attach	sunxicodec at fdt with sunxi_codec
179file	arch/arm/sunxi/sunxi_codec.c		sunxi_codec
180file	arch/arm/sunxi/sun4i_a10_codec.c	sunxi_codec
181file	arch/arm/sunxi/sun6i_a31_codec.c	sunxi_codec
182
183# H3 Audio codec (analog part)
184device	h3codec
185attach	h3codec at fdt with h3_codec
186file	arch/arm/sunxi/sun8i_h3_codec.c		h3_codec needs-flag
187
188# Display controller
189attach	genfb at fdt with simplefb
190file	dev/fdt/simplefb.c			simplefb
191
192# A10/A20 LCD/TV timing controller (TCON)
193device	sunxitcon
194attach	sunxitcon at fdt with sunxi_tcon
195file	arch/arm/sunxi/sunxi_tcon.c		sunxi_tcon needs-flag
196
197# A10/A20 Display engine backend (DE-BE)
198device	sunxidebe { }
199attach	sunxidebe at fdt with sunxi_debe
200file	arch/arm/sunxi/sunxi_debe.c		sunxi_debe needs-flag
201
202attach	genfb at sunxidebe with sunxi_befb
203
204# A10/A20 HDMI
205device	sunxihdmi: edid, videomode
206attach	sunxihdmi at fdt with sunxi_hdmi
207file	arch/arm/sunxi/sunxi_hdmi.c		sunxi_hdmi needs-flag
208
209# A10/A20 display engine pipeline
210device sunxidep
211attach	sunxidep at fdt with sunxi_dep
212file	arch/arm/sunxi/sunxi_dep.c		sunxi_dep
213
214# Touch Screen controller
215device	sunxits: wsmousedev, tpcalib, sysmon_envsys
216attach	sunxits at fdt with sunxi_ts
217file	arch/arm/sunxi/sunxi_ts.c		sunxi_ts
218
219# USB OTG
220attach	motg at fdt with sunxi_musb
221file	arch/arm/sunxi/sunxi_musb.c		sunxi_musb
222
223# Security ID EFUSE
224device	sunxisid
225attach	sunxisid at fdt with sunxi_sid
226file	arch/arm/sunxi/sunxi_sid.c		sunxi_sid
227
228# Thermal sensor controller
229device	sunxithermal: sysmon_envsys, sysmon_taskq
230attach	sunxithermal at fdt with sunxi_thermal
231file	arch/arm/sunxi/sunxi_thermal.c		sunxi_thermal
232
233# SATA
234attach	ahcisata at fdt with sunxi_sata
235file	arch/arm/sunxi/sunxi_sata.c		sunxi_sata
236
237# SRAM Controller
238device	sunxisramc
239attach	sunxisramc at fdt with sunxi_sramc
240file	arch/arm/sunxi/sunxi_sramc.c		sunxi_sramc
241
242# NAND Flash Controller
243device	sunxinand: nandbus
244attach	sunxinand at fdt with sunxi_nand
245file	arch/arm/sunxi/sunxi_nand.c		sunxi_nand
246
247# SPI Controller (sun6i-compatible)
248device	sun6ispi: spibus
249attach	sun6ispi at fdt with sun6i_spi
250file	arch/arm/sunxi/sun6i_spi.c		sun6i_spi
251
252# A10/A20 CAN
253device	sunxican { } : ifnet
254attach	sunxican at fdt with sunxi_can
255file	arch/arm/sunxi/sunxi_can.c		sunxi_can
256
257# LRADC
258device	sunxilradc
259attach	sunxilradc at fdt with sunxi_lradc
260file	arch/arm/sunxi/sunxi_lradc.c		sunxi_lradc
261# SOC parameters
262defflag	opt_soc.h			SOC_SUNXI
263defflag	opt_soc.h			SOC_SUN4I: SOC_SUNXI
264defflag	opt_soc.h			SOC_SUN4I_A10: SOC_SUN4I
265defflag	opt_soc.h			SOC_SUN5I: SOC_SUNXI
266defflag	opt_soc.h			SOC_SUN5I_A13: SOC_SUN5I
267defflag	opt_soc.h			SOC_SUN6I: SOC_SUNXI
268defflag	opt_soc.h			SOC_SUN6I_A31: SOC_SUN6I
269defflag	opt_soc.h			SOC_SUN7I: SOC_SUNXI
270defflag	opt_soc.h			SOC_SUN7I_A20: SOC_SUN7I
271defflag	opt_soc.h			SOC_SUN8I: SOC_SUNXI
272defflag	opt_soc.h			SOC_SUN8I_A83T: SOC_SUN8I
273defflag	opt_soc.h			SOC_SUN8I_H3: SOC_SUN8I
274defflag	opt_soc.h			SOC_SUN9I: SOC_SUNXI
275defflag	opt_soc.h			SOC_SUN9I_A80: SOC_SUN9I
276defflag	opt_soc.h			SOC_SUN50I: SOC_SUNXI
277defflag	opt_soc.h			SOC_SUN50I_A64: SOC_SUN50I
278defflag	opt_soc.h			SOC_SUN50I_H5: SOC_SUN50I, SOC_SUN8I_H3
279defflag	opt_soc.h			SOC_SUN50I_H6: SOC_SUN50I
280