Commit Graph

3355 Commits

Author SHA1 Message Date
drochner 32d94859ea adapt to changed <dev/ic/i8042reg.h> 1998-01-18 14:45:10 +00:00
thorpej cf591e644b Generate dependencies on the VM86 option. 1998-01-15 22:25:52 +00:00
thorpej 032c433933 Just commit to using MACHINE_NEW_NONCONTIG. 1998-01-15 22:20:15 +00:00
thorpej 1484fa567d Generate dependencies on the CPU type options (I386_CPU, I486_CPU, ...) 1998-01-15 19:47:36 +00:00
thorpej 2cfef7a0ec Oops, something snuck in there that shouldn't have... 1998-01-15 07:40:06 +00:00
thorpej 525b092c2e Get include file paths correct. 1998-01-15 06:15:08 +00:00
thorpej 1f93872e5c Kludge around i/o port overlap w/ the "wdc" driver. 1998-01-15 06:11:55 +00:00
cgd d6e5187749 add 'sd* at atapibus? drive ?' to all kernel configs already containing
an analogous line for 'cd'.
1998-01-15 02:26:26 +00:00
cgd ad141a69a7 Shuffle wd/wdc driver files around (via repository copies). wdc
now lives in dev/ic, wd now lives in dev/ata.  there's now a 'ata'
interface attribute defined in conf/files, but wdc can't go there
yet because some ports still use private versions based on the old
ISA version.
1998-01-14 23:36:30 +00:00
drochner 09354842c5 from Dave Burgess per PR4620:
-base address 0x308 is supported by more Wangtek QIC tapes than 0x300
-Ultrastor ISA SCSI adapters can't be set to base address 0x334
  (changed to 0x340)
1998-01-14 15:27:43 +00:00
mrg 057795048f this is the i386 MD portion of the MACHINE_NEW_NONCONTIG code, as
written by chuck cranor.  thanks to mycroft for helping me find the
one little line of code i accidentally deleted while merging it.

this is not enabled by default.  `options MACHINE_NEW_NONCONTIG'
will use this code.  eventually, this should go into <machine/vmparam.h>
insteaed of MACHINE_NONCONTIG.
1998-01-13 12:52:16 +00:00
thorpej 36760d9d94 Update for changes to config. 1998-01-12 18:59:04 +00:00
perry aceff90d16 add yet another PCI brige -- from pr 4780 from Nathan J. Williams 1998-01-10 01:15:14 +00:00
fvdl 83ef3d4928 Switch off CPU-PCI write posting for the Saturn chipset; it is known
to cause problems with PCI busmasters.
1998-01-09 22:34:58 +00:00
perry 6f57e5c573 multiple include protect machine/limits.h, fixes pr 4473 (from Mika Nystrom) 1998-01-09 22:23:44 +00:00
mycroft 59ea23516a Increase delays to the required 7us. 1998-01-09 21:28:32 +00:00
drochner 6757ab1b65 Remove conditional setting of "nfs_boot_rfc951" (introduced in previous
change). It's not needed anymore.
1998-01-09 16:01:27 +00:00
drochner 5b055c9032 enable diskless boot with BOOTP and BOOTPARAM configuration 1998-01-09 15:18:50 +00:00
mrg aa39c43bc9 call vm_set_page_size(). 1998-01-09 04:37:56 +00:00
thorpej 3e7eb6c80a Garbage-collect pm_pdchanged; it's not used by anything. 1998-01-06 07:16:06 +00:00
jtk fe87ac4104 fix for changes in bioscall structure and include files 1998-01-06 00:35:42 +00:00
perry 5646f55116 make script insert RCS ids into generated files 1998-01-05 21:28:21 +00:00
perry 015e898c02 RCSID Police. 1998-01-05 07:02:46 +00:00
thorpej b9f1b716f3 Now that all ports have pmap_activate(), and it has an identical interface,
prototype it in <vm/pmap.h>
1998-01-03 01:12:59 +00:00
mycroft 61475326e0 Add delays for lame keyboard controllers, as in the keyboard driver. Do a
better job of flushing input in various cases.
1997-12-18 16:49:10 +00:00
mikel 718221a852 fix format string in FD_DEBUG printf(); from Eric Haszlakiewicz in PR 4692 1997-12-16 07:35:45 +00:00
drochner fbe83dc02d Install "pcvt_ioctl.h" by normal "make includes". 1997-12-10 14:14:21 +00:00
tv a7d1d15c39 KMEMSTATS is documented in options(4) as being a possible severe
performance hit, and on an 80386 processor, it most certainly is.  Pull it
from the GENERIC (and DISKLESS "generic") kernels--configure it in
yourself if you actually need it.
1997-12-09 13:32:32 +00:00
thorpej b27ebeeac1 Work-around the situation where the buffer cache is larger than
16M, thus eating up all candidate bounce pages, which are not allocated
until autoconfiguration runs, by deferring allocation of the buffer
cache pages until after autoconfiguration has run.

XXX This is safe because the i386 port doesn't read any disklabels
XXX during autoconfiguration.
1997-12-08 05:07:29 +00:00
fvdl be205fedc0 Define constants for the start and end VA of user page tables. 1997-12-07 21:30:11 +00:00
fvdl 4357e617d2 When getting a pagefault for a PT page, wire it. Normally we fault them in
ourselves, but this can still happen on a 386 in copyout & friends.

Fixes pmap_changebit panics seen on 386s. Thanks to Juergen Hannken-Illjes
for providing detailed info on bug occurances.
1997-12-07 21:28:56 +00:00
thorpej d25c266af2 Use malloc()/free() for the temporary buffer, not geteblk()/brelse(). 1997-12-07 16:06:21 +00:00
thorpej 6e39ad36a6 In pccngetc(), don't treat cn_tab->cn_dev as a valid device number until
it's initialized.
1997-12-07 06:20:44 +00:00
bouyer d45f82208d Add a cpu_setup() function to "struct cpu_nocpuid_nameclass" and
"struct cpu_cpuid_family", so that we can have a cpu_setup function per
known cpu type. For now use it only for cyrix 6x86 to enable suspend-on-halt
and implement cyrix's workaround to the "coma bug".
1997-11-27 11:53:45 +00:00
fvdl b3de97c5c1 Revert I486_PCI_MEM_ENABLED change; it caused too many problems. 1997-11-27 10:10:50 +00:00
fvdl 4ee07a6d65 Revert I486_PCI_MEM_ENABLED change, it caused too many problems. 1997-11-27 09:58:26 +00:00
kleink e85ad99e57 Add COMPAT_13. 1997-11-25 20:29:24 +00:00
thorpej 2524b071e8 Add commented-out "I486_PCI_MEM_ENABLED" option, and describe it. 1997-11-24 00:21:48 +00:00
thorpej b6e3c093d8 defopt I486_PCI_MEM_ENABLED 1997-11-24 00:21:01 +00:00
thorpej 46c5ad921d Add a workaround for buggy i486 PCI chipsets that have trouble with
memory-mapped device access (manifested by an apparent wedging of the
PCI bus):
- If cpu_class == CPUCLASS_486, disable memory-mapped PCI device access,
  leaving only i/o-mapped access enabled.
- Provide a patchable kernel variable (i486_pci_mem_enabled) and a kernel
  option (I486_PCI_MEM_ENABLED) to re-enable it.
1997-11-24 00:20:32 +00:00
thorpej 978a8b60db Add SCSIVERBOSE 1997-11-23 23:40:45 +00:00
kleink 66c2794142 Add _BSD_SUSECONDS_T_ and _BSD_USECONDS_T_; do some space vs. tab formatting
cleanup
1997-11-23 20:20:53 +00:00
mikel 37d9430628 add ID for (brain-damaged) GUS PnP, and add comments describing what
hardware each ID describes.
1997-11-20 06:23:52 +00:00
mycroft 0afda495f5 Do the Pentium bug fix differently. Put the IDT in a read-only page and check
for a write fault on the illegal instruction descriptor.  Don't ask why this
works unless you have a strong stomach.
1997-11-19 11:11:22 +00:00
augustss ee5628ee52 Add another PnP id. 1997-11-18 11:31:07 +00:00
thorpej f56e6f631f Add an i/o address for iy0 (from GENERIC) 1997-11-17 03:42:52 +00:00
thorpej 9246032610 Put lc0 at i/o 0x320. 1997-11-17 03:39:42 +00:00
lukem 6c986561ee * add commented out DDB_HISTORY_SIZE=100 if DDB exists in config file
* fix up use of 'options<SPACE><TAB>'
1997-11-17 01:57:23 +00:00
christos af27f4e9b5 PR/4506: Andreas Gustafsson: Finnish keyboard mapping for pccons. 1997-11-16 22:05:48 +00:00
mycroft 0963ca7386 Minor change. 1997-11-16 12:31:00 +00:00
mycroft d7107be1c9 Fix a condition where we might keep interrupts blocked while servicing a soft
interrupt.
Fixes serial port silo overflow problems.
1997-11-16 12:30:00 +00:00
carrel 2030b7b104 Turn off reseting and disabling the device by default.
Document the option to turn them back on.
1997-11-15 20:18:50 +00:00
mycroft 93b31159bf When fixing up traps 1, 3 and 4, turn off the RF flag. 1997-11-15 04:47:30 +00:00
mycroft 6250567ba0 Make INTO actually work right. 1997-11-14 12:30:06 +00:00
mycroft b1c7e79679 Map NMI in user-level code to SIGBUS. 1997-11-13 10:13:46 +00:00
mycroft f946a9746d Oops; previous logic was wrong. 1997-11-13 07:21:23 +00:00
mycroft da60005b96 Only do the Pentium trap fixup when we get a kernel mode page fault. 1997-11-13 05:31:04 +00:00
mycroft 4f8b60c6bb Implement the BSDI kluge for the Pentium `hang'; leave the first 7 IDT
descriptors in an unmapped page, and patch up the trap information inside
the page fault handler if the faulting VA is inside the IDT.
1997-11-13 03:25:27 +00:00
mycroft 6a310175c6 Some general cleanup:
* Call gdt_init() earlier on.
* Don't bother to check for TSS and LDT descriptors in verr_gdt().
* Nuke the sti special case for trace and breakpoint traps.
* Move some variable declarations into more appropriate locations.
1997-11-13 03:16:42 +00:00
thorpej ce4c770f88 Make sure CPP, AR, AS, and RANLIB are defined. 1997-11-12 23:11:50 +00:00
thorpej a421995756 Define LORDER, NM, and TSORT here, like we do the rest of the tools. 1997-11-12 22:25:31 +00:00
drochner b80ad6c934 -point to console(4) manpage for serial console parameters
(suggested by Chuck Cranor)
-insert a reasonable IO base address for "iy at isa"
 (from Ignatios Souvatzis)
