files.sunxi revision 1.52
1# $NetBSD: files.sunxi,v 1.52 2018/05/02 21:20:20 jmcneill 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# CCU (H6) 63device sun50ih6ccu: sunxi_ccu 64attach sun50ih6ccu at fdt with sunxi_h6_ccu 65file arch/arm/sunxi/sun50i_h6_ccu.c sunxi_h6_ccu 66 67# CCU (H6 PRCM) 68device sun50ih6rccu: sunxi_ccu 69attach sun50ih6rccu at fdt with sunxi_h6_r_ccu 70file arch/arm/sunxi/sun50i_h6_r_ccu.c sunxi_h6_r_ccu 71 72# Misc. clock resets 73device sunxiresets 74attach sunxiresets at fdt with sunxi_resets 75file arch/arm/sunxi/sunxi_resets.c sunxi_resets 76 77# Misc. clock gates 78device sunxigates 79attach sunxigates at fdt with sunxi_gates 80file arch/arm/sunxi/sunxi_gates.c sunxi_gates 81 82# GMAC MII/RGMII clock mux 83device sunxigmacclk 84attach sunxigmacclk at fdt with sunxi_gmacclk 85file arch/arm/sunxi/sunxi_gmacclk.c sunxi_gmacclk 86 87# SD/MMC-COMM (A80) 88device sun9immcclk 89attach sun9immcclk at fdt with sunxi_a80_mmcclk 90file arch/arm/sunxi/sun9i_a80_mmcclk.c sunxi_a80_mmcclk 91 92# Interrupt controller 93device sunxiintc: pic, pic_splfuncs 94attach sunxiintc at fdt with sunxi_intc 95file arch/arm/sunxi/sunxi_intc.c sunxi_intc 96 97device sunxinmi 98attach sunxinmi at fdt with sunxi_nmi 99file arch/arm/sunxi/sunxi_nmi.c sunxi_nmi 100 101# GPIO 102device sunxigpio: gpiobus 103attach sunxigpio at fdt with sunxi_gpio 104file arch/arm/sunxi/sunxi_gpio.c sunxi_gpio 105file arch/arm/sunxi/sun4i_a10_gpio.c sunxi_gpio & soc_sun4i_a10 106file arch/arm/sunxi/sun5i_a13_gpio.c sunxi_gpio & soc_sun5i_a13 107file arch/arm/sunxi/sun6i_a31_gpio.c sunxi_gpio & soc_sun6i_a31 108file arch/arm/sunxi/sun7i_a20_gpio.c sunxi_gpio & soc_sun7i_a20 109file arch/arm/sunxi/sun8i_a83t_gpio.c sunxi_gpio & soc_sun8i_a83t 110file arch/arm/sunxi/sun8i_h3_gpio.c sunxi_gpio & soc_sun8i_h3 111file arch/arm/sunxi/sun9i_a80_gpio.c sunxi_gpio & soc_sun9i_a80 112file arch/arm/sunxi/sun50i_a64_gpio.c sunxi_gpio & soc_sun50i_a64 113file arch/arm/sunxi/sun50i_h6_gpio.c sunxi_gpio & soc_sun50i_h6 114 115# UART 116attach com at fdt with sunxi_com 117file arch/arm/sunxi/sunxi_com.c sunxi_com needs-flag 118 119# SD/MMC 120device sunximmc: sdmmcbus 121attach sunximmc at fdt with sunxi_mmc 122file arch/arm/sunxi/sunxi_mmc.c sunxi_mmc 123defparam opt_sunximmc.h SUNXI_MMC_DEBUG 124 125# USB PHY 126device sunxiusbphy 127attach sunxiusbphy at fdt with sunxi_usbphy 128file arch/arm/sunxi/sunxi_usbphy.c sunxi_usbphy 129 130device sunxiusb3phy 131attach sunxiusb3phy at fdt with sunxi_usb3phy 132file arch/arm/sunxi/sunxi_usb3phy.c sunxi_usb3phy 133 134# EHCI 135attach ehci at fdt with ehci_fdt 136file dev/fdt/ehci_fdt.c ehci_fdt 137 138# OHCI 139attach ohci at fdt with ohci_fdt 140file dev/fdt/ohci_fdt.c ohci_fdt 141 142# TWI 143device sunxitwi: i2cbus, i2cexec, mvi2c 144attach sunxitwi at fdt with sunxi_twi 145file arch/arm/sunxi/sunxi_twi.c sunxi_twi 146 147# P2WI/RSB 148device sunxirsb: i2cbus, i2cexec 149attach sunxirsb at fdt with sunxi_rsb 150file arch/arm/sunxi/sunxi_rsb.c sunxi_rsb 151 152# RTC 153device sunxirtc 154attach sunxirtc at fdt with sunxi_rtc 155file arch/arm/sunxi/sunxi_rtc.c sunxi_rtc 156 157# EMAC (common) 158device emac: arp, ether, ifnet, mii 159 160# EMAC (sun4i/sun5i/sun7i) 161ifdef arm 162attach emac at fdt with sun4i_emac 163file arch/arm/sunxi/sun4i_emac.c sun4i_emac 164endif 165 166# EMAC (sun8i/sun50i) 167attach emac at fdt with sunxi_emac 168file arch/arm/sunxi/sunxi_emac.c sunxi_emac 169 170# GMAC 171attach awge at fdt with sunxi_gmac 172file arch/arm/sunxi/sunxi_gmac.c sunxi_gmac 173 174# Timer 175device sunxitimer 176attach sunxitimer at fdt with sunxi_timer 177file arch/arm/sunxi/sunxi_timer.c sunxi_timer 178 179# Watchdog 180device sunxiwdt: sysmon_wdog 181attach sunxiwdt at fdt with sunxi_wdt 182file arch/arm/sunxi/sunxi_wdt.c sunxi_wdt 183 184# DMA controller (sun4i) 185device sun4idma 186attach sun4idma at fdt with sun4i_dma 187file arch/arm/sunxi/sun4i_dma.c sun4i_dma 188 189# DMA controller (sun6i) 190device sun6idma 191attach sun6idma at fdt with sun6i_dma 192file arch/arm/sunxi/sun6i_dma.c sun6i_dma 193 194# Audio codec 195device sunxicodec: audiobus, auconv, mulaw, aurateconv 196attach sunxicodec at fdt with sunxi_codec 197file arch/arm/sunxi/sunxi_codec.c sunxi_codec 198file arch/arm/sunxi/sun4i_a10_codec.c sunxi_codec 199file arch/arm/sunxi/sun6i_a31_codec.c sunxi_codec 200 201# H3 Audio codec (analog part) 202device h3codec 203attach h3codec at fdt with h3_codec 204file arch/arm/sunxi/sun8i_h3_codec.c h3_codec needs-flag 205 206# Display controller 207attach genfb at fdt with simplefb 208file dev/fdt/simplefb.c simplefb 209 210# A10/A20 LCD/TV timing controller (TCON) 211device sunxitcon 212attach sunxitcon at fdt with sunxi_tcon 213file arch/arm/sunxi/sunxi_tcon.c sunxi_tcon needs-flag 214 215# A10/A20 Display engine backend (DE-BE) 216device sunxidebe { } 217attach sunxidebe at fdt with sunxi_debe 218file arch/arm/sunxi/sunxi_debe.c sunxi_debe needs-flag 219 220attach genfb at sunxidebe with sunxi_befb 221 222# A10/A20 HDMI 223device sunxihdmi: edid, videomode 224attach sunxihdmi at fdt with sunxi_hdmi 225file arch/arm/sunxi/sunxi_hdmi.c sunxi_hdmi needs-flag 226 227# A10/A20 display engine pipeline 228device sunxidep 229attach sunxidep at fdt with sunxi_dep 230file arch/arm/sunxi/sunxi_dep.c sunxi_dep 231 232# Touch Screen controller 233device sunxits: wsmousedev, tpcalib, sysmon_envsys 234attach sunxits at fdt with sunxi_ts 235file arch/arm/sunxi/sunxi_ts.c sunxi_ts 236 237# USB OTG 238attach motg at fdt with sunxi_musb 239file arch/arm/sunxi/sunxi_musb.c sunxi_musb 240 241# Security ID EFUSE 242device sunxisid 243attach sunxisid at fdt with sunxi_sid 244file arch/arm/sunxi/sunxi_sid.c sunxi_sid 245 246# Thermal sensor controller 247device sunxithermal: sysmon_envsys, sysmon_taskq 248attach sunxithermal at fdt with sunxi_thermal 249file arch/arm/sunxi/sunxi_thermal.c sunxi_thermal 250 251# SATA 252attach ahcisata at fdt with sunxi_sata 253file arch/arm/sunxi/sunxi_sata.c sunxi_sata 254 255# SRAM Controller 256device sunxisramc 257attach sunxisramc at fdt with sunxi_sramc 258file arch/arm/sunxi/sunxi_sramc.c sunxi_sramc 259 260# NAND Flash Controller 261device sunxinand: nandbus 262attach sunxinand at fdt with sunxi_nand 263file arch/arm/sunxi/sunxi_nand.c sunxi_nand 264 265# SPI Controller (sun6i-compatible) 266device sun6ispi: spibus 267attach sun6ispi at fdt with sun6i_spi 268file arch/arm/sunxi/sun6i_spi.c sun6i_spi 269 270# A10/A20 CAN 271device sunxican { } : ifnet 272attach sunxican at fdt with sunxi_can 273file arch/arm/sunxi/sunxi_can.c sunxi_can 274 275# LRADC 276device sunxilradc 277attach sunxilradc at fdt with sunxi_lradc 278file arch/arm/sunxi/sunxi_lradc.c sunxi_lradc 279# SOC parameters 280defflag opt_soc.h SOC_SUNXI 281defflag opt_soc.h SOC_SUN4I: SOC_SUNXI 282defflag opt_soc.h SOC_SUN4I_A10: SOC_SUN4I 283defflag opt_soc.h SOC_SUN5I: SOC_SUNXI 284defflag opt_soc.h SOC_SUN5I_A13: SOC_SUN5I 285defflag opt_soc.h SOC_SUN6I: SOC_SUNXI 286defflag opt_soc.h SOC_SUN6I_A31: SOC_SUN6I 287defflag opt_soc.h SOC_SUN7I: SOC_SUNXI 288defflag opt_soc.h SOC_SUN7I_A20: SOC_SUN7I 289defflag opt_soc.h SOC_SUN8I: SOC_SUNXI 290defflag opt_soc.h SOC_SUN8I_A83T: SOC_SUN8I 291defflag opt_soc.h SOC_SUN8I_H3: SOC_SUN8I 292defflag opt_soc.h SOC_SUN9I: SOC_SUNXI 293defflag opt_soc.h SOC_SUN9I_A80: SOC_SUN9I 294defflag opt_soc.h SOC_SUN50I: SOC_SUNXI 295defflag opt_soc.h SOC_SUN50I_A64: SOC_SUN50I 296defflag opt_soc.h SOC_SUN50I_H5: SOC_SUN50I, SOC_SUN8I_H3 297defflag opt_soc.h SOC_SUN50I_H6: SOC_SUN50I 298