Commit Graph

15601 Commits

Author SHA1 Message Date
cgd 75da3d4eaa add device declarations for 'puc'-related devices. Add lpt attaching
to puc to the files file, because it can't go in files.pci (see comments
here or there).
1998-06-26 18:58:38 +00:00
cgd d2ed6f63d6 sync with reality 1998-06-26 18:20:13 +00:00
is 1bec8366fd Fix a problem with bogus hangups that Thorsten Frueauf has reported. 1998-06-26 17:50:20 +00:00
tsubai 57d093fa36 Powerdown support. 1998-06-26 14:18:08 +00:00
tsubai 0fe318b3bc Change load address of ofwboot for large (md root) kernel. 1998-06-26 12:29:28 +00:00
fair 508c432635 apparently {set,long}jmp() are not used by the sa code any more. 1998-06-26 08:59:03 +00:00
thorpej 3f90953b05 Include COMPAT_* option headers I forgot earlier, pointed out by
Nathan Williams.
1998-06-26 06:54:08 +00:00
thorpej 0131c651bd Add DEC_1000A, per GENERIC. 1998-06-26 05:43:21 +00:00
thorpej 78d7f07efd Very preliminary support for the Tadpole/DEC AlphaBook. These are basically
AXPpci33 machines + power management and a Cirrus PCI-PCMCIA controller.

There is currently no support for the power management facilities, and
the PCI-PCMCIA controller driver needs some work, but this should boot
and run from disk.
1998-06-26 05:42:34 +00:00
lukem bd8d501f7e remove options FIFO; it's now the default 1998-06-26 01:53:43 +00:00
thorpej 816e12eac2 defopt COMPAT_SVR4 1998-06-26 00:07:06 +00:00
thorpej ac57178fc0 defopt COMPAT_OSF1 1998-06-26 00:00:41 +00:00
thorpej 37b378d836 defopt COMPAT_HPUX 1998-06-25 23:56:39 +00:00
thorpej 8aee7782f5 defopt COMPAT_SUNOS 1998-06-25 23:40:33 +00:00
thorpej 21592147a1 defopt COMPAT_ULTRIX 1998-06-25 23:27:56 +00:00
thorpej 311bac3348 defopt COMPAT_IBCS2 1998-06-25 23:22:37 +00:00
thorpej c466f11939 defopt COMPAT_LINUX 1998-06-25 23:18:23 +00:00
thorpej 1a2cb1b9d4 defopt COMPAT_FREEBSD 1998-06-25 22:49:18 +00:00
mark abbf864c5c Provide a dummy definition of __warn_references macro when __GNUC__ is not
defined.
1998-06-25 21:54:35 +00:00
thorpej 971b8956ef defopt KTRACE 1998-06-25 21:18:11 +00:00
leo 8dc084834e Reserve devices for i4b (ISDN). 1998-06-25 20:22:04 +00:00
mark c69d26fdf6 Fix a sub instruction that should be subs. (Bug spotted by Richard Earnshaw) 1998-06-25 17:24:39 +00:00
ross de27f1befc Don't bother reading the ELF string table out of a stripped /netbsd[.gz].
In this case, all it has in it are the never-referenced printable names
for the ELF sections themselves. It's located at the end of the (ramdisk)
netbsd.gz file, so it is a very expensive seek and read for only 85 bytes.

Boot floppy load time:

	before:	5 minutes
	now:	3 minutes
1998-06-25 06:45:46 +00:00
jeremy 665cf08eec Changed to include sun_disklabel.h from its new location in dev/sun. 1998-06-24 21:36:05 +00:00
sommerfe 7ba7fbbb23 Always include fifos; "not an option any more". 1998-06-24 20:58:44 +00:00
mark 5c82c19d55 Define cfattach structure for ofbus_root_ca and prototypes for
ofbus_match() and ofbus_attach().
1998-06-24 19:44:33 +00:00
mark a2d7775fa1 Implement a delay() function for OFWGENCFG configurations. 1998-06-24 19:31:59 +00:00
mark 9dba4cd582 Fix bug in last commit regarding the positioning of the added #endif. 1998-06-24 19:31:16 +00:00
mark 3102dd4e2c Remove definition of cpu_reset_address as it is no longer needed. 1998-06-24 19:27:12 +00:00
mark adfa28edcf Disable cpu_reset() on OFW configurations as they will use OF_boot()
instead.
1998-06-24 19:22:48 +00:00
mark a34d0aae74 Cleanup time:
Fix code indenting.
  Removed a load of unnecessary includes.
  Removed unnecessary prototypes and variables.
  Removed dead variables debug_flags and cpu_cache.
  Removed some unnecessary cache syncs.
  Only sync the first 64 bytes after setting up the vectors.
  Removed all the boot argument checking code and instead call the
  generic ARM boot argument checking code parse_mi_bootargs() in machdep.c
  Fixed the ofrootfound() function so that it builds.
1998-06-24 18:50:56 +00:00
mark 7594278206 Cleanup time:
Fix code indenting.
  Removed a load of unnecessary includes.
  Removed unnecessary prototypes and variables.
  Removed dead variables debug_flags and cpu_cache.
  Removed some unnecessary cache syncs.
  Only sync the first 64 bytes after setting up the vectors.
  Removed all the boot argument checking code and instead call the
  generic ARM boot argument checking code parse_mi_bootargs() in machdep.c
  Use the get_bootconf_option() function to check for the shark specific
  quiet and noquiet options.
1998-06-24 18:49:12 +00:00
mark b3354a2d24 Removed unused variable from setstatclockrate().
Removed unused static variable statclockirq.
Removed the old commented out irq_claim() code (supplanted by intr_claim())
1998-06-24 18:43:44 +00:00
mark 720b93f1c9 Removed pagetables_start, debug_flags, cpu_cache and cpu_ctrl as these
are dead variables.
Removed initialisation of cpu_cache.
Declared process_kernel_args() as static.
1998-06-24 18:41:35 +00:00
mark 398bab14be Removed pagetables_start as this is a dead variable.
Declare process_kernel_args() as static.
1998-06-24 18:40:10 +00:00
mark 86e861d49f Rename the boot() prototype to cpu_reboot().
Remove consinit() and process_kernel_args() prototypes.
1998-06-24 18:37:49 +00:00
mark 9f161ebe94 Remove pagetables_start and the associated memory allocation. L1 page
tables are allocated by the pmap code so this allocation is just wasting
memory.
1998-06-24 17:18:09 +00:00
tsubai 730bea0760 Add memory disk support. 1998-06-24 15:13:42 +00:00
tsubai a40645e966 Fix CLKF_INTR() (from tsutsui@ceres.dti.ne.jp) 1998-06-24 14:20:50 +00:00
jonathan dbe5213b11 Split arch/sparc/dev/amd7930.c into:
* MI sys/dev/ic/{am7930.c,am7930var.h} chipset driver
  * sparc frontend.