1997-11-11 20:31:38 +00:00
thorpej 6fcc8cd8b1 Add locators for "eg0" device, and enable it. 1997-11-11 05:53:06 +00:00
drochner 23e7d0a259 Adjust comment for new default fragment table size. 1997-11-07 17:01:45 +00:00
drochner 4ad496626c Double default fragment table size. For fragmented and / or small
blocksize filesystems the old default was too small.
1997-11-07 16:59:41 +00:00
thorpej 204a7b293b Sync ISA network device section with INSTALL. 1997-11-05 19:24:27 +00:00
thorpej 51460546c8 Add sm0 at isa? port 0x300 irq 10 1997-11-05 18:13:10 +00:00
mycroft 224cfc2d71 Fix spacing of `not connected' message. 1997-11-05 05:45:00 +00:00
thorpej 0b04d28454 Mark uses of long long with /* LONGLONG */ for lint. From
Chris Demetriou <cgd@pa.dec.com>.
1997-11-05 04:36:08 +00:00
thorpej 023d8288ee asm -> __asm__ 1997-11-05 03:53:20 +00:00
perry ba2ee23103 Small installation kernel for older machines; fits on 1.2M floppy but
doesn't support PCI or PCMCIA.
1997-11-05 03:25:52 +00:00
thorpej 4730a8cbec Bug fixes and cleanup from Chris Demetriou <cgd@pa.dec.com>:
- fix _C_LABEL so that it actually works.
- make __RENAME use _C_LABEL.
- fix __RENAME so that it expects an unquoted argument.
- fix __indr_reference and __warn_references so that they
  supply their own final semicolon.
- define __warn_references to nothing if not GNU C (required
  by the way it's used).

The __warn_references semicolon change has to be made
so that __warn_references can be defined into nothing.
(A ; all by itself isn't a great idea.)  The __indr_reference
change was made for consistency.
1997-11-04 23:09:23 +00:00
thorpej 15339d7ea8 Make pmap_{,de}activate() take a pointer to a proc. 1997-11-04 01:37:01 +00:00
thorpej 4436625795 Delete "ed" driver, add "we". 1997-11-03 21:33:33 +00:00
drochner 8539f2f3b9 ../lib/exec_fromdos.c doesn't use the memory size returned by XMS check
anymore if other methods work better. Sync banner output with this.
1997-11-03 18:17:19 +00:00
drochner 90e33ee203 When using XMS, use the XMS size returned by the BIOS only if the other
methods to detect extended memory didn't work well.
(this XMS size is always too small, typically by 68k)
1997-11-03 18:06:22 +00:00
thorpej 540caf5a8f Add "ec" driver. 1997-11-02 01:02:23 +00:00
lukem 3e8e744696 getopt returns -1 not EOF 1997-11-01 06:49:14 +00:00
drochner bdf1b13477 -Don't try to parse the bootfile path in DOS mode.
-Take "dev" command from "biosboot" for consistency.
1997-10-31 18:50:09 +00:00
mycroft 9870971b35 Format police. 1997-10-31 07:59:52 +00:00
thorpej 173f7c3b37 Defopt PCIC_ISA_ALLOC_IOBASE, PCIC_ISA_ALLOC_IOSIZE, and
PCIC_ISA_INTR_ALLOC_MASK.
1997-10-29 22:50:46 +00:00
wrstuden de95bf8c30 Add pnp support for the OPTi Audio 16's joystick port. 1997-10-29 19:40:12 +00:00
thorpej 1d338698d7 Flush tty input queue when going in and out of X mode, PR #4321,
Chris Demetriou.
1997-10-29 01:39:40 +00:00
fvdl d2016e2df0 Disable interrupts when frobbing the keyboard controller for A20, as
it may generate a reset on some (older) controllers. Introduce a delay
to make some kbd controllers happier.
1997-10-29 00:32:49 +00:00
drochner ec78310453 Catch "timeout" return of serial port read BIOS call. 1997-10-27 19:53:20 +00:00
drochner 64550a14f3 Pass status byte to caller too. 1997-10-27 19:51:18 +00:00
mikel 135737c189 fix some typos and other misfeatures in comments; no functional change
note that bha driver supports BT44x cards as well
1997-10-23 05:49:42 +00:00
sommerfe c83f212654 Fix PR4316: pcvt busted in 1.3.. 1997-10-22 18:24:30 +00:00
thorpej 665f7d1a6e Implement __RENAME() in <machine/cdefs.h> 1997-10-22 05:20:32 +00:00
bouyer d29eab51f1 Correct spelling of 'ThunderLAN' 1997-10-21 06:01:16 +00:00
thorpej 5ea9d818ae Update for new location of i82365.c 1997-10-20 20:26:25 +00:00
thorpej 1d1fd17f73 Don't panic if we fail to remap i/o or mem space in the attach function.
Instead, print a diagnostic and return.  (Some drivers do this already.)

Also, normalize the diagnostic message, and fix some places where the
printfs were getting ugly.
1997-10-20 20:07:57 +00:00
perry 75473a6379 we don't need FDESC 1997-10-20 20:03:04 +00:00
explorer 32b7029647 Mark options RND_COM as broken on i386 port 1997-10-20 18:45:09 +00:00
explorer 9d0579d2fb Comment out pseudo-device rnd, mention options RND_COM, and mark experiemntal 1997-10-20 15:19:51 +00:00
ws 0bb56df5a7 Fix spelling of my name 1997-10-20 09:54:50 +00:00
fvdl d41883c9ac Fix typo in VM_MAX_ADDRESS. 1997-10-20 09:02:21 +00:00
perry 83a4427110 Sync with GENERIC; comment out a few more unneeded things. 1997-10-20 03:42:43 +00:00
fvdl 74f97b28cc Change various constants that depend on the kernel VM base address. Lower
it to 0xf0000000 to give it more breathing space.
1997-10-20 00:45:03 +00:00
fvdl 30c7fa3e36 Move kernel entry address down to f0100000 1997-10-20 00:43:21 +00:00
jtk 0ad10a1970 change name in comment from apmregs to bioscallregs 1997-10-19 22:59:50 +00:00
mycroft 87b7a8ba91 Minor changes to make these more similar again. 1997-10-19 20:31:29 +00:00
perry 838ebc1be2 Yet Another Massive Reorganization. I took the last reorg even
further. Devices are grouped by types and within the types segregated
by bus. Lots of comments fixed up, lots of nits cleaned. Extensive
comments from Jason and Charles incorporated.

We also really need an automatic way to generate INSTALL from GENERIC,
but that's a project for another day...
1997-10-19 20:14:21 +00:00
thorpej 3135cf9ecc Use bus.h 1997-10-19 19:17:07 +00:00
thorpej 29500b20c0 Make sure the i/o and/or mem addresses aren't wildcarded (i.e. -1) before
using the address in a bus_space_map() call.
1997-10-19 18:56:39 +00:00
perry b07dc2077e typo: that -> than 1997-10-19 00:00:18 +00:00
hubertf 59b0f424db Prevent error if machine-symlink isn't already there (rm -> rm -f) 1997-10-18 21:46:27 +00:00
mikel 4c46c2bcc3 cosmetic cleanup (newlines, comments) 1997-10-18 04:51:03 +00:00
thorpej 1adb3a7a9d Sync with GENERIC. 1997-10-18 02:01:36 +00:00
thorpej 2f26438522 Major cleanup of the GENERIC config file. The devices are laid out in
a more readable manner now, and sorted by bus type.
1997-10-18 01:42:22 +00:00
bouyer 10e68aaed1 Add tl and mii devices. 1997-10-17 19:25:36 +00:00
bouyer d3cfd58b6c Add mii. 1997-10-17 18:45:53 +00:00
bouyer 9cba1f94e1 Add detection of cyrix/ibm 6x86 cpu: these CPU pass the 486 test, but
fail the cyrix486 one. Add a test which succeed for all cyrix CPUs (from
FreeBSD).
1997-10-17 18:05:44 +00:00
thorpej c8c33b5e87 Make pcvt compile with the new dev_t definition. 1997-10-17 15:24:17 +00:00
thorpej 4c970b2547 Add "ne" and "com" isapnp attachments. Move the fe0 declaration to a
more logical location.
1997-10-17 07:27:02 +00:00
enami 80d6b2fb22 Use lowercase for hexdigit. 1997-10-17 07:08:55 +00:00
enami 113f376554 Use TAB to separate `cd*' and `at'. 1997-10-17 07:07:26 +00:00
thorpej 500a0eac87 Pull marc-pcmcia branch down from trunk. 1997-10-16 23:32:35 +00:00
mycroft 4b807f403c dev/isa/comreg.h -> dev/ic/comreg.h 1997-10-16 08:03:05 +00:00
mycroft 372a74ea3a We don't need sysctl.h here. 1997-10-16 04:57:15 +00:00
mycroft 4a316f1d10 Use vm.h. 1997-10-16 04:48:34 +00:00
mycroft 2e52ce5fd7 Pull in vmparam.h as necessary. 1997-10-16 04:23:36 +00:00
mycroft 37e189d6a8 Need vmmeter.h here now. 1997-10-16 03:22:54 +00:00
mycroft fc0fb1cfdc Pull in vm.h, not a bunch of individual files. 1997-10-16 03:05:19 +00:00
mycroft 5542cb9709 Include sysctl.h *once*, after vm.h. 1997-10-16 02:58:31 +00:00
mycroft 3e3c21dc5d Update a comment dating from 4.3/VAX. 1997-10-16 02:31:32 +00:00
thorpej e89814fa69 Adjust for new "com" driver home. 1997-10-16 01:10:52 +00:00
jtk d6c9c08d70 put in place a proper bioscall.h (sorry about that!)
finish up incomplete job of moving structure used by bioscall() to
<machine/bioscall.h>, with associated changes in include file strategy,
genassym stuff, etc.
1997-10-15 01:20:33 +00:00
thorpej 005a9c192c Add ISA and PCI "ne" instances as appropriate. 1997-10-14 23:30:55 +00:00
christos 37f905c2b8 Someone [who will remain nameless] forgot this... 1997-10-14 22:00:05 +00:00
thorpej 799112abbe Pull down from marc-pcmcia branch:
Implement new ISA interface functions:
* isa_intr_alloc() - allocate an ISA IRQ
* isa_mem_alloc() - allocate ISA memory space
* isa_mem_free() - free ISA memory space
1997-10-14 20:34:38 +00:00
jtk d405a9e1d6 split APM stuff into APM and BIOSCALL specific conditionals
move some functions to separate files
1997-10-14 03:57:09 +00:00
jtk f4f693c3a5 move arch/i386/apm_init stuff to arch/i386/bioscall via repository copy/tag strip 1997-10-14 03:56:24 +00:00
jtk 35a23b7856 add bioscall attribute and bioscall.s/apmcall.s files 1997-10-14 03:55:51 +00:00
jtk 36d9fea6ef use NBIOSCALL and NAPM where appropriate (split from former monolithic "NAPM") 1997-10-14 03:55:06 +00:00
jtk a3cd5fc7ba split out apmcall and bioscall into separate files, for ease of modular
construction into other drivers (eventually)
1997-10-14 03:54:18 +00:00
lukem 28558b28eb rcsid fascism 1997-10-13 14:22:22 +00:00
drochner e14496efb8 Ignore BIOS partition table and disklabel for floppys and RAW_PART,
for consistency with the kernel.
1997-10-13 09:26:29 +00:00
explorer 80513cb5ae o Make usage of /dev/random dependant on
pseudo-device   rnd                     # /dev/random and in-kernel generator
  in config files.

