files.tegra revision 1.44
1#	$NetBSD: files.tegra,v 1.44 2017/09/22 14:36:22 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	tegrapinmux
72attach	tegrapinmux at fdt with tegra_pinmux
73file	arch/arm/nvidia/tegra_pinmux.c		tegra_pinmux
74file	arch/arm/nvidia/tegra210_pinmux.c	tegra_pinmux & soc_tegra210
75
76# APB DMA
77device	tegraapbdma
78attach	tegraapbdma at fdt with tegra_apbdma
79file	arch/arm/nvidia/tegra_apbdma.c		tegra_apbdma
80
81# XUSB PADCTL (common)
82file	arch/arm/nvidia/tegra_xusbpad.c		tegra_xusbpad
83defflag	opt_tegra.h				TEGRA_XUSBPAD_DEBUG
84
85# XUSB PADCTL (Tegra124)
86device	tegra124xpad: tegra_xusbpad
87attach	tegra124xpad at fdt with tegra124_xusbpad
88file	arch/arm/nvidia/tegra124_xusbpad.c	tegra124_xusbpad
89
90# XUSB PADCTL (Tegra210)
91device	tegra210xpad: tegra_xusbpad
92attach	tegra210xpad at fdt with tegra210_xusbpad
93file	arch/arm/nvidia/tegra210_xusbpad.c	tegra210_xusbpad
94
95# UART
96attach	com at fdt with tegra_com
97file	arch/arm/nvidia/tegra_com.c		tegra_com needs-flag
98
99# I2C
100device	tegrai2c: i2cbus, i2cexec
101attach	tegrai2c at fdt with tegra_i2c
102file	arch/arm/nvidia/tegra_i2c.c		tegra_i2c
103
104# RTC
105device	tegrartc
106attach	tegrartc at fdt with tegra_rtc
107file	arch/arm/nvidia/tegra_rtc.c		tegra_rtc
108
109# USB PHY
110device	tegrausbphy
111attach	tegrausbphy at fdt with tegra_usbphy
112file	arch/arm/nvidia/tegra_usbphy.c		tegra_usbphy
113
114# USB 2.0
115attach	ehci at fdt with tegra_ehci
116file	arch/arm/nvidia/tegra_ehci.c		tegra_ehci
117
118# XUSB (USB 3.0)
119attach	xhci at fdt with tegra_xusb
120file	arch/arm/nvidia/tegra_xusb.c		tegra_xusb
121defflag	opt_tegra.h				TEGRA_XUSB_DEBUG
122
123# SDMMC
124attach	sdhc at fdt with tegra_sdhc
125file	arch/arm/nvidia/tegra_sdhc.c		tegra_sdhc
126
127# Thermal throttling controller
128device	tegrasoctherm: sysmon_envsys
129attach	tegrasoctherm at fdt with tegra_soctherm
130file	arch/arm/nvidia/tegra_soctherm.c	tegra_soctherm
131
132# PCIE
133device	tegrapcie: pcibus
134attach	tegrapcie at fdt with tegra_pcie
135file	arch/arm/nvidia/tegra_pcie.c		tegra_pcie
136
137# SATA
138attach	ahcisata at fdt with tegra_ahcisata
139file	arch/arm/nvidia/tegra_ahcisata.c	tegra_ahcisata
140
141# HDA
142attach	hdaudio at fdt with tegra_hdaudio
143file	arch/arm/nvidia/tegra_hdaudio.c		tegra_hdaudio
144
145# HDMI CEC
146device	tegracec: hdmicecbus
147attach	tegracec at fdt with tegra_cec
148file	arch/arm/nvidia/tegra_cec.c		tegra_cec
149
150# Display
151define	tegrafbbus { }
152device	tegradrm: drmkms, ddc_read_edid, tegrafbbus
153attach	tegradrm at fdt with tegra_drm
154file	arch/arm/nvidia/tegra_drm.c		tegra_drm
155file	arch/arm/nvidia/tegra_drm_mode.c	tegra_drm
156file	arch/arm/nvidia/tegra_drm_fb.c		tegra_drm
157file	arch/arm/nvidia/tegra_drm_gem.c		tegra_drm
158
159# Framebuffer console
160device	tegrafb: tegrafbbus, drmfb, wsemuldisplaydev
161attach	tegrafb at tegrafbbus with tegra_fb
162file	arch/arm/nvidia/tegra_fb.c		tegra_fb
163
164# GPU
165attach	nouveau at fdt with tegra_nouveau
166file	arch/arm/nvidia/tegra_nouveau.c		tegra_nouveau
167
168# SOC parameters
169defflag	opt_tegra.h			SOC_TEGRAK1
170defflag	opt_tegra.h			SOC_TEGRAX1
171defflag	opt_tegra.h			SOC_TEGRA124: SOC_TEGRAK1
172defflag	opt_tegra.h			SOC_TEGRA210: SOC_TEGRAX1
173