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