Commit Graph

4592 Commits

Author SHA1 Message Date
sommerfeld 502fc00210 Comment out EON ISO-over-ip tunneling pseudo-driver, and document as
broken/fragile.  Unlikely to be of much use, and confuses new users
when their system crashes when they, or their dhclient stumble over
it.  See kern/10500, kern/8994 for the gory details.
2000-07-05 04:07:22 +00:00
augustss 01d5ad3ab6 White-space improvements. 2000-07-03 01:17:35 +00:00
sommerfeld 56cc62bbec Return the full width of the counter here. 2000-07-02 21:05:14 +00:00
cgd a5c13f9ad4 Kwality control:
* put #includes of opt headers and headers to get protos used by
  net/netisr_dispatch.h in net/netisr.h (if !defined(_LOCORE)) (rather than
  in netisr_dispatch.h itself, and potentially nowhere, respectively).
* require netisr.h to be included before netisr_dispatch.h.
* minor additional cleanup of both netisr.h and netisr_dispatch.h.
* clean up uses to remove now-unnecessary header file inclusions, and
  local prototypes of the fns.
* convert netisr dispatch implementations which didn't use
  netisr_dispatch.h (pc532) to use it.
2000-07-02 04:40:33 +00:00
itojun d738f90fd7 raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory.  MHLEN is too small
  already (less than 80) and there are chances for unwanted packet loss due
  to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
  (even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
  extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
2000-06-30 17:55:11 +00:00
itojun d76ae83df8 add PULLDOWN_TEST for all the platforms.
XXX should be moved to somewhere else when stabilized
2000-06-30 17:10:15 +00:00
mrg b564830503 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:44:03 +00:00
kleink bb2ed0f487 G/c _BSD_INTPTR_T_ and _BSD_UINTPTR_T_. 2000-06-27 05:53:22 +00:00
kleink 47b5c5e3b1 Resolve some formatting nits; add __intptr_t and __uintptr_t. 2000-06-27 04:58:51 +00:00
kleink e695f72a2e Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
2000-06-26 15:42:16 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
thorpej 7a0a177352 Put `sysmon' in the `lm' slot, and free the `viaenv' slot. 2000-06-24 00:38:21 +00:00
thorpej f82e306928 Add a clearing-house pseudo-device for system monitoring devices
such as the LM78 and VT82C686A (and eventually ACPI).  Multiple
sensor devices can be hooked registered with `sysmon', and eventually
sysmon will also handle hardware (and software) watchdog timers.

Convert the `lm' and `viaenv' drivers to the new interface.
2000-06-24 00:37:19 +00:00
kleink 133ea38323 Add a WEAK_ALIAS() macro. 2000-06-23 12:18:45 +00:00
fvdl 1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
matt 15511d1dcc Move COFF_LDPGSZ to ibcs2_machdep.h. Fix nmagic loader to deal with
subpage mappings.
2000-06-21 05:45:15 +00:00
cyber 099ead3895 increase size to allow for dhclient 2000-06-18 23:53:32 +00:00
castor 512723f616 Fix integer overflow in calculation of VM_MAX_KERNEL_BUF. 2000-06-18 18:29:04 +00:00
hubertf 80365fb67d Change comment: APM_POWER_PRINT _does_ print stats on the console. 2000-06-16 10:31:03 +00:00
thorpej 9424f6fe54 Update with reality. 2000-06-16 03:49:12 +00:00
thorpej ff36cd64b7 Rearrange the npx driver a little to allow for multiple attachments
and add a pnpbios atttachment for it.
2000-06-16 03:47:24 +00:00
abs 573c583527 If any config file here ever deserved NFS_BOOT_DHCP,NFS_BOOT_BOOTPARAM, it
would probably be DISKLESS. Make It So. Also retire UNDERWORLD as I'm no
longer at Dreamworks with those delightful old ex-NeXTStep P133s.
2000-06-15 18:16:10 +00:00
mycroft ba354a1800 Disable pmap_copy() for now. 2000-06-15 13:35:27 +00:00
thorpej 839042fb97 Don't have an xi in this machine. 2000-06-14 22:29:03 +00:00
veego 223d7455c7 Remove the obsolete config fragments for kernel crypto, because the IPsec
crypto code is now in the kernel source tree.
2000-06-14 22:02:13 +00:00
jhawk e4c99458f4 If comprobe1() fails, print a message. Otherwise one gets the xname
prepended to the next configure device, i.e.

com1lpt0: at pnpbios0 index 18 (PNP0401)
2000-06-14 15:15:43 +00:00
soren 824923164c Attach to CS4610 with CS4236 codec in, well, CS4236 compatibility mode. 2000-06-12 03:43:54 +00:00
mycroft 9884ae5ff6 Remove pcvt tentacles. 2000-06-11 02:41:10 +00:00
mycroft 6e7ce465e9 After almost 5 years, it is now time to decommission pcvt. Bon voyage. 2000-06-11 02:34:23 +00:00
augustss ead295db1b Alphabetize. 2000-06-11 00:21:01 +00:00
haya fb24119c70 Do not use memory space close to system memory (PR #10318). 2000-06-09 10:31:07 +00:00
soda 0f76c56f2d increase number of parameters of pckbc_cnattach(), since offset of command port
is not 4 (KBCMDP), but 1 on jazz based platforms of arc port.
2000-06-09 04:58:32 +00:00
cgd a11660da22 make spl-lowering functions return void. 2000-06-08 23:03:13 +00:00
fvdl b5cca46229 Make siop the default instead of ncr. The siop driver has proven to
be reliable, and, although it does not do tagged queueing yet, this
makes it a better choice.
2000-06-08 21:42:14 +00:00
jhawk 3c6d754bbb Rename "stack" to "stacktrace" and have "stack" call "stacktrace $ebp $eip"
(saves typing).

Use sizeof(long) instead of "4".
2000-06-08 14:42:11 +00:00
jhawk f9b0e0c4eb gdb script for backtracing an i386 kernel stack.
Useful when "where" in gdb fails to cross trap()s,
e.g. port-i386/10313
2000-06-08 03:15:40 +00:00
thorpej 733a6e059b Increase the miniroot size to 3072 (to match INSTALL and INSTALL_TINY).
This is needed due to TI-RPC being larger.
2000-06-07 19:29:45 +00:00
gmcgarry adb2efef6b Autonegotiation with xi driver is reported to work. Use it on the
install media.
2000-06-07 02:16:06 +00:00
soren a9aa2abf94 defopt SYSCALL_DEBUG. 2000-06-06 18:52:30 +00:00
haya d1421ab5ac Remove unnecessary function arguments. 2000-06-06 08:20:06 +00:00
haya c93ef01fbf Use entire extent region when PCIBIOS_ADDR_FIXUP is set. PCIBIOS
provides PCI-dedicated memory and io extent.
2000-06-06 08:17:37 +00:00
sommerfeld bbca3924cd Replace "timestamp" with "counter" in previous change, to avoid any
possible confusion that it has anything to do with accurate
measurement of time.

New names:
	__HAVE_CPU_COUNTER
	cpu_counter()
	cpu_hascounter()
2000-06-06 01:33:15 +00:00
jhawk c063b64a2b Do not clear msgbufenabled in dumpsys(). Dump messages will now go to
the message buffer. This can be invaluable in debugging if the dump
fails (assuming a persistant message buffer)
2000-06-05 23:44:55 +00:00
gmcgarry d0241b393f Replace references to xe with xi. Clarify description to avoid
confusion with the Xircom tlp-based cards.
2000-06-05 23:18:50 +00:00
sommerfeld bcf02ec8ff If rnd is configured into the kernel, do rnd(4) entropy collection
from devices connected to pckbc:
 - Do actual sample collection in pckbc.
 - Add rndsource_element_t to the slot data.
 - Change pckbc_set_inputhandler() to take an additional argument,
the name of the device, which is (eventually) passed into
rnd_attach_source() to identify the source.
 - Change callers of pckbc_set_inputhander() appropriately.
2000-06-05 22:20:54 +00:00
sommerfeld fae21c7be1 Let rnd(4) know how to read the (pentium and higher) cycle counter:
If __HAVE_CPU_TIMESTAMP is defined, <machine/rnd.h> exists and defines
two functions:
  1) 	u_int32_t cpu_timestamp(void);
returns the 32 low order bits of a reasonably high frequency counter.
  2)	int cpu_havetimestamp(void);
