head	1.15;
access;
symbols
	perseant-exfatfs-base-20261102:1.15
	netbsd-11-1-RELEASE:1.13
	netbsd-10-2-RELEASE:1.12
	netbsd-9-5-RELEASE:1.4
	netbsd-11-0-RELEASE:1.13
	netbsd-11-0-RC7:1.13
	netbsd-11-0-RC6:1.13
	netbsd-11-0-RC5:1.13
	netbsd-11-0-RC4:1.13
	netbsd-11-0-RC3:1.13
	netbsd-11-0-RC2:1.13
	netbsd-11-0-RC1:1.13
	perseant-exfatfs-base-20250801:1.13
	netbsd-11:1.13.0.4
	netbsd-11-base:1.13
	netbsd-10-1-RELEASE:1.12
	perseant-exfatfs-base-20240630:1.13
	perseant-exfatfs:1.13.0.2
	perseant-exfatfs-base:1.13
	netbsd-8-3-RELEASE:1.4
	netbsd-9-4-RELEASE:1.4
	netbsd-10-0-RELEASE:1.12
	netbsd-10-0-RC6:1.12
	netbsd-10-0-RC5:1.12
	netbsd-10-0-RC4:1.12
	netbsd-10-0-RC3:1.12
	netbsd-10-0-RC2:1.12
	thorpej-ifq:1.12.0.24
	thorpej-ifq-base:1.12
	thorpej-altq-separation:1.12.0.22
	thorpej-altq-separation-base:1.12
	netbsd-10-0-RC1:1.12
	netbsd-10:1.12.0.20
	netbsd-10-base:1.12
	bouyer-sunxi-drm:1.12.0.18
	bouyer-sunxi-drm-base:1.12
	netbsd-9-3-RELEASE:1.4
	thorpej-i2c-spi-conf2:1.12.0.16
	thorpej-i2c-spi-conf2-base:1.12
	thorpej-futex2:1.12.0.14
	thorpej-futex2-base:1.12
	thorpej-cfargs2:1.12.0.12
	thorpej-cfargs2-base:1.12
	cjep_sun2x-base1:1.12
	cjep_sun2x:1.12.0.10
	cjep_sun2x-base:1.12
	cjep_staticlib_x-base1:1.12
	netbsd-9-2-RELEASE:1.4
	cjep_staticlib_x:1.12.0.8
	cjep_staticlib_x-base:1.12
	thorpej-i2c-spi-conf:1.12.0.6
	thorpej-i2c-spi-conf-base:1.12
	thorpej-cfargs:1.12.0.4
	thorpej-cfargs-base:1.12
	thorpej-futex:1.12.0.2
	thorpej-futex-base:1.12
	netbsd-9-1-RELEASE:1.4
	bouyer-xenpvh-base2:1.4
	phil-wifi-20200421:1.4
	bouyer-xenpvh-base1:1.4
	phil-wifi-20200411:1.4
	bouyer-xenpvh:1.4.0.32
	bouyer-xenpvh-base:1.4
	is-mlppp:1.4.0.30
	is-mlppp-base:1.4
	phil-wifi-20200406:1.4
	netbsd-8-2-RELEASE:1.4
	ad-namecache-base3:1.4
	netbsd-9-0-RELEASE:1.4
	netbsd-9-0-RC2:1.4
	ad-namecache-base2:1.4
	ad-namecache-base1:1.4
	ad-namecache:1.4.0.28
	ad-namecache-base:1.4
	netbsd-9-0-RC1:1.4
	phil-wifi-20191119:1.4
	netbsd-9:1.4.0.26
	netbsd-9-base:1.4
	phil-wifi-20190609:1.4
	netbsd-8-1-RELEASE:1.4
	netbsd-8-1-RC1:1.4
	isaki-audio2:1.4.0.24
	isaki-audio2-base:1.4
	pgoyette-compat-merge-20190127:1.4
	pgoyette-compat-20190127:1.4
	pgoyette-compat-20190118:1.4
	pgoyette-compat-1226:1.4
	pgoyette-compat-1126:1.4
	pgoyette-compat-1020:1.4
	pgoyette-compat-0930:1.4
	pgoyette-compat-0906:1.4
	pgoyette-compat-0728:1.4
	netbsd-8-0-RELEASE:1.4
	phil-wifi:1.4.0.22
	phil-wifi-base:1.4
	pgoyette-compat-0625:1.4
	netbsd-8-0-RC2:1.4
	pgoyette-compat-0521:1.4
	pgoyette-compat-0502:1.4
	pgoyette-compat-0422:1.4
	netbsd-8-0-RC1:1.4
	pgoyette-compat-0415:1.4
	pgoyette-compat-0407:1.4
	pgoyette-compat-0330:1.4
	pgoyette-compat-0322:1.4
	pgoyette-compat-0315:1.4
	pgoyette-compat:1.4.0.20
	pgoyette-compat-base:1.4
	tls-maxphys:1.4.0.18
	tls-maxphys-base-20171202:1.4
	matt-nb8-mediatek:1.4.0.16
	matt-nb8-mediatek-base:1.4
	nick-nhusb-base-20170825:1.4
	perseant-stdc-iso10646:1.4.0.14
	perseant-stdc-iso10646-base:1.4
	netbsd-8:1.4.0.12
	netbsd-8-base:1.4
	prg-localcount2-base3:1.4
	prg-localcount2-base2:1.4
	prg-localcount2-base1:1.4
	prg-localcount2:1.4.0.10
	prg-localcount2-base:1.4
	pgoyette-localcount-20170426:1.4
	bouyer-socketcan-base1:1.4
	jdolecek-ncq:1.4.0.8
	jdolecek-ncq-base:1.4
	pgoyette-localcount-20170320:1.4
	nick-nhusb-base-20170204:1.4
	bouyer-socketcan:1.4.0.6
	bouyer-socketcan-base:1.4
	pgoyette-localcount-20170107:1.4
	nick-nhusb-base-20161204:1.4
	pgoyette-localcount-20161104:1.4
	nick-nhusb-base-20161004:1.4
	localcount-20160914:1.4
	pgoyette-localcount-20160806:1.4
	pgoyette-localcount-20160726:1.4
	pgoyette-localcount:1.4.0.4
	pgoyette-localcount-base:1.4
	nick-nhusb-base-20160907:1.4
	nick-nhusb-base-20160529:1.4
	nick-nhusb-base-20160422:1.4
	nick-nhusb-base-20160319:1.4
	nick-nhusb-base-20151226:1.4
	nick-nhusb-base-20150921:1.4
	nick-nhusb:1.4.0.2
	nick-nhusb-base-20150606:1.4;
