files.bcm2835 revision 1.39
1# $NetBSD: files.bcm2835,v 1.39 2020/03/31 12:23:17 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# AUX 50device bcmaux 51attach bcmaux at fdt with bcmaux_fdt 52file arch/arm/broadcom/bcm2835_aux.c bcmaux 53 54# AUX UART (BCM2835_AUX_UART_BASE) 55attach com at fdt with bcmcom 56file arch/arm/broadcom/bcm2835_com.c bcmcom 57 58# External Mass Media Controller (BCM2835_EMMC_BASE) 59attach sdhc at fdt with bcmemmc 60file arch/arm/broadcom/bcm2835_emmc.c bcmemmc 61 62ifdef acpinodebus 63attach sdhc at acpinodebus with bcmemmc_acpi 64file arch/arm/broadcom/bcm2835_emmc_acpi.c bcmemmc_acpi 65endif 66 67# SD Host Controller (BCM2835_SDHOST_BASE) 68device bcmsdhost: sdmmcbus 69attach bcmsdhost at fdt with bcmsdhost 70file arch/arm/broadcom/bcm2835_sdhost.c bcmsdhost needs-flag 71 72# DMA Controller (BCM2835_DMA0_BASE) 73device bcmdmac 74attach bcmdmac at fdt with bcmdmac_fdt 75file arch/arm/broadcom/bcm2835_dmac.c bcmdmac needs-flag 76 77# USB (BCM2835_USB_BASE) 78attach dwctwo at fdt with bcmdwctwo 79file arch/arm/broadcom/bcm2835_dwctwo.c bcmdwctwo needs-flag 80 81# SPI controller (BCM2835_SPI0_BASE) 82device bcmspi: spibus, bcm2835_gpio_subr 83attach bcmspi at fdt 84file arch/arm/broadcom/bcm2835_spi.c bcmspi needs-flag 85 86# BSC (I2C) controller (BCM2835_BSC[01]_BASE) 87device bsciic: i2cbus, bcm2835_gpio_subr 88file arch/arm/broadcom/bcm2835_bsc.c bsciic needs-flag 89attach bsciic at fdt with bsciic_fdt 90file arch/arm/broadcom/bcm2835_bsc_fdt.c bsciic_fdt 91ifdef acpinodebus 92attach bsciic at acpinodebus with bsciic_acpi 93file arch/arm/broadcom/bcm2835_bsc_acpi.c bsciic_acpi 94endif 95 96# Generic framebuffer console driver 97attach genfb at fdt with bcmgenfb: edid 98file arch/arm/broadcom/bcm2835_genfb.c bcmgenfb needs-flag 99 100# VCHIQ 101include "external/bsd/vchiq/conf/files.vchiq" 102 103# VC audio 104device vcaudio: audiobus 105attach vcaudio at vchiqbus 106file arch/arm/broadcom/bcm2835_vcaudio.c vcaudio 107 108# GPIO 109device bcmgpio: gpiobus 110attach bcmgpio at fdt 111file arch/arm/broadcom/bcm2835_gpio.c 112 113# Clock Manager (BCM2835_CM_BASE) 114device bcmcprman 115attach bcmcprman at fdt with bcmcprman_fdt 116file arch/arm/broadcom/bcm2835_cprman.c bcmcprman needs-flag 117 118# PWM Controller (BCM2835_PWM_BASE) 119device bcmpwm 120attach bcmpwm at fdt with bcmpwm 121file arch/arm/broadcom/bcm2835_pwm.c bcmpwm needs-flag 122 123# VideoCore IV property interface 124file arch/evbarm/rpi/vcprop_subr.c bcmmbox 125makeoptions "COPTS.vcprop_subr.c"+="-fno-stack-protector" 126 127# Raspberry Pi Mailbox interface 128device vcmbox: sysmon_envsys 129attach vcmbox at bcmmboxbus 130file arch/evbarm/rpi/rpi_vcmbox.c vcmbox 131 132# Maximum command-line length 133defparam opt_vcprop.h VCPROP_MAXCMDLINE 134defflag opt_rpi.h RPI_HWCURSOR 135 136# SOC parameters 137defflag opt_bcm283x.h SOC_BCM2835 138defflag opt_bcm283x.h SOC_BCM2836 139defflag opt_bcm283x.h SOC_BCM2837: SOC_BCM2836 140