returns non-zero if cpu_timestamp() actually works.

The timestamp counter should run at a frequency greater than 1 MHz
(otherwise, microtime would be sufficient); other than that, the exact
frequency and origin of the counter are unspecified.
2000-06-05 21:15:22 +00:00
joda 9e1f399ada fix `#scsibus at siop?' line 2000-06-05 13:34:13 +00:00
gmcgarry 11382b8021 Add APM_ALLOW_BOGUS_SEGMENTS - allow the use of data segments which
are in unexpected locations.
2000-06-04 22:36:27 +00:00
mycroft 43a543fa88 Implement CLKF_INTR(), to count interrupt time separately. 2000-06-04 21:27:38 +00:00
cgd cffb580806 Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
2000-06-04 19:14:14 +00:00
mycroft 9dcdff8f25 Add stubs for PE/COFF. 2000-06-04 16:26:11 +00:00
mycroft e9deffe0bf Move a bunch of the COFF definitions into exec_coff.h, so they can be used by
other code.   XXX Not tested on SH3 yet.
2000-06-04 16:23:59 +00:00
fvdl d1d025652d Revert previous change until the problem it has has been analyzed. 2000-06-03 17:33:25 +00:00
cgd 0b270a9dfb booted_partition, not booted_parition... 2000-06-02 22:09:02 +00:00
thorpej 42e4f5279b Rearrange the code that loads pages into the VM system somewhat, and
use the ACPI memory map if provided by the boot program.
2000-06-02 18:33:16 +00:00
thorpej 90ef824c6d Actually define the ACPI memory map entry (bi_memmap_entry). 2000-06-02 18:27:47 +00:00
thorpej 7f1c64b910 Enable the code that passes the ACPI memory map to the kernel. 2000-06-02 18:26:10 +00:00
thorpej 7a5ce477cb When allocating new PT pages during early bootstrap (i.e. before
pmap_init() has finished), make sure to zero them.
2000-06-02 17:46:37 +00:00
haya 7bb941e63d KNFied. 2000-06-02 08:41:13 +00:00
matt 33763f10cf Fix a missing cases of devpp -> booted_device, partp -> booted_parition 2000-06-01 17:42:59 +00:00
matt 251afc5218 fix compile problem. 2000-06-01 17:35:42 +00:00
matt 9169d99f2a Don't pass booted_* to findroot/getdevice, access them via the globals.
Also, make findroot static.  This eliminates unneeded clearing of them
and make their use consistent among the ports.
2000-06-01 15:38:20 +00:00
david 156fa3d59c Remove entry for non-existant driver that entered GENERIC in 1.289
and propagated to others when sync'd.
2000-06-01 04:24:00 +00:00
matt 7067d99bb7 Since booted_device/paration are globals, no need to init them to 0. 2000-06-01 04:16:37 +00:00
matt c9aff328d9 Make booted_device global (and booted_parition for consitency).
Eliminate it from header files and other extern definitions.
2000-06-01 00:49:49 +00:00
cgd 47449a63d2 kill __P in these files. (I had to look at them anyway with an eye for
adding some protos... and adding them with __P seems wrong, but mixing
__P and not __P in the same file seems wrong too, so...)
2000-06-01 00:04:50 +00:00
uch 53c8f0ac37 if defined PCIBIOS_ADDR_FIXUP, use more safety extent. 2000-05-31 16:39:56 +00:00
uch a99c8407ab don't destroy PCI bus space extent for rbus_machdep.c 2000-05-31 16:38:55 +00:00
mycroft d6f10e4b63 Use the frame pointer that matches the PC for the `trace/t' and panic (i.e.
have_addr==TRUE) cases.
2000-05-31 16:24:24 +00:00
thorpej 8c2d00aaeb Add a comment about needing to initialize p_cpu when multiple
processors are supported.
2000-05-31 05:09:14 +00:00
nisimura 0e80e9cd4b Minor comment adjustments. cpu_switch has an argument of struct proc *. 2000-05-31 01:46:15 +00:00
haya 03c4724943 Use rbus_new_root_share() instead of rbus_new_root_delegate(). 2000-05-30 09:26:19 +00:00
thorpej 2e7afc702d Update. 2000-05-28 21:49:02 +00:00
thorpej e51303c17e Mirror last change to GENERIC. 2000-05-28 21:48:52 +00:00
jhawk daa86a0be1 Add patchable "pnpbiosdebug" global if PNPBIOSDEBUG is compiled in,
and add PNPBIOSDEBUG_VALUE to initialize its value, defaulting to 1.
2000-05-28 21:46:04 +00:00
jhawk fb6d063b8c pnpbios from 1.344 didn't config. s/pnpbios0/pnpbios?/ 2000-05-28 21:12:00 +00:00
thorpej 4af4c47f80 Tidy up a little, improve PnP BIOS section. 2000-05-28 20:11:59 +00:00
thorpej b6c4eb81fd Massive cleanup and syncing with GENERIC 2000-05-28 20:10:29 +00:00
thorpej e03e9e8086 Rather than starting init and creating kthreads by forking and then
doing a cpu_set_kpc(), just pass the entry point and argument all
the way down the fork path starting with fork1().  In order to
avoid special-casing the normal fork in every cpu_fork(), MI code
passes down child_return() and the child process pointer explicitly.