locks; strict;
comment	@# @;


1.15
date	2026.07.07.08.14.15;	author kbowling;	state Exp;
branches;
next	1.14;
commitid	xAHGaO6of6uLfHMG;

1.14
date	2025.09.06.15.44.03;	author thorpej;	state Exp;
branches;
next	1.13;
commitid	9V4ybx31NXy5wF9G;

1.13
date	2024.03.26.10.51.16;	author riastradh;	state Exp;
branches;
next	1.12;
commitid	P8e0GpLmwT0zTE3F;

1.12
date	2020.07.16.21.34.52;	author jmcneill;	state Exp;
branches;
next	1.11;
commitid	XNgYnJnMczIaPlgC;

1.11
date	2020.07.16.18.39.19;	author jmcneill;	state Exp;
branches;
next	1.10;
commitid	xusMyBermpJ0RkgC;

1.10
date	2020.07.16.11.49.38;	author jmcneill;	state Exp;
branches;
next	1.9;
commitid	TJt5ozINxqRfAigC;

1.9
date	2020.06.24.12.43.40;	author simonb;	state Exp;
branches;
next	1.8;
commitid	toSmOY7Ce2SrAtdC;

1.8
date	2020.06.22.02.26.20;	author simonb;	state Exp;
branches;
next	1.7;
commitid	k7uaifcuSSdUeadC;

1.7
date	2020.06.15.07.48.12;	author simonb;	state Exp;
branches;
next	1.6;
commitid	ivT4D3d6t9dkficC;

1.6
date	2020.05.31.06.27.06;	author simonb;	state Exp;
branches;
next	1.5;
commitid	CdT1WJMAAWcbhmaC;

1.5
date	2020.05.31.04.56.35;	author simonb;	state Exp;
branches;
next	1.4;
commitid	0ful8AmJbaIMLlaC;

1.4
date	2015.06.06.04.34.23;	author matt;	state Exp;
branches
	1.4.2.1
	1.4.18.1;
next	1.3;
commitid	5nYat5wQrY9Tbkoy;

1.3
date	2015.06.01.22.55.12;	author matt;	state Exp;
branches;
next	1.2;
commitid	94QGgtvoghRjrMny;

