Commit Graph

5977 Commits

Author SHA1 Message Date
hm
6f102772c7 Make pcvt compile and run again after find_display() is gone as part of
the new-bus changes. Also fix several compiler warnings.
1999-04-20 08:45:27 +00:00
peter
2f00a09c09 Always reset the isa hints after releasing the resources after probe,
because the act of doing the release kills the hints(!).  A quirk of
the wrapper caused it to reset all the settings, except perhaps for the
memory address. I've tested this with a real SMC 8013EPC - which uses
shared memory addresses - it seems to work OK.
1999-04-19 20:31:53 +00:00
peter
a38d5f8be3 The missing prototype for isa_wrap_old_drivers() was bugging me.. 1999-04-19 20:16:22 +00:00
peter
21bd65ef65 Make userconfig saving actually work.. 1999-04-19 19:40:58 +00:00
alc
a4f72c3f1c _pmap_unwire_pte_hold and pmap_remove_page:
Use pmap_TLB_invalidate instead of invltlb_1pg to eliminate
	unnecessary IPIs.

pmap_remove, pmap_protect and pmap_remove_pages:
	Use pmap_TLB_invalidate_all instead of invltlb to eliminate
	unnecessary IPIs.

pmap_copy:
	Use cpu_invltlb instead of invltlb when updating APTDpde.

pmap_changebit:
	Rather than deleting the unused "set bit" option (which may be
	useful later), make pmap_changebit an inline that is used
	by the new pmap_clearbit procedure.

Collectively, the first three changes reduce the number of TLB shootdown
IPIs by 1/3 for a kernel compile.
1999-04-19 18:45:21 +00:00
luoqi
4e27fe5c86 Fix a potential hang situation.
PR:		i386/2108
1999-04-19 18:44:16 +00:00
peter
6339c0a99a Don't do (1 << irq) to get an interrupt mask when irq = -1.
Submitted by:	Luoqi Chen <luoqi@watermarkgroup.com>
1999-04-19 18:03:51 +00:00
peter
725616780f Zap LKM option and support. Farewell old friend. 1999-04-19 14:19:52 +00:00
peter
a74bdeb7d1 unifdef -DVM_STACK - it's been on for a while for x86 and was checked
and appeared to be working for the Alpha some time ago.
1999-04-19 14:14:14 +00:00
peter
2fc2e936d3 Fix a braino from last commit. 1999-04-19 14:01:42 +00:00
peter
83df0d6078 GC some now unused (and #if 0) code. 1999-04-19 13:34:25 +00:00
peter
ec5fa04f0e Drop the 'at nexus?' from the busses, it's not used.
Reactivate eisa0 and pnp0 in GENERIC, they work..  (eisa has been converted
but pnp still (for the most part) works the old way).
1999-04-19 11:53:36 +00:00
brian
44058649e6 Spelling police 1999-04-19 10:18:34 +00:00
dfr
e374d062a8 Fix some confusion between physical and virtual addresses when recording
the driver's choice of memory window.
1999-04-19 08:42:39 +00:00
peter
8794200df4 Always create attach points for the various child busses that can be
attached to the nexus.  With one exception, this (for example) allows
you to do wierd things like kldload the eisa bus on the fly and then
drivers, and have it auto probe the eisa bus when the drivers come online.

The one exception being pci, it only adds the pcib after the presence of
the pci bus is detected and that's #if'ed code.

A side effect of this is that isa and eisa will be attached to the nexus
directly rather than the PCI->ISA or PCI->EISA bridges.  I'm not sure if
this is good or bad at this point, but it seems to be closer to the way
things are for the i386 family...  This is likely to be followed up.

This also fixes compilation without a PCI bus configured and will allow
eisa to work without PCI too.
1999-04-19 08:04:19 +00:00
peter
8755eb28bf EISA can (or will) be a child of the i386 nexus on non-PCI systems. 1999-04-19 07:58:34 +00:00
peter
57dc7b24eb Set the bus description for EISA, like it is for ISA. 1999-04-19 06:57:33 +00:00
imp
314f2274cf Set ifq_maxlen to eliminate "zp0 XXX: driver didn't set ifq_maxlen"
message on boot.

I know this driver is depricated, but I need to use it for a little
while.
1999-04-19 06:56:24 +00:00
peter
8ffa409102 Compile without a PCI bus in the kernel. 1999-04-18 20:15:06 +00:00
peter
b10162efe5 Make the bt isa driver work..
- fix cut/paste problem. :-)
- don't forget to call isa_dmacascade()
- reset the port after we release resources.