Presere revision history (this time).

TODO: bus.h'ify,  and padded register mappings.
1998-06-24 11:09:23 +00:00
jonathan b40ead2c73 Split sparc am7930 driver into sparc attach and "MI" sys/dev/ic/am7930
chipset driver.  Needs bus'ifying and  register-access.
1998-06-24 10:52:53 +00:00
bouyer 05bc8c6a36 Update comment regarding conflict between wt driver and SMC ethernet boards.
Closes PR 4481 by Erik Bertelsen.
1998-06-24 05:38:09 +00:00
ross 63e87b1a8e New platforms: Noritake, Pintake, and Corelle. Sometimes these are ev4/apecs,
sometimes they are ev5/cia.
1998-06-24 01:38:59 +00:00
ross 6c1e8f5b20 Use the new LOCATE_PCS() macro. 1998-06-24 01:33:19 +00:00
ross 49d5ae18ba Call pci_1000a_pickintr() like on other platforms, but for 1000a expand
the iot, memt, and pc in the call so that pci_1000a_pickintr() (and the
other routines in that module) do not need to be aware of the core logic
type just to pass down memory and I/O space tags or to call the decompose
function.
1998-06-24 01:32:06 +00:00
ross 92aafa4a46 Identify ST_DEC_1000A as PCI/EISA.
New macros:

	LOCATE_PCS(struct rpb *hwrpb, int cpu_number)
	PCS_PROC_MAJORTYPE(struct pcs *)
	PCS_PROC_MINORTYPE(struct pcs *)

Define LOCATE_PCS() to map (hwrpb, cpu_number) -> Per-Cpu-Slot structure.

