Commit Graph

23337 Commits

Author SHA1 Message Date
thorpej 02182100df Use config_defer(). 1998-06-09 18:49:33 +00:00
thorpej ab548fbb40 Remove the PCI-ISA bridge callback mechanism; it's no longer needed. 1998-06-09 18:48:41 +00:00
thorpej 387a1c5d41 Implement config_defer(), a generic mechanism to defer the configuration
of a device until all of its parent's children have been attached.
1998-06-09 18:46:12 +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
scottr 7171cca4b8 Protect various config(8)-generated files from inclusion while
building LKMs.  Fixes PR 5557.
1998-06-09 07:46:31 +00:00
thorpej be62e9cb1b Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-09 07:35:06 +00:00
thorpej 5bc2217a49 Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-09 07:24:55 +00:00
mikel c1f8034333 ffs_ -> ext2fs_ in warning; art@openbsd.org 1998-06-09 06:33:22 +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 5f97398507 Adjust for changes to the ISA DMA API. 1998-06-09 00:05:44 +00:00
thorpej 129eab3152 Adjust for the changes to the ISA DMA API. 1998-06-09 00:05:19 +00:00
thorpej e290abfe34 Initialize DMA state when we attach the ofisa bus. 1998-06-09 00:02:43 +00:00
thorpej ff76b8e96b 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:00:21 +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
ragge 1a66918fc0 Wrong include file order; caused compile error on vax. 1998-06-08 17:59:08 +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
kleink 636443752e Nuke a couple of non-local prototypes which are already declared in either
<sys/buf.h>, <sys/mount.h> or <sys/vnode.h>.
1998-06-08 15:52:07 +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
pk 914f235803 Fix the obvious bogons reported in PR#5552.
The problem in the memory size probe is still pending.
1998-06-08 12:19:46 +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 e41f7ca1b8 Make this build w/ EGCS. 1998-06-08 07:11:51 +00:00
thorpej e12c6ddaf2 No need for an explicitly-sized type for sc_flags. 1998-06-08 07:06:41 +00:00
thorpej ea3a1d9c44 Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-08 06:55:54 +00:00
thorpej ec7941bba2 Nuke __BROKEN_INDIRECT_CONFIG. 1998-06-08 06:45:55 +00:00
scottr d48f258f90 Use the newly-defined opt_quota.h. 1998-06-08 04:27:50 +00:00
scottr 06b34cf912 Add defopt for QUOTA. While here, do some grouping of associated options. 1998-06-08 04:00:35 +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
sommerfe 2b00a47b9e Add ISAPnP attachment for PCMCIA bus controller; reorganize ISA
attachment to let it share code with PnP attachment.
1998-06-07 18:28:31 +00:00
fair b91a2393c1 the AM7990 is a controller, not a "card"; repair a misleading diagnostic. 1998-06-07 08:08:20 +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 066216b812 Define RB_POWERDOWN in such a way that the system will always, at the very
least, halt if powerdown is not possible.
1998-06-06 20:24:18 +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
augustss 68e0540ee9 Add an Aria sound driver.
From "R. C. Dowdeswell" <elric@imrryr.org>.
1998-06-06 10:12:34 +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 618c279d16 Add fine-grained locking. Still one refinement to make, which will be
done in a separate commit.
1998-06-06 02:25:46 +00:00
thorpej 17243c19f1 Add RB_POWERDOWN. 1998-06-06 01:34:45 +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
kleink 4648a78bba Regen: addition of fdatasync(). 1998-06-05 20:36:53 +00:00
kleink e9d6f5e996 Per IEEE Std 1003.1b-1993, implement the fdatasync() system call which is
identical to fsync() with the expecption of not being required to synchronize
file status information.
1998-06-05 20:31:36 +00:00
kleink 70dae9bb3a 1.3E -> 1.3F: fsync vnode operator interface changed. 1998-06-05 20:12:04 +00:00
kleink 382743ada3 Convert fsync vnode operator implementations and usage from the old `waitfor'
argument and MNT_WAIT/MNT_NOWAIT to `flags' and FSYNC_WAIT.
1998-06-05 19:53:00 +00:00
kleink a32a338757 * Convert fsync vnode operator implementations and usage from the old
waitfor argument and MNT_WAIT/MNT_NOWAIT to flags and FSYNC_WAIT.
* In genfs_fsync(), honor the FSYNC_NODATA flag.
1998-06-05 19:52:59 +00:00
kleink f20fdd6f65 Define 2 flags to be passed in the `flags' argument of the fsync vnode
operator:

  * FSYNC_WAIT, which requests the synchronization operation to not return
    until completition,

  * FSYNC_DATAONLY, which is a hint: if possible, synchronize file data
    only.  If it's not feasible for a file system implementation to omit
    file status synchronization when synchronizing file data, this is ignored.
1998-06-05 19:47:00 +00:00
kleink b5a587ab63 Regen: fsync argument change. 1998-06-05 19:41:21 +00:00
kleink c77a008cc2 Replace the `waitfor' argument to the fsync vnode operator with a `flags'
argument.
1998-06-05 19:38:56 +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
enami 486c074973 An oversight in previous commit. 1998-06-05 03:40:07 +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
enami 03409c9b52 - Don't print newline until pcmcia_io_map is called; it expects to write
from middle of line.
- Use SIMPLEQ_FIRST/NEXT macros.
1998-06-05 03:26:52 +00:00
enami f4c1a44b26 Use SIMPLEQ_FIRST/NEXT macros. 1998-06-05 03:02:31 +00:00
enami 95f9f9f48d In the function pcmcia_card_gettype:
- When there is only one pcmcia function, don't use first config
  entry to determine card type.  Instead, use the config entry
  actually used to initialize the pcmcia function if it is already
  initialized, else a card is memory-type.