o Add declaration to all architectures.

o Clean up copyright message in rnd.c, rnd.h, and rndpool.c to include
  that this code is derived in part from Ted Tyso's linux code.
1997-10-13 00:46:08 +00:00
christos b848861bfd Add ENDIANNESS constant 1997-10-11 19:11:10 +00:00
mycroft 9803f46796 Minor rearrangement to match other files. 1997-10-11 09:12:18 +00:00
mycroft 5c8d588138 Nuke NOOBJ. 1997-10-11 08:44:42 +00:00
mycroft acf0e569a5 Update all the tags goo, and use bsd.subdir.mk. 1997-10-11 08:42:02 +00:00
explorer 735c351f71 Add hooks to insert timing info into the random system 1997-10-10 01:49:12 +00:00
explorer bde51b6f93 add /dev/random as major device 46 1997-10-09 23:59:15 +00:00
bouyer 6ab3092b11 Add byte-swapping functions (bswap16, bswap32, bswap64) to libkern.
Only assembly version for i386 bswap16 and bswap32 for now (bswap64 uses
bswap32). Contribution of assembly versions of these are welcome.
Add byte-swapping of ext2fs metadata for big-endian systems.
Tested on i386 and sparc.
1997-10-09 15:42:19 +00:00
jtc 1bcecdd613 Fix tipo inherited from old version of TNF copyright template. 1997-10-09 08:48:33 +00:00
enami 6705728ce7 Make sure that vs.color is always initialized. Fix PR#2510.
- separate initialization code in sput() into new function pcinit().
- call pcinit() in both sput() and pcattach() if (crtat == 0).
1997-10-09 02:05:01 +00:00
mycroft 4d36fbdfa1 Clump USER_LDT with other CPU-related options. 1997-10-08 10:09:36 +00:00
mycroft a9f50348ae Update comments regarding BIOSEXTMEM (now REALEXTMEM), and add REALBASEMEM. 1997-10-08 09:32:36 +00:00
mycroft 63c9e725bb Deprecate BIOSBASEMEM and BIOSEXTMEM, with an #error telling people to try the
latest version of the boot block first.  Add REALBASEMEM and REALEXTMEM, in case
they really are needed.
1997-10-08 09:23:04 +00:00
augustss 4a72d59d77 Add GUS PnP card to GENERIC. 1997-10-07 10:39:56 +00:00
drochner 4741e294cf Supress error message if ENXIO is returned by "open" of disk partition
while "findroot()". This happens if a disk without BSD partition is
present, or if the partition does not exist in the disklabel - normal
operation, not worth reporting. (Split out a part to keep indentation
level limited.)
Allow to set "nfs_boot_rfc951" by a conditional to make bootp easier
to use.
1997-10-07 09:54:16 +00:00
thorpej 0c368b5f67 Initialize the kernel message buffer earlier (before main() is called). 1997-10-06 20:38:46 +00:00
thorpej 66a1783103 Fix some license confusion. 1997-10-04 22:32:26 +00:00
thorpej 608283bedd Copyright assigned to The NetBSD Foundation. 1997-10-04 17:22:49 +00:00
lukem 7d508b124f define SIZE?=size, and use ${SIZE} instead of size. makes cross
compilation easier
1997-10-03 07:17:00 +00:00
drochner f596be4ec4 Fix the problem described in PR port-i386/4177: scroll lock could cause
tsleep() to be called from an interrupt handler.
The semantics of the scroll-lock key is changed now: it issues a ^S or
^Q, depending on the current state. (It should probably issue
tp->t_cc[VSTOP] or tp->t_cc[VSTART] instead, but this would require more
serious structural changes because there is not always a tty context
present.)
The "scroll lock" LED is now controlled by pcstart()/pcstop(), so it
will show the real state even if the start/stop characters are remapped
or the normal ^S/^Q are used.
1997-10-01 20:48:59 +00:00
drochner e125082627 adapt to changed device names 1997-10-01 18:13:19 +00:00
fvdl d786742d91 Provide workaround (by Charles Hannum) for error in register allocation that
could occur in bus_space_write_multi*
1997-10-01 08:25:15 +00:00
mycroft 640405d50f Only use a subregion if the region we got was of length 8. 1997-09-30 22:10:59 +00:00
christos 90ac749fae PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:10:32 +00:00
christos 52f4c73570 PR/4189: Matthias Scheler: pccons doesn't compile if national keyboard map
is used
1997-09-30 16:23:21 +00:00
perry ce92768d58 add ext2fs support to boot floppy. 1997-09-29 15:42:14 +00:00
drochner 6969cb676f Pass new boot information per default. 1997-09-28 13:31:45 +00:00
drochner 22869434f2 Bring the new root disk algorithm into shape (minor cleanup, clarify
error message) and enable it.
1997-09-28 13:17:41 +00:00
drochner 4de13c78d3 Use the "proginstall" rule from <bsd.prog.mk> to get the UPDATE
behaviour right.
1997-09-28 11:47:29 +00:00
drochner e8e12f56dc Don't use "termios" constants if no "com" devices are configured.
Closes PR port-i386/4166 (Chris Jones).
1997-09-27 10:55:48 +00:00
thorpej 0bd1685aa0 In device_register(), don't check PCI is PCI support isn't configured
into the kernel.