Replace the PCS_PROC_{MAJOR,MINOR}{,SHIFT} stuff with macros that simply
return the major and minor cpu type codes.
1998-06-24 01:20:43 +00:00
ross f1cc92f606 Add dec_1000a interrupts. 1998-06-24 01:14:55 +00:00
ross 731f8f0abd Add DEC_1000A platform. 1998-06-24 01:12:45 +00:00
ross ebc133a0ec Clean up code using new LOCATE_PCS() macro. 1998-06-24 01:11:09 +00:00
ross 7f61979398 Use new LOCATE_PCS() macro. 1998-06-24 01:10:35 +00:00
ross b314521ce9 Replace expression with new LOCATE_PCS() macro. 1998-06-24 01:09:45 +00:00
ross c705adbc8a New systype for DEC_1000A: Noritake, Pintake, and Corelle. 1998-06-24 01:08:28 +00:00
ross ee709bc9e1 Replace expressions with the new macros: LOCATE_PCS(), PCS_CPU_MAJORTYPE(),
and PCS_CPU_MINORTYPE().
1998-06-24 01:06:26 +00:00
ross d273e10d2d Protect against multiple inclusion. 1998-06-24 01:04:26 +00:00
thorpej e2ebc10c2d Duuuh! Align the SGMAP page tables to 32K, not 32M. 1998-06-23 02:31:05 +00:00
sommerfe 446beb9dc4 defopt COMPAT_386BSD_MBRPART into opt_mbr.h 1998-06-22 21:12:51 +00:00
jonathan df7a377771 Correct the ioasic interrupt symbol definitions for MAXINE ISDN. 1998-06-22 11:57:47 +00:00
jonathan 4f688e084b * Garbage-collect ancient 4.4bsd model-specific aliases for
ioctl asic  interrupt masks.
* include sys/dev/tc/ioasicreg.h, not  pmax asic.h (as prep for merge).
1998-06-22 09:37:40 +00:00
tv f7eef89222 Kill no longer necessary CACHE_CLEAN_VM option. 1998-06-21 23:40:12 +00:00
tv 339cefc763 Integrate Mark's CACHE_CLEAN_VM C implementation, taken away from
cpufunc_asm.S.
1998-06-21 23:23:40 +00:00
ragge 77a5ddd69a Fix more compile errors. Pointed out by David Brownlee. 1998-06-21 21:45:07 +00:00
tsubai 37a089fe32 Add support for "ohare" I/O controller. 1998-06-21 15:06:19 +00:00
tsubai a3b42569ad Stop using "options FIRMWORKSBUGS". 1998-06-21 13:46:02 +00:00
tsubai 56076d8c0d Bugfix of MACHINE_NEW_NONCONTIG support.
PTE_I/G bits should be determined by mem array (not avail array).
1998-06-21 13:30:43 +00:00
drochner 6c7fabb232 adapt to wscons interface change 1998-06-21 09:51:59 +00:00
drochner 4c45f96d05 adapt to wscons changes (character output call) 1998-06-20 21:56:40 +00:00
ragge 35e3b6dd86 Fix some compile-time warnings. Pointed out by David Brownlee. 1998-06-20 21:01:43 +00:00
mark 522eff7069 Fix unused variable warning in csCopyTxFrame() when DIAGNOSTIC is not
defined.
1998-06-20 20:38:33 +00:00
ragge a38dba55a5 Remove since long unused files. 1998-06-20 18:53:01 +00:00
ragge abab40ee1c Don't try to configure QDSS console on KA650 until it's fixed. 1998-06-20 18:49:27 +00:00
ragge fecd3f54fc Expand kmem map. 1998-06-20 18:47:33 +00:00
ragge 8458a9bd23 Support for glass tty on /m76. 1998-06-20 18:46:19 +00:00
ragge 05c6737a7e Fix after current DDB changes. 1998-06-20 18:45:40 +00:00
ragge 3b6ba87592 These files have never been used; remove them. 1998-06-20 18:44:16 +00:00
ragge ec35b60cdb Fast fix to make VS keyboard work again after wscons changes.
XXX - This will be done in a better way in the future.
1998-06-20 18:42:50 +00:00
kleink 4982314902 Merge in recent changes:
GC the unused `physadr' type, which was not able to hold a complete physical
address on 2 architectures anyhow.  Also, move the definition of the `label_t'
type inside _KERNEL protection, since it is specific to the in-kernel
setjmp()/longjmp() implementations.
1998-06-20 16:52:53 +00:00
mrg 077ba12357 rename FLOPPY INSTALL, as it is used for cdroms also 1998-06-20 13:02:28 +00:00
mrg 873ca5c7b9 merge comment fix. 1998-06-20 12:35:08 +00:00
mrg 94022870c4 pull in opt_gateway.h for options GATEWAY 1998-06-20 12:27:21 +00:00
mrg ca23582a6b moved <machine/sun_disklabel.h> to <dev/sun/disklabel.h> 1998-06-20 05:58:05 +00:00
eeh 01e2e698b6 Import of sparc64. 1998-06-20 04:58:50 +00:00
mrg 1caf02a0cf moved <machine/sun_disklabel.h> to <dev/sun/disklabel.h> 1998-06-20 03:50:51 +00:00
mrg 096ec47ff9 moved to <dev/sun/disklabel.h> 1998-06-20 03:46:24 +00:00
mrg 5055cba00a use <dev/sun/disklabel.h> 1998-06-20 03:45:55 +00:00
mrg abeeaf00ec do what the comment says: move this [sun_dkioctl] to compat/sunos. use <dev/sun/disklabel.h> 1998-06-20 03:45:27 +00:00
jonathan 5d58262d89 * Update pmax db_init() to match db_aout.c rev 1.19 (tv's Shark changes).
Add headers to get prototype of db_init().
* Copy i386 logic for  entering  Debugger() if  RB_KDB set on entry.
1998-06-19 22:44:48 +00:00
tv 9018330f63 Make pc0 and ofcons0 mutually exclusive, for now. 1998-06-19 18:29:31 +00:00
tv ba144108f6 Bring shark includes to mainline and nuke the branch. 1998-06-19 15:55:13 +00:00
tsubai 9b047c7c15 Move shutdownhook_establish before the attachment of common parts. 1998-06-19 14:11:32 +00:00
mark 490b5a5419 Removed userret_count diagnostic bits as these are outdated. 1998-06-18 22:34:39 +00:00
mark 7d99120c16 Don't build in the ARMFPE by default.
Removed a load of irrelevant or redundant options.
Added a couple of extra filesystems (disabled).
1998-06-18 22:32:33 +00:00
tv ef5c9d214c Don't configure ofcons by default. 1998-06-18 17:39:17 +00:00
mark ed346cc16a Removed the kcopy() function as this is now implemented in bcopyinout.S. 1998-06-17 20:14:07 +00:00
mark 2aab040047 Major overhaul. Rewritten most of this file to optimise copyin() and
copyout() for 32 bit aligned addresses. Also copyin() and copyout() now
share the same actual copying code.
Use the same copying code to implement kcopy().
1998-06-17 20:13:38 +00:00
mark 138ccaa418 Rewritten and cleanup the file.
Share the string copying code between copyinstr() and copyoutstr().
1998-06-17 20:10:39 +00:00
mark de3485d454 Merge in SHARK specific bits to initialise the sequoia, rtc and
attach the OFW devices.
1998-06-17 19:40:50 +00:00
mark 841b858742 Define interrupt information for SHARK. 1998-06-17 19:36:33 +00:00
mark a27bae87fb Define _BootConfig structure for OFW based booting. 1998-06-17 19:35:24 +00:00
mark c5d3e05292 Implement debugger Openfirmware commands ofboot, ofenter and ofexit.
Calculate esym slightly differently on SHARK or OFWGENCFG based
configurations.
1998-06-17 19:33:37 +00:00
mark 27ed02bef1 Implement debugger OFW commands ofboot, ofenter and ofexit. 1998-06-17 19:31:44 +00:00
mark 3d9f37a664 Don't try and dump IRQ mode stack with Generic OFW config. 1998-06-17 19:29:28 +00:00
gwr 019d982c8f Turn off MACHINE_NEW_NONCONTIG for now. Bug... 1998-06-17 15:33:27 +00:00
kleink 10370475a3 In device_register(), explicitly initialize a static local variable
(seen_netdevice) with 0.
1998-06-17 13:08:47 +00:00
leo bbf43dfbce Both the values 0 & 3 denote an english language (probably 0 US, 3 GB).
Observed by Witek Wnuk.
1998-06-17 11:45:12 +00:00
leo b51cc9af02 Add some sense to the interrupt names. 1998-06-17 11:41:21 +00:00
mark 2c44cea3ba Added console probe and init functions so serial consoles are supported
serial ports via the pioc.
Removed redundant header files.
1998-06-17 00:37:00 +00:00
drochner fd1c99c7a3 prepare for integration of i4b (ISDN) - reserve 5 cdevsw[] entries 1998-06-16 11:03:28 +00:00
cgd 094b1cf69d don't forget machine header symlinks 1998-06-15 20:49:43 +00:00
bouyer 9a862172cb PCI_PRODUCT_VIATECH_VT82C586 is now PCI_PRODUCT_VIATECH_VT82C586_ISA. 1998-06-15 20:10:31 +00:00
drochner 64839bcf9d document PCKBD_LAYOUT 1998-06-15 13:10:18 +00:00
kleink 1fbd0b3749 GC the unused `physadr' type, which was not able to hold a complete physical
address on 2 architectures anyhow.  Also, move the definition of the `label_t'
type inside _KERNEL protection, since it is specific to the in-kernel
setjmp()/longjmp() implementations.
1998-06-14 20:09:22 +00:00
kleink 513959b129 `interupt' -> `interrupt' 1998-06-14 19:47:14 +00:00
billc 3f29603abd delete WARPED 1998-06-14 12:50:26 +00:00
billc fcbc3ab14f moved WARPED to updated NBFTP 1998-06-14 12:47:31 +00:00
ragge a4d0eae36b Add catch function for keyboard. 1998-06-14 11:52:35 +00:00
tv 254edea7e0 Merge Shark/OFW changes for device configuration. 1998-06-12 23:59:22 +00:00
tv cb168e274b Add to mainline. 1998-06-12 23:29:27 +00:00
cgd 651b44e211 Rework the way kernel include files are installed. In the new method,
as with user-land programs, include files are installed by each directory
in the tree that has includes to install.  (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.)  The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change.  Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
tv 67856105fa Merge RiscPC and Shark files; now all machines will make the proper device
config files.
1998-06-12 23:21:53 +00:00
cgd 87dc093422 replace ${MACHINE} with mvme68k, so that these Makefiles can safely
be run when MACHINE != mvme68k.
1998-06-12 23:11:45 +00:00
tv 49fd1860fe Add UVM support. 1998-06-12 23:08:52 +00:00
mjacob b6ac862e01 Roll back to 1.55 level since 1.56 will not compile. 1998-06-12 21:14:43 +00:00
tv 11e9a04748 Add a hack to make the ofisa.o compile using the old MD isadma code, for
now.
1998-06-12 21:07:44 +00:00
tsubai 4486c63ae4 Add primary boot (bootxx) and installboot command. 1998-06-12 21:07:23 +00:00
tsubai 18bfac1eca Initialize "minaddr" to 0 in cpu_startup() when UVM is defined. 1998-06-12 20:58:57 +00:00
gwr 0050a1b95b Sync with the sun3 version. 1998-06-12 20:07:50 +00:00
gwr 26753f7bf7 In _save_symtab, ignore any symbol table if preserving it would
cause our memory use to exceed the 1MB limit (on the 3/50 only).
1998-06-12 20:06:30 +00:00
drochner 684086c4c7 copy of GENERIC, but with wscons console 1998-06-12 15:42:02 +00:00
fair a23c899718 apply patch from PR#4626 to allow DDB to deal with kernel traps. 1998-06-12 10:02:44 +00:00
leo 53023f94d2 Make this compile for the M68060 (Thomas Gerner) 1998-06-12 09:27:37 +00:00
thorpej dfeb8f794c Delete a debugging clause that is no longer necessary, and also can't
work properly if we're testing for a pmap active on _other_ processors.
1998-06-12 07:28:07 +00:00
thorpej 0a47d0d577 Rename active_pmap() to PMAP_ISACTIVE(). 1998-06-12 00:45:47 +00:00
drochner 81fd096b37 Since wscons can support VT_xxx ioctl()s, enable them if NWSDISPLAY > 0.
Implement KDGKBTYPE and KDGKBENT, this will make X servers happy.
1998-06-11 22:26:13 +00:00
scw cee1e443db Use DEV_BSIZE in place of MAXBSIZE for the static 'iobuf' in devopen().
Use of the latter caused the 1st and 2nd stage boot loaders to occupy
over 64k of memory. This caused them to fail on a 4Mb mvme147 since
they are loaded at 0x3f0000.
Reported by Kristen A. McIntyre and Maxime Kurkdjian.
1998-06-11 19:04:57 +00:00
fair af3c9e43de turn on LKM by default, per PR#4423 1998-06-11 19:02:35 +00:00
thomas 2ea2848317 Fix egcs warning 1998-06-11 16:31:45 +00:00
thorpej ff16cd85c0 In pmap_enter(): if old PTE was not valid, we don't need to sync
the I-stream, for the same reason we don't need to invalidate the TLB.
1998-06-11 10:36:08 +00:00
thorpej 2683c2826d Track mappings entered w/ VM_PROT_EXECUTE, and only synchronize the
I-stream when changing PTE bits or removing mappings that were entered
w/ EXECUTE protection.
1998-06-11 10:30:14 +00:00
leo 127d319668 Add some function decls previously declared elsewhere??? While here make them
static.
1998-06-11 08:36:54 +00:00
leo 6c721e05f1 Fix typo. 1998-06-11 08:32:00 +00:00
thorpej c0c2cb0f9a Garbage-collect the old PMAPSTATS stuff; it didn't compile, and should
just be redone from scratch.  Get it out of the way now to make it easier
to restructure a few things.
1998-06-11 05:16:35 +00:00
thorpej 3af0f95d24 Define a macro to test PG_EXEC. 1998-06-11 05:10:41 +00:00
thorpej 55207ad8b4 Define a software PTE bit to track VM_PROT_EXEC. 1998-06-11 05:09:47 +00:00
thorpej afc9b7c59b Significantly reduce the number of I-stream synchronizations by really
decoupling this operation from TLB invalidations (e.g. pull I-stream
syncs out of loops, executing them only once, etc.).
1998-06-11 05:08:37 +00:00
sakamoto 2855774022 Remove unused message. 1998-06-11 05:03:30 +00:00
thorpej 817b595bab Separate syncing the I-stream from invalidating the translation buffer. 1998-06-11 02:45:21 +00:00
thorpej 1abd24fffe Correct a comment. 1998-06-11 00:34:16 +00:00
tv 7ea013ce82 Include "pc.h" and check NPC - allows ofcons to be the system console. 1998-06-10 21:55:30 +00:00
tsubai 5c89a4e36b Move static variables to struct softc.
Remove unused struct members.
1998-06-10 16:27:30 +00:00
gwr dbeb2648a6 Switch over to MACHINE_NEW_NONCONTIG 1998-06-10 02:42:14 +00:00
thorpej f8e69a4627 Don't enable BUS_SPACE_DEBUG automatically if DEBUG is defined. 1998-06-09 22:53:57 +00:00
gwr 1b01ec0993 First cut at UVM support. Compiles, but not tested yet. 1998-06-09 20:47:17 +00:00
gwr c714d95b83 First cut at MACHINE_NEW_NONCONTIG - not enabled yet. 1998-06-09 20:31:28 +00:00
gwr 557be5668b Move sun3x _pmap_fault macro from pmap.h to trap.c 1998-06-09 19:58:50 +00:00
thorpej 02182100df Use config_defer(). 1998-06-09 18:49:33 +00:00
gwr d74e1744f5 Fix a warning 1998-06-09 17:19:01 +00:00
gwr d0a7f4f72b Make this compile... 1998-06-09 17:10:11 +00:00
gwr 6e85156429 Simplify ifdefs in cg4b_ldcmap() 1998-06-09 16:10:25 +00:00
gwr 3634eb6176 Make this work on the 3/80, which has the Brooktree DAC
wired high-byte-only like the sparc. (yuck!)
1998-06-09 14:38:59 +00:00
ragge b25b5bddd1 #ifdef _KERNEL whole this file. 1998-06-09 14:03:24 +00:00
ragge f6a6201ac7 Bugfix; now VS3100/m76 also works. 1998-06-09 14:02:01 +00:00
tv bb63045726 Add recent ddb_init() interface change. 1998-06-09 12:01:28 +00:00
tsubai 3e21bf604d Remove unused variables. 1998-06-09 11:30:09 +00:00
ross 69717a7f0e Fix a UVM #if so {} balance is preserved and ctags(1) doesn't lose. 1998-06-09 09:31:58 +00:00
dbj ddff5f8e94 Initial import of NetBSD/next68k. 1998-06-09 07:53:05 +00:00
sakamoto 949c52c154 add address conversion macro for MPC105 and some fix. 1998-06-09 05:53:30 +00:00
sakamoto 040581ceed Add UVM support. 1998-06-09 05:41:19 +00:00
chs a5550009e6 correct counting for uvmexp.wired:
only pages explicitly wired by a user process should be counted.
1998-06-09 05:18:52 +00:00
sakamoto e922c9cfec Use PowerPC-generic stuff and eliminate the powermac portion. 1998-06-09 04:27:53 +00:00
scottr 5444e91249 The Performa 58x comm slot SONIC cards behave the same way as in
the LC/Performa 57x.  From Yasuhiro Endoh.
1998-06-09 03:39:50 +00:00
tv 00ede2160e Change ddb_init() for a.out to provision for kernels which are not booted by
the current 'bootblock' method, like the Shark, which preloads and preformats
the symbol table right in the boot code.
1998-06-09 01:57:41 +00:00
tv 5ba723ecf2 Cleanup: move {SWAP,DEV,VNODE}PAGER to std.arm32; required for Mach VM, and
happily ignored by UVM.
1998-06-09 01:15:48 +00:00
thorpej 680a3d77f4 Add isa_dma{freeze,thaw}(), used to temporarily stop and then restart
all ISA DMA.  Needed by e.g. the SmartCard reader for Sharks.
1998-06-09 01:04:17 +00:00
mark 4c80d03830 Remove several cache invalidation instrcutions from routines like
sa110_context_switch() as they are not needed.
1998-06-09 01:02:14 +00:00
tv 46565ac270 Add disksubr_acorn.c as well. These could likely be changed to use kernel
options, but this gets the kernel at least to compile, link, and work.
1998-06-09 00:39:47 +00:00
tv b4511c9330 Add disksubr_mbr.c dependent on `disk'. 1998-06-09 00:31:23 +00:00
thorpej e333272393 Change the ISA DMA API to take an isa_chipset_tag_t rather than
a struct device * corresponding to the ISA bus device.  The ISA DMA
controller driver functions have been renamed and now take a struct
isa_dma_state *, and are called indirectly by machine-dependent code
which provides the DMA state.

These changes allow e.g. `ofisa' (the OpenFirmware configuration
mechanism for the ISA bus, used by e.g. Sharks) to use the MI ISA
DMA controller code.
1998-06-09 00:12:18 +00:00
thorpej 98d02e5c94 Provide an isa_chipset_tag_t to the ISA bus device. 1998-06-09 00:12:00 +00:00
thorpej dde710c6f9 Adjust for changes to the ISA DMA API. 1998-06-09 00:11:34 +00:00
thorpej f194cb8705 Provide an isa_chipset_tag_t to children. 1998-06-09 00:10:27 +00:00
thorpej 0b76aff07b Change the ISA DMA API to take an isa_chipset_tag_t rather than
a struct device * corresponding to the ISA bus device.  The ISA DMA
controller driver functions have been renamed and now take a struct
isa_dma_state *, and are called indirectly by machine-dependent code
which provides the DMA state.