- Don't put a space after cast.
- Use SIMPLEQ_FIRST/NEXT macro.
1998-06-05 02:51:17 +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
pk 573196b6ba Check for the ether broadcast address in promiscuous mode (PR#5527). 1998-06-04 20:35:44 +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
enami 98d557d09e No need to define WDDEBUG or undefine ATAPI_DEBUG_WDC here. 1998-06-04 02:46:24 +00:00
enami 770c4bfb9d Make this compile with WDDEBUG 1998-06-04 02:27:33 +00:00
enami df385821f4 Print newline like others do when tracing wdunlock. 1998-06-04 02:25:05 +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
kleink e39ca9bf6f Define MAP_FAILED, a symbolic constant which evaluates to the value returned
by mmap(2) upon failure.
1998-06-03 21:52:40 +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
thorpej 8ed096c794 Panic if we can't fulfill a bus_dmamap_load() with a boundary constraint. 1998-06-03 04:35:42 +00:00
thorpej 47724b2eb9 Sync w/ i386 port. 1998-06-03 04:33:28 +00:00
thorpej 2e846b8c1e Sync w/ i386 port. 1998-06-03 04:20:22 +00:00
thorpej 50be447da3 Sync the bus_dmamap_load back-end functions between alpha and i386. (only
slight, unnecessary differences)
1998-06-03 04:15:05 +00:00
mark 2c1cbdae75 Moved delay() from machdep.c to iomd_clock.c as delay will be dependant
on the system timers being used.
1998-06-02 21:57:58 +00:00
thorpej ff541b5e98 PRU_NREQ is the number of PRU_* requests, not the value of the last one. 1998-06-02 20:55:53 +00:00
mark 7689b22688 Use the sparc's GCC lossage fix for the arm32 port as well. Problem appears
to be a compiler bug resulting in an 'variable possibly used uninitialised'
warning when optimisation is used.
1998-06-02 20:51:24 +00:00
mark bdfeab3714 Merge in UVM support from Neil Carson <neil@causality.com>. 1998-06-02 20:41:46 +00:00
mark 0618ed7122 Define the maximum size of the kernel VM data area. 1998-06-02 20:33:01 +00:00
mark ea702a5130 Switch to MACHINE_NEW_NONCONTIG as the default. 1998-06-02 20:32:18 +00:00
mark 4ee7a131ad Don't allow the copyin and copyout routines to use bcopy() as this will
not work as the stack cannot be unwound if the copy aborts due to a fault.
1998-06-02 19:14:44 +00:00
thorpej b22946827d Add a comment explaining why we do _not_ ACK data that might accompany
a SYN (avoidance of a DoS attack).
1998-06-02 18:33:02 +00:00
thorpej c296923d2f Loss window MUST be one segment, per draft-floyd-incr-init-win-03. 1998-06-02 17:22:26 +00:00
thorpej edc01ec330 In addition to the IP flow hash table, put the flows on a list. The table
is used for fast lookup, the list for traversal of all flows.  Also, use
PRT timers.
1998-06-02 15:48:03 +00:00
mark 9a4b24a02a Simplify the stack filling code when using the STACKCHECKS option. 1998-06-02 14:34:55 +00:00
scottr 52da0e26c6 Kill unused variable that resulted from the last change. 1998-06-02 03:21:42 +00:00
scottr 910666949f An inability to map a slot's address space may be a normal condition --
for instance, on-board video may live here.  Make the complaint about
this a DEBUG rather than a DIAGNOSTIC message.
1998-06-02 02:24:03 +00:00
scottr da2f2cb79f Store the PA of the framebuffer in the softc. This eliminates the need
for the sc_phys callback; we can just store the PA in the grfbus attach
args, rather than a function pointer, which simplifies the code nicely.
1998-06-02 02:14:20 +00:00
thorpej 7022024d4a Add epic* at pci? 1998-06-02 01:43:33 +00:00
thorpej 5852faaf84 Device driver for the SMC 83c170 Ethernet PCI Integrated Controller (EPIC/100)
used in the SMC EtherPower II.

Media control isn't yet supported, due to some MII infrastructure
problems which I hope to address soon.  This isn't a huge deal, since
the PHY defaults to auto-negotiate mode.

Also, the device just programs the multicast hash table to accept all
multicast, to avoid a hardware bug that causes the multicast address
filter to lose in 10Mb/s mode.  This bug will be fixed in a more sane
way once the media control issues are dealt with.
1998-06-02 01:29:41 +00:00
scottr b8ce6ef764 Make the direct ADB driver default. 1998-06-02 00:29:29 +00:00
mark 09a9c016e3 Added Manuel Bouyer's recent i386 _bus_dmamap_load_buffer() patch :-
Add handling of DMA boundary barrier in _bus_dmamap_load_buffer(). This
affects all bus_dmamap_load* functions of bus_dma(9).
While I'm there fix a bug where the dm_segs array could be overflowded by one.
1998-06-01 22:47:27 +00:00
thorpej c13f81fd52 Correct some comments. 1998-06-01 19:33:59 +00:00
tsubai b64a62fc73 Change "extern var;" --> "extern int var;" and so on. (for egcs -Wall) 1998-06-01 19:31:04 +00:00
cgd 350942b30d according to the PCI 2.1 spec, the low _two_ bits of I/O BARs have
defined meaning/value other than specifying the address of the region.
(lowest bit is 1, meaning I/O space.  second-lowest bit is reserved.)
1998-06-01 17:48:13 +00:00
kleink e6be56ae0b Need <stdlib.h> for mktemp() prototype. 1998-06-01 14:05:35 +00:00
thorpej 837a8317b5 Eek, we were wasting almost half of the in_ifaddr hash space by modulo'ing
with IN_IFADDR_HASH_SIZE.  Instead, AND with the hash mask computed by
hashinit().
1998-06-01 00:50:07 +00:00
thorpej 08b5a4ecb8 Protect the ipflow_reap() call with splsoftnet. 1998-06-01 00:39:37 +00:00
thorpej 9ef6fa7387 Build pmap_boostrap.o without profiling; we can't call mcount before the
mmu is enabled!
1998-05-31 23:28:07 +00:00
thorpej a7f360c6c9 Specify a non-profiling C rule. 1998-05-31 23:25:41 +00:00
thorpej c1ca72eaf8 Build pmap_boostrap.o without profiling; we can't call mcount before the
mmu is enabled!
1998-05-31 23:18:57 +00:00
thorpej 92d8ae0ee3 Specify a non-profiling C rule. 1998-05-31 23:18:05 +00:00
cgd dd8ed56342 Another demonstration that when you're converting variables from 'long's
to fixed 32-bit integers, you have to exercise care.
1998-05-31 19:39:13 +00:00
veego 4519b25f6c Add options COMPAT_386BSD_MBRPART. 1998-05-31 13:53:42 +00:00
cgd 6e73ca754f add a PCI 'quirks' mechanism, meant to be used as the mechanism
of last resort when trying to communicate information about
bogus behaviour of PCI devices to the MI autoconfiguration code.
In general, bogus behaviour should be handled by drivers, but there
are some types of bogons which can't be addressed that way.  The
only quirk currently defined is one which indicates that the device
is multi-function even though the device's header says otherwise.
(Mmm, Intel 82371FB PCI-to-ISA Bridge (PIIX); you'd think that at least
Intel would have gotten it right...)
1998-05-31 06:07:59 +00:00
cgd 86585ca518 use the new PCI 'quirks' mechanism to help determine the number
of functions on a given device.  Also, clean up the #if 0'd
major-debugging-spew code so that it's all one piece, so that
it's a bit prettier, and so that it prints out quirk information.
1998-05-31 06:05:28 +00:00
cgd 3e3f8b7bac dd a PCI 'quirks' mechanism, meant to be used as the mechanism
of last resort when trying to communicate information about
bogus behaviour of PCI devices to the MI autoconfiguration code.
In general, bogus behaviour should be handled by drivers, but there
are some types of bogons which can't be addressed that way.  The
only quirk currently defined is one which indicates that the device
is multi-function even though the device's header says otherwise.
(Mmm, Intel 82371FB PCI-to-ISA Bridge (PIIX); you'd think that at least
Intel would have gotten it right...)
1998-05-31 06:03:44 +00:00
kleink 4c3bf73d01 Regen: mlock() and munlock() prototype changes. 1998-05-30 22:23:30 +00:00
kleink bb7e6a0bdd Per XSH98, const'ify the `addr' arguments to mlock() and munlock(). 1998-05-30 22:21:03 +00:00
kleink 04884a2320 * Per XSH98, provide size_t and const'ify the `addr' arguments to mlock() and
munlock().
* Don't make the madvise() declaration and related definitions available to
  _POSIX_C_SOURCE or _XOPEN_SOURCE.
* Remove a bogus comment.
1998-05-30 22:18:56 +00:00
thorpej 019443d82c Profiling version of the BASALT kernel. 1998-05-30 17:56:08 +00:00
tsubai a8b4eda678 Remove unnecessary cache flush. 1998-05-30 06:16:06 +00:00
tsubai 560c0e7643 Make configurable without adb. 1998-05-30 06:13:03 +00:00
thorpej cbd5a8ce98 Cosmetic changes. 1998-05-29 22:55:44 +00:00
veego a5aa2efa3d Resolve conflicts from the import of IPFilter 3.2.7. 1998-05-29 20:32:01 +00:00
veego 6250554a65 Fix compiler warnings: Add missing ()'s. 1998-05-29 20:28:17 +00:00
veego 630030601c Fix some compiler warnings: Missing prototype and ()'s. 1998-05-29 20:27:18 +00:00
veego a4c89e3e2e Resolve conflicts from the import of IPFilter 3.2.7. 1998-05-29 20:24:36 +00:00
hannken 3028e5f93b Didn't find sha1.h compiling sys/arch/sparc/stand/boot. 1998-05-29 16:50:14 +00:00
bouyer 94d805aff1 Add handling of DMA boundary barrier in _bus_dmamap_load_buffer(). This
affects all bus_dmamap_load* functions of bus_dma(9).
While I'm there fix a bug where the dm_segs array could be overflowded by one.
1998-05-29 16:48:09 +00:00
msaitoh 34b0df807a add some information from "PC Card standard March 1997" 1998-05-29 16:21:28 +00:00
matt 5d6bc16daa more optimizations 1998-05-29 15:55:34 +00:00
matt c0a1601f95 Change arp so its console log messages print out IP addresses in
dotted quad format instead of hex.
1998-05-29 15:34:24 +00:00
matt 164da176e8 Add boundary checks to _bus_dma_load... 1998-05-29 15:25:07 +00:00
kleink 3ecb81dc87 Sync the symbol used for multiple inclusion protection with the canonical
location of this header.
1998-05-29 13:37:39 +00:00
tsubai c1da5f908f Use arch/powerpc/. 1998-05-29 10:32:49 +00:00
sakamoto 970fffe99b revert. ofppc->powerpc 1998-05-29 10:04:22 +00:00
sakamoto 7e5b88f619 Revert OpenFirmware files to powerpc directory.
OpenFirmware files are used by ofppc/macppc.
1998-05-29 08:38:25 +00:00
matthias 6511ae105e bugfix from libc. 1998-05-28 22:07:59 +00:00
drochner 0c05b92da1 pull in new PC display headers 1998-05-28 16:59:31 +00:00
drochner dd457b5369 pull in new PC display headers
support "pcdisplay" console device
1998-05-28 16:56:26 +00:00
drochner cd6bdf270e Put definitions and subroutines needed for all PC display adapters
(MGA/GCA and compatibles) into global headers / source files.
Let the VGA driver use them.
1998-05-28 16:53:18 +00:00
drochner 196bb746eb Add a graphics device driver for wscons which supports legacy PC display
adapters. (minimal functionality - no virtual screens, no colors)
1998-05-28 16:51:50 +00:00