xref: /netbsd-src/sys/arch/arm/imx/files.imx51 (revision 369437944b2d98f3db3bcb21319c7b243f2c84c0)
1*36943794Sskrll#	$NetBSD: files.imx51,v 1.24 2020/06/21 16:33:34 skrll Exp $
248914f07Sbsh#
3ff5a6264Shkenken# Configuration info for the Freescale i.MX5x
448914f07Sbsh#
548914f07Sbsh
648914f07Sbshdefparam opt_imx.h				MEMSIZE
748914f07Sbshdefflag opt_imx.h				IMX51
82868f5bcShkenkendefflag opt_imx.h				IMX50
948914f07Sbsh
1048914f07Sbshdefine	bus_dma_generic
1148914f07Sbsh
1227505554Shkenkenfile	arch/arm/arm32/arm32_boot.c
1327505554Shkenkenfile	arch/arm/arm32/arm32_kvminit.c
1427505554Shkenkenfile	arch/arm/arm32/arm32_reboot.c
1527505554Shkenkenfile	arch/arm/arm32/irq_dispatch.S
16c5aa6fdcShkenken
17c5aa6fdcShkenkendefine	bus_dma_generic
1827505554Shkenkenfile	arch/arm/arm32/armv7_generic_space.c
19eabbe28cSryofile	arch/arm/arm/arm_generic_dma.c		bus_dma_generic needs-flag
2027505554Shkenkenfile	arch/arm/arm/bus_space_a4x.S
2148914f07Sbsh
2248914f07Sbsh# iMX51 AXI/AHB bus interface and SoC domains
2348914f07Sbshdevice	axi { [addr=-1], [size=0], [irq=-1], [irqbase=-1]} : bus_space_generic
2448914f07Sbshattach	axi at mainbus
2548914f07Sbshfile	arch/arm/imx/imx51_axi.c		axi
2648914f07Sbsh
2748914f07Sbsh# iMX51 TrustZone Interrupt Controller
2848914f07Sbshinclude "arch/arm/pic/files.pic"
290bbe6c8fSbshdevice	tzic: pic, pic_splfuncs
3048914f07Sbshattach	tzic at axi
3148914f07Sbshfile	arch/arm/imx/imx51_tzic.c		tzic	needs-flag
3248914f07Sbsh
3348914f07Sbsh# iMX51 Enhanced Periodic Interrupt Timer
3448914f07Sbshdevice	imxclock
3548914f07Sbshattach	imxclock at axi
3648914f07Sbshfile	arch/arm/imx/imxclock.c
3748914f07Sbshfile	arch/arm/imx/imx51_clock.c
3848914f07Sbsh
3948914f07Sbsh# Clock Control Module
4048914f07Sbshdevice	imxccm
4148914f07Sbshattach	imxccm	at axi
4248914f07Sbshfile	arch/arm/imx/imx51_ccm.c		imxccm	needs-flag
432868f5bcShkenkendefflag opt_imx51clk.h				IMXCCMDEBUG
4448914f07Sbsh
4548914f07Sbsh# frequency of external low frequency clock
4648914f07Sbsh# typically 32000, 32768, or 38400.
4748914f07Sbshdefparam opt_imx51clk.h	IMX51_CKIL_FREQ
4848914f07Sbsh
4948914f07Sbsh# frequency of on-chip oscillator. typeilcally 24000000.
5048914f07Sbshdefparam opt_imx51clk.h	IMX51_OSC_FREQ
5148914f07Sbsh
5248914f07Sbsh# following parameters are used when imxccm is not configured in the kernel.
5348914f07Sbshdefparam opt_imx51clk.h IMX51_AHBCLK_FREQ
5448914f07Sbshdefparam opt_imx51clk.h IMX51_IPGCLK_FREQ
5548914f07Sbsh
5647143f5cShkenken# Watchdog
5747143f5cShkenkendevice imxwdog: sysmon_wdog
5847143f5cShkenkenattach imxwdog at axi
5947143f5cShkenkenfile   arch/arm/imx/imx51_wdog.c	imxwdog
6047143f5cShkenkenfile   arch/arm/imx/imxwdog.c		imxwdog
6147143f5cShkenken
6248914f07Sbsh# iMX GPIO
63c1719a03Sbshdevice	imxgpio: gpiobus
64c1719a03Sbshattach	imxgpio at axi
65001dea06Shkenkenfile	arch/arm/imx/imxgpio.c		imxgpio
66c1719a03Sbshfile	arch/arm/imx/imx51_gpio.c	imxgpio
6748914f07Sbsh
6848914f07Sbsh# iMX IOMUX
6948914f07Sbshdevice	imxiomux : bus_space_generic
7048914f07Sbshattach	imxiomux at axi
71c1719a03Sbshfile	arch/arm/imx/imx51_iomux.c		imxiomux
7248914f07Sbsh
732868f5bcShkenken# EPDC controller
742868f5bcShkenken# device	epdc : bus_dma_generic, wsemuldisplaydev, rasops16, rasops8, rasops4, rasops_rotation, vcons
752868f5bcShkenken# file	arch/arm/imx/imx50_epdc.c	epdc	 needs-flag
762868f5bcShkenken# defflag opt_imx50_epdc.h		IMXEPDCCONSOLE
772868f5bcShkenken# defparam opt_imx50_epdc.h		EPDC_DEBUG
782868f5bcShkenken
79456cfa81Sbsh# IPU v3 controller
807bb55e03Shkenkendevice	ipu { }
817bb55e03Shkenkenfile	arch/arm/imx/imx51_ipuv3.c	imx_ipuv3	needs-flag
82456cfa81Sbshdefparam opt_imx51_ipuv3.h		IPUV3_DEBUG
8348914f07Sbsh
847bb55e03Shkenken# Framebuffer console
857bb55e03Shkenkenattach	genfb at ipu with imx_genfb
867bb55e03Shkenkenfile	arch/arm/imx/imx_genfb.c	imx_genfb
877bb55e03Shkenken
8848914f07Sbsh# iMX M3IF - Multi Master Memory Interface
8948914f07Sbsh# iMX ESDCTL/MDDRC - Enhanced SDRAM/LPDDR memory controller
9048914f07Sbsh# iMX PCMCIA - PCMCIA memory controller
9148914f07Sbsh# iMX NANDFC - NAND Flash memory controller
9248914f07Sbsh# iMX WEIM - Wireless External Interface Module
9348914f07Sbsh
9448914f07Sbsh# iMX UART
9548914f07Sbshdevice	imxuart
964f4d98d9Shkenkenattach	imxuart at axi with imx51_uart
9748914f07Sbshfile	arch/arm/imx/imxuart.c			imxuart	needs-flag
984f4d98d9Shkenkenfile	arch/arm/imx/imx51_uart.c		imx51_uart
9948914f07Sbshdefflag	opt_imxuart.h				IMXUARTCONSOLE
10048914f07Sbsh
101c1719a03Sbsh# USB controller
1024812f381Ssimonb# attach of this driver need to be specified in platform configuration
103c1719a03Sbshdevice imxusbc { unit, irq } : bus_dma_generic
104c1719a03Sbshfile   arch/arm/imx/imx51_usb.c			imxusbc
105c1719a03Sbsh
106c1719a03Sbshattach ehci at imxusbc with imxehci
107c1719a03Sbshfile   arch/arm/imx/imxusb.c			imxehci
10848914f07Sbsh
10948914f07Sbsh# SD host controller for SD/MMC
110f93c4185Sbshattach	sdhc at axi with sdhc_axi
111f93c4185Sbshfile	arch/arm/imx/imx51_esdhc.c		sdhc_axi
11248914f07Sbsh
11381f02ea9Sskrll# iic controller
114655cfe74Shkenkendevice	imxi2c: motoi2c, i2cbus, i2cexec
115ff5a6264Shkenkenattach	imxi2c at axi
116ff5a6264Shkenkenfile	arch/arm/imx/imxi2c.c		imxi2c
117ff5a6264Shkenkenfile	arch/arm/imx/imx51_i2c.c	imxi2c
11848914f07Sbsh
11981f02ea9Sskrll# SPI bus controller
120*36943794Sskrll# attach of this driver need to be specified in platform configuration
1215f3c2fa2Shkenken# use flags to module version
1225f3c2fa2Shkenkendevice  imxspi : spibus
1235f3c2fa2Shkenkenfile    arch/arm/imx/imxspi.c			imxspi
1245f3c2fa2Shkenkendefparam opt_imxspi.h                   	IMXSPINSLAVES
1255f3c2fa2Shkenkendefparam opt_imxspi.h				IMXSPI_DEBUG
1265f3c2fa2Shkenken# attach	imxspi at axi with imx51_spi
1275f3c2fa2Shkenken# file	arch/arm/imx/imx51_spi.c		imx51_spi
12848914f07Sbsh
12948914f07Sbsh# Smart Direct Memory Access Controller
13048914f07Sbsh# device	imxsdma: dmover_service, bus_dma_generic
131ff5a6264Shkenken# attach	imxsdma at axi
13248914f07Sbsh# file	arch/arm/imx/imxsdma.c		imxsdma
13348914f07Sbsh# file	arch/arm/imx/imxsdmaprog.c		imxsdma
13448914f07Sbsh
13548914f07Sbsh# iis sound Controller (SSI module)
13648914f07Sbsh# device	imxi2s {} : bus_dma_generic
13748914f07Sbsh# file	arch/arm/imx/imx51_i2s.c		imxi2s needs-flag
138b9040788Shkenken
13981f02ea9Sskrll# PWM controller
14061129b72Srindevice	imxpwm: pwm, clk
141b9040788Shkenkenfile	arch/arm/imx/imxpwm.c			imxpwm
142b9040788Shkenkenfile	arch/arm/imx/imx51_pwm.c		imxpwm
143