# $NetBSD: files.omap2,v 1.36 2016/10/15 15:11:56 kiyohara Exp $ # # Configuration info for Texas Instruments OMAP2/OMAP3 CPU support # Based on xscale/files.pxa2x0 # include "arch/arm/pic/files.pic" include "arch/arm/cortex/files.cortex" file arch/arm/arm32/irq_dispatch.S file arch/arm/omap/omap_dma.c # Memory size in megabytes defparam opt_omap.h MEMSIZE defparam opt_omap.h OMAP_EMIFF_PBASE OMAP_EMIFF_SIZE defflag opt_omap.h OMAP2 defflag opt_omap.h OMAP3: OMAP2 defflag opt_omap.h OMAP4: OMAP3 defflag opt_omap.h OMAP5: OMAP4 defflag opt_omap.h OMAP_2XXX: OMAP2 defflag opt_omap.h OMAP_2430: OMAP_2XXX defflag opt_omap.h OMAP_2420: OMAP_2XXX defflag opt_omap.h OMAP_3XXX: OMAP3 defflag opt_omap.h OMAP_3430: OMAP_3XXX defflag opt_omap.h OMAP_3530: OMAP_3XXX defflag opt_omap.h OMAP_4XXX: OMAP4 defflag opt_omap.h OMAP_4430: OMAP_4XXX defflag opt_omap.h OMAP_4460: OMAP_4XXX defflag opt_omap.h OMAP_5XXX: OMAP5 defflag opt_omap.h OMAP_5430: OMAP_5XXX defflag opt_omap.h TI_AM335X: OMAP3 defflag opt_omap.h TI_DM37XX: OMAP3 # OBIO just an attach point device obio { [addr=-1], [size=0], [intr=-1], [mult=1], [intrbase=-1], [nobyteacc=0], [edmabase=-1] } : bus_space_generic attach obio at mainbus file arch/arm/omap/omap2_obio.c obio needs-count # OBIO files file arch/arm/omap/omap_space.c obio file arch/arm/omap/omap_a2x_space.c obio file arch/arm/arm/bus_space_a2x.S obio file arch/arm/omap/omap_a4x_space.c obio file arch/arm/arm/bus_space_a4x.S obio # TI Sitara control module device sitaracm attach sitaracm at obio with sitaracm file arch/arm/omap/sitara_cm.c sitaracm file arch/arm/omap/am335x_cm_padconf.c ti_am335x # OMAP2 interrupt controller device omapicu: pic, pic_splfuncs attach omapicu at obio with omap2icu file arch/arm/omap/omap2_icu.c (omap2 | omap3) & omapicu file arch/arm/omap/omap2430_intr.c omap2 & !omapicu & !omap4 # OMAP2 GPIO controllers device omapgpio: gpiobus attach omapgpio at obio with omap2gpio file arch/arm/omap/omap2_gpio.c (omap2 | omap3) & omapgpio # TI_AM335X (and maybe TI OMAP4) I2C controllers device tiiic: i2cbus, i2cexec attach tiiic at obio with ti_iic file arch/arm/omap/ti_iic.c ti_iic # OMAP3 I2C controllers device omapiic: i2cbus, i2cexec attach omapiic at obio with omap3_i2c file arch/arm/omap/omap3_i2c.c omap3_i2c # OMAP3 system control module device omapscm: sysmon_envsys attach omapscm at obio with omap3_scm file arch/arm/omap/omap3_scm.c omap3_scm # OMAP dual-mode timer device omapdmtimer file arch/arm/omap/omap_dmtimer.c omapdmtimer defparam opt_omap.h OMAP_SYSTEM_CLOCK_FREQ attach omapdmtimer at obio with omap_dmtimer_obio file arch/arm/omap/am335x_dmtimer.c ti_am335x & omapdmtimer # OMAP 2430 General Purpose Timer device omapmputmr file arch/arm/omap/omap2_mputmr.c omapmputmr defparam opt_omap.h OMAP_GP_TIMER_CLOCK_FREQ # OBIO/2430 GP Timer attach omapmputmr at obio with obiomputmr file arch/arm/omap/obio_mputmr.c obiomputmr # Dual Mode (General Purpose) Timer device omapgptmr attach omapgptmr at obio file arch/arm/omap/omap2_gptmr.c omapgptmr #file arch/arm/omap/omap_pwm.c omapgptmr # Watchdog timers device omapwdt32k: sysmon_wdog file arch/arm/omap/omap_wdt.c omapwdt32k needs-flag attach omapwdt32k at obio with obiowdt32k file arch/arm/omap/obio_wdt.c obiowdt32k # L3 Interconnect device L3i { [addr=-1], [size=0], [intr=-1], [mult=1], [nobyteacc=0] } : bus_space_generic attach L3i at mainbus file arch/arm/omap/omap2_l3i.c omap2 | omap3 # General Purpose Memory Controller # XXX some addl. chip select config parms may be desired here (e.g. timing) # XXX so far we just use the setup established by boot firmware device gpmc { [cs=-1], [addr=-1], [size=0], [intr=-1], [mult=1], [nobyteacc=0] } : bus_space_generic attach gpmc at mainbus file arch/arm/omap/omap2_gpmc.c gpmc device edma attach edma at mainbus file arch/arm/omap/omap_edma.c edma needs-flag # TI OTG controller define tiotg_port {[port = -1], [mode = -1]} device tiotg: tiotg_port attach tiotg at mainbus file arch/arm/omap/tiotg.c tiotg attach motg at tiotg_port # SDMMC controller attach sdhc at mainbus with mainbussdhc attach sdhc at obio with obiosdhc file arch/arm/omap/omap3_sdhc.c mainbussdhc | obiosdhc # NAND flash controller device omapnand: nandbus attach omapnand at gpmc file arch/arm/omap/omap2_nand.c omapnand # PRCM interface device prcm attach prcm at obio file arch/arm/omap/omap2_prcm.c prcm needs-flag file arch/arm/omap/am335x_prcm.c ti_am335x # OHCI USB controller attach ohci at obio with obioohci file arch/arm/omap/obio_ohci.c obioohci attach ehci at obio with omap3_ehci file arch/arm/omap/omap3_ehci.c omap3_ehci attach ahcisata at obio with omap5_ahcisata file arch/arm/omap/omap5_ahcisata.c omap5_ahcisata device omapfb: rasops16, rasops8, wsemuldisplaydev, vcons, edid attach omapfb at obio file arch/arm/omap/omapfb.c omapfb # TI AM335x framebuffer device tifb: rasops32, rasops24, rasops16, rasops8, wsemuldisplaydev, vcons, edid attach tifb at obio file arch/arm/omap/tifb.c tifb device cpsw: ether, ifnet, arp, mii, mii_phy attach cpsw at obio file arch/arm/omap/if_cpsw.c cpsw device omapdma attach omapdma at obio file arch/arm/omap/omap3_sdma.c omapdma needs-flag device trng attach trng at obio file arch/arm/omap/am335x_trng.c trng # these bus space methods are not bus-specific ... # file arch/arm/omap/omap_nobyteacc_space.c emifs | gpmc file arch/arm/omap/omap_nobyteacc_io.S emifs | gpmc