summaryrefslogtreecommitdiff
path: root/sys/arch/sgi/conf
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/sgi/conf')
-rw-r--r--sys/arch/sgi/conf/GENERIC-IP2285
-rw-r--r--sys/arch/sgi/conf/RAMDISK-IP2295
-rw-r--r--sys/arch/sgi/conf/files.sgi29
3 files changed, 206 insertions, 3 deletions
diff --git a/sys/arch/sgi/conf/GENERIC-IP22 b/sys/arch/sgi/conf/GENERIC-IP22
new file mode 100644
index 00000000000..c062b6c4cb4
--- /dev/null
+++ b/sys/arch/sgi/conf/GENERIC-IP22
@@ -0,0 +1,85 @@
+# $OpenBSD: GENERIC-IP22,v 1.1 2012/03/28 20:44:23 miod Exp $
+#
+# THIS KERNEL IS FOR INDIGO (IP20), INDY (IP22) AND INDIGO2 (IP24) SYSTEMS ONLY.
+#
+# For further information on compiling OpenBSD kernels, see the config(8)
+# man page.
+#
+# For further information on hardware support for this architecture, see
+# the intro(4) man page. For further information about kernel options
+# for this architecture, see the options(4) man page. For an explanation
+# of each device driver in this file see the section 4 man page for the
+# device.
+
+machine sgi mips64
+include "../../../conf/GENERIC"
+maxusers 32 # Estimated number of users
+
+# Make options
+makeoption LINK_ADDRESS="0xffffffff88100000"
+# Force use of 16KB pages. The R5000 Indy, which has the infamous XKPHYS
+# coherency bug wrt ll/sc instructions, can not have more than 256MB of
+# physical memory, all of it fitting within CKSEG0.
+option PAGE_SHIFT="14"
+
+#option WSDISPLAY_COMPAT_RAWKBD # Provide raw scancodes; needed for X11
+
+# Define what targets to support
+option TGT_INDIGO # R4x00 Indigo (IP20)
+option TGT_INDIGO2 # Indigo2 (IP22/IP26/IP28)
+option TGT_INDY # Indy (IP24)
+option ARCBIOS # mandatory
+option CPU_R4000 # R4000/R4400 support (IP20/IP22/IP24)
+#option CPU_R4600 # R4600 support (IP22/IP24)
+option CPU_R5000 # R5000 support (IP24)
+
+config bsd swap generic
+
+#
+# Definition of system
+#
+mainbus0 at root
+cpu* at mainbus0
+clock0 at mainbus0
+
+int0 at mainbus0 # Interrupt Controller
+imc0 at mainbus0 # Memory Controller
+gio0 at imc0
+#eisa0 at imc0
+
+hpc0 at gio? addr 0x1fb80000
+hpc1 at gio? addr 0x1fb00000
+hpc2 at gio? addr 0x1f980000
+
+dpclock0 at hpc0 # IP20
+dsclock0 at hpc0 # IP22/24
+sq* at hpc? # On-board Ethernet or E++ adapter
+wdsc* at hpc? # On-board SCSI or GIO32 SCSI adapter
+#haltwo* at hpc? # Indy/Indigo2 Audio
+#panel* at hpc? # Indy front panel buttons
+#pckbc* at hpc? # Indy/Indigo2 keyboard and mouse
+
+zs* at hpc?
+zstty* at zs? # Serial ports
+
+#newport* at gio? # Indy Newport graphics
+#wsdisplay* at newport?
+
+#grtwo* at gio? # Express (GR2) graphics
+#wsdisplay* at grtwo?
+
+#light* at gio? # Light/Starter/Entry (LG1/LG2) graphics
+#wsdisplay* at light?
+
+scsibus* at scsi?
+sd* at scsibus?
+st* at scsibus?
+cd* at scsibus?
+ch* at scsibus?
+safte* at scsibus?
+ses* at scsibus?
+uk* at scsibus?
+
+pseudo-device crypto 1
+#pseudo-device hotplug 1 # devices hot plugging
+#pseudo-device wsmux 2 # Mouse and keyboard multiplexor
diff --git a/sys/arch/sgi/conf/RAMDISK-IP22 b/sys/arch/sgi/conf/RAMDISK-IP22
new file mode 100644
index 00000000000..91e2e00f390
--- /dev/null
+++ b/sys/arch/sgi/conf/RAMDISK-IP22
@@ -0,0 +1,95 @@
+# $OpenBSD: RAMDISK-IP22,v 1.1 2012/03/28 20:44:23 miod Exp $
+#
+# THIS KERNEL IS FOR INDIGO (IP20), INDY (IP22) AND INDIGO2 (IP24) SYSTEMS ONLY.
+
+machine sgi mips64
+
+maxusers 4
+option TIMEZONE=0 # minutes west of GMT (for)
+option DST=0 # use daylight savings rules
+
+# Make options
+makeoption LINK_ADDRESS="0xffffffff88100000"
+# Force use of 16KB pages. The R5000 Indy, which has the infamous XKPHYS
+# coherency bug wrt ll/sc instructions, can not have more than 256MB of
+# physical memory, all of it fitting within CKSEG0.
+option PAGE_SHIFT="14"
+
+option DDB
+
+# Filesystem options
+option CD9660 # ISO 9660 + Rock Ridge file system
+option FIFO # POSIX fifo support (in all filesystems)
+option FFS # fast filesystem
+#option MSDOSFS # Ability to read write MS-Dos filesystem
+option NFSCLIENT # Sun NFS-compatible filesystem (client)
+
+# Networking options
+option INET # IP + ICMP + TCP + UDP
+option INET6 # IPv6 (needs INET)
+
+# RAMDISK stuff
+option MINIROOTSIZE=10240
+option RAMDISK_HOOKS
+
+# Define what targets to support
+option TGT_INDIGO # R4x00 Indigo (IP20)
+option TGT_INDIGO2 # Indigo2 (IP22/IP26/IP28)
+option TGT_INDY # Indy (IP24)
+option ARCBIOS # mandatory
+option CPU_R4000 # R4000/R4400 support (IP20/IP22/IP24)
+#option CPU_R4600 # R4600 support (IP22/IP24)
+option CPU_R5000 # R5000 support (IP24)
+
+# Specify storage configuration using ramdisk
+config bsd root on rd0a swap on rd0b
+
+#
+# Definition of system
+#
+mainbus0 at root
+cpu* at mainbus0
+clock0 at mainbus0
+
+int0 at mainbus0 # Interrupt Controller
+imc0 at mainbus0 # Memory Controller
+gio0 at imc0
+#eisa0 at imc0
+
+hpc0 at gio? addr 0x1fb80000
+hpc1 at gio? addr 0x1fb00000
+hpc2 at gio? addr 0x1f980000
+
+dpclock0 at hpc0 # IP20
+dsclock0 at hpc0 # IP22/24
+sq* at hpc? # On-board Ethernet or E++ adapter
+wdsc* at hpc? # On-board SCSI or GIO32 SCSI adapter
+#pckbc* at hpc? # Indy/Indigo2 keyboard and mouse
+
+zs* at hpc?
+zstty* at zs? # Serial ports
+
+#newport* at gio? # Indy Newport graphics
+#wsdisplay* at newport?
+
+#grtwo* at gio? # Express (GR2) graphics
+#wsdisplay* at grtwo?
+
+#light* at gio? # Light/Starter/Entry (LG1/LG2) graphics
+#wsdisplay* at light?
+
+scsibus* at scsi?
+sd* at scsibus?
+st* at scsibus?
+cd* at scsibus?
+#ch* at scsibus?
+#uk* at scsibus?
+
+#### PSEUDO Devices
+pseudo-device loop 1 # network loopback
+pseudo-device bpfilter 1 # packet filter ports
+
+pseudo-device rd 1 # Ram disk.
+pseudo-device bio 1 # ioctl multiplexing device
+
+option BOOT_CONFIG # add support for boot -c
diff --git a/sys/arch/sgi/conf/files.sgi b/sys/arch/sgi/conf/files.sgi
index 83953010ed9..a13ff36f3c7 100644
--- a/sys/arch/sgi/conf/files.sgi
+++ b/sys/arch/sgi/conf/files.sgi
@@ -1,4 +1,4 @@
-# $OpenBSD: files.sgi,v 1.46 2011/11/15 22:27:53 deraadt Exp $
+# $OpenBSD: files.sgi,v 1.47 2012/03/28 20:44:23 miod Exp $
#
# maxpartitions must be first item in files.${ARCH}
#
@@ -14,6 +14,8 @@ file arch/sgi/sgi/bus_dma.c
file arch/sgi/sgi/conf.c
file arch/sgi/sgi/disksubr.c disk
file arch/sgi/sgi/lock_machdep.c multiprocessor
+file arch/sgi/sgi/ip22_machdep.c tgt_indigo | tgt_indigo2 |
+ tgt_indy
file arch/sgi/sgi/ip27_machdep.c tgt_origin
file arch/sgi/sgi/ip30_machdep.c tgt_octane
file arch/sgi/sgi/ip30_nmi.S tgt_octane & ddb
@@ -56,6 +58,21 @@ device clock
attach clock at mainbus
#
+# IP20/22/24 specific devices
+#
+define giobus {}
+device imc: giobus, eisabus
+attach imc at mainbus
+file arch/sgi/localbus/imc.c imc
+
+device int
+attach int at mainbus
+file arch/sgi/localbus/int.c int
+
+include "arch/sgi/gio/files.gio"
+include "arch/sgi/hpc/files.hpc"
+
+#
# O2 MACE localbus autoconfiguration devices
#
define macebus {[base = -1]}
@@ -87,6 +104,13 @@ major {cd = 3}
include "dev/i2o/files.i2o"
#
+# EISA Bus support
+#
+
+include "dev/eisa/files.eisa"
+file arch/sgi/sgi/eisa_machdep.c eisa
+
+#
# PCI Bus support
#
@@ -132,9 +156,9 @@ file arch/sgi/dev/iockbc.c iockbc |
# DS1687 Time-Of-Day calendar device
device dsrtc
-attach dsrtc at macebus with dsrtc_macebus
attach dsrtc at ioc with dsrtc_ioc
attach dsrtc at iof with dsrtc_iof
+attach dsrtc at macebus with dsrtc_macebus
file arch/sgi/dev/dsrtc.c dsrtc
# GBE framebuffer
@@ -207,4 +231,3 @@ file arch/sgi/dev/owmem_subr.c owmac | owserial
# IP35 SPD memory information
attach spdmem at mainbus with spdmem_mainbus
file arch/sgi/dev/spdmem_mainbus.c spdmem_mainbus
-