1#	$NetBSD: files.discovery,v 1.23 2021/04/24 23:36:56 thorpej Exp $
2#
3# Config file and device description for machine-independent support for
4# the Marvell (formerly Galileo Technology) Discovery system controllers.
5#
6# Ports that include this must also supply some glue code of their own.
7# Notably:
8#	* devices here are indirectly configured by the configuration
9# 	  file since different systems will be configured somewhat
10#	  differently,
11#	* The Multi-Purpose Port (MPP) is configured differently on
12#	  different systems,
13#	* CPU attachment is handled in largely a machine-independent
14#	  fashion,
15#	* The interrupts on different systems will be handled differently.
16#
17# Systems with multiple GT controllers are not currently handled by this
18# code.
19
20defparam	opt_marvell.h	MPSC_CONSOLE
21defparam	opt_marvell.h	GT_MPSC_DEFAULT_BAUD_RATE
22defparam	opt_marvell.h	GT_MPSC_FREQUENCY GT_MPSC_CLOCK_SOURCE
23defparam	opt_marvell.h	GT_MPP_WATCHDOG
24defflag 	opt_marvell.h	GT_DEVBUS GT_ECC GT_COMM GT_WATCHDOG
25
26device	gt { [unit = -1], [offset = -1], [irq = -1] }
27file	dev/marvell/gt.c		gt
28
29# PCI Interface
30device	gtpci: pcibus
31file	dev/marvell/gtpci.c		gtpci & (gtpci_gt|gtpci_mbus) needs-flag
32attach	gtpci at gt with gtpci_gt
33
34# PCI Express Interface
35device	mvpex: pcibus
36file	dev/marvell/mvpex.c		mvpex & (mvpex_gt|mvpex_mbus) needs-flag
37attach	mvpex at gt with mvpex_gt
38
39# Fast ethernet
40device	gfec { [port = -1], [irq = -1] }
41attach	gfec at gt
42device	gfe: ether, ifnet, arp, mii
43attach	gfe at gfec
44file	dev/marvell/if_gfe.c		gfec | gfe
45
46# Multi-Protocol Serial controller
47device	gtmpsc: tty
48attach	gtmpsc at gt
49file	dev/marvell/gtmpsc.c		gtmpsc needs-flag
50
51device	obio { [offset = -1], [size = 0], [irq = -1] }
52attach	obio at gt
53file	dev/marvell/obio.c		obio
54
55# Serial-ATA II Host Controller (SATAHC)
56attach	mvsata at gt with mvsata_gt
57file	dev/marvell/mvsata_mv.c		mvsata_gt | mvsata_mbus
58
59# Gigabit Ethernet Controller Interface
60device	mvgbec { [port = -1], [irq = -1] }
61attach	mvgbec at gt with mvgbec_gt
62device	mvgbe: ether, ifnet, arp, mii
63attach	mvgbe at mvgbec
64file	dev/marvell/if_mvgbe.c		mvgbec | mvgbe
65
66# USB 2.0 Interface
67attach	ehci at gt with mvusb_gt
68file	dev/marvell/ehci_mv.c		mvusb_gt | mvusb_mbus
69
70# Cryptographic Engines and Security Accelerator
71device	mvcesa: opencrypto
72file	dev/marvell/mvcesa.c		mvcesa
73attach	mvcesa at gt with mvcesa_gt
74
75# Two-Wire Serial Interface
76device	gttwsi: i2cbus, mvi2c
77file	dev/marvell/gttwsi.c		gttwsi
78attach	gttwsi at gt with gttwsi_gt
79
80# UART Interface
81attach	com at gt with mvuart_gt
82file	dev/marvell/com_mv.c		mvuart_gt | mvuart_mbus
83
84# IDMA Controller and XOR Engine
85device	gtidmac: dmover_service
86file	dev/marvell/gtidmac.c		gtidmac
87attach	gtidmac at gt with gtidmac_gt
88
89# Secure Digital Input/Output (SDIO) Interface
90device	mvsdio: sdmmcbus
91file	dev/marvell/mvsdio.c		mvsdio
92defparam	opt_mvsdio.h		MVSDIO_CARD_DETECT
93					MVSDIO_WRITE_PROTECT
94
95# SPI Serial Peripheral Interface
96device 	mvspi: spibus
97file	dev/marvell/mvspi.c		mvspi
98