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