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