1.2
date	2015.05.01.07.23.47;	author hikaru;	state Exp;
branches;
next	1.1;
commitid	1nZPvxgr5fhzhIjy;

1.1
date	2015.04.29.08.32.00;	author hikaru;	state Exp;
branches;
next	;
commitid	EV5ih45pdmg1Hsjy;

1.4.2.1
date	2015.06.06.04.34.23;	author skrll;	state dead;
branches;
next	1.4.2.2;
commitid	O6LVO5i6UulOvnoy;

1.4.2.2
date	2015.06.06.14.40.01;	author skrll;	state Exp;
branches;
next	;
commitid	O6LVO5i6UulOvnoy;

1.4.18.1
date	2015.06.06.04.34.23;	author jdolecek;	state dead;
branches;
next	1.4.18.2;
commitid	XcIYRZTAh1LmerhA;

1.4.18.2
date	2017.12.03.11.36.27;	author jdolecek;	state Exp;
branches;
next	;
commitid	XcIYRZTAh1LmerhA;


desc
@@


1.15
log
@octgpio: OCTEON GPIO controller driver

Port of OpenBSD octgpio(4) (Visa Hankala) onto the NetBSD fdtbus
gpio controller API.

Deviations from the OpenBSD original, per the SDK CSR definitions:
CN63XX/CN68XX and CN38/52/56/58XX have 16 pins and no XBIT_CFG
registers.  The OUTPUT_SEL output mux is cleared only on CN70XX and
newer, where it exists.

Attach at pass 3 so consumers (octmmc cd-gpios) find the controller
registered.  Primary motivation is SD card-detect on boards with a
real MMC slot but could drive LEDs and other features later.

Reviewed by skrll@@
: ----------------------------------------------------------------------
@
text
@#	$NetBSD: files.octeon,v 1.14 2025/09/06 15:44:03 thorpej Exp $

file	arch/mips/mips/locore_octeon.S
file	arch/mips/mips/bus_dma.c
file	arch/mips/mips/mips3_clock.c
file	arch/mips/mips/mips3_clockintr.c

file	arch/mips/cavium/octeon_dma.c
file	arch/mips/cavium/octeon_intr.c
file	arch/mips/cavium/octeon_misc.c

file	arch/mips/fdt/fdt_dma_machdep.c

device	mainbus {}: fdt
attach	mainbus at root
file	arch/mips/cavium/mainbus.c		mainbus
file	arch/mips/cavium/mainbus_octeon1p.c	mainbus

device	cpunode { [core=-1] }
attach	cpunode at mainbus

device	cpu {}
attach	cpu at cpunode with cpu_cpunode

device	wdog: sysmon_wdog
attach	wdog at cpunode with wdog_cpunode

file	arch/mips/cavium/octeon_cpunode.c	cpunode | cpu | wdog needs-flag

# FDT
device	octintc
attach	octintc at fdt
file	arch/mips/cavium/dev/octeon_intc.c	octintc

device	octcib
attach	octcib at fdt
file	arch/mips/cavium/dev/octeon_cib.c	octcib

device	octgpio: fdt_gpio
attach	octgpio at fdt
file	arch/mips/cavium/dev/octeon_gpio.c	octgpio

attach	xhci at fdt with octxhci: fdt_gpio
file	arch/mips/cavium/dev/octeon_xhci.c	octxhci

# I/O Bus

device	iobus {}
attach	iobus at mainbus
file	arch/mips/cavium/octeon_iobus.c		iobus
file	arch/mips/cavium/octeon1p_iobus.c	iobus
file	arch/mips/cavium/dev/octeon_fpa.c	iobus
file	arch/mips/cavium/dev/octeon_pow.c	iobus
file	arch/mips/cavium/dev/octeon_fau.c	iobus
file	arch/mips/cavium/dev/octeon_ipd.c	iobus
file	arch/mips/cavium/dev/octeon_pko.c	iobus
file	arch/mips/cavium/dev/octeon_asx.c	iobus

# I/O Bus devices

attach	com at iobus with com_iobus
file	arch/mips/cavium/dev/octeon_uart.c	com_iobus
options 	COM_REGMAP

device	octrnm
attach	octrnm at iobus
file	arch/mips/cavium/dev/octeon_rnm.c	octrnm

device	octtwsi: i2cbus
attach	octtwsi at iobus
file	arch/mips/cavium/dev/octeon_twsi.c	octtwsi