Also, some formatting changes to make new root finding code more KNF'ish.
1997-09-23 22:34:00 +00:00
drochner 1f1e574146 -implement a "device_register()" function to identify network interfaces
by bus type / address (for diskless boot)
-add some (experimental, commented out) code which could be used for
 identification of boot disks - should help for BIOS remappings
1997-09-20 14:15:54 +00:00
drochner 610abce93b Copy data passed by the boot loader into an array "bootinfo".
The former "cyloffset" argument is used as an (indirect) pointer to the
information structures. "cyloffset" has always been set to zero in the
past, so this should be save to do.
1997-09-20 14:01:26 +00:00
drochner 968f26b9d3 -define a buffer for information passed by the bootloader
-add a function ("lookup_bootinfo") to extract data
-use passed console information, if present, for console attachment
-arrange definitions for console and KGDB device a bit nicer
1997-09-20 12:51:13 +00:00
drochner b8a47d06da Define "machdep.booted_kernel" for sysctl. 1997-09-20 12:40:25 +00:00
drochner c03122fcb1 In some future (ie, without COMPAT_OLDBOOT), we don't want to bother
with the disk type (IDE or SCSI) here - the BIOS doesn't do it either.
Set "#ifdef"s accordingly.
1997-09-20 12:36:05 +00:00
drochner dc0b04e0ad Note use of common menu functions and new framework for argument passing
to the kernel.
1997-09-20 12:28:21 +00:00
drochner 041680f614 don't forget to save the partition number for the kernel 1997-09-20 12:17:41 +00:00
drochner 9b4679d869 -Don't pass hardware address, it is not of much use for the kernel.
-define "addr" differently for ISA and PCI devices - for PCI, it is
 (bus,device,function) now, in the format used by the PCI BIOS
