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