These changes allow e.g. `ofisa' (the OpenFirmware configuration
mechanism for the ISA bus, used by e.g. Sharks) to use the MI ISA
DMA controller code.
1998-06-09 00:10:02 +00:00
thorpej eddb2f4269 Adjust for change to the ISA DMA API. 1998-06-09 00:09:43 +00:00
thorpej 7c54de8712 Change the ISA DMA API to take an isa_chipset_tag_t rather than
a struct device * corresponding to the ISA bus device.  The ISA DMA
controller driver functions have been renamed and now take a struct
isa_dma_state *, and are called indirectly by machine-dependent code
which provides the DMA state.

These changes allow e.g. `ofisa' (the OpenFirmware configuration
mechanism for the ISA bus, used by e.g. Sharks) to use the MI ISA
DMA controller code.
1998-06-09 00:08:43 +00:00
thorpej a3dbb61f55 Provide an isa_chipset_tag_t to the ISA bus device. 1998-06-09 00:08:12 +00:00
thorpej 53394a1d41 Change the ISA DMA API to take an isa_chipset_tag_t rather than
a struct device * corresponding to the ISA bus device.  The ISA DMA
controller driver functions have been renamed and now take a struct
isa_dma_state *, and are called indirectly by machine-dependent code
which provides the DMA state.

