Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/sparc64 - auxio cleanup and sbus support.



details:   https://anonhg.NetBSD.org/src/rev/efff0a3c7116
branches:  trunk
changeset: 484930:efff0a3c7116
user:      mrg <mrg%NetBSD.org@localhost>
date:      Sat Apr 15 03:08:12 2000 +0000

description:
- auxio cleanup and sbus support.
- make GENERIC64 include GENERIC and set the 3 optoins it needs.  suggested
  by hubert feyrer.
- add a comment that we maybe should use the `bpp' driver, not the lpt, on
  the ebus because the `bpp' driver does DMA already.
- ebus_attach_args got a member renamed

diffstat:

 sys/arch/sparc64/conf/GENERIC         |   11 +-
 sys/arch/sparc64/conf/GENERIC64       |  454 +---------------------------------
 sys/arch/sparc64/conf/files.sparc64   |   13 +-
 sys/arch/sparc64/dev/auxio.c          |  163 ++++++++++++
 sys/arch/sparc64/dev/auxio_ebus.c     |  138 ----------
 sys/arch/sparc64/dev/auxioreg.h       |   16 +-
 sys/arch/sparc64/dev/auxiovar.h       |   54 ++-
 sys/arch/sparc64/dev/cs4231_ebus.c    |    4 +-
 sys/arch/sparc64/dev/ebus.c           |   10 +-
 sys/arch/sparc64/dev/ebusvar.h        |    4 +-
 sys/arch/sparc64/dev/fd.c             |   81 +----
 sys/arch/sparc64/dev/lpt_ebus.c       |    4 +-
 sys/arch/sparc64/sparc64/bsd_fdintr.s |   10 +-
 13 files changed, 272 insertions(+), 690 deletions(-)

diffs (truncated from 1213 to 300 lines):

diff -r 3032c08e71a5 -r efff0a3c7116 sys/arch/sparc64/conf/GENERIC
--- a/sys/arch/sparc64/conf/GENERIC     Sat Apr 15 03:07:38 2000 +0000
+++ b/sys/arch/sparc64/conf/GENERIC     Sat Apr 15 03:08:12 2000 +0000
@@ -1,8 +1,8 @@
-#      $NetBSD: GENERIC,v 1.29 2000/04/13 11:23:14 mrg Exp $
+#      $NetBSD: GENERIC,v 1.30 2000/04/15 03:08:12 mrg Exp $
 
 include "arch/sparc64/conf/std.sparc64"
 
-#ident                 "GENERIC-$Revision: 1.29 $"
+#ident                 "GENERIC-$Revision: 1.30 $"
 
 maxusers       32
 
@@ -215,7 +215,8 @@
 #### Standard system devices -- all required for a given architecture
 
 ## Auxiliary system registers -- We use the OBP for power management
-auxio0 at ebus?                                # auxio registers
+auxio* at ebus?                                # auxio registers
+auxio* at sbus? slot ? offset ?                # auxio registers
 
 # We also need:
 bpp*   at sbus? slot ? offset ?                # parallel port
@@ -305,7 +306,9 @@
 ## Floppy controller and drive found on SPARCstations.
 
 # need share with the sparc, and everyone else.  needs to use auxio.
-#fdc0  at sbus? slot ? offset ?
+# actually, the ebus version has (will have) direct access to it's AUXIO
+# register space (it is mapped in to fdthree not auxio).
+#fdc0  at sbus? slot ? offset ?                # SUNW,fdtwo
 #fdc0  at ebus?                                # fdthree
 #fd*   at fdc0                                 # the drive itself
 
