files.imx51 revision 1.15
11.15Shkenken#	$NetBSD: files.imx51,v 1.15 2017/08/17 09:11:04 hkenken Exp $
21.1Sbsh#
31.10Shkenken# Configuration info for the Freescale i.MX5x
41.1Sbsh#
51.1Sbsh
61.1Sbshdefparam opt_imx.h				MEMSIZE
71.1Sbshdefflag opt_imx.h				IMX51
81.11Shkenkendefflag opt_imx.h				IMX50
91.1Sbsh
101.1Sbshdefine	bus_dma_generic
111.1Sbsh
121.13Shkenkenfile	arch/arm/arm32/arm32_boot.c
131.13Shkenkenfile	arch/arm/arm32/arm32_kvminit.c
141.13Shkenkenfile	arch/arm/arm32/arm32_reboot.c
151.13Shkenkenfile	arch/arm/arm32/irq_dispatch.S
161.15Shkenken
171.15Shkenkendefine	bus_dma_generic
181.13Shkenkenfile	arch/arm/arm32/armv7_generic_space.c
191.15Shkenkenfile	arch/arm/arm32/armv7_generic_dma.c
201.13Shkenkenfile	arch/arm/arm/bus_space_a4x.S
211.1Sbsh
221.1Sbsh# iMX51 AXI/AHB bus interface and SoC domains
231.1Sbshdevice	axi { [addr=-1], [size=0], [irq=-1], [irqbase=-1]} : bus_space_generic
241.1Sbshattach	axi at mainbus
251.1Sbshfile	arch/arm/imx/imx51_axi.c		axi
261.1Sbsh
271.1Sbsh# iMX51 TrustZone Interrupt Controller
281.1Sbshinclude "arch/arm/pic/files.pic"
291.3Sbshdevice	tzic: pic, pic_splfuncs
301.1Sbshattach	tzic at axi
311.1Sbshfile	arch/arm/imx/imx51_tzic.c		tzic	needs-flag
321.1Sbsh
331.1Sbsh# iMX51 Enhanced Periodic Interrupt Timer
341.1Sbshdevice	imxclock
351.1Sbshattach	imxclock at axi
361.1Sbshfile	arch/arm/imx/imxclock.c
371.1Sbshfile	arch/arm/imx/imx51_clock.c
381.1Sbsh
391.1Sbsh# Clock Control Module
401.1Sbshdevice	imxccm
411.1Sbshattach	imxccm	at axi
421.11Shkenkenfile	arch/arm/imx/imx51_ccm.c		imxccm	needs-flag
431.11Shkenkendefflag opt_imx51clk.h				IMXCCMDEBUG
441.1Sbsh
451.1Sbsh# frequency of external low frequency clock
461.1Sbsh# typically 32000, 32768, or 38400.
471.1Sbshdefparam opt_imx51clk.h	IMX51_CKIL_FREQ
481.1Sbsh
491.1Sbsh# frequency of on-chip oscillator. typeilcally 24000000.
501.1Sbshdefparam opt_imx51clk.h	IMX51_OSC_FREQ
511.1Sbsh
521.1Sbsh# following parameters are used when imxccm is not configured in the kernel.
531.1Sbshdefparam opt_imx51clk.h IMX51_AHBCLK_FREQ
541.1Sbshdefparam opt_imx51clk.h IMX51_IPGCLK_FREQ
551.1Sbsh
561.6Shkenken# Watchdog
571.6Shkenkendevice imxwdog: sysmon_wdog
581.6Shkenkenattach imxwdog at axi
591.6Shkenkenfile   arch/arm/imx/imx51_wdog.c	imxwdog
601.6Shkenkenfile   arch/arm/imx/imxwdog.c		imxwdog
611.6Shkenken
621.1Sbsh# iMX GPIO
631.2Sbshdevice	imxgpio: gpiobus
641.2Sbshattach	imxgpio at axi
651.2Sbshfile	arch/arm/imx/imxgpio.c		imxgpio		needs-flag
661.2Sbshfile	arch/arm/imx/imx51_gpio.c	imxgpio
671.7Shkenkendefflag opt_imxgpio.h			IMX_GPIO_INTR_SPLIT
681.1Sbsh
691.1Sbsh# iMX IOMUX
701.1Sbshdevice	imxiomux : bus_space_generic
711.1Sbshattach	imxiomux at axi
721.2Sbshfile	arch/arm/imx/imx51_iomux.c		imxiomux
731.1Sbsh
741.11Shkenken# EPDC controller
751.11Shkenken# device	epdc : bus_dma_generic, wsemuldisplaydev, rasops16, rasops8, rasops4, rasops_rotation, vcons
761.11Shkenken# file	arch/arm/imx/imx50_epdc.c	epdc	 needs-flag
771.11Shkenken# defflag opt_imx50_epdc.h		IMXEPDCCONSOLE
781.11Shkenken# defparam opt_imx50_epdc.h		EPDC_DEBUG
791.11Shkenken
801.4Sbsh# IPU v3 controller
811.14Shkenkendevice	ipu { }
821.14Shkenkenfile	arch/arm/imx/imx51_ipuv3.c	imx_ipuv3	needs-flag
831.4Sbshdefparam opt_imx51_ipuv3.h		IPUV3_DEBUG
841.1Sbsh
851.14Shkenken# Framebuffer console
861.14Shkenkenattach	genfb at ipu with imx_genfb
871.14Shkenkenfile	arch/arm/imx/imx_genfb.c	imx_genfb
881.14Shkenken
891.1Sbsh# iMX M3IF - Multi Master Memory Interface
901.1Sbsh# iMX ESDCTL/MDDRC - Enhanced SDRAM/LPDDR memory controller
911.1Sbsh# iMX PCMCIA - PCMCIA memory controller
921.1Sbsh# iMX NANDFC - NAND Flash memory controller
931.1Sbsh# iMX WEIM - Wireless External Interface Module
941.1Sbsh
951.1Sbsh# iMX UART
961.1Sbshdevice	imxuart
971.1Sbshattach	imxuart at axi
981.1Sbshfile	arch/arm/imx/imxuart.c			imxuart	needs-flag
991.1Sbshfile	arch/arm/imx/imx51_uart.c		imxuart
1001.1Sbshdefflag	opt_imxuart.h				IMXUARTCONSOLE
1011.1Sbsh
1021.2Sbsh# USB controller
1031.2Sbsh# attach of this driver need to be specified in paltform configuration
1041.2Sbshdevice imxusbc { unit, irq } : bus_dma_generic
1051.2Sbshfile   arch/arm/imx/imx51_usb.c			imxusbc
1061.2Sbsh
1071.2Sbshattach ehci at imxusbc with imxehci
1081.2Sbshfile   arch/arm/imx/imxusb.c			imxehci
1091.1Sbsh
1101.1Sbsh# SD host controller for SD/MMC
1111.5Sbshattach	sdhc at axi with sdhc_axi
1121.5Sbshfile	arch/arm/imx/imx51_esdhc.c		sdhc_axi
1131.1Sbsh
1141.1Sbsh# iic Controler
1151.12Shkenkendevice	imxi2c: motoi2c, i2cbus, i2cexec
1161.10Shkenkenattach	imxi2c at axi
1171.10Shkenkenfile	arch/arm/imx/imxi2c.c		imxi2c
1181.10Shkenkenfile	arch/arm/imx/imx51_i2c.c	imxi2c
1191.1Sbsh
1201.8Shkenken# SPI bus controlloer
1211.8Shkenken# attach of this driver need to be specified in paltform configuration
1221.8Shkenken# use flags to module version
1231.8Shkenkendevice  imxspi : spibus
1241.8Shkenkenfile    arch/arm/imx/imxspi.c			imxspi
1251.8Shkenkendefparam opt_imxspi.h                   	IMXSPINSLAVES
1261.8Shkenkendefparam opt_imxspi.h				IMXSPI_DEBUG
1271.8Shkenken# attach	imxspi at axi with imx51_spi
1281.8Shkenken# file	arch/arm/imx/imx51_spi.c		imx51_spi
1291.1Sbsh
1301.1Sbsh# Smart Direct Memory Access Controller
1311.1Sbsh# device	imxsdma: dmover_service, bus_dma_generic
1321.10Shkenken# attach	imxsdma at axi
1331.1Sbsh# file	arch/arm/imx/imxsdma.c		imxsdma
1341.1Sbsh# file	arch/arm/imx/imxsdmaprog.c		imxsdma
1351.1Sbsh
1361.1Sbsh# iis sound Controller (SSI module)
1371.1Sbsh# device	imxi2s {} : bus_dma_generic
1381.1Sbsh# file	arch/arm/imx/imx51_i2s.c		imxi2s needs-flag
1391.9Shkenken
1401.9Shkenken# PWM controlloer
1411.9Shkenkendevice	imxpwm
1421.9Shkenkenfile	arch/arm/imx/imxpwm.c			imxpwm
1431.9Shkenkenfile	arch/arm/imx/imx51_pwm.c		imxpwm
144