These changes allow e.g. `ofisa' (the OpenFirmware configuration
mechanism for the ISA bus, used by e.g. Sharks) to use the MI ISA
DMA controller code.
1998-06-09 00:06:54 +00:00
thorpej 8dedb90f13 The ISA chipset must persist; it's required after autoconfig time. 1998-06-08 23:49:05 +00:00
tsubai 25d2a890b1 Adjust intrnames. 1998-06-08 21:27:10 +00:00
gwr 5260d3fc8e Add UVM support 1998-06-08 20:47:45 +00:00
gwr 28a7286ede Uh, something went wrong last time? 1998-06-08 20:38:35 +00:00
tsubai e4e1bc1af9 Not used. 1998-06-08 20:36:36 +00:00
tsubai c0e7a80f53 Introduce newsmips_intr_t for intrcnt[]. 1998-06-08 20:35:14 +00:00
gwr ba4cb4e29d Kill the printf: enabling zs interrupts 1998-06-08 20:34:43 +00:00
tv 8f428e3872 Kill non-NetBSD RCS tags. 1998-06-08 20:23:07 +00:00
mark 0f5f9c0221 Added support for DOS MBRs in addition to filecore boot blocks from
Chris Demetriou. Filecore and MBR handling has been split out into
separate files. Still needs some work before this could become MI.
Also fix the way in which arm32 filecore checksums are calculated so
that sectors filled with the same byte will not pass the checksum.
1998-06-08 20:21:17 +00:00
gwr be58914fa7 Sync with RAMDISK:
No need for any COMPAT_* options in the ramdisk kernel
Can do without the uk driver also...
1998-06-08 20:20:05 +00:00
gwr 629b52dbcc Sync with 1.3.2 release branch:
No need for any COMPAT_* options in the ramdisk kernel
Can do without the uk driver also...
1998-06-08 20:17:40 +00:00
ragge 8260bcaff5 Wall fixes. 1998-06-08 18:42:40 +00:00
tv f19cf41458 Add rcsID. 1998-06-08 18:18:58 +00:00
tv ae1b70e048 ISA shark-dependent code. Missed this file on last commit. 1998-06-08 18:18:11 +00:00
tv ee69a0b0a0 Add ISA support needed for Shark and the CATS board (CATS isa_machdep not
here yet).
1998-06-08 17:49:42 +00:00
ragge 3c3c83f7ad Bugfix: use of uninitialised variable that gcc didn't notice. 1998-06-08 15:04:26 +00:00
lukem 8fb1228bc8 everything has bugs; either document them or don't bother with a BUGS section 1998-06-08 13:02:19 +00:00
lukem ed25dc5c57 if there's no known bugs, don't have a BUGS section 1998-06-08 11:35:10 +00:00
lukem cd2f6e9504 remove unnecessary paragraph separator 1998-06-08 11:34:41 +00:00
lukem d719a4221f if there's no known bugs, don't have a BUGS section 1998-06-08 11:34:04 +00:00
thorpej ec7941bba2 Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-08 06:45:55 +00:00
thorpej f5cd6a7736 Add debugging support to the bus_space macros. If BUS_SPACE_DEBUG (or DEBUG)
is defined, the bus_space macros will check to ensure that the bus address
and the target buffer (if applicable) are aligned properly for the size
of the type being used.  If they are not, a message will be displayed on
the console.

Strict alignment is required by the Alpha architecture, and a trap will
occur of unaligned access is performed.  These changes will aid debugging
of broken device drivers.
1998-06-08 03:42:19 +00:00
pk 3f6155e843 Update from Iain for the parallel port stuff. 1998-06-07 21:14:17 +00:00
ragge 74b990a7b4 Identify 3100/m38 + /m48 1998-06-07 20:20:05 +00:00
ragge d360348f52 DDB support on glass tty. Also smarter keyboard decoding. 1998-06-07 20:19:12 +00:00
sommerfe aedc717c00 Hopefully avoid breaking PCMCIA on alpha. 1998-06-07 19:11:29 +00:00
ragge 2f1d0864fe UVM default on vax for now. 1998-06-07 18:39:15 +00:00
sommerfe 94de2146a9 Add ISA Plug and Play attachment for PCIC PCMCIA controller (pcic* at isapnp?).
Slightly modify ISA attachment to let the two share code.
1998-06-07 18:34:38 +00:00
ragge 60530637e4 Enable use of secondary cache, if present. 1998-06-07 18:34:09 +00:00
ragge 1a900c4abc Init some variables to not get trash on the screen. 1998-06-07 18:32:04 +00:00
tsubai c9f9111be4 Add support for powerdown. 1998-06-07 06:31:17 +00:00
thorpej 528bbb95ed Add debugging support to the bus_space macros. If BUS_SPACE_DEBUG (or DEBUG)
is defined, the bus_space macros will check to ensure that the bus address
and the target buffer (if applicable) are aligned properly for the size
of the type being used.  If they are not, a message will be displayed on
the console.

While strict alignment is not strictly necessary on the x86, ensuring
proper alignment can aid performance, and help make drivers more portable
to architectures (like the Alpha and StrongARM) which _do_ require strict
alignment.
1998-06-07 03:32:32 +00:00
enami c0c7384dde Also, remove space at the end of line. 1998-06-07 03:01:05 +00:00
enami 207a6dcab6 Use TAB instead of two space to indent. 1998-06-07 02:36:53 +00:00
enami e33ef0027d Remove TAB after `options I686_CPU'. 1998-06-07 02:34:41 +00:00
thorpej 2e9939699d Kernel configuration for my Multia, an example of how to configure a
Multia w/ PCMCIA support.
1998-06-07 00:45:35 +00:00
thorpej 14df007174 Oops, don't forget to fill in *addrp. 1998-06-07 00:29:29 +00:00
thorpej 0890af5ca8 Only disable an interrupt line after MAXSTRAYs if there is no handler
attached; we get stray interrupts on PCI devices sometimes, for some
unknown reason.  (Similar problem exists on the 164SX, which also has
a Pyxis.)
1998-06-06 23:29:23 +00:00
thorpej 331a7f56c1 Remove some debugging code no longer relevant now that we have DMA
window chaining.
1998-06-06 23:11:52 +00:00
thorpej eabad6b572 Implement bus_space_{alloc,free}() for swiz PCI I/O space. 1998-06-06 22:44:46 +00:00
thorpej 7a6d646c9b Implement bus_space_{alloc,free}() for BWX bus space. 1998-06-06 22:28:16 +00:00
thorpej 30f9be231f Restructure cpu_reboot() a bit, and add support for powering down
on the Sun4m if RB_POWERDOWN is specified.
1998-06-06 21:46:51 +00:00
thorpej 1c6a275e9c Only attempt the powerdown if the power register was mapped. 1998-06-06 21:40:20 +00:00
thorpej 402c48737f needs-flag'ize the power device. 1998-06-06 21:30:34 +00:00
thorpej 9553573381 If we have APM, only power down if RB_POWERDOWN was specified (fall into
RB_HALT case if it fails).
1998-06-06 21:27:31 +00:00
thorpej fe17c44d6c Add support for software powerdown of the Digital Personal Workstation. 1998-06-06 20:53:41 +00:00
thorpej 04ba8480ae Use REGVAL64() to frob the Pyxis interrupt mask register. 1998-06-06 20:42:36 +00:00
thorpej 098dd211c7 Define a REGVAL64() for some Pyxis registers. 1998-06-06 20:40:14 +00:00
thorpej 49aea111fb If the platform specified a powerdown hook, and howto has RB_POWERDOWN,
call the hook.  If the hook fails, print a warning, and just halt (RB_HALT
is implied by RB_POWERDOWN).
1998-06-06 20:39:04 +00:00
thorpej 1733ad8dc5 Clean up a little, and add a `powerdown' hook in the platform structure. 1998-06-06 20:18:50 +00:00
thorpej d08070a693 Add a comment describing the locking needs of the alpha_sgmap. 1998-06-06 20:12:28 +00:00
augustss db50fa53b8 Add Aria driver. 1998-06-06 10:14:21 +00:00
mrg e666cd4b3b install floppy kernel 1998-06-06 05:36:53 +00:00
mrg ff6c535817 sync with other md_root.c files. 1998-06-06 05:12:54 +00:00
mrg 4bc09321a9 add md to the "sparc_nam2nlk" and "chr2blk" arrays. the former fixes
panics seen on a floppy boot in setroot() as it could not properly
determine the root device.
1998-06-06 05:03:23 +00:00
thorpej 85d08836f1 - Don't call *_dma_init() twice; there's no need to. Just do it in *attach().
- Display Pyxis revision properly.
1998-06-06 01:33:44 +00:00
thorpej c0fa3c6ac4 Don't call *_dma_init() twice; there's no need to. Just do it in *attach(). 1998-06-06 01:33:23 +00:00
thorpej 59d76407b4 Display information about which sgmap we're attempting to initialize
if we die in alpha_sgmap_init().
1998-06-06 01:31:46 +00:00
ragge 08079a8f21 Don't compile in any rasterconsole code. 1998-06-05 22:17:02 +00:00
ragge 88d55c928c Add virtual console support. 1998-06-05 22:02:56 +00:00
thorpej 9331237596 Oops, turn off some debugging printfs. 1998-06-05 21:47:14 +00:00
thorpej bf8523f4e4 - Egads! There are Pyxis "Pass 1" chips that do not have the DMA bug!
Use the check recommended by the Digital Workstation engineers; look
  for Miata 1 systems (i.e. with Intel SIO).  From Andrew Gallatin.
- Update copyright (Pyxis and BWX).
1998-06-05 19:25:19 +00:00
thorpej f251e3372d Don't attempt to map the PCI IDE interrupt at bus 0 device 11 on the
AlphaPC 164 and AlphaPC 164LX - these are wired to compatibility mode.
1998-06-05 19:15:41 +00:00
thorpej 1aa688234e Miata 1 has an Intel SIO at bus 0 device 7 and a CMD PCI IDE at bus 0
device 4.  Miata 1.5 and Miata 2 have a Cypress at device 7 and PCI IDE
at functions 1 and 2 of the Cypress (like the PC164SX).  These on-board
PCI IDE controllers are wired to compatibility mode, so don't bother
trying to map the interrupt.
1998-06-05 19:04:51 +00:00
thorpej a1c151d56b Add system variation for Miata 1.5. 1998-06-05 18:18:37 +00:00
thorpej c072110af0 Actually, I did use a few of them on this file (I wasn't clear enough
in my mail to Ross, I guess...)
1998-06-05 17:42:53 +00:00
thorpej bb362059ac On Pass 1 Pyxis, disable PCI Read Prefetching, and warn the user about
the DMA bug that exists on this Pyxis revision.
1998-06-05 17:24:11 +00:00
thorpej 29977868a7 What was called CNFG in ALCOR and ALCOR2 is actually called PYXIS_CTRL1
in Pyxis.  Add a comment to this fact.
1998-06-05 17:22:34 +00:00
thorpej 73e5032ac9 Define the Pyxis-specific bits in the CIA_CSR_REV register (ID mask, and
the ID for the 21174).
1998-06-05 17:16:31 +00:00
thorpej 2701ea3ef3 Add DEC_550 (Miata). 1998-06-05 17:03:07 +00:00
ross 5790ee09ee Revert...Jason didn't use Andrew's diffs. 1998-06-05 15:28:40 +00:00
mrg 428a0d387a remove old (now broken) memory disks hooks code. 1998-06-05 15:00:10 +00:00
mrg 135e6dc7e0 make this work with new md root stuff. 1998-06-05 14:57:55 +00:00
tsubai 26eb9abb32 Add support for NWB-231A 4-port RS-232C card. 1998-06-05 14:19:22 +00:00
tsubai 780f7fcf6f Remove excessive cache flush. 1998-06-05 12:34:06 +00:00
tsubai 8f262b2d67 Add (missing) "filedesc" 1998-06-05 12:24:44 +00:00
tsubai 6bf20f4c29 Add support for UVM and MACHINE_NEW_NONCONTIG. 1998-06-05 12:22:43 +00:00
sakamoto 9125a5f198 Merge in MACHINE_NEW_NONCONTIG support and some fix from Tsubai-San.
UVM support.
1998-06-05 11:27:09 +00:00
ross 8f455480ef Tweak the copyrights a little bit. pci_550.h gets a TNF copyright, not
CMU, and pci_550.c keeps TNF but gets "Andrew Gallatin and Jason R. Thorpe".
1998-06-05 03:34:27 +00:00
thorpej cf914cac00 oops, read CNFG on all Pyxis revs. 1998-06-05 02:15:38 +00:00
thorpej cbaedc8675 Support for the Digital Personal Workstation [456]xx, a.k.a. Miata (systype
DEC_550).  Mostly cloned from the EB164 systype, with some modifications
from myself, and a few more from Andrew Gellatin.
1998-06-05 02:13:41 +00:00
thorpej 3cfb38c5d1 Define the Pyxis interrupt request register. 1998-06-05 00:53:02 +00:00
thorpej 3249813e11 For whatever reason, the firmware seems to enable PCI loopback mode if it
also enables BWX.  Make sure it's enabled if we have an old, buggy firmware
rev.
1998-06-04 22:58:33 +00:00
thorpej d4d49905dd Add support for using BWX for PCI config space and PCI i/o and mem space
on the ALCOR2 and Pyxis.  BWX is enabled iff:
- It hasn't been disabled by the user (patch `cia_use_bwx' or build cia.o
  with the option "CIA_USE_BWX=0"),