diff -r 3032c08e71a5 -r efff0a3c7116 sys/arch/sparc64/conf/GENERIC64
--- a/sys/arch/sparc64/conf/GENERIC64   Sat Apr 15 03:07:38 2000 +0000
+++ b/sys/arch/sparc64/conf/GENERIC64   Sat Apr 15 03:08:12 2000 +0000
@@ -1,451 +1,9 @@
-#      $NetBSD: GENERIC64,v 1.12 2000/04/13 11:23:14 mrg Exp $
-
-include "arch/sparc64/conf/std.sparc64"
-
-#ident                 "GENERIC-$Revision: 1.12 $"
-
-maxusers       32
-
-## System kernel for a 64-bit configuration.  See options(4) for more detail.
-
-
-# Options for variants of the Sun SPARC architecure.
-# We currently support three architecture types; at least one is required.
-options        SUN4U           # sun4u - Ultra 140 and 170
-options        TRAPWIN
-options        __ELF__         # we use elf 
-options        _LP64           # we're using a 64-bit compiler
-
-## System options specific to the sparc machine type
-
-## Use a faster console than the PROM's slow drawing routines.  Not needed
-## for headless (no framebuffer) machines.
-# XXX broken on sparc64
-#options       RASTERCONSOLE           # fast rasterop console
-#options       FONT_GALLANT12x22       # the console font
-#options       FONT_BOLD8x16           # a somewhat smaller font
-
-#### System options that are the same for all ports
-
-## Root device configuration: change the ?'s if you are going to use a
-## nonstandard root partition (other than where the kernel is booted from)
-## and/or nonstandard root type (not ffs or nfs).  Normally this can be
-## automagically determined at boot time.
-
-config         netbsd  root on ? type ?
-
-## UVM options.
-#options       UVM_PAGE_TRKOWN
-#options       UVMHIST
-#options       UVMHIST_PRINT   # Loud!
-
-## System call tracing (see ktrace(1)).
-options        KTRACE
-
-## Collect statistics on kernel malloc's and free's.  This does have a
-## significant performance hit on slower machines, so it is intended for
-## diagnostic use only.
-#options       KMEMSTATS
-
-## System V compatible IPC subsystem.  (msgctl(2), semctl(2), and shmctl(2))
-options        SYSVMSG         # System V message queues
-options        SYSVSEM         # System V semaphores
-options        SYSVSHM         # System V shared memory
-#options       SHMMAXPGS=1024  # 1024 pages is the default
-
-## Loadable kernel module support; still under development.
-options        LKM
-
-## NFS boot options; default on sparc is the bootparam protocol
-options        NFS_BOOT_BOOTPARAM
-#options       NFS_BOOT_BOOTP
-#options       NFS_BOOT_DHCP
-
-#### Debugging options
-
-## The DDB in-kernel debugger runs at panic (unless DDB_ONPANIC=0), or at
-## serial console break or keyboard reset, where the PROM would normally
-## intercept.  DDB_HISTORY_SIZE adds up/down arrow command history.
-# we enable DDB in GENERIC for now.
-options        DDB                     # kernel dynamic debugger
-options        DDB_HISTORY_SIZE=100    # enable history editing in DDB
-#options       DDB_ONPANIC             # see also sysctl(8): `ddb.onpanic'
-
-## You may also use gdb, on another computer connected to this machine over
-## a serial port.  Both KGDBDEV and KGDBRATE should be specified; KGDBDEV is
-## a dev_t encoded device number of the serial port to use.
-## (0xc01 = ttya, 0xc02 = ttyb.)
-#options       KGDB            # support for kernel gdb
-#options       KGDBDEV=0xc01   # kgdb device number (this sample is `ttyb')
-#options       KGDBRATE=38400  # baud rate
-
-
-## Compile the kernel with debugging symbols (`netbsd.gdb' is the debug file),
-## such that gdb(1) can be used on a kernel coredump.
-
-#makeoptions   DEBUG="-g"
-
-
-## Adds code to the kernel that does internal consistency checks, and will
-## cause the kernel to panic if corruption of internal data structures
-## is detected.
-#options       DIAGNOSTIC      # extra kernel sanity checking
-
-## Enable (possibly expensive) debugging code that may also display messages
-## on the system console
-#options       DEBUG
-
-## Make SCSI error messages more verbose when explaining their meanings.
-options        SCSIVERBOSE
-options        PCIVERBOSE
-#options       PCI_CONFIG_DUMP # verbosely dump PCI config space
-
-## `INSECURE' turns off the kernel security level (securelevel = 0 always).
-## This allows writing to /dev/mem, loading kernel modules while multi-user,
-## and other insecurities good only for development work.  Do not use this
-## option on a production machine.
-#options       INSECURE
+#      $NetBSD: GENERIC64,v 1.13 2000/04/15 03:08:12 mrg Exp $
 