This fixes a race condition on multiprocessor systems; a CPU could
grab the newly created processes (which has been placed on a run queue)
before cpu_set_kpc() would be performed.
2000-05-28 05:48:59 +00:00
tv ab415393d3 `ep' has `plug-and-play' support on all buses, including non-PnP ISA.
Attach ep* at isa instead of ep0, so we will autoconfigure all 3c5x9s.
2000-05-28 02:42:16 +00:00
mycroft 6a082e4797 Clear %ebp in the forked child, so we don't try to unwind past it. 2000-05-27 23:01:44 +00:00
sommerfeld 40339b39f9 Reduce use of curproc in several places:
- Change ktrace interface to pass in the current process, rather than
p->p_tracep, since the various ktr* function need curproc anyway.

 - Add curproc as a parameter to mi_switch() since all callers had it
handy anyway.

 - Add a second proc argument for inferior() since callers all had
curproc handy.

Also, miscellaneous cleanups in ktrace:

 - ktrace now always uses file-based, rather than vnode-based I/O
(simplifies, increases type safety); eliminate KTRFLAG_FD & KTRFAC_FD.
Do non-blocking I/O, and yield a finite number of times when receiving
EWOULDBLOCK before giving up.

 - move code duplicated between sys_fktrace and sys_ktrace into ktrace_common.

 - simplify interface to ktrwrite()
2000-05-27 00:40:29 +00:00
thorpej a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
jdolecek 2649f518ec note in BIG WARNING LETTERS that MCA support is experimental and the
kernel should only be used for experimentation
comment out some stuff not present or used on my development machine
g/c ef
add (commented out) aha attachment
2000-05-26 20:59:07 +00:00
jhawk 8e44b27348 Rename the machine-specific stack trace printing functions
from db_stack_trace_cmd() to db_stack_trace_print(),
and add an additional argument, a function pointer for an
output routine (i.e. printf() or db_printf()).

Add db_stack_trace_cmd() in db_command.[ch], calling
db_stack_trace_print() with db_printf() as the printer.

Move count==-1 special handling from db_stack_trace_print() [nee
db_stack_trace_cmd()] to db_stack_trace_cmd() [nascent here].

Again, I'm unable to test compilation on all affected platforms,
so advance apologies for potential brokenness.
2000-05-26 03:34:24 +00:00
thorpej 8964c35eca Introduce a new process state distinct from SRUN called SONPROC
which indicates that the process is actually running on a
processor.  Test against SONPROC as appropriate rather than
combinations of SRUN and curproc.  Update all context switch code
to properly set SONPROC when the process becomes the current
process on the CPU.
2000-05-26 00:36:42 +00:00
jhawk f3528d725d Interface change: db_printsym() takes a third argument, pr, a function
pointer indicating how to print the symbol. This allows db_printsym()
to called in places where db_printf() is not an appropriate output
function.