# XXX rename to octspi?
device	octmpi: spibus
attach	octmpi at iobus
file	arch/mips/cavium/dev/octeon_mpi.c	octmpi

device	octcit {}
attach	octcit at iobus
file	arch/mips/cavium/dev/octeon_cit.c	octcit

device	octciu {}
attach	octciu at iobus
file	arch/mips/cavium/dev/octeon_ciu.c	octciu

device	octsmi {}
attach	octsmi at iobus with octsmi_iobus
attach	octsmi at fdt with octsmi_fdt
file	arch/mips/cavium/dev/octeon_smi.c	octsmi_iobus | octsmi_fdt

device	octpip {}
attach	octpip at iobus with octpip_iobus
attach	octpip at fdt with octpip_fdt
file	arch/mips/cavium/dev/octeon_pip.c	octpip_iobus | octpip_fdt

device	octgmx {}
attach	octgmx at octpip
file	arch/mips/cavium/dev/octeon_gmx.c	octgmx

# On-chip ethernet device(s)
device	cnmac: ether, ifnet, arp, mii
attach	cnmac at octgmx
file	arch/mips/cavium/dev/if_cnmac.c		cnmac

# CN3xxx/CN5xxx USB
attach	dwctwo at iobus with octdwctwo
file	arch/mips/cavium/dev/octeon_dwctwo.c	octdwctwo

# CN6xxx USB
device	octuctl {}
attach	octuctl at iobus with octuctl
file	arch/mips/cavium/dev/octeon_uctl.c	octuctl

# CN7xxx USB
device	octxctl {}
attach	octxctl at iobus with octxctl
file	arch/mips/cavium/dev/octeon_xctl.c	octuctl

# Boot-Bus

device	bootbus {}
attach	bootbus at mainbus
file	arch/mips/cavium/octeon_bootbus.c	bootbus

# Machine-independent I2O drivers.
include "dev/i2o/files.i2o"

# Machine-independent SCSI drivers
include "dev/scsipi/files.scsipi"

# Machine-independent ATA drivers
include "dev/ata/files.ata"

# Machine-independent USB device support
include "dev/usb/files.usb"

## # Machine-independent PCI device support
## include "dev/pci/files.pci"
@


1.14
log
@Step towards modularizing the Flattened Device Tree code.

Define attributes for each of the specific device bindings: clock,
dai, dma, gpio, i2c, iommu, mbox, mmc_pwrseq, phy, power, power domain,
pwm, regulator, reset controller, spi, system controller, pin
controller.  Include these support files only if either a provider
or consumer with one of these attributes is present in the kernel
config.

Add the necessary attributes to the device / attach declarations for
each provider and consumer.

There are some bindings that are consumed by generic code (iommu, pinctrl,
power, power domain).  Provide weak stubs for these routines to handle
situations where there is no provider.

No actual code changed; NFCI.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.13 2024/03/26 10:51:16 riastradh Exp $
d39 4
@


1.13
log
@mips/conf/files.octeon: octrnm does not depend on rnd