-## Allow non-root users to grab /dev/console with programs such as xconsole.
-## `xconsole' therefore does not need setuid root with this option enabled.
-#options       UCONSOLE
-
-## `FDSCRIPTS' allows non-readable but executable scripts by providing a
-## pre-opened opaque file to the script interpreter.  `SETUIDSCRIPTS',
-## which implies FDSCRIPTS, allows scripts to be set-user-id using the same
-## opaque file mechanism.  Perl calls this "secure setuid scripts."
-
-#options       FDSCRIPTS
-#options       SETUIDSCRIPTS
-
-## Options for compatibility with previous releases foreign system binaries.
-## In the cases of COMPAT_SUNOS and COMPAT_SVR4, you may need to set up
-## additional user-level utilities or system configuration files. See
-## compat_sunos(8) and compat_svr4(8).
-
-options        COMPAT_43       # 4.3BSD system interfaces
-options        COMPAT_10       # NetBSD 1.0 binary compatibility
-options        COMPAT_11       # NetBSD 1.1 binary compatibility
-options        COMPAT_12       # NetBSD 1.2 binary compatibility
-options        COMPAT_13       # NetBSD 1.3 binary compatibility
-options        COMPAT_14       # NetBSD 1.4 binary compatibility
-options        COMPAT_NETBSD32 # NetBSD/sparc binary compatibility
-options        COMPAT_SUNOS    # SunOS 4.x binary compatibility
-options        COMPAT_SVR4     # SunOS 5.x binary compatibility
-#options       COMPAT_AOUT     # NetBSD/sparc compat support
-options        EXEC_AOUT       # execve(2) support for a.out binaries
-options        EXEC_ELF32      # Exec module for SunOS 5.x binaries.
-options        EXEC_ELF64      # Exec module for sparc64 & SunOs 5.x binaries.
-#options       SYSCALL_DEBUG
-
-## File systems.  You probably need at least one of FFS or NFS.
-file-system    FFS             # Berkeley Fast Filesystem
-file-system    NFS             # Sun NFS-compatible filesystem client
-file-system    KERNFS          # kernel data-structure filesystem
-file-system    NULLFS          # NULL layered filesystem
-file-system    OVERLAY         # overlay file system
-file-system    MFS             # memory-based filesystem
-file-system    FDESC           # user file descriptor filesystem
-file-system    UMAPFS          # uid/gid remapping filesystem
-file-system    LFS             # Log-based filesystem (still experimental)
-file-system    PORTAL          # portal filesystem (still experimental)
-file-system    PROCFS          # /proc
-file-system    CD9660          # ISO 9660 + Rock Ridge file system
-file-system    UNION           # union file system
-file-system    MSDOSFS         # MS-DOS FAT filesystem(s).
-
-## File system options.
-options        NFSSERVER       # Sun NFS-compatible filesystem server
-options        QUOTA           # FFS quotas
-#options       FFS_EI          # FFS Endian Independent support
-#options       SOFTDEP         # FFS soft updates support.
-
-# Pull in config fragments for kernel crypto.  This is required for
-# options IPSEC etc. to work. If you want to run with IPSEC, uncomment
-# one of these, based on whether you use crypto-us or crypto-intl, and
-# adjust the prefixes as necessary.
-
-#prefix ../crypto-us/sys
-#cinclude "conf/files.crypto-us"
-#prefix
-
-#prefix ../crypto-intl/sys
-#cinclude "conf/files.crypto-intl"
-#prefix
-
-## Network protocol support.  In most environments, INET is required.
-options        INET            # IP (Internet Protocol) v4
-options        INET6           # IPV6
-#options       IPSEC           # IP security
-#options       IPSEC_ESP       # IP security (encryption part; define w/IPSEC)
-#options       IPSEC_DEBUG     # debug for IP security
-options        TCP_COMPAT_42   # 4.2BSD IP implementation compatibility
-#options       GATEWAY         # packet forwarding ("router switch")
-options        MROUTING        # packet forwarding of multicast packets
-#options       DIRECTED_BROADCAST      # allow broadcasts through routers
-options        NS              # Xerox NS networking
-#options       NSIP            # Xerox NS tunneling over IP
-options        ISO,TPIP        # OSI networking
-options        EON             # OSI tunneling over IP
-#options       CCITT,LLC,HDLC  # X.25 packet switched protocol
-options        NETATALK        # AppleTalk (over Ethernet) protocol
-options        NTP             # Network Time Protocol in-kernel support
-#options       PPS_SYNC        # Add serial line synchronization for NTP
-options        PFIL_HOOKS      # Add pfil(9) hooks, intended for custom LKMs.
-options        IPFILTER_LOG    # Add ipmon(8) logging for ipfilter device
-options        PPP_BSDCOMP     # Add BSD compression to ppp device
-options        PPP_DEFLATE     # Add deflate (libz) compression to ppp device
-options        PPP_FILTER      # Add active filters for ppp (via bpf)
-
-
-#### Main bus and CPU .. all systems.
-mainbus0 at root
-cpu0   at mainbus0
-
-#### Bus types found on SPARC systems.
-
-sbus0  at mainbus0                             # Ultra 1
-#upa0  at mainbus0                             # Ultra 1E, Ultra 2, Ex0000
-psycho*        at mainbus0                             # Darwin, Ultra5
-pci*   at psycho?
-pci*   at simba?
-simba* at pci? dev ? function ?                # `APB' support.
-ebus*  at pci?                                 # ebus devices
-
-#### Standard system devices -- all required for a given architecture
-
-## Auxiliary system registers -- We use the OBP for power management
-auxio0 at ebus?                                # auxio registers
-
-# We also need:
-bpp*   at sbus? slot ? offset ?                # parallel port
-lpt*   at ebus?                                # parallel port
+include "arch/sparc64/conf/GENERIC"
 
