files.bcm2835 revision 1.21
1#	$NetBSD: files.bcm2835,v 1.21 2014/04/22 18:51:35 kardel Exp $
2#
3# Configuration info for Broadcom BCM2835 ARM Peripherals
4#
5
6include "arch/arm/pic/files.pic"
7
8define bcmmboxbus { }
9
10file	arch/arm/arm32/irq_dispatch.S
11file	arch/arm/broadcom/bcm2835_dma.c
12file	arch/arm/broadcom/bcm2835_mbox_subr.c
13
14# OBIO just an attach point
15device	obio { [addr=-1], [size=0], [intr=-1]
16	     } : bus_space_generic, pic, pic_splfuncs
17attach	obio at mainbus
18file	arch/arm/broadcom/bcm2835_obio.c	obio needs-count
19
20# OBIO files
21file	arch/arm/broadcom/bcm2835_space.c	obio
22file	arch/arm/arm/bus_space_a4x.S		obio
23
24# Interrupt Controller (BCM2835_ARMICU_BASE)
25device	bcmicu: pic, pic_splfuncs
26attach	bcmicu at obio with bcmicu
27file	arch/arm/broadcom/bcm2835_intr.c	bcmicu
28
29# VC Mailbox (BCM2835_ARMMBOX_BASE)
30device	bcmmbox: bcmmboxbus
31attach	bcmmbox at obio with bcmmbox
32file	arch/arm/broadcom/bcm2835_mbox.c	bcmmbox
33
34# System Timer (BCM2835_TIMER_BASE)
35device	bcmtmr
36attach	bcmtmr at obio with bcmtmr_amba
37file	arch/arm/broadcom/bcm2835_tmr.c		bcmtmr
38
39# Power Management, Reset Controller, and Watchdog (BCM2835_PM_BASE)
40device	bcmpm: sysmon_wdog
41attach	bcmpm at obio with bcmpm_amba
42file	arch/arm/broadcom/bcm2835_pm.c		bcmpm
43
44# Random number generator (BCM2835_RNG_BASE)
45device	bcmrng
46attach	bcmrng at obio with bcmrng_amba
47file	arch/arm/broadcom/bcm2835_rng.c		bcmrng
48
49# UART Interface (BCM2835_UART0_BASE)
50attach	plcom at obio with bcmplcom
51file	arch/arm/broadcom/bcm2835_plcom.c	bcmplcom
52
53# External Mass Media Controller (BCM2835_EMMC_BASE)
54attach	sdhc at obio with bcmemmc
55file	arch/arm/broadcom/bcm2835_emmc.c	bcmemmc
56
57# USB (BCM2835_USB_BASE)
58attach dwctwo at obio with bcmdwctwo
59file	arch/arm/broadcom/bcm2835_dwctwo.c	bcmdwctwo	needs-flag
60
61# GPIO misc. functions
62define	bcm2835_gpio_subr
63file	arch/arm/broadcom/bcm2835_gpio_subr.c	bcm2835_gpio_subr
64
65# SPI controller (BCM2835_SPI0_BASE)
66device	bcmspi: spibus, bcm2835_gpio_subr
67attach	bcmspi at obio
68file	arch/arm/broadcom/bcm2835_spi.c		bcmspi	needs-flag
69
70# BSC (I2C) controller (BCM2835_BSC[01]_BASE)
71device	bsciic: i2cbus, bcm2835_gpio_subr
72attach	bsciic at obio
73file	arch/arm/broadcom/bcm2835_bsc.c		bsciic	needs-flag
74
75# Generic framebuffer console driver
76attach	genfb at obio with bcmgenfb: edid
77file	arch/arm/broadcom/bcm2835_genfb.c	bcmgenfb	needs-flag
78
79# VCHIQ
80include "external/bsd/vchiq/conf/files.vchiq"
81
82# VC audio
83device	vcaudio: audiobus, auconv, mulaw, aurateconv
84attach	vcaudio at vchiqbus
85file	arch/arm/broadcom/bcm2835_vcaudio.c	vcaudio
86
87# GPIO
88device	bcmgpio: gpiobus
89attach	bcmgpio at obio
90file	arch/arm/broadcom/bcm2835_gpio.c
91