That last one is a trap to watch out for..  The isa bus driver uses the
same port/irq/mem/etc variables for the initial probe hints as it does
for allocation/deallocation tracking.  Releasing a resource clears the
variable and then you loose the hint during attach.. (ouch!)
1999-04-18 19:08:28 +00:00
peter
d31d6be6f6 Implement an EISA new-bus framework. The old driver probe mechanism
had a quirk that made a shim rather hard to implement properly and it was
just easier to convert the drivers in one go.  The changes to the
buslogic driver go beyond just this - the whole driver was new-bus'ed
including pci and isa.  I have only tested the EISA part of this so far.

Submitted by:	 Doug Rabson <dfr@nlsystems.com>
1999-04-18 15:50:35 +00:00
peter
dfb16d4177 Remove i386-specific psm.c - it's now in sys/isa/psm.c 1999-04-18 15:13:03 +00:00
dfr
58dd4aa092 Add support for 'disabled' probe hint. 1999-04-18 15:10:58 +00:00
peter
da8f615ce6 These two have been replaced with isa/sio* in the generic isa area. 1999-04-18 14:38:42 +00:00
kato
3da450ec10 Added PC98 code.
Submitted by:	Takahashi Yoshihiro <nyan@wyvern.cc.kogakuin.ac.jp>
1999-04-18 14:30:55 +00:00
paul
067e3249ab Set ifq_maxlen to IFQ_MAXLEN 1999-04-18 01:49:16 +00:00
paul
92f601986d Set ifq_maxlen to number of transmit descriptors. 1999-04-18 01:37:19 +00:00
paul
9510d8b369 The changes to vm_page.c have broken the assumption that mallocing
early will result in memory below 16M so now we need to explicitly use
contigmalloc to get low physical memory.
1999-04-18 01:03:46 +00:00
peter
649a72f196 Wrap the pcm driver for old isa probes.
Correct #ifdef typo for sbxvi (Thanks Brian!)
1999-04-17 19:38:38 +00:00
bde
efa86a9261 Allocate space for struct isa_device's, not for pointers thereto.
This fixes memory corruption that caused calls to address 0 here.
1999-04-17 09:56:35 +00:00
peter
3d57e4de31 We use the generic isa version now. 1999-04-17 00:02:56 +00:00
peter
f1b43c1d97 We now use the generic isa version.. 1999-04-17 00:01:59 +00:00
peter
ed3e395cc2 vga_isa.c is now generic, not i386 specific (src/sys/isa/vga_isa.c) 1999-04-17 00:00:31 +00:00
peter
3ecea8861d As a temporary anti-foot-shooting measure, don't let the user attach
the atkbd device to isa, as was in the old (and 3.x) GENERIC config.
1999-04-16 23:39:15 +00:00
peter
087d4857e5 Bring the 'new-bus' to the i386. This extensively changes the way the
i386 platform boots, it is no longer ISA-centric, and is fully dynamic.
Most old drivers compile and run without modification via 'compatability
shims' to enable a smoother transition.  eisa, isapnp and pccard* are
not yet using the new resource manager.  Once fully converted, all drivers
will be loadable, including PCI and ISA.

(Some other changes appear to have snuck in, including a port of Soren's
 ATA driver to the Alpha.  Soren, back this out if you need to.)

This is a checkpoint of work-in-progress, but is quite functional.

The bulk of the work was done over the last few years by Doug Rabson and
Garrett Wollman.

Approved by:	core
1999-04-16 21:22:55 +00:00
jkh
c5fe612b84 Add SYSVSEM so that newer versions of Xaccel don't require a kernel
compile just to work.  We have the room now, so what the heck.

Reqested by:    Thomas Roell <roell@xig.com>
1999-04-16 18:27:18 +00:00
n_hibma
7625ffca16 Remove the entries for umodem and ucom. These drivers only probe
and attach, nothing else. This is confusing to people.
1999-04-16 16:17:05 +00:00
bde
226b174bb7 Removed dead code and cleaned up. setconf() now just asks for the
root device name.  The parser for the name is still too simple (it
forces slice = none, partition = 'a').
1999-04-15 15:35:32 +00:00
bde
2633265e24 Made booting with -a work for all configurations. Previously it
only worked for configurations with "swap on generic".