-## Mostek clock found on 4/300, sun4c, sun4m and sun4u systems.
-## The Mostek clock NVRAM is the "eeprom" on sun4/300 systems.
-clock* at sbus? slot ? offset ?
-clock* at ebus?
-
-## Timer chip found on 4/300, sun4c, sun4m and (some) sun4u systems.
-timer* at mainbus0                             # sun4c
-
-#### Serial port configuration
-
-## Zilog 8530 serial chips.  Each has two-channels.
-## zs0 is ttya and ttyb.  zs1 is the keyboard and mouse.
-zs0    at sbus? slot ? offset ?
-zstty0 at zs0 channel 0        # ttya
-zstty1 at zs0 channel 1        # ttyb
-
-zs1    at sbus? slot ? offset ?
-kbd0   at zs1 channel 0        # keyboard
-ms0    at zs1 channel 1        # mouse
-
-## PCI machines have serial ports:
-##     Siemens SAB82532 controller: ttya and ttyb (`su'; sab)
-##     Part of NS PC87332VLJ Super I/O controller: kbd/mouse (`se'; com)
-
-## These are two SAB82532 controllers
-#sab0  at ebus?                        # ttya/ttyb
-#sabtty0       at sab0 channel 0       # ttya
-#sabtty1       at sab0 channel 1       # ttyb
-
-## Part of a PC87332VLJ?
-#ucom0 at ebus? addr 0x3083f8          # `com' driver
-#ucom1 at ebus? addr 0x3062f8          # 
-#ucom0 at ebus?                        # `com' driver
-#ucom1 at ebus?                        # 
-#kbd0  at ucom0 channel 0              # keyboard
-#ms0   at ucom1 channel 1              # mouse



Home | Main Index | Thread Index | Old Index