Commit Graph

4260 Commits

Author SHA1 Message Date
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
groo 024d345241 Add ability to customize I/O region and DAC offset based on pnpbios idstr.
Add CSC0000 id from Dell Latitude CPi.
2000-02-20 22:03:49 +00:00
soren 7fffbf8679 Add a few links to documentation. 2000-02-20 21:42:26 +00:00
nathanw 971144c47f Add ess at pnpbios 2000-02-15 17:14:50 +00:00
nathanw 558d216998 Add pnpbios front end for ESS AudioDrive. 2000-02-15 17:12:54 +00:00
thorpej fd8c03cf44 Allow arch-specific code to specify in4_cksum() like it can specify
in_cksum().
2000-02-14 21:42:50 +00:00
thorpej dded044fc2 Update for the NKMEMPAGES changes. 2000-02-11 19:25:12 +00:00
thorpej dc80cc068b Move KERNBASE to 0xc0000000, giving the kernel a more-or-less full 1G
of virtual address space, leaving userland with 3G, and update comments
to match the new reality.

We knew we were going to have to bite this bullet eventually, and there
are a couple of outstanding PRs related to this issue (9389 and 9313).
Complete solution to those PRs is going to involve some sort of run-time
decision on how large kmem_map should be, as well as changing some data
structure allocation strategies in UVM.  However, this change will at
least allow the PR submitter to simply throw resources at the problem.
2000-02-11 07:00:11 +00:00
mycroft a3b8d596d5 Sync with GENERIC. 2000-02-08 03:10:21 +00:00
thorpej 52a2804a5c Add a new function call to the ISA DMA API: isa_dmamaxsize(), which returns
the maximum transfer size for the specified DMA channel.  Make all clients
of ISA DMA use this call to determine their maximum transfer size.
2000-02-07 22:07:27 +00:00
thorpej fe551f0e64 Fix a bug in disksort_*() which caused non-optimal ordering when multiple
active partitions were on a single spindle.  Add a b_rawblkno member to
struct buf which contains the non-partition-relative block number to sort
by.
2000-02-07 20:16:47 +00:00
thorpej cb18849e48 Make APM use a kernel thread rather than a callout, and provide a
mutex between the thread and a user process attempting to do APM
operations.
2000-02-07 17:36:59 +00:00
kleink 36e6bc645e Improve namespace test macros a bit. 2000-02-05 14:04:36 +00:00
cgd 253b179629 clean up (group, sort) __HAVE_* defines 2000-02-05 00:07:30 +00:00
minoura a7ec5e9634 Add Cyrix MediaGX(m) identification.
Thanks to INOUE Yoshinari <pf5y-inue@asahi-net.or.jp>.
2000-02-04 14:21:33 +00:00
dante 834e04377c Remove ADW_*_DISABLE options. Now they are described in the adw.4 man page 2000-02-03 20:31:42 +00:00
kleink 82464e46d6 Add a C99-style va_copy macro. 2000-02-03 16:16:06 +00:00
augustss eff80a379b Due to popular demand (hi Bernd), comment out the CardBus entries.
Appearently it doesn't work for some chipsets.  I think the right way
to fix this would be to only let cbb attach to the working chipsets...
2000-02-02 20:39:35 +00:00
augustss 9e8d441535 Add CardBus support. If it breaks anything, I'm sure we'll know soon. :) 2000-02-02 20:17:13 +00:00
augustss 4369c3338a Change the size of the PCMCIA controller memory window to 64K. Several
of the radio LAN cards need it.
2000-02-02 19:48:18 +00:00
minoura 93d494f9a5 Take care of National Geode (Cyrix MediaGX) built-in clock module bug.
Patch supplied by INOUE Yoshinari <pf5y-inue@asahi-net.or.jp>, kern/8654.
2000-02-02 15:26:27 +00:00
thorpej e1aef0ac87 If there is no BIOS32 present, don't try to call into it. 2000-02-02 04:09:37 +00:00
soren f43a171804 Match PNP0510 as well. 2000-02-01 18:33:22 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
danw f77befbc84 #define __HAVE_DEVICE_REGISTER on ports that have it, and check for
that, rather than a list of architecture defines, in config_attach
2000-02-01 04:01:19 +00:00
drochner f41d426732 nuke this, there is no valuable information anymore 2000-01-26 18:50:18 +00:00
drochner ce2c26e13c next step in getting machdep.c maintainable - put bus_space related
stuff into a separate file
being here, add new Pentium-III processor ID (models with on-die cache)
2000-01-26 18:49:26 +00:00
drochner 799634df70 next step in getting machdep.c maintainable - put bus_space related
stuff into a separate file
2000-01-26 18:47:59 +00:00
tsutsui b0fbaa33fb Remove obsoleted macros. 2000-01-26 09:44:10 +00:00
thorpej 5251f5550d Add ahc at cardbus 2000-01-26 06:47:41 +00:00
drochner 8eb798e603 define a "BUS_SPACE_MAP_PREFETCHABLE" flag which basically means that
device accesses are idempotent (but should not be cached by the CPU)
2000-01-25 22:13:17 +00:00
augustss 0acef2fd69 Allow the set of PCI irqs to be overridden. 2000-01-25 17:20:47 +00:00
augustss 85fcd0b58d Update for the ucom(4) addition. 2000-01-25 08:31:56 +00:00