1997-09-20 12:13:01 +00:00
drochner 1d47009a08 Use <machine/bootinfo.h> for definitions shared with the kernel. 1997-09-20 12:10:06 +00:00
drochner 17b42ff68d Data structures passed from the boot loader to the kernel. 1997-09-20 12:08:21 +00:00
leo d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
drochner 8b0c39d09e The additional linefeed appeared again... kill it. 1997-09-17 19:39:37 +00:00
drochner a577f67769 Use common menu / parse functions.
Adapt to new console / exec_netbsd arguments.
1997-09-17 18:52:41 +00:00
drochner a1fc367b4b Cleanup for new libsa/bootp.c (unused global variables).
Do the vararg stuff right.
Remove the useless "no_bootp" variable.
1997-09-17 18:50:24 +00:00
drochner 5a1b04beab Put bootfile name into "bootfile" before network initialization, for
use by BOOTP.
Put name of bootfile into "bootinfo" structure.
1997-09-17 18:47:13 +00:00
drochner d9641ea06f Use common menu / parsing functions.
Adapt to new console / exec_netbsd arguments.
1997-09-17 18:44:15 +00:00
drochner 23d58b46d3 Put name of booted file into a "bootinfo" structure.
(not for DOS files for now, we don't know the absolute path)
1997-09-17 18:40:33 +00:00
drochner 38b36ed152 -Use shared menu / parsing functions.
-Adapt to changed console and exec_netbsd arguments.
-Turn private "cd"-like behaviour into a regular command.
1997-09-17 18:37:58 +00:00
drochner 1d521976af Put name of booted file into a "bootinfo" structure. 1997-09-17 18:32:50 +00:00
drochner 0c825594ef Function to collect geometry and partitioning information about the
BIOS-known disks in a "bootinfo" structure (still experimental).
1997-09-17 18:30:51 +00:00
drochner c65435feb3 "document" serial console support 1997-09-17 18:28:50 +00:00
drochner a8c2622575 Collect information in a "bootinfo" structure. 1997-09-17 18:21:40 +00:00
drochner c2095ccd48 Remove old SERIAL support, it will be done at a higher level now. 1997-09-17 18:10:51 +00:00
drochner 2fba0a4db7 Convert DOS error numbers into UNIX errno values. 1997-09-17 18:09:04 +00:00
drochner 4162c9025a Do the vararg stuff cleanly.
Collect disk information in a "bootinfo" structure.
1997-09-17 18:08:13 +00:00
drochner 0851ea1331 Add now common menu / parsing functions.
Adapt to new console I/O functionality.
Update exec() arguments.
1997-09-17 18:04:21 +00:00
drochner 83ce8d9ef8 Use the "bootinfo" defined structures to collect information about boot
device/file and console setting, remove the old, limited, "xbootinfo".
Fix a printf() format warning in debug code.
1997-09-17 18:02:11 +00:00
drochner f93967e407 add new files 1997-09-17 17:51:12 +00:00
drochner dae95d6c0b -extend serial console code to all 4 BIOS known interfaces
-optionally, use Martin's direct hardware access to serial lines
-optionally, new console autoselection method: select serial console
 if a character is seen within 1 second
-move awaitkey() here, it can be shared by different bootloaders and
 it is used by console autoselection
-collect information about console selection in a "bootinfo" defined
 structure, for passing to the kernel
1997-09-17 17:48:00 +00:00
drochner f7b795d3c0 Definitions and helper functions to collect information in the boot
loader (still experimental).
1997-09-17 17:39:29 +00:00
drochner fb3350eb72 Console I/O functions for serial lines, accessing the hardware directly.
Allows higher baudrates than 9.6 and software flow control.
From Martin Husemann.
1997-09-17 17:31:41 +00:00
drochner 27d7edd928 Factor out functions for table driven boot menus and command line parsing
usable for different boot programs.
1997-09-17 17:13:02 +00:00
drochner 25aa241d8a Use the private nfs.c instead of "nfswrapper".
Disable UDP checksums in the sample configuration, otherwise this doesn't
fit into the ROM.
1997-09-17 17:07:10 +00:00
drochner 7f4ef01688 Use the private nfs.c instead of "nfswrapper". 1997-09-17 17:04:28 +00:00
drochner ac061ce8b1 Use a private NFS layer. This allows for more optimization than the
separated "nfswrapper.c"/"nfs.c".
This nfs.c differs from the stand/lib/libsa one in that it does not
have a separate mount() function - the mount is done in open().
1997-09-17 17:03:00 +00:00
drochner 3c46c18a00 Use the original bp_siaddr field as TFTP server. Allows to have
different TFTP and NFS servers.
Don't byteswap port number from UDP header back to network order - net.c
doesn't swap it anymore.
1997-09-17 16:57:07 +00:00
is 718fb97e11 Support for the upcoming NetBSD/Amiga Hypercom driver family:
* support chip clocks != COM_FREQ, by introducing sc_frequency (for the
  mainline code) and adding a frequency parameter right after the rate
  parameter to comcnattach() and com_kgdb_attach().
- Make com_isa and com_multi initialize sc_frequency to COM_FREQ.
- Make i386/machdep.c and alpha/dec_xxx.c call com*attach() with the freq.
  parameter.
* supio_attach_args get two more fields: a sc_ipl and a sc_arg, both ints.
- com_supio uses the first for interupt establishment (all childs will, as
  soon as they exist) and the 2nd for sc_frequency.
- drsupio passes sc_ipl alway as 5, and for the "com"s, sc_arg as 16*115200
- hyper will pass sc_ipl as 6, and sc_arg as 16 * 460800
1997-09-16 20:34:23 +00:00
mycroft 25f153bb22 Add fe0. 1997-09-12 05:22:55 +00:00
mycroft 73b4fdacad Initialize all registers in setregs(). 1997-09-12 05:01:09 +00:00
mycroft d0917c65e9 Add an ibcs2_setregs().
XXX Current implementation is a horrible kluge.
1997-09-11 23:07:25 +00:00
mycroft 99a6404735 Add an ibcs2_setregs(). 1997-09-11 23:05:30 +00:00
mycroft 16a8787248 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-11 23:01:44 +00:00
mycroft d766a8aa21 Remove some vestiges of BDB. 1997-09-09 21:42:38 +00:00
mycroft 6da60facfb GC a bunch of NEWCONFIG stuff. 1997-09-07 13:05:39 +00:00
mycroft 892d336277 Increase FDC_MAXIOSIZE to MAXBSIZE, now that we can handle it. 1997-09-07 13:03:10 +00:00
drochner fba474f53a add prototype definition for DHCP support 1997-09-06 14:32:31 +00:00
chuck 0b471e545e add bits for %cr4 and cpu_feature [from freebsd and www.sandpile.org] 1997-09-05 22:28:12 +00:00
chuck 302dad0aaa add invlpg, and rcr4/lcr4 1997-09-05 22:25:20 +00:00
thorpej dc50e810ea Implement bus_dmamem_mmap(). 1997-09-05 01:44:42 +00:00
mycroft 8c578dc960 Pass down bus_dma_tag_t's as appropriate (per Jason's bus_dma code). 1997-08-30 06:53:57 +00:00
mycroft d4b3029855 Set the I/O and memory enable flags for the main PCI bus. 1997-08-30 06:52:55 +00:00
mikel 4058521515 add KMEMSTATS and sync GENERIC, INSTALL, and DISKLESS 1997-08-28 08:00:12 +00:00
bouyer 6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
mikel a6a1f307de sync with GENERIC 1.96, no functional change 1997-08-27 04:56:38 +00:00
augustss a50d4ba893 XXX Add a drq2 locator for the ISA bus. Many sound cards need
two DMA channels to do e.g. full-duplex.  This allows
a way of specifying the second channel in a sane way.
THIS IS TEMPORARY.  The drq2 locator will go away when
the locator system has been changed to allow multiple
values per locator.
1997-08-26 19:26:38 +00:00
fvdl a153e98871 Recognize Cyrix M2 1997-08-26 18:56:40 +00:00
fvdl d792a4aa54 Activate SCSIVERBOSE by default. 1997-08-26 18:39:02 +00:00
thorpej 75a4512f7f Notify drivers that we "prefer" I/O mapped space, per discussion with
Chris Demetriou and Matt Thomas, some two or three months ago.  (This hint
is used by the latest "de" driver.)
1997-08-26 03:14:06 +00:00
thorpej 9ffe59d049 In i386_mem_add_mapping(), don't bother calling pmap_changebit() to mark a
device memory mapping cacheable/non-cacheable:
- PG_N doesn't exist on the 386.
- pmap_changebit() only deals with managed pages.
Basically, calling it is unnecessary, and never did anything.  Pointed
out by Chuck Cranor, and further discussed with Frank van der Linden.