While straightforward, apologies in advance if I've introduced any minor
syntax errors; I was unable to test compilation this on all the affected
platforms.
2000-05-25 19:57:30 +00:00
mason af43639ded Fixed typo in ses comment - devies -> devices 2000-05-25 01:34:18 +00:00
thorpej 1140468205 Use preempt(), not an open-coded equivalent (which won't be
equivalent for long).
2000-05-24 16:48:33 +00:00
thorpej 920010ad8f Add SCSI Enclosure Services at cdev minor 74. 2000-05-22 16:58:20 +00:00
thorpej 78112e2541 Add `ses' (SCSI Enclosure Services) device. 2000-05-22 16:48:41 +00:00
perry 2a9fe3a4e7 Actually return the BIOS error code (if any) generated by the reads 2000-05-21 16:59:28 +00:00
jhawk 24396ea653 revert 1.21 (back to 1.20);
the problem was due to diskbuf[] getting pushed over a 64k
boundary, and has now been fixed (for the moment).
2000-05-21 16:33:12 +00:00
jhawk 07a3d660c5 This change courtesy of Charles Hannum <root@ihack.net>. This
addresses the problems seen by Jason Thorpe <thorpej@netbsd.org> and
Erik Berls <cyber@netbsd.org> necessitating rev 1.20 of
biosboot/main.c.

Move BOOTSEG from 0x100 to 0x1000.
Move heap from 0x10000 to 0x20000.

XXXXXXXX

This is a Kluge From Hell to allow boot blocks to grow a little larger
without diskbuf[] crossing a 64k boundary.
2000-05-21 16:29:14 +00:00
augustss bdc8c2f8f4 Alphabetize. 2000-05-20 21:34:48 +00:00
thorpej 4756ba9e32 #if 0 out the consdev command stuff -- with it, boot blocks don't
work, without it, they work fine.  Size issue?
2000-05-19 22:26:50 +00:00
veego 1cd1663317 Disable the viaenv driver and remove the siop entry which was added
in the last commit.
2000-05-19 10:23:36 +00:00
thorpej f636538446 NULL != 0 2000-05-19 04:34:39 +00:00
thorpej 56512515f8 Add Cyclades-Z serial. 2000-05-17 18:08:50 +00:00
thorpej 640a49f093 Add Cyclades-Z serial adapter at cdev minor 73. 2000-05-17 18:08:03 +00:00
uch b444da72bd Skip fixup phase when system BIOS setting were perfect.
don't write 0 to command register. (it is harmful).
2000-05-17 09:50:34 +00:00
thorpej 463931b3ba Nuke dk_establish() from orbit except from those ports which still use
it to determine the boot device: mvme68k, pc532, macppc, ofppc.  Those
platforms should be changed to use device_register().  In the mean time,
those ports defined __BROKEN_DK_ESTABLISH.
2000-05-16 05:45:44 +00:00
jhawk aa0007b5a5 In case of db_onpanic=0, still drop to ddb if the trap was from within
ddb.
i.e. "db> x/s 0x14" should return you to ddb when it faults, regardless
of the state of db_onpanic.
2000-05-15 20:16:48 +00:00
jhawk 2dc49a4780 Comment out XSERVER and XSERVER_DDB and move them to the pccons-specific
section. They are not used with wscons.
2000-05-14 04:36:09 +00:00
jdolecek 6572f303f4 remove now redundant comment regarding IBM_L40 define 2000-05-13 19:58:41 +00:00
jdolecek 950749ab6f add special bootblocks for IBM PS/2 - those machines need different gate A20
addressing
2000-05-13 19:58:01 +00:00
jhawk 187860f8fb Fix problem from 1.27, and more long-standing in the commented-out
-DSUPPORT_SERIAL options:

Only set -DSUPPORT_SERIAL=CONSDEV_PC for "biosboot" and "biosboot_resetvideo",
but not for biosboot_com0.
2000-05-13 19:03:19 +00:00
jhawk d4091aa02e Add support for on-the-fly switching of console devices interactively
from biosboot via the "consdev" command.
2000-05-13 05:31:00 +00:00
jhawk a72e1e9c59 Add support for on-the-fly switching of console devices interactively
from the i386 biosboot via the "consdev" command.
2000-05-13 05:25:20 +00:00
jhawk 1dac4cd666 Add support for on-the-fly switching of console devices interactively
from biosboot via the "consdev" command.

Move "Press return" printf() out of print_banner() so we can
print_banner() reasonably after switching devices.
2000-05-13 05:23:37 +00:00
thorpej 26f56b9cab Only use __builtin_va_alist_t if using GCC 2.96 or later. Fixes
pkg/10080, from Matthias Scheler.
2000-05-12 23:49:11 +00:00
bouyer 9c43539f8f The VIA Technologies VT82C686A SMBus Controller claims to be a PCI/ISA
bridge, ignore it. Should fix kern/10093 by Mark Dohring.
2000-05-12 20:31:22 +00:00
jhawk ed3acc8fbb zsr has acquired a wi card 2000-05-12 03:14:21 +00:00
drochner d5d280d015 -attach auxilary PCI buses at the 450NX chipset,
tested by hubertf in a small configuration (1 PXB - 2 PCI buses)
-being here, remove the per-VID/DID matching code which was commented
 out for a while
2000-05-11 16:44:14 +00:00
jdolecek 8fedbd8497 Add i386-specific part of MicroChannel Architecture bus support, as
found in some older IBM PS/2 machines.

This code is based upon work by Scott D. Telford, with some minor bits
in arch/i386/mca/mca_machdep.c taken from FreeBSD.

XXX this is still very experimental and development version; use at your
XXX own risk
2000-05-11 16:38:10 +00:00
jdolecek 6c1643be43 minor adjustment for compiling with IBM_L40 2000-05-11 16:11:54 +00:00
jdolecek 98beeaa61d add commented out CPPFLAGS+= -DIBM_L40 - needed for PS/2 bootblocks 2000-05-11 16:05:51 +00:00
jhawk 2d2ad4f3e8 fix cosmetic brain-oh in last; s/attachonly/matchonly/g 2000-05-11 15:26:23 +00:00
jhawk a2606dbe80 Address PR#10042: instead of getting the dynamic configuration
all the time (which crashes some vaios), get the static configuration,
and if config_search() finds a node, then do the dynamic configuration.
This seems to work fine on multiple vaios (which seem to crash
in different places...go figure).

Also, bring prototypes in-line with KNF and declare static as appropriate.

"#if 0" out pnpbios_getapmtable() and pnpbios_setnode() as they
are not called.

Fix printf()s to print out dv_xname.

Fix a comment typo.

Use manifest constants (PNP_CF_DEVCONF_DYNAMIC, etc.) in calls to
pnpbios_getnode() instead of hardcoded constants.
2000-05-11 05:54:49 +00:00
hubertf 9f48bba3ae Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
2000-05-09 00:56:21 +00:00
thorpej 6a33c86623 HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well. Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
2000-05-09 00:32:19 +00:00
hubertf 30be57ab7b Disable DDB_ONPANIC=0. A plain reboot in case of problems isn't really
helpful at install times, regarding diagnostics.
2000-05-09 00:28:22 +00:00
joda 89ef6f9a91 add viaenv template 2000-05-08 18:41:26 +00:00
thorpej d611fd596a Use vprintf() rather than the non-standard %: format. 2000-05-08 18:22:29 +00:00
joda 827056c9c3 add entry for viaenv 2000-05-08 16:42:36 +00:00
augustss 3a6e3a4670 Add (sometimes commented out) MIIVERBOSE option. 2000-05-08 13:49:44 +00:00
fvdl 5ebece6b49 Use ES to address the partition table when checking if we need to use
int13 extensions. Fixes PR 9676.
2000-05-07 22:58:58 +00:00
veego 701eaba273 add the #71 NODEV entry for bktr to the chrtoblktbl list. 2000-05-07 08:32:50 +00:00
wiz 784bcfd6ba add bktr device 2000-05-07 00:41:06 +00:00
thorpej b193ffa77c Use __GNUC_PREREQ__(). 2000-05-05 00:20:22 +00:00
jhawk c82c8655cf Add comment suggesting s/com[0-9]/com*/ and s/lpt0/lpt*/
if you enable com*/lpt* at pnpbios0, to avoid attaching
com0 as com3.
Don't actually change the "com0 at isa" line, since doing so
would cause some com* (e.g. pcmcia) to be renumbered from com3
to something lower, at least on some systems.
2000-05-04 19:41:44 +00:00
thorpej d3d81e3ad6 Make varargs and stdarg work with GCC 2.96 and later. 2000-05-03 21:54:06 +00:00
mycroft 468985f608 Adjust asm statement for newer GCCs. 2000-05-03 21:32:59 +00:00
mycroft f73803d1ce Fix printf() format. 2000-05-03 20:17:37 +00:00
mycroft 3afc302a93 ctob() -> ptoa(), to fix sign-extension issues when using >2GB. A more
comprehensive change will be necessary for >4GB, but that's a bigger issue.
2000-05-03 20:02:08 +00:00
augustss 9f9f06401c Add (commented out) cms(4) driver. 2000-05-02 11:00:56 +00:00
thorpej 855b79db92 Let each platform typedef the new __cpu_simple_lock_t, which should
be the most efficient type used for the atomic operations in the
simplelock structure, and should also be __volatile.
2000-05-02 04:41:04 +00:00
augustss 4a30060c43 Add C-Media CMI8x38, cmpci. 2000-04-30 22:00:54 +00:00
dante d7592a72fe Update comment in adw* 2000-04-30 19:08:19 +00:00
thorpej 1dcdb13c04 Implement __cpu_simple_{,un}lock{,try}(), modeled after the Alpha
implementation.
2000-04-29 19:39:51 +00:00
thorpej f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00
uch bd5f21ffeb add PCIBIOS_ADDR_FIXUP, PCIBIOS_IRQS_HINT configuration. and its sample. 2000-04-28 17:23:51 +00:00
uch cc30f00dd3 PCI I/O address fixup routine.
When BIOS don't asign PCI I/O address space to device,
        allocate it without conflict and write to PCI configuration header.
2000-04-28 17:19:10 +00:00
uch e3c3882828 PCIBIOS_IRQS changed to PCIBIOS_IRQS_HINT. PCIBIOS_IRQS_HINT is
used when no IRQ guess. when at least 1 PCI device configured
        correctly, unused.
2000-04-28 17:15:15 +00:00
thorpej 0b3af10371 Keep track of current power state (resumed, standing by, suspended), and
only perform standby/suspend/resume actions if the state actually changes.

Inspired by some similar code in the USB code, pulled into here so that
the workaround isn't needed in every driver.
2000-04-28 04:48:51 +00:00
thorpej a8b12af644 - When we get an ABOUT_TO_CHANGE event, send an OK message in response
so that the docking/undocking process can actually complete.
- Track the current docking state, and report the current state when it
  changes.
- Make it possible to enable pnpbios verbosity at run-time.
2000-04-27 16:41:59 +00:00
thorpej 43db473cbb Clean up the docking-event related message, and make it possible to
debug docking events without having to debug the rest of PNPBIOS.
2000-04-26 20:33:46 +00:00
thorpej 23694b5ab3 Glue in uvm_pageidlezero(). While here, improve some panic messages
in pmap.c, as requested by Jonathan Stone.
2000-04-24 17:18:16 +00:00
tsarna da1f2723c4 Addredd port-i386/9897, but differently. Since the effect of resetting
the video mode on machines with ancient or no video cards is not clear,
for safety's sake a I created a new biosboot variant, biosboot_resetvideo
that does the call.

Anyway, now I can boot my i-opener without hitting Tab. Thanks Andrew!
2000-04-23 19:57:12 +00:00
thorpej bfced25d78 Update with reality. 2000-04-23 17:51:21 +00:00
thorpej d0271b127d Add PNPBIOS front-end for the PC Floppy Controller driver. 2000-04-23 17:50:00 +00:00
thorpej 0cde36f780 Carve off the ISA configuration bits from the floppy driver. Driver is
still ISA-specific, but we can attach ISA instances with different
configuration mechanisms now.
2000-04-23 16:47:45 +00:00
uch 298fbbd162 fix VP3_CFG_INTR_MASK 2000-04-22 15:00:41 +00:00
groo 7c6a2dcd6d name change; rl -> rtk 2000-04-22 06:56:20 +00:00
thorpej cf0a940b9f Add a pnpbios front-end to the pckbc driver. This is a littke wonky
yet.. the keyboard controller actually has 2 PNPBIOS nodes (one to
represent the controller I/O resources and the kbd port IRQ, and one
for the aux port IRQ).  To cope with this, we're attaching two instances
of the driver and forge on ahead once both nodes have been seen.

If someone has a better way, please feel free to step forward.
2000-04-22 06:41:34 +00:00
thorpej 1842a5ee3a Allow pnpbios_getirqnum() to return the share type, as well. 2000-04-22 06:38:24 +00:00
thorpej 8c5710a861 - Declare biosbasemem and biosextmem in <machine/cpu.h>, don't extern
them everywhere they're used.
- Avoid integer overflow when converting bios{base,ext}mem (in units of
  kilobytes) to bytes.
2000-04-21 18:37:20 +00:00
explorer 79f12736c0 Add (commented out) addcom0 and com* at addcom? 2000-04-21 17:52:06 +00:00
haya 784977f319 Changes the name of RealTek driver. The new name is `rtk'. This used
to be called `rl' and it conflict with RL vax disks, canonical and
historical unix driver name.

This changes are minimal: it only changes the name of RealTek driver.
The filename of source code and a lot of the letter `rl' in source
files should be changed shortly.
2000-04-19 08:44:31 +00:00
itojun 3be41bae18 add stf pseudo interface (commented out due to possible security risks) 2000-04-19 06:50:27 +00:00
drochner 13c9f8d398 implement bus_space_vaddr() 2000-04-17 17:24:48 +00:00
tron 5bfc315184 Fix typo in comment. 2000-04-17 07:57:21 +00:00
thorpej 2f7f997512 Oops, forgot RCS ID. 2000-04-16 19:46:54 +00:00
thorpej 506bf156e0 Kernel configuration file for my Abit BP6+dual Celeron machine. This
could be used as an example configuration file for that motherboard.
2000-04-16 19:46:21 +00:00
tsarna 24d492c6f3 Default the keymap to new "us.iopener" mapping 2000-04-14 23:14:25 +00:00
augustss 633209364f Add FTDI FT8U100AX driver. 2000-04-14 14:53:32 +00:00
augustss 689485b4df Add Rio 500 device. 2000-04-14 14:44:49 +00:00
joda 1498ccad74 add com at cardbus 2000-04-13 11:21:18 +00:00
joda 39a71b22e4 add com at cardbus comment 2000-04-13 11:20:06 +00:00
matthias 156e51244a Fix typo, DIAGNOSITC -> DIAGNOSTIC 2000-04-11 06:30:28 +00:00
haya f0f4d101b2 Add rl cardbus attachment. 2000-04-10 07:58:18 +00:00
thorpej d37f3bd4ee Use UVM_PGA_ZERO in pmap_alloc_ptp(). 2000-04-10 06:34:11 +00:00
chs 7e160e9e20 add newline at end of debug printf. 2000-04-10 01:21:06 +00:00
augustss b0789bc4f4 Add upl(4) driver. Uncomment uvisor(4) driver. 2000-04-09 18:34:02 +00:00
tsarna 12188e5241 A GENERIC-like configuration for the Netpliance i-opener. 2000-04-08 21:27:07 +00:00
thorpej 6dd5a9db6e Use dev/isa/fd.c. 2000-04-07 16:35:19 +00:00
wiz afc40c7421 comment out (erroneously?) added mcabus, until dev/mca exists 2000-04-06 23:55:04 +00:00
jdolecek cef3c93f82 Switch to MI ns_cksum.c - the MD ns_cksum.c is equivalent to it
(modulo some u_intX_t vs. u_char type usage). In particular, the
MD version didn't contain any MD code.
2000-04-06 13:37:49 +00:00
jdolecek 8857b94a5c winchip_cpu_setup(): restructure code to avoid warning when I586_CPU is not defined 2000-04-05 10:09:50 +00:00
jdolecek 7bc4915fcd Disable TSC on WinChip C6, add WinChip 2 & WinChip 3 entries.
From Kamo Hiroyasu <wd@ics.nara-wu.ac.jp> OpenBSD kern/991
via Takahiro Kambe <taca@sky.yamashina.kyoto.jp>.
2000-04-05 07:46:33 +00:00
augustss 9a31a8c77f Add atapibus* at umass? 2000-04-03 00:03:28 +00:00
thorpej 2bc5adb20e Instead of checking vm_physmem[<physseg>].pgs to determine if
uvm_page_init() has completed, add a boolean uvm.page_init_done,
and test against that.  Use this same boolean (rather than
pmap_initialized) in pmap_growkernel() to determine if we are
being called via uvm_page_init() to grow the kernel address space.

