Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

#	$NetBSD: files.discovery,v 1.23 2021/04/24 23:36:56 thorpej Exp $
#
# Config file and device description for machine-independent support for
# the Marvell (formerly Galileo Technology) Discovery system controllers.
#
# Ports that include this must also supply some glue code of their own.
# Notably:
#	* devices here are indirectly configured by the configuration
# 	  file since different systems will be configured somewhat
#	  differently,
#	* The Multi-Purpose Port (MPP) is configured differently on
#	  different systems,
#	* CPU attachment is handled in largely a machine-independent
#	  fashion,
#	* The interrupts on different systems will be handled differently.
#
# Systems with multiple GT controllers are not currently handled by this
# code.

defparam	opt_marvell.h	MPSC_CONSOLE
defparam	opt_marvell.h	GT_MPSC_DEFAULT_BAUD_RATE
defparam	opt_marvell.h	GT_MPSC_FREQUENCY GT_MPSC_CLOCK_SOURCE
defparam	opt_marvell.h	GT_MPP_WATCHDOG
defflag 	opt_marvell.h	GT_DEVBUS GT_ECC GT_COMM GT_WATCHDOG

device	gt { [unit = -1], [offset = -1], [irq = -1] }
file	dev/marvell/gt.c		gt

# PCI Interface
device	gtpci: pcibus
file	dev/marvell/gtpci.c		gtpci & (gtpci_gt|gtpci_mbus) needs-flag
attach	gtpci at gt with gtpci_gt

# PCI Express Interface
device	mvpex: pcibus
file	dev/marvell/mvpex.c		mvpex & (mvpex_gt|mvpex_mbus) needs-flag
attach	mvpex at gt with mvpex_gt

# Fast ethernet
device	gfec { [port = -1], [irq = -1] }
attach	gfec at gt
device	gfe: ether, ifnet, arp, mii
attach	gfe at gfec
file	dev/marvell/if_gfe.c		gfec | gfe

# Multi-Protocol Serial controller
device	gtmpsc: tty
attach	gtmpsc at gt
file	dev/marvell/gtmpsc.c		gtmpsc needs-flag

device	obio { [offset = -1], [size = 0], [irq = -1] }
attach	obio at gt
file	dev/marvell/obio.c		obio

# Serial-ATA II Host Controller (SATAHC)
attach	mvsata at gt with mvsata_gt
file	dev/marvell/mvsata_mv.c		mvsata_gt | mvsata_mbus

# Gigabit Ethernet Controller Interface
device	mvgbec { [port = -1], [irq = -1] }
attach	mvgbec at gt with mvgbec_gt
device	mvgbe: ether, ifnet, arp, mii
attach	mvgbe at mvgbec
file	dev/marvell/if_mvgbe.c		mvgbec | mvgbe

# USB 2.0 Interface
attach	ehci at gt with mvusb_gt
file	dev/marvell/ehci_mv.c		mvusb_gt | mvusb_mbus

# Cryptographic Engines and Security Accelerator
device	mvcesa: opencrypto
file	dev/marvell/mvcesa.c		mvcesa
attach	mvcesa at gt with mvcesa_gt

# Two-Wire Serial Interface
device	gttwsi: i2cbus, mvi2c
file	dev/marvell/gttwsi.c		gttwsi
attach	gttwsi at gt with gttwsi_gt

# UART Interface
attach	com at gt with mvuart_gt
file	dev/marvell/com_mv.c		mvuart_gt | mvuart_mbus

# IDMA Controller and XOR Engine
device	gtidmac: dmover_service
file	dev/marvell/gtidmac.c		gtidmac
attach	gtidmac at gt with gtidmac_gt

# Secure Digital Input/Output (SDIO) Interface
device	mvsdio: sdmmcbus
file	dev/marvell/mvsdio.c		mvsdio
defparam	opt_mvsdio.h		MVSDIO_CARD_DETECT
					MVSDIO_WRITE_PROTECT

# SPI Serial Peripheral Interface
device 	mvspi: spibus
file	dev/marvell/mvspi.c		mvspi