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