This fixes a problem on some i386 configurations where pmap_init()
itself was needing to have the kernel page table grown, and since
pmap_initialized was not yet set to TRUE, pmap_growkernel() was
choosing the wrong code path.

Fix tested by Havard Eidnes.
2000-04-02 20:39:14 +00:00
thorpej d8be1024c1 Make this compile again after the callout changes. 2000-04-02 19:54:29 +00:00
minoura 78b105698a Move dl* function definitions to libc on ELF.
Based on the patch supplied by Takuya Shiozaki <tshiozak@astec.co.jp>.
See http://mail-index.netbsd.org/tech-userlevel/2000/02/23/0000.html.
2000-04-02 15:35:47 +00:00
soren 5932e9f765 Match new prototype of pciide_dma_start in pciide.c. 2000-04-01 20:17:12 +00:00
tsarna 56e25c18bb Add and enable auvia 2000-03-31 04:47:52 +00:00
augustss dbf4f91643 Add (commented out) uvisor driver. 2000-03-30 17:01:01 +00:00
soren 71398b0ad8 With e.g. mbr_bootsel, the boot loader just exits rather than reboot,
so print that.
2000-03-29 14:29:34 +00:00
simonb 9308187dbf Remove redundant decl of consinit() - it's in <sys/systm.h>.
Remove duplicate definition of delay() - we only need one in this file.
2000-03-29 03:54:03 +00:00
simonb 2f1fef39b3 Centralise the declarations of cpu_model, machine, machine_arch,
osrelease, and ostype and remove "extern char foo[];" (for hostname
and domainname too).

