MILAN-PCIIDE revision 1.27
11.1Sleo#
21.25Scl# $NetBSD: MILAN-PCIIDE,v 1.27 2003/10/08 11:53:10 bouyer Exp $
31.1Sleo#
41.1Sleo# This file was automatically created. Changes will be
51.1Sleo# lost when running makeconf in this directory.
61.1Sleo#
71.6Slukem# Created from:
81.27Sbouyer#		NetBSD: MILAN.in,v 1.13 2003/10/08 11:52:50 bouyer Exp $
91.25Scl#		NetBSD: GENERIC.in,v 1.33 2003/09/22 14:11:16 cl Exp $
101.1Sleo
111.1Sleo#This configuration file is for a generic Milan
121.1Sleo
131.1Sleo#Generic atari
141.1Sleo
151.1Sleoinclude "arch/atari/conf/std.milan"
161.1Sleo
171.12Satatatoptions 	INCLUDE_CONFIG_FILE	# embed config file in kernel binary
181.12Satatat
191.1Sleo#Add support for about 16 users. This variable is used to size
201.1Sleo#various kernel structures.
211.1Sleo
221.1Sleomaxusers	16
231.1Sleo
241.1Sleooptions 	HZ=64		# Set the clock-rate (48/64/96)
251.1Sleo
261.1Sleo#Standard system options
271.1Sleooptions 	INSECURE	# disable kernel security levels
281.1Sleo#options 	NTP		# NTP phase/frequency locked loop
291.19Sjdc
301.20Swiz#Enable experimental buffer queue strategy for better responsiveness under 
311.19Sjdc#high disk I/O load. Use it with caution - it's not proven to be stable yet.
321.19Sjdc#options 	NEW_BUFQ_STRATEGY
331.1Sleo
341.1Sleo#(Co)processors this kernel should support
351.1Sleo
361.1Sleooptions 	M68040		# support for 040
371.1Sleooptions 	M68060		# support for 060
381.1Sleooptions 	FPSP		# 68040 Floatingpoint support
391.1Sleooptions 	M060SP		# MC68060 software support (Required for 060)
401.1Sleo
411.1Sleo#Networking options
421.1Sleo
431.6Slukemoptions 	INET		# IP + ICMP + TCP + UDP
441.1Sleo
451.1Sleooptions 	INET6		# IPV6
461.1Sleo#options 	IPSEC		# IP security
471.1Sleo#options 	IPSEC_ESP	# IP security (encryption part; define w/IPSEC)
481.1Sleo#options 	IPSEC_DEBUG	# debug for IP security
491.6Slukem#options 	GATEWAY		# packet forwarding
501.6Slukem#options 	MROUTING	# IP multicast routing
511.6Slukemoptions 	NS		# XNS
521.6Slukem#options 	NSIP		# XNS tunneling over IP
531.6Slukemoptions 	ISO,TPIP	# OSI
541.6Slukem#options 	EON		# OSI tunneling over IP
551.6Slukemoptions 	CCITT,LLC,HDLC	# X.25
561.16Slukem
571.6Slukemoptions 	NETATALK	# AppleTalk networking protocols
581.6Slukem
591.6Slukemoptions 	PPP_BSDCOMP	# BSD-Compress compression support for PPP
601.6Slukemoptions 	PPP_DEFLATE	# Deflate compression support for PPP
611.6Slukemoptions 	PPP_FILTER	# Active filter support for PPP (requires bpf)
621.1Sleo
631.6Slukemoptions 	PFIL_HOOKS	# pfil(9) packet filter hooks
641.6Slukemoptions 	IPFILTER_LOG	# ipmon(8) log support
651.17Sprovos#options  	IPFILTER_DEFAULT_BLOCK	# block packages by default
661.1Sleo
671.3Sabs#options 	TCP_DEBUG	# Record last TCP_NDEBUG packets with SO_DEBUG
681.3Sabs
691.1Sleo#File systems
701.1Sleofile-system 	FFS		# Berkeley fast file system
711.1Sleofile-system 	MFS		# Memory based filesystem
721.1Sleofile-system 	KERNFS		# Kernel parameter filesystem
731.1Sleofile-system 	MSDOSFS		# MSDOS filesystem
741.1Sleofile-system 	CD9660		# ISO 9660 filesystem with Rock Ridge
751.1Sleo
761.1Sleofile-system 	NFS		# Network File System client side code
771.1Sleofile-system 	PROCFS		# Process filesystem
781.1Sleofile-system 	FDESC		# /dev/fd
791.1Sleofile-system 	NULLFS		# Loopback filesystem
801.1Sleofile-system 	OVERLAY		# overlay filesystem
811.1Sleofile-system 	UNION		# union file system
821.1Sleofile-system 	UMAPFS		# null file system (with uid & gid remapping)
831.1Sleofile-system 	PORTAL		# portal file system
841.1Sleofile-system 	EXT2FS		# second extended file system (linux)
851.1Sleofile-system 	LFS		# log-structured file system
861.1Sleo
871.1Sleo#File system options
881.1Sleooptions 	QUOTA		# Disk quotas for local disks
891.1Sleo#options 	FFS_EI		# FFS Endian Independant support
901.6Slukemoptions 	SOFTDEP		# FFS soft updates support.
911.1Sleooptions 	NFSSERVER	# Network File System server side code
921.1Sleo#options 	EXT2FS_SYSTEM_FLAGS	# makes ext2fs file flags (append and
931.15Slukem				#immutable) behave as system flags.
941.1Sleo
951.1Sleo#Misc. debugging options
961.1Sleo
971.1Sleooptions 	PANICWAIT	# Require keystroke to dump/reboot
981.1Sleooptions 	DDB		# Kernel debugger
991.1Sleo
1001.1Sleooptions 	DDB_HISTORY_SIZE=100	# Enable history editing in DDB
1011.1Sleo#options 	DEBUG		# expensive debugging checks/support
1021.1Sleo
1031.2Swiz#Compatibility options for various existing systems
1041.1Sleo
1051.1Sleooptions 	COMPAT_43	# 4.3 BSD compatible system calls (required)
1061.1Sleooptions 	COMPAT_10	# Compatibility to NetBSD1.0
1071.1Sleooptions 	COMPAT_11	# Compatibility to NetBSD1.1
1081.1Sleooptions 	COMPAT_12	# Compatibility to NetBSD1.2
1091.1Sleooptions 	COMPAT_13	# Compatibility to NetBSD1.3
1101.1Sleooptions 	COMPAT_14	# Compatibility to NetBSD1.4
1111.25Scloptions 	COMPAT_15	# Compatibility to NetBSD1.5
1121.25Scloptions 	COMPAT_16	# Compatibility to NetBSD1.6
1131.1Sleo
1141.1Sleo#options 	COMPAT_09	# has no meaning on the atari
1151.1Sleo#options 	COMPAT_SUNOS	# Support to run Sun-3 executables
1161.1Sleo#options 	COMPAT_SVR4	# Support to run SVR4 executables
1171.1Sleo#options 	COMPAT_LINUX	# Support to run Linux/m68k executables
1181.3Sabs#options 	TCP_COMPAT_42	# 4.2BSD TCP/IP bug compat. Not recommended.
1191.1Sleo
1201.6Slukemoptions 	COMPAT_AOUT_M68K # Compatibility to a.out executables
1211.6Slukemoptions 	EXEC_AOUT	# a.out format executables
1221.6Slukem
1231.1Sleo#Support for System V IPC facilities.
1241.1Sleo
1251.1Sleooptions 	SYSVSHM			# System V shared memory
1261.1Sleooptions 	SYSVMSG			# System V messages
1271.1Sleooptions 	SYSVSEM			# System V semaphores
1281.4Sleo#options 	SEMMNI=10		# number of semaphore identifiers
1291.4Sleo#options 	SEMUME=10		# max number of undo entries per proc.
1301.4Sleo#options 	SEMMNU=30		# number of undo structures in system
1311.1Sleo
1321.1Sleo#Support for various kernel options
1331.1Sleo
1341.1Sleooptions 	KTRACE			# Add kernel tracing system call
1351.17Sprovosoptions 	SYSTRACE		# system call vetting via systrace(1)
1361.1Sleooptions 	DIAGNOSTIC		# Add additional error checking code
1371.16Slukemoptions 	USERCONF		# userconf(4) support
1381.9Sleo#options	PIPE_SOCKETPAIR	# smaller, but slower pipe(2)
1391.1Sleo
1401.1Sleo#These options enable verbose messages for several subsystems.
1411.1Sleo#Warning, these may compile large string tables into the kernel!
1421.1Sleo
1431.1Sleooptions 	SCSIVERBOSE		# human readable SCSI error messages
1441.1Sleo
1451.9Sleooptions 	MIIVERBOSE		# verbose PHY autoconfig messages
1461.1Sleooptions 	PCIVERBOSE		# verbose PCI device autoconfig messages
1471.1Sleo#options 	PCI_CONFIG_DUMP		# verbosely dump PCI config space
1481.1Sleo
1491.1Sleo#Atari specific options
1501.1Sleo
1511.1Sleo#options 	KFONT_8x8		# Use 8x8 font instead of 8x16
1521.1Sleooptions 	ST_POOL_SIZE=22		# smallest that allows TT-HIGH
1531.1Sleo
1541.1Sleooptions 	MEMORY_DISK_HOOKS	# Boot RAM-disk
1551.1Sleooptions 	DISKLABEL_NBDA		# NetBSD disklabels (required)
1561.1Sleooptions 	DISKLABEL_AHDI		# NetBSD/AHDI disklabels
1571.1Sleo
1581.1Sleooptions 	SERCONSOLE		# modem1 console support
1591.1Sleooptions 	RELOC_KERNEL		# TT/Falcon: relocate kernel to TT-RAM
1601.16Slukemoptions 	MSGBUFSIZE=32768        # size of kernel msg. buffer
1611.9Sleo#options 	STATCLOCK	        # Separate {stat,prof}clock
1621.1Sleo
1631.1Sleo#Try linked commands on all targets
1641.1Sleooptions 	TRY_SCSI_LINKED_COMMANDS=0x7f
1651.1Sleo
1661.1Sleo#Build one kernel that can boot from any disk.
1671.1Sleo
1681.1Sleoconfig		netbsd root on ? type ?
1691.1Sleo
1701.1Sleopseudo-device	sl			# Slip
1711.1Sleopseudo-device	ppp			# ppp
1721.11Sbjh21
1731.7Sjdolecekpseudo-device	pppoe			# PPP over Ethernet (RFC 2516)
1741.11Sbjh21
1751.1Sleopseudo-device	pty			# pseudo-terminals
1761.1Sleopseudo-device	loop			# Loopback network
1771.1Sleopseudo-device	vnd		3	# 3 pseudo disks (see vnconfig)
1781.22Sleopseudo-device	md		3	# Boot memory disk
1791.1Sleo
1801.1Sleopseudo-device	bpfilter	2	# berkeley packet filters
1811.1Sleopseudo-device	tun		2	# network tunnel
1821.1Sleo#pseudo-device	gre		2	# generic L3 over IP tunnel
1831.1Sleopseudo-device	gif		4	# IPv[46] over IPv[46] tunnel (RFC1933)
1841.1Sleo#pseudo-device	faith		1	# IPv[46] tcp relay translation i/f
1851.1Sleo#pseudo-device	stf		1	# 6to4 IPv6 over IPv4 encapsulation
1861.16Slukem
1871.1Sleopseudo-device	vlan			# IEEE 802.1q encapsulation
1881.7Sjdolecekpseudo-device	bridge			# simple inter-network bridging
1891.16Slukem
1901.1Sleopseudo-device	ccd		4	# concatenating disk driver
1911.18Selric#pseudo-device	cgd		4	# cryptographic disk driver
1921.7Sjdolecekpseudo-device	raid		8	# RAIDframe disk driver
1931.7Sjdolecekoptions 	RAID_AUTOCONFIG		# auto-configuration of RAID components
1941.7Sjdolecek#Options to enable various other RAIDframe RAID types.
1951.7Sjdolecek#options	RF_INCLUDE_EVENODD=1
1961.7Sjdolecek#options	RF_INCLUDE_RAID5_RS=1
1971.7Sjdolecek#options	RF_INCLUDE_PARITYLOGGING=1
1981.7Sjdolecek#options	RF_INCLUDE_CHAINDECLUSTER=1
1991.7Sjdolecek#options	RF_INCLUDE_INTERDECLUSTER=1
2001.7Sjdolecek#options 	RF_INCLUDE_PARITY_DECLUSTERING=1
2011.7Sjdolecek#options	RF_INCLUDE_PARITY_DECLUSTERING_DS=1
2021.1Sleopseudo-device	ipfilter		# IP filtering device
2031.1Sleopseudo-device	rnd			# /dev/random and in-kernel generator
2041.15Slukempseudo-device	clockctl		# user control of clock subsystem
2051.1Sleo
2061.9Sleo#MII/PHY support
2071.9Sleoexphy*	at mii? phy ?			# 3Com internal PHYs
2081.9Sleoinphy*	at mii? phy ?			# Intel 82555 PHYs
2091.9Sleoiophy*	at mii? phy ?			# Intel 82553 PHYs
2101.9Sleoukphy*	at mii? phy ?			# generic unknown PHYs
2111.9Sleo
2121.9Sleo#PCI network interfaces
2131.9Sleo#If unsure, check the port-atari page for tested cards.
2141.9Sleoep*	at pci? dev ? function ?	# 3Com 3c59x
2151.9Sleofxp*	at pci? dev ? function ?	# Intel EtherExpress PRO 10+/100B
2161.9Sleo
2171.9Sleo#This is the only tested audio card at the moment.
2181.9Sleo
2191.9Sleoeso*	at pci? dev ? function ?	# ESS Solo-1 PCI AudioDrive
2201.9Sleoaudio*	at eso?
2211.9Sleo
2221.1Sleo#Hardware options for GENERIC are in the various machine type specific files
2231.1Sleo
2241.1Sleo#For the moment, the MILAN will be the only one to use wscons, so define
2251.1Sleo#the wscons options here too for the moment.
2261.1Sleo#wscons options
2271.1Sleo
2281.1Sleo#builtin terminal emulations
2291.1Sleo#options 	WSEMUL_SUN	# sun terminal emulation
2301.1Sleooptions 	WSEMUL_VT100	# VT100 / VT220 emulation
2311.1Sleo#different kernel output - see dev/wscons/wsdisplayvar.h
2321.6Slukem#XXX:	Since the Milan VGA works in monochrome for the moment, _only_
2331.1Sleo#use black and white here!
2341.1Sleooptions 	WS_KERNEL_FG=WSCOL_WHITE
2351.1Sleooptions 	WS_KERNEL_BG=WSCOL_BLACK
2361.1Sleo
2371.1Sleo#compatibility to other console drivers
2381.1Sleo#options 	WSDISPLAY_COMPAT_USL	# VT handling
2391.1Sleo#options 	WSDISPLAY_COMPAT_RAWKBD	# can get raw scancodes
2401.1Sleo
2411.1Sleo#see dev/pckbc/wskbdmap_mfii.c for implemented layouts
2421.1Sleo#options 	PCKBD_LAYOUT="(KB_DE | KB_NODEAD)"
2431.1Sleo#allocate a number of virtual screens at autoconfiguration time
2441.1Sleooptions 	WSDISPLAY_DEFAULTSCREENS=4
2451.1Sleo#use a large software cursor that doesn't blink
2461.1Sleooptions 	PCDISPLAY_SOFTCURSOR
2471.1Sleo#modify the screen type of the console; defaults to "80x25"
2481.1Sleo#options 	VGA_CONSOLE_SCREENTYPE="\"80x25\""
2491.1Sleo
2501.1Sleo#The following sections describe various hardware options.
2511.1Sleo
2521.21Sleoisab0 		at mainbus0			# ISA-bus
2531.21Sleoisa0 		at isab0
2541.21Sleopcib0 		at mainbus0			# PCI-bus
2551.21Sleopci0 		at pcib0
2561.14Sleonvr0 		at mainbus0			# nvram driver
2571.1Sleoser0 		at mainbus0
2581.6Slukemfdcisa0 	at isa? port 0x3f0 irq 6 drq 2	# standard PC floppy contr.
2591.1Sleofdisa0 		at fdcisa0 drive 0
2601.1Sleo
2611.1Sleo#Ok, the stuff below requires some explanation...
2621.1Sleo#Initially, when Atari started with IDE on the Falcon, they decided to
2631.1Sleo#swap the bytelanes on the IDE controller. So all data on the disk was
2641.1Sleo#byteswapped and all CDROM drivers had to byteswap the data to make
2651.1Sleo#this nice idea work... To remain compatible with the 'current' drivers,
2661.5Swiz#this scheme was adopted by the Hades hardware (hence wdc_mb.c). On the Milan
2671.1Sleo#however, the change was reverted. But... now the hardware is connected to
2681.1Sleo#a little endian (ISA) bus, in PIO mode this is essentially the same as
2691.1Sleo#swapping the bytelanes. The fun starts when you use the PCIIDE DMA mode
2701.1Sleo#provided by the PCI_ISA bridge on the Milan. CDROM's are OK, but the data
2711.15Slukem# on the disk is swapped :-( Now luckily, both the Milan and HDDRIVER
2721.1Sleo#developers have thought up a solution, you can make a byteswapped disk
2731.1Sleo#during the partioning with HDDRIVER and TOS supports booting from it!
2741.1Sleo#Ok, now you have to choose:
2751.1Sleo#- If _none_ of your disks are marked byteswapped by HDDRIVER, choose
2761.14Sleo#the MILAN-ISAIDE version.
2771.14Sleo#- If _all_ of your disks are byteswapped, use the  MILAN-PCIIDE version
2781.1Sleo#The is no way to mix things!
2791.1Sleo
2801.27Sbouyerpciide* 	at pci? dev ? function ? flags 0x0000	# GENERIC pciide driver
2811.27Sbouyeracardide*	at pci? dev ? function ?	# Acard IDE controllers
2821.27Sbouyeraceride* 	at pci? dev ? function ?	# Acer Lab IDE controllers
2831.27Sbouyercmdide* 	at pci? dev ? function ?	# CMD tech IDE controllers
2841.27Sbouyercypide* 	at pci? dev ? function ?	# Cypress IDE controllers
2851.27Sbouyerhptide* 	at pci? dev ? function ?	# Triones/HighPoint IDE controllers
2861.27Sbouyeroptiide* 	at pci? dev ? function ?	# Opti IDE controllers
2871.27Sbouyerpiixide* 	at pci? dev ? function ?	# Intel IDE controllers
2881.27Sbouyerpdcide* 	at pci? dev ? function ?	# Promise IDE controllers
2891.27Sbouyersiside* 	at pci? dev ? function ?	# SiS IDE controllers
2901.27Sbouyerslide*  	at pci? dev ? function ?	# Symphony Labs IDE controllers
2911.27Sbouyerviaide* 	at pci? dev ? function ?	# VIA/AMD/Nvidia IDE controllers
2921.26Sbouyeratabus* 	at pciide? channel ?
2931.27Sbouyeratabus* 	at acardide? channel ?
2941.27Sbouyeratabus* 	at aceride? channel ?
2951.27Sbouyeratabus* 	at cmdide? channel ?
2961.27Sbouyeratabus* 	at cypide? channel ?
2971.27Sbouyeratabus* 	at hptide? channel ?
2981.27Sbouyeratabus* 	at optiide? channel ?
2991.27Sbouyeratabus* 	at piixide? channel ?
3001.27Sbouyeratabus* 	at pdcide? channel ?
3011.27Sbouyeratabus* 	at siside? channel ?
3021.27Sbouyeratabus* 	at slide? channel ?
3031.27Sbouyeratabus* 	at viaide? channel ?
3041.1Sleo
3051.1Sleo#The Milan uses wscons
3061.1Sleo#XXX without the __HAVE_NWSCONS option, the keyboard won't work...
3071.15Slukem#
3081.1Sleooptions 	__HAVE_NWSCONS
3091.1Sleovga0 		at pci? dev ? function ?	# a PCI VGA card
3101.1Sleowsdisplay* 	at vga? console ?		# as a wscons console
3111.1Sleopckbc0 		at isa? 			# PC keyboard controller
3121.1Sleopckbd* 		at pckbc?			# PC keyboard
3131.1Sleowskbd* 		at pckbd? console ?		# wscons keyboard
3141.1Sleo
3151.26Sbouyer#ATA devices
3161.26Sbouyerwd*		at atabus? drive ?
3171.26Sbouyeratapibus* 	at atabus?				# ATAPI bus support
3181.1Sleo#ATAPI devices
3191.1Sleocd* 		at atapibus? drive ?		# ATAPI CD-ROM drives
320