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