Also delete redunctant decl of boottime in kern_info_43.c.
2000-03-28 23:57:24 +00:00
thorpej 6b45fb25a9 The assembler understands rdmsr, wrmsr, rdtsc, and rdpmc, so there's
no need to use .byte.
2000-03-28 19:17:29 +00:00
thorpej fd21635b22 Extern cpu_id and cpu_vendor[] here. 2000-03-28 19:16:05 +00:00
thorpej a142c171d0 Add: cmpxchg8b, wrmsr, rdtsc, rdmsr, rdpmc, rsm. From FreeBSD. 2000-03-28 19:15:40 +00:00
thorpej 0c4b7c7531 Add functions to read the TSC and Performance Counters. 2000-03-28 01:38:22 +00:00
thorpej f4f96605b9 Add/correct some MSRs, from Intel Architecture Software Developer's Manual,
Volume 3 (System Programming).
2000-03-27 23:15:57 +00:00
kleink 230876cf26 Merge parts of chs-ubc2 into the trunk:
* Remove the casts to vaddr_t from the round_page() and trunc_page() macros to
  make them type-generic, which is necessary i.e. to operate on file offsets
  without truncating them.
* In due course, cast pointer arguments to these macros to an appropriate
  integral type (paddr_t, vaddr_t).

Originally done by Chuck Silvers, updated by myself.
2000-03-26 20:42:21 +00:00
martin 0a1221cb28 Added a PCI frontend for the legacy ISA joystick driver.
Some PCI soundcards don't seem to use the generic gameport function with
interface 0x10 used here, but have either an own BAR dedicated to this
(i.e. Sonic Vibes or ESS Solo-1) or specify their own device (see
PCI_PRODUCT_CREATIVELABS_SBJOY in sys/dev/pci/pcidevs.h).
Probably these use a similar simple sheme and adding a frontend for them would
be trivial, but I don't own any of these cards, so I didn't.
2000-03-26 15:36:48 +00:00
thorpej e84ce772ff Add some MSR-related calls. From FreeBSD. 2000-03-24 19:07:12 +00:00
thorpej b05796c812 Add some Model Specific Register definitions. From FreeBSD. 2000-03-24 19:06:07 +00:00
ad 9753adee2f Previous was incomplete. Tsk. 2000-03-23 13:49:49 +00:00
thorpej b667a5a357 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:30:07 +00:00
ws 7da71e5f9e Make IPKDB working again.
Add support for i386 debugging and pci-based ne2000 boards.
2000-03-22 20:58:25 +00:00
onoe 5644a7e248 Update awi driver, which now supports AMD 79c930 based 802.11 DS cards
as well as 802.11 FH cards.  Also, it can operate in infrastructure mode,
adhoc mode, and wi(4) (aka WaveLAN/IEEE) compatible adhoc mode.
2000-03-22 11:22:20 +00:00
cgd 7c35662066 add commented out option PCI_CONFIG_DUMP whever there's a PCIVERBOSE. 2000-03-22 00:58:16 +00:00
ad 76505a757a We can boot from "ca" disks. 2000-03-21 19:38:24 +00:00
mycroft cb42a200a1 Add scsibus at esp. 2000-03-19 22:35:43 +00:00
mycroft 1a5e8d741b Add esp at pcmcia. 2000-03-19 22:32:59 +00:00
tron 8caeaa49bd Install "endian_machdep.h" required for "sys/endian.h". 2000-03-17 17:22:57 +00:00
mycroft 9e21b6555a In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
2000-03-17 00:09:18 +00:00
mycroft 02905321b2 Foolish consistency. Mainly, always use underscores and sys/endian.h. 2000-03-16 15:09:34 +00:00
ad ce0c2b1962 Attach cac* at pci?, ca* at cac?. Commented out where needs be. 2000-03-16 15:05:18 +00:00
ad d8bd9a762a Make ca(4) useable as a block/boot device. 2000-03-16 14:53:29 +00:00
mycroft 415cbeb83f This code has nothing to do with UCB. 2000-03-16 14:15:26 +00:00
drochner aa1de89bdf explicitely #include <sys/systm.h> #if BUS_SPACE_DEBUG to get a printf()
prototype
2000-03-15 16:44:48 +00:00
fvdl 73797e6d2a Stupid hack: run the apm kthread at 8*hz/7 intervals, not hz. Prevents
the load average from being 1.0 or higher constantly.