- it's enabled in CIA_CSR_CNFG,
- we are running on an EV5-family processor,
- BWX is in the processor's capabilities mask.
1998-06-04 21:34:45 +00:00
ragge 57ce421691 Clean upp system detect code. Enable primary cache on VS3100. 1998-06-04 19:42:14 +00:00
thorpej 616125f8d1 Deal with a hardware bug in Pass 1 and Pass 2 Pyxis chips. Basically,
the scatter/gather TLB cannot be invalidated on these chips.  So, to
work around this, we configure the otherwise unsed DMA Window 2 as a
2M SGMAP window at 128M, point all of its page table entries at the
DMA spill page, and, when the TLB is to be invalidated, put the PCI bus
into loopback mode, and create a target hit on Window 2 every 64k for
the number of TLB entries (plus a few ... it seems to not work unless
we read a few extra times), forcing out old TLB entries to make room for
the new, dummy target hits.
1998-06-04 18:11:23 +00:00
mark c6d1832868 Include all the correct header files to get the prototypes of all the
soft net interrupt functions.
Handle NETISR_NATM soft interrupts.
1998-06-04 17:45:50 +00:00
mark 61298c0cbf Type postmortem_active as an int. (Pointed out by Patrick Welche). 1998-06-04 17:44:18 +00:00
ragge 78ebccfc2d Rudimentary support for the VS3100 builtin graphics console. 1998-06-04 15:51:12 +00:00
thorpej a51d42503c Export the spill page PTE, and provide a hook to initialize it early. 1998-06-04 01:22:52 +00:00
thorpej 6dc28f5445 CIA and Pyxis have 8 scatter/gather TLB entries. 1998-06-04 01:18:22 +00:00
thorpej 32fef69ef7 Define the CIA control register. 1998-06-04 01:04:11 +00:00
thorpej d94f02f9fd Ok, now we _REALLY_ have Pyxis recognition correct. There are two systypes
that can have Pyxis: EB164 (AlphaPC164LX and AlphaPC164SX) and DEC_550 (Miata),
and these systypes/variations _always_ have Pyxis.
1998-06-03 23:16:55 +00:00
thorpej 44605ba506 Define a bunch more system variations. 1998-06-03 23:07:38 +00:00
pk 062294cc8c Magma parallel port ioctls per Iain Hibbert. 1998-06-03 22:40:00 +00:00
pk 87fe4d9ea1 Update from Iain on the parallel port stuff. 1998-06-03 22:38:31 +00:00
thorpej 15c52040a5 Define the ALT_MEM big in the CIA revision register. 1998-06-03 22:19:08 +00:00
thorpej f8acb6d6fa Sync w/ i386 port:
Eliminate some needless indirection through ISA DMA front-end functions.
1998-06-03 21:55:26 +00:00
thorpej 52450409d6 Sync w/ i386 port:
Implement bounce buffers for mbufs.

