xref: /netbsd-src/sys/arch/arm/broadcom/files.bcm2835 (revision 79761777d68b20ed1d1f458e016e1d00c5d8e2da)
1*79761777Sskrll#	$NetBSD: files.bcm2835,v 1.43 2022/04/22 12:41:06 skrll Exp $
268e81262Sskrll#
368e81262Sskrll# Configuration info for Broadcom BCM2835 ARM Peripherals
468e81262Sskrll#
568e81262Sskrll
668e81262Sskrllfile	arch/arm/broadcom/bcm2835_dma.c
781c02bc7Sjakllschfile	arch/arm/broadcom/bcm2835_mbox_subr.c
8ee91b1e5Sskrllfile	arch/arm/broadcom/bcm283x_platform.c
968e81262Sskrll
10ee91b1e5Sskrlldefine bcmmboxbus { }
11ee91b1e5Sskrll
12*79761777Sskrll# Interrupt Controller (BCM2835_ARMICU_BASE)
1368e81262Sskrlldevice	bcmicu: pic, pic_splfuncs
14ee91b1e5Sskrllattach	bcmicu at fdt with bcmicu
1568e81262Sskrllfile	arch/arm/broadcom/bcm2835_intr.c	bcmicu
1668e81262Sskrll
17f95acf1eSskrll# VC Mailbox (BCM2835_ARMMBOX_BASE)
18e27de4fbSjmcneilldevice	bcmmbox: bcmmboxbus
19f95acf1eSskrllfile	arch/arm/broadcom/bcm2835_mbox.c	bcmmbox
208f3c29f9Sjmcneillattach	bcmmbox at fdt with bcmmbox_fdt
218f3c29f9Sjmcneillfile    arch/arm/broadcom/bcm2835_mbox_fdt.c	bcmmbox_fdt
221a13a6c9Sjmcneill
231a13a6c9Sjmcneillifdef acpinodebus
248f3c29f9Sjmcneillattach  bcmmbox at acpinodebus with bcmmbox_acpi
258f3c29f9Sjmcneillfile	arch/arm/broadcom/bcm2835_mbox_acpi.c	bcmmbox_acpi
261a13a6c9Sjmcneillendif
27f95acf1eSskrll
2868e81262Sskrll# System Timer (BCM2835_TIMER_BASE)
2968e81262Sskrlldevice	bcmtmr
30ee91b1e5Sskrllattach	bcmtmr at fdt with bcmtmr_fdt
31ee91b1e5Sskrllfile	arch/arm/broadcom/bcm2835_tmr.c		bcmtmr & !soc_bcm2836
3268e81262Sskrll
3368e81262Sskrll# Power Management, Reset Controller, and Watchdog (BCM2835_PM_BASE)
34aa74d573Sskrlldevice	bcmpmwdog: sysmon_wdog
35aa74d573Sskrllattach	bcmpmwdog at fdt with bcmpmwdog_fdt
36ee91b1e5Sskrllfile	arch/arm/broadcom/bcm2835_pmwdog.c	bcmpmwdog_fdt
3768e81262Sskrll
389b16fbd6Sjmcneill# Random number generator (BCM2835_RNG_BASE)
399b16fbd6Sjmcneilldevice	bcmrng
40ee91b1e5Sskrllattach bcmrng at fdt with bcmrng_fdt
419b16fbd6Sjmcneillfile	arch/arm/broadcom/bcm2835_rng.c		bcmrng
429b16fbd6Sjmcneill
4303d10ef0Smlelstv# Random number generator (BCM2835_RNG_BASE (!))
4403d10ef0Smlelstvdevice	bcm2838rng
4503d10ef0Smlelstvattach bcm2838rng at fdt with bcm2838rng_fdt
4603d10ef0Smlelstvfile	arch/arm/broadcom/bcm2838_rng.c		bcm2838rng
4703d10ef0Smlelstvfile	dev/ic/rng200.c				bcm2838rng
4803d10ef0Smlelstv
4954f59924Smlelstv# Broadcom STB PCIE host
5054f59924Smlelstvdevice	bcm2838pcie: pcibus
5154f59924Smlelstvattach bcm2838pcie at fdt with bcm2838pcie_fdt
5254f59924Smlelstvfile	arch/arm/broadcom/bcm2838_pcie.c	bcm2838pcie
5354f59924Smlelstv
54ee91b1e5Sskrll# AUX
55ee91b1e5Sskrlldevice	bcmaux
56ee91b1e5Sskrllattach	bcmaux at fdt with bcmaux_fdt
57ee91b1e5Sskrllfile	arch/arm/broadcom/bcm2835_aux.c		bcmaux
5868e81262Sskrll
59a90cc5efSjmcneill# AUX UART (BCM2835_AUX_UART_BASE)
60ee91b1e5Sskrllattach	com at fdt with bcmcom
61a90cc5efSjmcneillfile	arch/arm/broadcom/bcm2835_com.c		bcmcom
62a90cc5efSjmcneill
635eb73923Sjmcneillifdef acpinodebus
645eb73923Sjmcneillattach	com at acpinodebus with bcmcom_acpi
655eb73923Sjmcneillfile	arch/arm/broadcom/bcm2835_com_acpi.c	bcmcom_acpi
665eb73923Sjmcneillendif
675eb73923Sjmcneill
6868e81262Sskrll# External Mass Media Controller (BCM2835_EMMC_BASE)
69ee91b1e5Sskrllattach	sdhc at fdt with bcmemmc
7068e81262Sskrllfile	arch/arm/broadcom/bcm2835_emmc.c	bcmemmc
714f7412afSjakllsch
721a13a6c9Sjmcneillifdef acpinodebus
733b3e15ccSjmcneillattach	sdhc at acpinodebus with bcmemmc_acpi
743b3e15ccSjmcneillfile	arch/arm/broadcom/bcm2835_emmc_acpi.c	bcmemmc_acpi
75a7761877Sjmcneillattach	sdhc at acpinodebus with bcmemmc2_acpi
76a7761877Sjmcneillfile	arch/arm/broadcom/bcm2838_emmc2_acpi.c	bcmemmc2_acpi
771a13a6c9Sjmcneillendif
783b3e15ccSjmcneill
79f5b07240Sjmcneill# SD Host Controller (BCM2835_SDHOST_BASE)
80aa74d573Sskrlldevice	bcmsdhost: sdmmcbus
81aa74d573Sskrllattach	bcmsdhost at fdt with bcmsdhost
82f5b07240Sjmcneillfile	arch/arm/broadcom/bcm2835_sdhost.c	bcmsdhost	needs-flag
83f5b07240Sjmcneill
84665b250bSjmcneill# DMA Controller (BCM2835_DMA0_BASE)
85665b250bSjmcneilldevice	bcmdmac
86ee91b1e5Sskrllattach	bcmdmac at fdt with bcmdmac_fdt
872fea13cdSskrllfile	arch/arm/broadcom/bcm2835_dmac.c	bcmdmac		needs-flag
88665b250bSjmcneill
890b453b8dSskrll# USB (BCM2835_USB_BASE)
90ee91b1e5Sskrllattach dwctwo at fdt with bcmdwctwo
91583b9efbSskrllfile	arch/arm/broadcom/bcm2835_dwctwo.c	bcmdwctwo	needs-flag
92583b9efbSskrll
9374dad322Sjakllsch# SPI controller (BCM2835_SPI0_BASE)
9474dad322Sjakllschdevice	bcmspi: spibus, bcm2835_gpio_subr
95ee91b1e5Sskrllattach	bcmspi at fdt
96167a48ecSskrllfile	arch/arm/broadcom/bcm2835_spi.c		bcmspi	needs-flag
9774dad322Sjakllsch
9860540751Sjakllsch# BSC (I2C) controller (BCM2835_BSC[01]_BASE)
9960540751Sjakllschdevice	bsciic: i2cbus, bcm2835_gpio_subr
100167a48ecSskrllfile	arch/arm/broadcom/bcm2835_bsc.c		bsciic	needs-flag
101aa670249Sjmcneillattach	bsciic at fdt with bsciic_fdt
102aa670249Sjmcneillfile	arch/arm/broadcom/bcm2835_bsc_fdt.c	bsciic_fdt
103aa670249Sjmcneillifdef acpinodebus
104aa670249Sjmcneillattach	bsciic at acpinodebus with bsciic_acpi
105aa670249Sjmcneillfile	arch/arm/broadcom/bcm2835_bsc_acpi.c	bsciic_acpi
106aa670249Sjmcneillendif
1073ccf78bfSjmcneill
1083ccf78bfSjmcneill# Generic framebuffer console driver
109ee91b1e5Sskrllattach genfb at fdt with bcmgenfb: edid
1103ccf78bfSjmcneillfile	arch/arm/broadcom/bcm2835_genfb.c	bcmgenfb	needs-flag
111c19e9860Sjmcneill
112c19e9860Sjmcneill# VCHIQ
113c19e9860Sjmcneillinclude "external/bsd/vchiq/conf/files.vchiq"
1143fba3ae0Sjmcneill
1153fba3ae0Sjmcneill# VC audio
116e622eac4Sisakidevice	vcaudio: audiobus
1173fba3ae0Sjmcneillattach	vcaudio at vchiqbus
1183fba3ae0Sjmcneillfile	arch/arm/broadcom/bcm2835_vcaudio.c	vcaudio
119511648e5Skardel
120511648e5Skardel# GPIO
121511648e5Skardeldevice	bcmgpio: gpiobus
122ee91b1e5Sskrllattach	bcmgpio at fdt
123511648e5Skardelfile	arch/arm/broadcom/bcm2835_gpio.c
124f59d56dbSmlelstv
125f59d56dbSmlelstv# Clock Manager (BCM2835_CM_BASE)
126ee91b1e5Sskrlldevice	bcmcprman
127ee91b1e5Sskrllattach	bcmcprman at fdt with bcmcprman_fdt
128ee91b1e5Sskrllfile	arch/arm/broadcom/bcm2835_cprman.c	bcmcprman	needs-flag
129f59d56dbSmlelstv
130f59d56dbSmlelstv# PWM Controller (BCM2835_PWM_BASE)
131f59d56dbSmlelstvdevice	bcmpwm
132ee91b1e5Sskrllattach	bcmpwm at fdt with bcmpwm
133f59d56dbSmlelstvfile	arch/arm/broadcom/bcm2835_pwm.c		bcmpwm		needs-flag
134f59d56dbSmlelstv
135fe33aa27Sryo# VideoCore IV property interface
136fe33aa27Sryofile    arch/evbarm/rpi/vcprop_subr.c		bcmmbox
137fe33aa27Sryomakeoptions     "COPTS.vcprop_subr.c"+="-fno-stack-protector"
138ee91b1e5Sskrll
139fe33aa27Sryo# Raspberry Pi Mailbox interface
140fe33aa27Sryodevice  vcmbox: sysmon_envsys
141fe33aa27Sryoattach  vcmbox at bcmmboxbus
142fe33aa27Sryofile    arch/evbarm/rpi/rpi_vcmbox.c            vcmbox
143fe33aa27Sryo
144fe33aa27Sryo# Maximum command-line length
145fe33aa27Sryodefparam opt_vcprop.h                           VCPROP_MAXCMDLINE
146fe33aa27Sryodefflag opt_rpi.h                               RPI_HWCURSOR
147fe33aa27Sryo
148fe33aa27Sryo# SOC parameters
149fe33aa27Sryodefflag	opt_bcm283x.h			SOC_BCM2835
150fe33aa27Sryodefflag	opt_bcm283x.h			SOC_BCM2836
151fe33aa27Sryodefflag opt_bcm283x.h			SOC_BCM2837: SOC_BCM2836
152