XXX really need a better way of calculating the load average.
2000-03-15 09:30:11 +00:00
fvdl 20b063e782 Add new files for common ahc EISA/VL code. 2000-03-15 02:10:41 +00:00
fvdl bb8265c6be Update ISA/VL frontend for new ahc driver (done by Noriyuki Soda). 2000-03-15 02:05:19 +00:00
augustss 072f9f5b69 Some whitespace changes. 2000-03-14 22:37:55 +00:00
oster 1bad2e1909 Add the RAIDframe device major to the machine-dependent config files
so that the right entries get added to dev_name2blk[].  Needed for / on RAID.
(Whoops!  I missed checking these in when adding the RAID_AUTOCONFIG stuff.)
2000-03-14 15:56:51 +00:00
soren 95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +00:00
kristerw ce56ba78b7 Make the inline asm conform to what gcc thinks they should look like (per
discussions in http://gcc.gnu.org/ml/gcc-patches/1998-11/msg00004.html)

Approved by fvdl.
2000-03-13 21:10:24 +00:00
martin 8ba340d655 Do the same as biosboot does.
This makes it possible to create serial console dosboot.com's via uncommenting
the appropriate Makefile options.
I needed this when testing the SMP test kernels at work.
2000-03-13 10:51:22 +00:00
sommerfeld f6ec059d2e add newline at end of last line. 2000-03-12 05:35:37 +00:00
groo 0a77d41f4f clean up lm0 example 2000-03-10 06:03:18 +00:00
soren c70220f2a2 Move PCIIDE_CHANNEL_NAME macro to pciidereg.h. 2000-03-09 20:26:31 +00:00
hubertf f3f4e44c39 fix typo 2000-03-09 16:49:22 +00:00
ad 5af90382c5 Add missing chrtoblktbl entry. 2000-03-09 11:19:30 +00:00
groo 752c98f8ea Add (commented out) lm driver examples 2000-03-09 04:12:42 +00:00
kleink a9ebf7bb8c Define ISO C99 (unsigned) long long (min, max) symbols. 2000-03-07 19:31:49 +00:00
thorpej a183d34f04 - Implement cnbell() -- ring the console bell. The cn_bell entrypoint
is optional.
- Add cn_bell to statically allocated consdevs as appropriate.
2000-03-06 21:36:05 +00:00
itojun 6ac3fc2a55 beautify APM_DISABLE_INTERRUPTS line (s/options\t/options \t/) 2000-03-06 18:45:42 +00:00
nathanw 2569290833 Now that pnpbios_io_unmap() exists, use it. 2000-03-04 23:08:54 +00:00
mycroft 8781f55d6a Invert the APM_NO_POWER_PRINT flag, and make sure it's off by default. 2000-03-04 21:37:23 +00:00
groo 97be07a6c4 Remove probe/attach for PNP0C02. There are reserved motherboard regions.
Thanks to Adam Glass for catching this.
2000-03-01 20:24:53 +00:00
groo 866ee72838 Add pnpbios_io_unmap 2000-03-01 20:23:55 +00:00
simonb 4eb55e447c Do the "<space><tab>" thing with the RAID_AUTOCONFIG option. 2000-02-29 06:32:20 +00:00
augustss e0573deb3b Another ID for ESS. From Dave Huang <khym@bga.com> 2000-02-28 00:22:33 +00:00
mycroft d128de6bc6 Change miniroot size to 3072. 2000-02-27 20:26:07 +00:00
augustss 6c10d82f8d Add (commented out) PCIBIOS options so people can find them easily. 2000-02-27 16:51:39 +00:00
oster d9c47013b2 Defopt 'RAID_AUTOCONFIG'. Adding 'options RAID_AUTOCONFIG' turns on
the component auto-detection and auto-configuration of RAID sets.
Also, add "#options RAID_AUTOCONFIG" to the GENERIC config files.
2000-02-26 17:35:33 +00:00
itojun 13fc260296 s/options\t/options \t/ for CONS_OVERRIDE line, so that addition/removal of
"#" does not affect indentation.
2000-02-26 17:12:37 +00:00
drochner 0ff2be2565 -make lm78 entry depend on NLM
-add "vmegeneric" entry (the driver is not yet there, but I'm sick of
 the cvs conflicts)
2000-02-25 10:04:38 +00:00
groo f5f2ad429c Initial import of National Semiconductor LM7[89] Hardware Monitor with isa and
pnpbios attach.

examples:

	lm0 at pnpbios0 index?
	lm0 at isa? port 0x290


TODO: spinlocks, i2c interface.
2000-02-25 02:17:43 +00:00
ad 815f93520f - Attach dpt0 to the isa bus. Commented out since (a) at any valid address it
conflicts with too much other stuff (b) if I UTSLed correctly, EISA boards
  may be picked up at an "ISA address and an EISA address" - I don't have
  enough info on this yet to fix it (c) a DPT HBA at an address usually
  assigned to wdc0/1 may get detected as a WD100x controller. Some of them can
  emulate a WD100x controller, but the one I tested with doesn't.
- Sync with GENERIC just a little.
2000-02-24 18:49:40 +00:00
chopps db8aeddb5f deal with bios that just say end tag with no end dep
add a lot of skeletal work to pnpbios.
	option to handle events from pnpbios in a thread (e.g., hot-doc)
	add calls for the other pnpbios functions (e.g., send message etc..)
	add most defintions from the pnp doc to new reg file
2000-02-22 15:49:17 +00:00
dbj ef5d25c147 use bios' idea of the basemem size and create the kernel stack
at the top of it instead of hard coding 0x90000
2000-02-22 07:45:04 +00:00
erh 8f03b9a04a Define the DONETISR macro and use netisr_dispatch.h. This is to cut down on code duplication and to standardize the available NETISRs across all ports. 2000-02-21 20:38:46 +00:00
dbj f4f446cf2c include dev/isa/isareg.h instead of redefining IOM_BEGIN, IOM_END
and IOM_SIZE for ISA memory mapping kludge
2000-02-21 20:06:08 +00:00
chs 6ba0786ed1 several fixes:
1.  in pmap_steal_ptp(), don't trylock the pmap that wants a ptp,
      the caller already has it locked.
  2.  do not panic in pmap_enter() due to memory allocation failures when
      the PMAP_CANFAIL flag is given.  to this end, move all such panics
      from the lower-level routines to pmap_enter() and pmap_growkernel()
      where we can check for this flag.
  3.  add #ifdef DIAGNOSTIC around all panics which are only reachable
      if there's a bug or a hardware error.
2000-02-21 02:01:24 +00:00