Also, correct copyright snafus, and a forgot-o left over from a commit
I made yesterday.
1998-06-03 21:52:36 +00:00
thorpej 6d29690288 Implement bounce buffers for mbufs. 1998-06-03 21:50:48 +00:00
mjacob 23a5420f99 turn on Essential HIPPI for this configuration 1998-06-03 21:17:52 +00:00
mjacob 9f5797ac1d turn on Essential HIPPI for these configurations 1998-06-03 21:16:28 +00:00
thorpej d6041754c2 Allow the DMA tag to specify a boundary contraint. If the device has a
more strict boundary, the map will use it, otherwise the map will inherit
the tag's, unless the tag's constraint is 0 (no boundary constraint).
1998-06-03 18:25:53 +00:00
frueauf 554cce1e94 Remove double "options GATEWAY" entry. 1998-06-03 10:03:25 +00:00
thorpej 28486ff301 Remove the _cookie member of the DMA tag; it's not used by anything. (This
was already done to the i386 port.)
1998-06-03 06:47:41 +00:00
thorpej 7b37a276e2 Sync w/ i386 port:
Optimize the ISA DMA map load somewhat; don't traverse the buffer twice.
Instead, just attempt to do a normal load first.  If we exceed the bounce
threshold or the number of segments, then we bounce the transfer.
1998-06-03 06:43:04 +00:00
thorpej 6ffa35b390 Sync w/ i386 port:
When loading a DMA map, if the page's physical address exceeds the bounce
threshold, return an error to the caller (the caller will attempt to
bounce the transfer).
1998-06-03 06:41:51 +00:00
thorpej b5c2ecc231 Sync w/ i386 port:
Add a `bounce threshold' to the i386 DMA tag.
1998-06-03 06:40:45 +00:00
thorpej 051c391187 Optimize the ISA DMA map load somewhat; don't traverse the buffer twice.
Instead, just attempt to do a normal load first.  If we exceed the bounce
threshold or the number of segments, then we bounce the transfer.
1998-06-03 06:37:54 +00:00
thorpej 66f9322f5f EISA and PCI do not require bouncing; specify a bounce threshold of 0. 1998-06-03 06:35:49 +00:00
thorpej 7b2ef456f0 When loading a DMA map, if the page's physical address exceeds the bounce
threshold, return an error to the caller (the caller will attempt to
bounce the transfer).
1998-06-03 06:35:04 +00:00
thorpej f018f866d7 Add a `bounce threshold' to the i386 DMA tag. 1998-06-03 06:33:02 +00:00
thorpej 0b25bb43b3 Adjust bus_dmamap_sync() for the R4000; in that case, use the stashed
virtual address for the segment, rather than the physical address, and
adjust the cache call appropriately.
1998-06-03 05:10:23 +00:00
thorpej 63be85fc62 Fill in the virtual address of each DMA segment as we load the map. 1998-06-03 04:41:30 +00:00
thorpej 691e8af708 Add a "virtual address" private member to the pmax bus_dma_segment_t, for
use in R4000 cache flush operations in bus_dmamap_sync().
1998-06-03 04:38:41 +00:00