1 # $NetBSD: files.bcm2835,v 1.35 2019/09/04 05:10:38 mlelstv Exp $ 2 # 3 # Configuration info for Broadcom BCM2835 ARM Peripherals 4 # 5 6 file arch/arm/broadcom/bcm2835_dma.c 7 file arch/arm/broadcom/bcm2835_mbox_subr.c 8 file arch/arm/broadcom/bcm283x_platform.c 9 10 define bcmmboxbus { } 11 12 # Interrupt Controller (BCM2835_ARMICU_BASE) #, pic_splfuncs 13 device bcmicu: pic, pic_splfuncs 14 attach bcmicu at fdt with bcmicu 15 file arch/arm/broadcom/bcm2835_intr.c bcmicu 16 17 # VC Mailbox (BCM2835_ARMMBOX_BASE) 18 device bcmmbox: bcmmboxbus 19 attach bcmmbox at fdt with bcmmbox 20 file arch/arm/broadcom/bcm2835_mbox.c bcmmbox 21 22 # System Timer (BCM2835_TIMER_BASE) 23 device bcmtmr 24 attach bcmtmr at fdt with bcmtmr_fdt 25 file arch/arm/broadcom/bcm2835_tmr.c bcmtmr & !soc_bcm2836 26 27 # Power Management, Reset Controller, and Watchdog (BCM2835_PM_BASE) 28 device bcmpmwdog: sysmon_wdog 29 attach bcmpmwdog at fdt with bcmpmwdog_fdt 30 file arch/arm/broadcom/bcm2835_pmwdog.c bcmpmwdog_fdt 31 32 # Random number generator (BCM2835_RNG_BASE) 33 device bcmrng 34 attach bcmrng at fdt with bcmrng_fdt 35 file arch/arm/broadcom/bcm2835_rng.c bcmrng 36 37 # Random number generator (BCM2835_RNG_BASE (!)) 38 device bcm2838rng 39 attach bcm2838rng at fdt with bcm2838rng_fdt 40 file arch/arm/broadcom/bcm2838_rng.c bcm2838rng 41 file dev/ic/rng200.c bcm2838rng 42 43 # AUX 44 device bcmaux 45 attach bcmaux at fdt with bcmaux_fdt 46 file arch/arm/broadcom/bcm2835_aux.c bcmaux 47 48 # AUX UART (BCM2835_AUX_UART_BASE) 49 attach com at fdt with bcmcom 50 file arch/arm/broadcom/bcm2835_com.c bcmcom 51 52 # External Mass Media Controller (BCM2835_EMMC_BASE) 53 attach sdhc at fdt with bcmemmc 54 file arch/arm/broadcom/bcm2835_emmc.c bcmemmc 55 56 # SD Host Controller (BCM2835_SDHOST_BASE) 57 device bcmsdhost: sdmmcbus 58 attach bcmsdhost at fdt with bcmsdhost 59 file arch/arm/broadcom/bcm2835_sdhost.c bcmsdhost needs-flag 60 61 # DMA Controller (BCM2835_DMA0_BASE) 62 device bcmdmac 63 attach bcmdmac at fdt with bcmdmac_fdt 64 file arch/arm/broadcom/bcm2835_dmac.c bcmdmac needs-flag 65 66 # USB (BCM2835_USB_BASE) 67 attach dwctwo at fdt with bcmdwctwo 68 file arch/arm/broadcom/bcm2835_dwctwo.c bcmdwctwo needs-flag 69 70 # SPI controller (BCM2835_SPI0_BASE) 71 device bcmspi: spibus, bcm2835_gpio_subr 72 attach bcmspi at fdt 73 file arch/arm/broadcom/bcm2835_spi.c bcmspi needs-flag 74 75 # BSC (I2C) controller (BCM2835_BSC[01]_BASE) 76 device bsciic: i2cbus, bcm2835_gpio_subr 77 attach bsciic at fdt 78 file arch/arm/broadcom/bcm2835_bsc.c bsciic needs-flag 79 80 # Generic framebuffer console driver 81 attach genfb at fdt with bcmgenfb: edid 82 file arch/arm/broadcom/bcm2835_genfb.c bcmgenfb needs-flag 83 84 # VCHIQ 85 include "external/bsd/vchiq/conf/files.vchiq" 86 87 # VC audio 88 device vcaudio: audiobus 89 attach vcaudio at vchiqbus 90 file arch/arm/broadcom/bcm2835_vcaudio.c vcaudio 91 92 # GPIO 93 device bcmgpio: gpiobus 94 attach bcmgpio at fdt 95 file arch/arm/broadcom/bcm2835_gpio.c 96 97 # Clock Manager (BCM2835_CM_BASE) 98 device bcmcprman 99 attach bcmcprman at fdt with bcmcprman_fdt 100 file arch/arm/broadcom/bcm2835_cprman.c bcmcprman needs-flag 101 102 # PWM Controller (BCM2835_PWM_BASE) 103 device bcmpwm 104 attach bcmpwm at fdt with bcmpwm 105 file arch/arm/broadcom/bcm2835_pwm.c bcmpwm needs-flag 106 107 # VideoCore IV property interface 108 file arch/evbarm/rpi/vcprop_subr.c bcmmbox 109 makeoptions "COPTS.vcprop_subr.c"+="-fno-stack-protector" 110 111 # Raspberry Pi Mailbox interface 112 device vcmbox: sysmon_envsys 113 attach vcmbox at bcmmboxbus 114 file arch/evbarm/rpi/rpi_vcmbox.c vcmbox 115 116 # Maximum command-line length 117 defparam opt_vcprop.h VCPROP_MAXCMDLINE 118 defflag opt_rpi.h RPI_HWCURSOR 119 120 # SOC parameters 121 defflag opt_bcm283x.h SOC_BCM2835 122 defflag opt_bcm283x.h SOC_BCM2836 123 defflag opt_bcm283x.h SOC_BCM2837: SOC_BCM2836 124