Whether or not we have /dev/random and /dev/urandom baked into the
kernel, configuring `octrnm* at ...' in the kernel config requires
octeon_rnm.c.

Related to PR kern/46728.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.12 2020/07/16 21:34:52 jmcneill Exp $
d39 1
a39 1
attach	xhci at fdt with octxhci
@


1.12
log
@Add USB3 support.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.11 2020/07/16 18:39:19 jmcneill Exp $
d63 1
a63 1
file	arch/mips/cavium/dev/octeon_rnm.c	octrnm & rnd
@


1.11
log
@Add driver for Cavium Interrupt Bus.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.10 2020/07/16 11:49:38 jmcneill Exp $
d39 3
@


1.10
log
@FDT support for Cavium OCTEON MIPS SoCs. WIP.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.9 2020/06/24 12:43:40 simonb Exp $
d35 4
a70 4
device	octcib {}
attach	octcib at iobus
file	arch/mips/cavium/dev/octeon_cib.c	octcib

@


1.9
log
@Redo cnmac attachments - cnmacM @@ gmxN @@ pip0 @@ iobus

Missed one file - thanks martin@@.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.8 2020/06/22 02:26:20 simonb Exp $
d12 3
a14 1
device	mainbus {}
d30 5
d80 3
a82 2
attach	octsmi at iobus
file	arch/mips/cavium/dev/octeon_smi.c	octsmi
d85 3
a87 2
attach	octpip at iobus
file	arch/mips/cavium/dev/octeon_pip.c	octpip
@


1.8
log
@Remove unmaintained CNMAC_DEBUG debug code.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.7 2020/06/15 07:48:12 simonb Exp $
a10 9
file	arch/mips/cavium/dev/octeon_ciu.c

defparam	opt_octeon.h			OCTEON_ECLK
defparam	opt_octeon.h			CNMAC_RING_MAX
defparam	opt_octeon.h			CNMAC_RING_MIN
defflag 	opt_octeon.h			CNMAC_FAST_CRC
						CNMAC_IPD_RED
						CNMAC_USENFS
						OCTEON_USBN_CN31XX_DMA_WORKAROUND
a36 1
file	arch/mips/cavium/dev/octeon_pip.c	iobus
a39 1
file	arch/mips/cavium/dev/octeon_smi.c	iobus
d55 2
a56 1
device	octmpi {}
d60 20
d81 1
a81 1
attach	octgmx at iobus
d89 1
d93 10
d121 2
a122 2
# Machine-independent PCI device support
include "dev/pci/files.pci"
@


1.7
log
@Finish CPU core support for Octeon Cavium CN70XX:
 - decode actual CPU name
 - per CPU core reset logic (partially adapted from OpenBSD)
 - handle Octeon 3 ioclock rate differences to other cores (from OpenBSD)
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.6 2020/05/31 06:27:06 simonb Exp $
d16 1
a16 2
defflag 	opt_octeon.h			CNMAC_DEBUG
						CNMAC_FAST_CRC
@


1.6
log
@Rename all Cavium Octeon device driver functions, structs etc from
"octeon_foo" to "octfoo", except "octeon_eth" becomes "cnmac".
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.5 2020/05/31 04:56:35 simonb Exp $
d10 1
@


1.5
log
@Clean up Cavium Octeon device names.  Rename devices from "octeon_foo"
to "octfoo" - this follows the naming conventions used by many other
MIPS CPUs.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.4 2015/06/06 04:34:23 matt Exp $
d13 6
a18 6
defparam	opt_octeon.h			OCTEON_ETH_RING_MAX
defparam	opt_octeon.h			OCTEON_ETH_RING_MIN
defflag 	opt_octeon.h			OCTEON_ETH_DEBUG
						OCTEON_ETH_FAST_CRC
						OCTEON_ETH_IPD_RED
						OCTEON_ETH_USENFS
@


1.4
log
@Add a wdog for octeon
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.3 2015/06/01 22:55:12 matt Exp $
d54 2
a55 2
attach	com at iobus with octeon_uart_iobus
file	arch/mips/cavium/dev/octeon_uart.c	octeon_uart_iobus
d58 15
a72 15
device	octeon_rnm
attach	octeon_rnm at iobus
file	arch/mips/cavium/dev/octeon_rnm.c	octeon_rnm & rnd

device	octeon_twsi: i2cbus
attach	octeon_twsi at iobus
file	arch/mips/cavium/dev/octeon_twsi.c	octeon_twsi

device	octeon_mpi {}
attach	octeon_mpi at iobus
file	arch/mips/cavium/dev/octeon_mpi.c	octeon_mpi

device	octeon_gmx {}
attach	octeon_gmx at iobus
file	arch/mips/cavium/dev/octeon_gmx.c	octeon_gmx
d76 1
a76 1
attach	cnmac at octeon_gmx
d79 2
a80 2
attach	dwctwo at iobus with octeon_dwctwo
file	arch/mips/cavium/dev/octeon_dwctwo.c	octeon_dwctwo
@


1.4.18.1
log
@file files.octeon was added on branch tls-maxphys on 2017-12-03 11:36:27 +0000
@
text
@d1 101
@


1.4.18.2
log
@update from HEAD
@
text
@a0 101
#	$NetBSD$

file	arch/mips/mips/locore_octeon.S
file	arch/mips/mips/bus_dma.c
file	arch/mips/mips/mips3_clock.c
file	arch/mips/mips/mips3_clockintr.c

file	arch/mips/cavium/octeon_dma.c
file	arch/mips/cavium/octeon_intr.c
file	arch/mips/cavium/dev/octeon_ciu.c

defparam	opt_octeon.h			OCTEON_ECLK
defparam	opt_octeon.h			OCTEON_ETH_RING_MAX
defparam	opt_octeon.h			OCTEON_ETH_RING_MIN
defflag 	opt_octeon.h			OCTEON_ETH_DEBUG
						OCTEON_ETH_FAST_CRC
						OCTEON_ETH_IPD_RED
						OCTEON_ETH_USENFS
						OCTEON_USBN_CN31XX_DMA_WORKAROUND

device	mainbus {}
attach	mainbus at root
file	arch/mips/cavium/mainbus.c		mainbus
file	arch/mips/cavium/mainbus_octeon1p.c	mainbus

device	cpunode { [core=-1] }
attach	cpunode at mainbus

device	cpu {}
attach	cpu at cpunode with cpu_cpunode

device	wdog: sysmon_wdog
attach	wdog at cpunode with wdog_cpunode

file	arch/mips/cavium/octeon_cpunode.c	cpunode | cpu | wdog needs-flag

# I/O Bus

device	iobus {}
attach	iobus at mainbus
file	arch/mips/cavium/octeon_iobus.c		iobus
file	arch/mips/cavium/octeon1p_iobus.c	iobus
file	arch/mips/cavium/dev/octeon_fpa.c	iobus
file	arch/mips/cavium/dev/octeon_pow.c	iobus
file	arch/mips/cavium/dev/octeon_fau.c	iobus
file	arch/mips/cavium/dev/octeon_pip.c	iobus
file	arch/mips/cavium/dev/octeon_ipd.c	iobus
file	arch/mips/cavium/dev/octeon_pko.c	iobus
file	arch/mips/cavium/dev/octeon_asx.c	iobus
file	arch/mips/cavium/dev/octeon_smi.c	iobus

# I/O Bus devices

attach	com at iobus with octeon_uart_iobus
file	arch/mips/cavium/dev/octeon_uart.c	octeon_uart_iobus
options 	COM_REGMAP

device	octeon_rnm
attach	octeon_rnm at iobus
file	arch/mips/cavium/dev/octeon_rnm.c	octeon_rnm & rnd

device	octeon_twsi: i2cbus
attach	octeon_twsi at iobus
file	arch/mips/cavium/dev/octeon_twsi.c	octeon_twsi

device	octeon_mpi {}
attach	octeon_mpi at iobus
file	arch/mips/cavium/dev/octeon_mpi.c	octeon_mpi

device	octeon_gmx {}
attach	octeon_gmx at iobus
file	arch/mips/cavium/dev/octeon_gmx.c	octeon_gmx

# On-chip ethernet device(s)
device	cnmac: ether, ifnet, arp, mii
attach	cnmac at octeon_gmx
file	arch/mips/cavium/dev/if_cnmac.c		cnmac

attach	dwctwo at iobus with octeon_dwctwo
file	arch/mips/cavium/dev/octeon_dwctwo.c	octeon_dwctwo

# Boot-Bus

device	bootbus {}
attach	bootbus at mainbus
file	arch/mips/cavium/octeon_bootbus.c	bootbus

# Machine-independent I2O drivers.
include "dev/i2o/files.i2o"

# Machine-independent SCSI drivers
include "dev/scsipi/files.scsipi"

# Machine-independent ATA drivers
include "dev/ata/files.ata"

# Machine-independent USB device support
include "dev/usb/files.usb"

# Machine-independent PCI device support
include "dev/pci/files.pci"
@


1.4.2.1
log
@file files.octeon was added on branch nick-nhusb on 2015-06-06 14:40:01 +0000
@
text
@d1 101
@


1.4.2.2
log
@Sync with HEAD
@
text
@a0 101
#	$NetBSD: files.octeon,v 1.4 2015/06/06 04:34:23 matt Exp $

file	arch/mips/mips/locore_octeon.S
file	arch/mips/mips/bus_dma.c
file	arch/mips/mips/mips3_clock.c
file	arch/mips/mips/mips3_clockintr.c

file	arch/mips/cavium/octeon_dma.c
file	arch/mips/cavium/octeon_intr.c
file	arch/mips/cavium/dev/octeon_ciu.c

defparam	opt_octeon.h			OCTEON_ECLK
defparam	opt_octeon.h			OCTEON_ETH_RING_MAX
defparam	opt_octeon.h			OCTEON_ETH_RING_MIN
defflag 	opt_octeon.h			OCTEON_ETH_DEBUG
						OCTEON_ETH_FAST_CRC
						OCTEON_ETH_IPD_RED
						OCTEON_ETH_USENFS
						OCTEON_USBN_CN31XX_DMA_WORKAROUND

device	mainbus {}
attach	mainbus at root
file	arch/mips/cavium/mainbus.c		mainbus
file	arch/mips/cavium/mainbus_octeon1p.c	mainbus

device	cpunode { [core=-1] }
attach	cpunode at mainbus

device	cpu {}
attach	cpu at cpunode with cpu_cpunode

device	wdog: sysmon_wdog
attach	wdog at cpunode with wdog_cpunode

file	arch/mips/cavium/octeon_cpunode.c	cpunode | cpu | wdog needs-flag

# I/O Bus

device	iobus {}
attach	iobus at mainbus
file	arch/mips/cavium/octeon_iobus.c		iobus
file	arch/mips/cavium/octeon1p_iobus.c	iobus
file	arch/mips/cavium/dev/octeon_fpa.c	iobus
file	arch/mips/cavium/dev/octeon_pow.c	iobus
file	arch/mips/cavium/dev/octeon_fau.c	iobus
file	arch/mips/cavium/dev/octeon_pip.c	iobus
file	arch/mips/cavium/dev/octeon_ipd.c	iobus
file	arch/mips/cavium/dev/octeon_pko.c	iobus
file	arch/mips/cavium/dev/octeon_asx.c	iobus
file	arch/mips/cavium/dev/octeon_smi.c	iobus

# I/O Bus devices

attach	com at iobus with octeon_uart_iobus
file	arch/mips/cavium/dev/octeon_uart.c	octeon_uart_iobus
options 	COM_REGMAP

device	octeon_rnm
attach	octeon_rnm at iobus
file	arch/mips/cavium/dev/octeon_rnm.c	octeon_rnm & rnd

device	octeon_twsi: i2cbus
attach	octeon_twsi at iobus
file	arch/mips/cavium/dev/octeon_twsi.c	octeon_twsi

device	octeon_mpi {}
attach	octeon_mpi at iobus
file	arch/mips/cavium/dev/octeon_mpi.c	octeon_mpi

device	octeon_gmx {}
attach	octeon_gmx at iobus
file	arch/mips/cavium/dev/octeon_gmx.c	octeon_gmx

# On-chip ethernet device(s)
device	cnmac: ether, ifnet, arp, mii
attach	cnmac at octeon_gmx
file	arch/mips/cavium/dev/if_cnmac.c		cnmac

attach	dwctwo at iobus with octeon_dwctwo
file	arch/mips/cavium/dev/octeon_dwctwo.c	octeon_dwctwo

# Boot-Bus

device	bootbus {}
attach	bootbus at mainbus
file	arch/mips/cavium/octeon_bootbus.c	bootbus

# Machine-independent I2O drivers.
include "dev/i2o/files.i2o"

# Machine-independent SCSI drivers
include "dev/scsipi/files.scsipi"

# Machine-independent ATA drivers
include "dev/ata/files.ata"

# Machine-independent USB device support
include "dev/usb/files.usb"

# Machine-independent PCI device support
include "dev/pci/files.pci"
@


1.3
log
@Rework cavium support in preparation for MULTIPROCESSOR support
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.2 2015/05/01 07:23:47 hikaru Exp $
a27 1
file	arch/mips/cavium/octeon_cpunode.c	cpunode | cpu
d29 7
a35 2
device	cpu
attach	cpu at cpunode with cpunode_cpu
@


1.2
log
@Use dwc2 instead of octeon_usbc, and unify octeon_usbn to new octeon_dwctwo.
Internal USB memory stick of EdgeRouter Lite works now.
@
text
@d1 1
a1 1
#	$NetBSD: files.octeon,v 1.1 2015/04/29 08:32:00 hikaru Exp $
d26 7
@


1.1
log
@Initial import of Cavium Octeon and Octeon Plus SoC and
specifically Ubiquiti Networks EdgeRouter LITE support.
Currently the ethernet and uart are worked.
This support was contributed by Internet Initiative Japan Inc.
@
text
@d1 1
a1 1
#	$NetBSD$
d68 2
a69 4
device	octeon_usbn: usbus, usbroothub, usb_dma
attach	octeon_usbn at iobus
file	arch/mips/cavium/dev/octeon_usbn.c	octeon_usbn
file	arch/mips/cavium/dev/octeon_usbc.c	octeon_usbn
@


