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