files.tegra revision 1.42
1#	$NetBSD: files.tegra,v 1.42 2017/09/19 20:46:12 jmcneill Exp $
2#
3# Configuration info for NVIDIA Tegra ARM Peripherals
4#
5
6include "arch/arm/pic/files.pic"
7include "arch/arm/cortex/files.cortex"
8
9file	arch/arm/arm32/arm32_boot.c
10file	arch/arm/arm32/arm32_kvminit.c
11file	arch/arm/arm32/arm32_reboot.c
12file	arch/arm/arm32/irq_dispatch.S
13file	arch/arm/arm32/armv7_generic_space.c
14file	arch/arm/arm32/armv7_generic_dma.c
15file	arch/arm/arm/bus_space_a4x.S
16
17file	arch/arm/nvidia/tegra_platform.c
18file	arch/arm/nvidia/tegra_soc.c
19file	arch/arm/nvidia/tegra_cpufreq.c
20
21# Tegra T124 (32-bit K1) support
22file	arch/arm/nvidia/soc_tegra124.c		soc_tegra124
23device	tegra124cpu
24attach	tegra124cpu at cpu with tegra124_cpu
25file	arch/arm/nvidia/tegra124_cpu.c		tegra124_cpu
26
27# Tegra T210 (X1) support
28file	arch/arm/nvidia/soc_tegra210.c		soc_tegra210
29
30# Interrupt controller
31device	tegralic
32attach	tegralic at fdt with tegra_lic
33file	arch/arm/nvidia/tegra_lic.c		tegra_lic
34
35# Memory controller
36device	tegramc
37attach	tegramc at fdt with tegra_mc
38file	arch/arm/nvidia/tegra_mc.c		tegra_mc
39
40# Power management controller
41device	tegrapmc
42attach	tegrapmc at fdt with tegra_pmc
43file	arch/arm/nvidia/tegra_pmc.c		tegra_pmc
44
45# eFUSE
46device	tegrafuse
47attach	tegrafuse at fdt with tegra_fuse
48file	arch/arm/nvidia/tegra_fuse.c		tegra_fuse
49
50# Clock and Reset controller (T124)
51device	tegra124car: clk
52attach	tegra124car at fdt with tegra124_car
53file	arch/arm/nvidia/tegra124_car.c		tegra124_car
54
55# Clock and Reset controller (T210)
56device	tegra210car: clk
57attach	tegra210car at fdt with tegra210_car
58file	arch/arm/nvidia/tegra210_car.c		tegra210_car
59
60# GPIO controller
61device	tegragpio: gpiobus
62attach	tegragpio at fdt with tegra_gpio
63file	arch/arm/nvidia/tegra_gpio.c		tegra_gpio
64
65# Timers
66device	tegratimer: sysmon_wdog
67attach	tegratimer at fdt with tegra_timer
68file	arch/arm/nvidia/tegra_timer.c		tegra_timer
69
70# MPIO / Pinmux
71device	tegrampio
72attach	tegrampio at fdt with tegra_mpio
73file	arch/arm/nvidia/tegra_mpio.c		tegra_mpio
74
75# APB DMA
76device	tegraapbdma
77attach	tegraapbdma at fdt with tegra_apbdma
78file	arch/arm/nvidia/tegra_apbdma.c		tegra_apbdma
79
80# XUSB PADCTL (common)
81file	arch/arm/nvidia/tegra_xusbpad.c		tegra_xusbpad
82defflag	opt_tegra.h				TEGRA_XUSBPAD_DEBUG
83
84# XUSB PADCTL (Tegra124)
85device	tegra124xusbpad: tegra_xusbpad
86attach	tegra124xusbpad at fdt with tegra124_xusbpad
87file	arch/arm/nvidia/tegra124_xusbpad.c	tegra124_xusbpad
88
89# XUSB PADCTL (Tegra210)
90device	tegra210xusbpad: tegra_xusbpad
91attach	tegra210xusbpad at fdt with tegra210_xusbpad
92file	arch/arm/nvidia/tegra210_xusbpad.c	tegra210_xusbpad
93
94# UART
95attach	com at fdt with tegra_com
96file	arch/arm/nvidia/tegra_com.c		tegra_com needs-flag
97
98# I2C
99device	tegrai2c: i2cbus, i2cexec
100attach	tegrai2c at fdt with tegra_i2c
101file	arch/arm/nvidia/tegra_i2c.c		tegra_i2c
102
103# RTC
104device	tegrartc
105attach	tegrartc at fdt with tegra_rtc
106file	arch/arm/nvidia/tegra_rtc.c		tegra_rtc
107
108# USB PHY
109device	tegrausbphy
110attach	tegrausbphy at fdt with tegra_usbphy
111file	arch/arm/nvidia/tegra_usbphy.c		tegra_usbphy
112
113# USB 2.0
114attach	ehci at fdt with tegra_ehci
115file	arch/arm/nvidia/tegra_ehci.c		tegra_ehci
116
117# XUSB (USB 3.0)
118attach	xhci at fdt with tegra_xusb
119file	arch/arm/nvidia/tegra_xusb.c		tegra_xusb
120defflag	opt_tegra.h				TEGRA_XUSB_DEBUG
121
122# SDMMC
123attach	sdhc at fdt with tegra_sdhc
124file	arch/arm/nvidia/tegra_sdhc.c		tegra_sdhc
125
126# Thermal throttling controller
127device	tegrasoctherm: sysmon_envsys
128attach	tegrasoctherm at fdt with tegra_soctherm
129file	arch/arm/nvidia/tegra_soctherm.c	tegra_soctherm
130
131# PCIE
132device	tegrapcie: pcibus
133attach	tegrapcie at fdt with tegra_pcie
134file	arch/arm/nvidia/tegra_pcie.c		tegra_pcie
135
136# SATA
137attach	ahcisata at fdt with tegra_ahcisata
138file	arch/arm/nvidia/tegra_ahcisata.c	tegra_ahcisata
139
140# HDA
141attach	hdaudio at fdt with tegra_hdaudio
142file	arch/arm/nvidia/tegra_hdaudio.c		tegra_hdaudio
143
144# HDMI CEC
145device	tegracec: hdmicecbus
146attach	tegracec at fdt with tegra_cec
147file	arch/arm/nvidia/tegra_cec.c		tegra_cec
148
149# Display
150define	tegrafbbus { }
151device	tegradrm: drmkms, ddc_read_edid, tegrafbbus
152attach	tegradrm at fdt with tegra_drm
153file	arch/arm/nvidia/tegra_drm.c		tegra_drm
154file	arch/arm/nvidia/tegra_drm_mode.c	tegra_drm
155file	arch/arm/nvidia/tegra_drm_fb.c		tegra_drm
156file	arch/arm/nvidia/tegra_drm_gem.c		tegra_drm
157
158# Framebuffer console
159device	tegrafb: tegrafbbus, drmfb, wsemuldisplaydev
160attach	tegrafb at tegrafbbus with tegra_fb
161file	arch/arm/nvidia/tegra_fb.c		tegra_fb
162
163# GPU
164attach	nouveau at fdt with tegra_nouveau
165file	arch/arm/nvidia/tegra_nouveau.c		tegra_nouveau
166
167# SOC parameters
168defflag	opt_tegra.h			SOC_TEGRAK1
169defflag	opt_tegra.h			SOC_TEGRAX1
170defflag	opt_tegra.h			SOC_TEGRA124: SOC_TEGRAK1
171defflag	opt_tegra.h			SOC_TEGRA210: SOC_TEGRAX1
172