usr.sbin/config/config.y:
- ignore all "swap [on] device ...' specifications except for
  warning about them.  They haven't done anything related to swap
  for almost 4 years, and were previously silently ignored,
  except for "swap on generic" which stopped swap${KERNEL}.c
  from being generated.  Code to support swapping is now deader
  than before.

usr.sbin/config/mkswapconf.c:
- don't generate a dummy setconf() function in swap${KERNEL}.c.

sys/i386/conf/files.i386:
- swapgeneric.c is now standard.  It should be merged into autoconf.c
  so that it doesn't conflict with swap${KERNEL}.c for kernels named
  "generic".

sys/i386/i386/autoconf.c:
- don't call setroot() for mfs roots.  Since setroot() doesn't do anything
  harmful, this was just a waste of time, except possibly for booting with
  -a it may have helped prevent an undesireable call to setconf() by
  finding a bogus rootdev.
- honor -a for ffs roots.  -a now overrides all other ways of specifying
  the root device.  Previously, -r had precedence over -a, and the -a
  handling was usually a no-op.
- don't honor -a for non-ffs roots, since it would currently just get in
  the way of a clean panic.

sys/i386/i386/swapgeneric.c:
- don't declare things that are now always declared in swap${KERNEL}.c.
  Don't decide things that are now decided in autoconf.c.  Code to
  support the "generic" case is now dead instead of useless.
1999-04-15 14:52:24 +00:00
peter
f46a918bc0 Add example for 'makeoptions DEBUG' and some notes. I have not activated
it here since a -g LINT kernel is 100% useless as it won't run and hence
doesn't need debug capabilities (and would just waste disk space :-).
1999-04-14 16:54:00 +00:00
bde
d606317d26 Search bdevsw[] instead of the half-baked builtin table of devices
in the RB_ASKNAME case.  I had thought that I made this change in
rev.1.18, but rev.1.18 only affects obscure subcases of the
RB_DFLTROOT case (subcases where the compiled in default root is
not found in bdevsw[] -- then the root device is set to the first
device in the half-baked table that is also in bdevsw[]).

Removed yet more vestiges of config-time swap configuration.
1999-04-14 15:20:03 +00:00
bde
9a10a11b66 Generate intrnames[] dynamically. This should be new-bus friendly.
Old version reviewed by: se
1999-04-14 14:26:36 +00:00
peter
1f5077107f Add a commented-out example on using the makeoptions command to get a
kernel.debug.
1999-04-13 20:59:36 +00:00
peter
f9d40bf2df Build the functionality of the wdc_p hack into the ide_pci.c code.
All it did was match a specific device ID and turn on a quirk for
the wdc driver.

Incidently, at line 1462 there is a return that prevents the generic
ide_pci code from trying to look at the device.  I'd be interested
to know if we can take out the return and let the generic code "see" it.
I've left the return in because that's the way it worked before.

(Be sure to rerun config after cvsup or you'll get undefined files!)
1999-04-13 20:22:34 +00:00
peter
7d0299e0a5 Shoot the LKM support in the old wd/wdc/atapi driver set in the head and
perform a cleanup/unifdef sweep over it to tidy things up.  The atapi
code is permanently attached to the wd driver and is always probed.

I will add an extra option bit in the flags to disable an atapi probe on
either the master or slave if needed, if people want this.

Remember, this driver is destined to die some time.  It's possible that
it will loose all atapi support down the track and only be used for
dumb non-ATA disks and all ata/atapi devices will be handled by the new
ata system.

ATAPI, ATAPI_STATIC and CMD640 are no longer options, all are implicit.

Previously discussed with:  sos
1999-04-13 19:38:12 +00:00
peter
b4de52ea84 Clean up the kernel/kernel.debug/install.debug etc stuff.
Sense ${DEBUG} to decide on building kernel.debug or not.
Use a common install and install.debug target to minimize duplication.
(I deleted the ELF transition kernel warning, it was getting dated..)
1999-04-13 18:25:08 +00:00
tegge
8f4b15eccc Backout early start of APs since it caused some machines to hang. 1999-04-13 03:24:47 +00:00
brian
dfa82e7574 ppp != iijppp any more
Mention nos-tun as a tun device user.
1999-04-12 09:45:29 +00:00
n_hibma
6bf6c25391 Make debugging more selective.
Remove debugging options from GENERIC
1999-04-11 20:53:50 +00:00
peter
9511f66791 Move initialization of SWI's in the tty|net|bio masks from isa.c into
the static initializers in ipl.s.
1999-04-11 15:51:15 +00:00