Also, add a comment about why we don't mark pages non-cacheable in
_bus_dmamem_map().
1997-08-25 23:02:25 +00:00
thorpej 38f15737fd Protect access to kmem_map with splimp()/splx(). From Chuck Cranor. 1997-08-25 21:17:48 +00:00
drochner 9518da7563 Remove over-sensitive sanity check for console port == KGDB port. 1997-08-24 09:38:19 +00:00
drochner 350184a9b7 Remove unneeded dev/cninit.c. 1997-08-23 14:26:46 +00:00
drochner 01930ff909 Update prototype options for serial console / KGDB for new reality.
"option\t" -> "option \t", as wished by Bernd Ernesti.
1997-08-23 14:25:55 +00:00
drochner dfbc80bd71 Delete unused constab[]. 1997-08-23 14:22:59 +00:00
drochner 2f05375163 Use functions provided by the drivers to initialize and attach console
and KGDB. Make port address, speed and (7/8bit,parity,stopbits) for serial
lines configurable.
1997-08-23 14:22:03 +00:00
drochner d09a42059f Put all console initialization into 1 exported function (pccnattach()).
Delay setting of cn_tab->cn_dev until autoconfiguration attach
  to get the minor number right. (not really needed, but for
  consistency with pccons and serial consoles)
Comment out unused pccnprobe() and pccninit().
XXX I didn't use "#if PCVT_NETBSD > ???" anymore, nor separated from
  FreeBSD. The driver is not centrally maintained anyway.
1997-08-23 14:17:46 +00:00
drochner fe882d2810 Put all console initialization into 1 exported function (pccnattach()).
Delay setting of cn_tab->cn_dev until autoconfiguration attach
  to get the minor number right.
