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