Delete unused pccnprobe() and pccninit().
1997-08-23 14:10:12 +00:00
perry 423eab6e13 Stop people from trying to build the obsolete boot blocks by accident. 1997-08-22 21:53:00 +00:00
mjacob 1a7afa3853 add commented out reference SCSIVERBOSE option 1997-08-20 18:38:13 +00:00
drochner e153e51fa3 Make "genprom" work in objdir.
Minor cleanup to ease bootcode development at non-standard locations.
Closes PR port-i386/4013 by Luke Mewburn.
1997-08-20 16:53:30 +00:00
augustss 332ad95e76 Change the MI audio driver so it attaches to the MD driver in the
normal way.  This requires adding a line to the config files to
get audio to work again.
1997-08-19 23:49:33 +00:00
hannken a44c1f66a7 Change "it's" to "it is" inside assembler comments to
stop "unterminated character constant" messages from `mkdep'.
1997-08-18 22:44:01 +00:00
perry 51ed105af6 comment out APM -- it hurts some systems during install. 1997-08-15 21:44:31 +00:00
mikel d540ff911c wrap bus_space I/O tag checks with #ifdef DIAGNOSTIC.
wrap actual read port map/unmap with #ifdef _KERNEL, so userland probe
  code will still work.
1997-08-15 06:48:29 +00:00
cgd efecf08fef Sync with bus_space(9):
* make map and alloc take 'flags' rather than 'cacheable,' for
  more flexibility.
* rename BUS_BARRIER_* to BUS_SPACE_BARRIER_*, for consistency.
* rename bus_space_copy_* to bus_space_copy_region_* and make their
  defns match the updated spec.
Backward compatibility is provided by defining __BUS_SPACE_COMPAT_OLDDEFS,
which is currently defined by default.
1997-08-15 00:45:16 +00:00
drochner 80a5032beb Make new memory detection default.
Introduce a new option, "CONSERVATIVE_MEMDETECT", which disables the
new BIOS calls.
1997-08-14 17:00:18 +00:00
drochner e3045dd1ce Add prototype definitions for serial console and KGDB. 1997-08-14 16:23:41 +00:00
drochner 473b4f1222 Initialize system console from a central place (don't use cninit()
anymore). This makes the code cleaner (no more bus tag guessing in the
serial console driver) and it allows to share code with KGDB port
initialization.
The console device is now given as string ("pc", "com0".."com3").
Modelled after alpha port.
1997-08-14 16:21:49 +00:00
drochner 3bbb2f7b18 Export variables needed for system console initialization.
Do this in a separate file because pcvt_hdr.h contains too many definitions
which can cause namespace trouble. (eg, a structure element "m_len")
1997-08-14 16:07:12 +00:00
drochner 5a32b608a0 -Export variables needed for system console initialization.
-Because *cnputc()'s second argument is an "int" in cons.h, correct
  pccnputc() accordingly.
1997-08-14 16:02:14 +00:00
drochner c4af2e3042 Build the new memory detection stuff. 1997-08-14 15:40:28 +00:00
drochner 26f8c5bd65 Prepare definition for EXTENDED_MEMDETECT.
Not yet default.
1997-08-14 15:38:30 +00:00
drochner a6d6ef3a20 Use traditional memory detect function (int15/88) as indication for
a XMS driver.
From Martin Husemann.
1997-08-14 15:28:47 +00:00
drochner 2092d92ef2 New, optional, method to get size of extended memory.
It will be used for getextmem() if EXTENDED_MEMDETECT is defined.
Worked on all tested machines.
Thanks to all testers, especially Martin Husemann!
1997-08-14 15:22:00 +00:00
perry 03c3f2c28f fix spelling error, pr-3974 from Dave Huang 1997-08-12 23:53:54 +00:00
drochner 7427d7b340 Attach KGDB in early system startup. 1997-08-12 17:28:12 +00:00
drochner e553e8219f Enable single stepping with KGDB. 1997-08-12 17:26:57 +00:00
christos a9be2ab366 PR/3954: Izumi Tsutsui: Add id for the ESS1868 joystick. 1997-08-07 19:44:54 +00:00
christos 7bd5c461f5 Check if we can map the read port, but don't really allocate it because it
will cause a conflict with the SoundBlaster Joysticks that say that they
require 200/8 and 207 is usually the read port. XXX: This is a hack.
1997-08-07 19:44:03 +00:00
drochner 23fd5d0d9b #if -> #ifdef, fixes XMS support
from Martin Husemann, pr port-i386/3941
1997-08-05 10:27:57 +00:00
perry 8b27678e4e Added CAPS_IS_CONTROL option that switches the caps lock and control
keys on a pccons console keyboard.
submitted in PR 899 by Alistair G. Crooks
Note that I only did this for the US type keyboard maps.
This and all other such options should be documented, and perhaps
rennamed with consistant PCCONS_ prefixes.
1997-08-04 05:29:20 +00:00
perry 6adc9468b2 1) add Matthieu Herrb's support for iso-latin1 and non-U.S. keyboards
o option DISPLAY_ISO8859 enables the display of iso-latin1
       character set (instead of the IBM page code 437)
    o option FRENCH_KBD, GERMAN_KBD or NORVEGIAN_KBD implement
       support for national keyboards (implies DISPLAY_ISO8859).
   Originally supplied in PR #1529
2) Add option PCCONS_REAL_BS which (for US keyboards only) forces
   backspace to really be backspace and not delete. Intended to close
   PR #2264 submitted by Greg Woods. He wanted it changed for everyone
   -- I thought adding a kernel compile option was friendlier.

Note: Both of these sets of options really should be documented in an
i386 specific version of options(4).
1997-08-04 05:05:31 +00:00
fvdl 62e9894c48 Recognize some more chipsets. 1997-08-03 23:42:05 +00:00
perry 7498ff5250 Add (commented out) COM_HAYESP option, per pr-2189 from John Vinopal 1997-08-03 21:59:11 +00:00
mikel 01a1b97f78 use compatID to find P&P joysticks; isapnp drivers should never use
ipa_devident or ipa_devclass to match devices, those strings are
  informational only!
1997-08-03 08:16:55 +00:00
mikel 94dcb3ed4a sync with GENERIC version 1.88, no functional changes
kill outdated aha vs. bha comment
1997-08-03 05:30:14 +00:00
mikel b4819557ca order of devices in this file is irrelevant, so move isapnp0 up with
other buses and pair isapnp devices with isa equivalents.
1997-08-03 05:26:35 +00:00
matt fc86c650c6 Add lc0 entry for DEC EtherWORKS III. 1997-07-31 22:03:31 +00:00
perry 10838cb3ff Add another bridge ID, from pr 3926 submitted by Soren S. Jorvang 1997-07-30 21:25:00 +00:00
christos 832c3f464d If we have xms print the xms memory size, and indicate that this is xms
memory in the banner. It is confusing to show 0 memory...
1997-07-29 16:01:45 +00:00
perry 6473705cc6 disable the wt device for now -- it nukes ed devices too easily 1997-07-29 00:42:38 +00:00
perry 6d47f9593e comment out mcd for now -- it causes people too much trouble during installs 1997-07-28 22:58:21 +00:00
drochner d900f01e01 Don't call kernel debugger on CTL-ALT-ESC hotkey if the keyboard doesn't
belong to the actual console. (ie, we have a serial console)
Closes PR port-i386/3131.
1997-07-26 12:32:24 +00:00
thorpej e31d380775 New welcome banner code, modeled after NetBSD/hp300's boot program
welcome banner code.  Includes additional build information, and it
generally nicer to look at.
1997-07-26 01:50:36 +00:00
drochner bdb232d2b6 Don't use <lib/libsa/if_ether.h> anymore. This was a copy of the
old (before ARP changes) <netinet/if_ether.h>, intended for
temporary use.
1997-07-22 17:41:01 +00:00
drochner 1a0708ed1d -Print debug messages to stderr instead of stdout to avoid mix with
warn() output.
-Try to rename an existing "/boot" before writing a new one. This allows
 to restore the old boot if an error occurs later.
1997-07-21 18:04:35 +00:00
thorpej 97e482f3c8 - Enable COMPAT_NOMID
- Bump ptys to 128.
1997-07-18 04:14:34 +00:00
phil f49d42bbb3 ispcvt Makefile looked like it was trying to install ispcvt in /usr/sbin.
Changes to make that happen.  From PR 3570.
1997-07-17 19:47:10 +00:00
thorpej 8d85b14ca8 Give the __GNUC__ versions of ntohl() and friends the proper (in_addr_t
or in_port_t) signature.
1997-07-17 18:44:08 +00:00
cgd b79d7b9bb1 * clean up the way APMDEBUG and DEBUG are treated. defining either will
get APM debugging code compiled in.  also, redo the way APM debugging
  printfs are invoked, making sure they're always compiled in if debugging
  is enabled, but printing them only if the appropriate bits in the
  'apmdebug' global variable are set.
* clean up function prototypes (alphabetize in each category, get rid
  of 'STATIC' and make them always static since kernels shouldn't have
  static symbols stripped anyway, and debugging kernels definitely don't),
  group global variables together and note that they're used as globals).
* Export the following as option-settable and patchable global variables:
	apmdebug	flags word that controls which APM debugging
			printfs are printed, set with APMDEBUG_VALUE.
	apm_enabled	boolean that indicates whether or not APM should
			ever be configured on the machine.  true by
			default, false if APM_DISABLE defined when
			compiling.  this option exists so that users
			whose systems crash when APM is enabled can
			disable it with a patchable kernel variable, and
			therefore don't necessarily have to compile
			a custom kernel as often.  With this option set,
			a check is still done to see if the APM BIOS
			exists; this variable should be used to prevent
			the kernel from ever attaching to the APM BIOS.
	apm_force_64k_segments
			boolean that tells segment setup code to always
			use segments with 64k length.  false by default,
			true if APM_FORCE_64K_SEGMENTS defined when
			compiling.  used to just be a compile-time option.
	apm_do_idle	boolean that controls whether or not the APM code
			will try to signal the BIOS that the system is
			idle when in the idle loop.  true by default,
			false if APM_NO_IDLE defined when compiling.
	apm_do_standby	boolean that controls whether or not standby
			requests are ever attempted.  true by default,
			false if APM_NO_STANDBY defined when compiling.
			used to just be a compile-time option.
	apm_v11_enabled	boolean that controls whether or not the driver
			attempts to use APM spec v1.1 features.  If true,
			the driver does (it implements v1.1 of the spec),
			and if false the driver only uses v1.0 features.
			true by default, false if APM_V10_ONLY is defined
			when compiling.  Really, the driver should be
			updated to do APM v1.2 and this option should
			either be updated or go the way of the dodo.
			used to just be a compile-time option.
	apm_bogus_bios	(patchable only) controls a few of the APM segment
			setup features.  (probably should just be a global
			and not patchable.)
* make apm_perror print out the full contents of %ax rather than
  just the error code, in addition to printing out the string corresponding
  to the error code.
* print estimated remaining battery life time as "[<hours>h ]<minutes>m",
  which is actually easily understood, rather than as "<hours>:<minutes>
  minutes", which is not.
* restructure match and attach so that they work as they should, remove
  redundancy, support attaching the APM device but not actually enabling it
  so that APM is attached on systems which have it but on which it's broken
  in some fatal way.
* add more debugging printfs in the apm control device entry points.
* return EOPNOTSUPP when trying to do a standby ioctl if standbys have
  been disabled, rather than returning the less-intuitive ENOTTY.
* rename a few functions for consistency: apmprobe -> apmmatch,
  apm_err_translate -> apm_strerror.
* mark a few serious or annoying bogons XXX so people might look at
  them later.
* KNF (lots of changes!)

Despite this substantial amount of work, this driver still needs a _lot_ of
work.  In particular, the user-land device interface needs to be gutted, and
better support for APM-aware applications and device drivers (i.e. call-backs)
needs to be added (e.g. callback interfaces somewhat like those suggested
by the APM spec).

There are still outstanding known problems with some machines.  The true
source of those problems is not currently known, and could be either the APM
BIOSes of the machines in question or this APM driver.  However, even if the
problems are caused by APM BIOS bugs, they could be more gracefully worked
around in this driver.
1997-07-17 06:30:03 +00:00
cgd 92723b6027 return either 0 (success) or 1 (failure) from apmcall(), rather than 0 (success) or the whatever happened to be in %eax after the APM call on
failure.  The latter usually would end up being the (nonzero) opcode
placed in %ax before the call, but could conceivably be modified by the
call to be zero.  In any case, 0/1 is much nicer than 0/random-nonzero,
as well as being safer.
1997-07-17 05:15:01 +00:00
jtk bd611fe5b6 use locator defines in "locators.h" to index cf_loc[]
still to be done and/or decided not to be done: replace all *UNK uses in
isa code with the native names from locators.h
1997-07-17 01:06:27 +00:00
hpeyerl 11d5346627 Fix an oops on my part. I commented out some devices in my local copy
of this file.
1997-07-16 13:40:24 +00:00
drochner a0b2749901 Recognize Cirrus Logic GD5434 VGA chip. It can be treated like a GD5430.
(closes PR port-i386/2638)
1997-07-16 12:44:55 +00:00
fvdl 06b1c0c4aa Recognize MMX P5 by it's model number, not by the cpuid flag. Otherwise
we also get "Pentium II with MMX" which is like saying "Pentium with FPU".
Also add one more entry for a K5
1997-07-16 00:01:49 +00:00
drochner b401c3f024 Use include files from kernel source, not userland. Create a
"machine" link automatically for this.
1997-07-15 13:02:04 +00:00
drochner 6b02672ee8 Cleanup include file usage: Avoid user space headers, use
<sys/types.h> instead of <sys/param.h> where possible.
1997-07-15 12:45:22 +00:00
drochner d6a6f815ee Add boot ROM support for 3c905 TX ethernet card. 1997-07-15 11:23:04 +00:00
kleink 4193b52786 Do not compile in satlink unconditionally; from Thorsten Frueauf
<frueauf@ira.uka.de> in PR port-i386/3864.
1997-07-14 21:09:07 +00:00
hpeyerl 135cc571fc Satellite receiver driver for ISA cards from PlanetConnect by Jason and
Herb for Canada Connect Corp.
1997-07-13 19:33:29 +00:00
hpeyerl 080d346785 Add Satellite receiver driver for ISA cards from PlanetConnect by Jason and
Herb for Canada Connect Corp.
1997-07-13 19:12:06 +00:00
leo 198bd713f2 Generate assym.h dependencies when making 'depend'. 1997-07-12 22:07:36 +00:00
perry ad1710ce1e update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson 1997-07-12 16:18:36 +00:00
fvdl b245497f3e model 6, step 3 -> Pentium II, recognize it. 1997-07-10 16:02:24 +00:00
cgd c5d237fec8 kill the apm_enabled softc member I added, and instead use apminited,
a global variable (yech, but i'm not out to save the world) which had
the same meaning and ended up being stealthily set in pretty much
the same place.
1997-07-10 04:15:39 +00:00
cgd ceb9be409e figure out which space we're using in i386_memio_{map,alloc,unmap} by
doing 'if (tag == ...) else if (tag == ...) else panic' rather than
by doing a switch.  This makes life easier for people who need
the i386 bus_space_* functions to access spaces other than the normal
memory and I/O spaces, because it allows them to define an i386
bus_space_tag_t as a pointer to a function table, rather than just
an int.  (They could define it as an int and cast it to a funtion
table pointer, but I think that's bad karma, and this change doesn't
hurt.)
1997-07-10 04:07:00 +00:00
cgd d2e314622d undo the change done (at my suggestion) in rev 1.236. That is,
mark all of 0 -> IOM_BEGIN as used, even though there are some regions
which are left for use by the BIOS (namely, the first 4k page and the
area after biosbasemem*1024 but before IOM_BEGIN).  Drivers wishing to
manipulate these areas should map them specially, with _i386_memio_map()
rather than bus_space_map() or i386_memio_map().
1997-07-10 03:10:58 +00:00
cgd cba7918db6 (1) add a flag to the softc to indicate that the APM device may be
disabled even if it's attached.  If disabled, ENXIO on open.
(2) in the case where the code32 segment len overflows the I/O hole,
    instead of giving up truncate it.  (In other words, revert
    change (2) in rev 1.21 which i suggested mistakenly.)
(3) map bios data space in the 0->640k range with _i386_memio_map()
    rather than with bus_space_map(), so that no accounting checks
    are done.  The checks which are done to make sure that allocation
    in this range is safe are sufficient.
(4) check the return value from _i386_memio_map(), and if it indicates
    an error disconnect from the APM BIOS, print an error message,
    and return without having marked the device 'enabled'.
1997-07-10 03:07:29 +00:00
cgd 9989c90b52 rename i386 bus_space_{map,unmap,subregion,alloc,free} implementation
functions (which only work on memory and i/o space) to i386_memio_*,
and make bus_space_* in bus.h be #defines which invoke them.  This makes
life easier for people who need to define the all of the bus_space functions
so that they work on spaces other than memory and I/O space.  Also, add
an _i386_memio_map function which is like i386_memio_map but doesn't do
the extent map checking or allocation.  _i386_memio_map and i386_memio_*
are for use only by machine-dependent code.
1997-07-10 02:36:44 +00:00
thorpej b4ab2c89f5 Oops, fix a slight oversight, and remove T_MACHCHECK handling (some
code for this was in my private tree at one time, and I must have
forgotten to g/c the constant from trap.h).  Reported by
enami tsugutomo <enami@but-b.or.jp>, PR #3845.
1997-07-09 07:01:29 +00:00
thorpej 4e8a131f3a When allocating space used by physical memory from the iomem extent,
use a value derived from biosbasemem, rather than a constant.  Pointed
out by Chris Demetriou <cgd@netbsd.org>
1997-07-08 17:55:44 +00:00