Commit Graph

2378 Commits

Author SHA1 Message Date
cgd 20af97b2c0 don't pass max device number for a given bus in, use
PCI_MAX_DEVICE_NUMBER, which can be defined on a per-machine basis.
(defaults to 32.  on i386, it's 32 if pci conf mode == 1, 16 if 2.)
1996-03-14 02:37:28 +00:00
scottr 61927fc337 Fix typo (pointed out by Shinya Taniguchi, PR 2203) 1996-03-12 06:01:16 +00:00
perry 1faa1f926b close prs #2076 and #2159: Install kernels have had DIAGNOSTIC and
KTRACE removed to make them fit on the floppies. All kernels have had
the comment typo "internally consistency" changed to "internal consistency".
1996-03-12 01:32:43 +00:00
cgd 0a6a29c792 update for new commulti->com attach interface. com ports at 'ast'
multiport cards no longer need 'flags 1', because the "don't set IEN"
requirement is communicated by the commulti_attach_args.  com.c no longer
recognizes 'flags 1' at all.
1996-03-10 09:03:13 +00:00
ghudson 4e0c8707f7 To enable people to mount DOS partitions on disks with no NetBSD
partition, add the MBR partitions to the default (faked-up)
disklabel used by NetBSD if it can't find a real one.  If the
type of the MBR partition is one of the common DOS ones, mark the
partition as having an MSDOS filesystem.
1996-03-09 20:52:54 +00:00
cgd ea21ff117e rather than doing something hairy in the print routine, to the
'logically right' thing: define a mainbus_attach_args union which is
all of the subdevices' bus attach args, together with the part that's
shared by all of them, a const char * (the bus name).
1996-03-08 21:55:47 +00:00
cgd 8d459740a7 kill some 'notyet's so that <machine/bus.h> is used 1996-03-08 20:26:59 +00:00
cgd 91d7642d30 implement bus_mem_map() and bus_mem_unmap() functions. 1996-03-08 20:19:48 +00:00
cgd 0b56afadf3 make this idempotent. bus.h needs to include it, and other things which
may include something that includes bus.h may include it as well.
1996-03-08 20:15:23 +00:00
cgd 6826c7bf48 bus memory and I/O space access functions/macros, to be used by
machine-independent code for more sane access to bus resources.
New functions will be added to this set, in the future, as appropriate,
but this is a good starting set.  Defines:
	bus_{io,mem}_{map,unmap}
	bus_{io,mem}_{read,write}_{1,2,4,8}
functions, and several types to go with them.
1996-03-08 20:11:23 +00:00
mycroft 2732f4510b Rearrange boot() slightly. 1996-03-08 11:40:28 +00:00
mycroft 45ceba49fd Use label_t, not jmp_buf. 1996-03-08 06:49:45 +00:00
mycroft 8dbac07c10 Add a message to help us debug Linux compat. 1996-03-08 06:00:53 +00:00
jtk 7492f0d7f1 speaker takes one port, so declare it as such in isa_attach_args
fixes pr#2178
1996-03-07 00:54:14 +00:00
jtk ff6687748a speaker device uses a port, so declare it as such in all the config
files
1996-03-07 00:48:34 +00:00
mycroft 0903ac5cd2 Do an async_update() iff the output buffer is empty.
Make the IOPL handling #ifdef COMPAT_1[01].
1996-03-05 12:57:30 +00:00
mycroft 0c231d0e0d Update the CRT start registers asynchronously. 1996-03-05 11:38:31 +00:00
thorpej 85720fdf67 Add a blurb about the EXTMEM_SIZE option to the example kernels, disabled
by default.
1996-03-05 01:32:11 +00:00
thorpej b65bdb63d6 Add an EXTMEM_SIZE option to set the size of extended memory on systems
that lie about it.  Deals with PRs #1319 and #1831.
1996-03-05 01:28:51 +00:00
thorpej ae5cde21bd RCS id police. 1996-03-05 00:37:24 +00:00
cgd c8487c701e reorganize mapping register definitions 1996-03-04 19:30:50 +00:00
cgd 18ec26aa21 add _MACHINE and _MACHINE_ARCH, which are like MACHINE and MACHINE_ARCH,
execpt without quotes.  meant to be __CONCAT()ted for easy #includes
of machine-dependent headers for MI code (e.g. for the MI ISA/EISA/PCI/TC
bus code).
1996-03-04 05:04:10 +00:00
mycroft 7f1ba9f148 Update for changed DMA interface. 1996-03-04 04:01:03 +00:00
cgd fedca4f133 Attach isa, eisa, and pci to mainbus now, rather than root. The i386
now has a single device tree (rather than a forest).  Also, attach
EISA only if it's present, and attach in order: PCI, EISA, ISA (most
specific to least specific).
1996-03-04 03:25:48 +00:00
jtk 8c395495bf set ia->ia_iosize to 0 so that the probe code doesn't spit out lots of
gunk.
1996-03-03 04:12:48 +00:00
cgd 1c5d7babe5 Clean up tabbing/spacing in defns of MACHINE, MACHINE_ARCH, and MID_MACHINE. 1996-03-01 23:30:08 +00:00
scottr 9aebe01038 Add newlines to CPU class notices 1996-03-01 21:49:49 +00:00
cgd 3d67685d36 Do not build vnode_if.[ch] for each kernel. Build them once, like the
various syscall sources/headers, and just compile them.  From PR 2142, OK'd
by mycroft.
1996-02-29 20:54:58 +00:00
cgd 379b6eadf4 pci devices are now specified like "foo* at pci? dev ? function ?". also,
add support for PPB's and secondary PCI busses, where appropriate.
1996-02-28 02:02:29 +00:00
cgd 0bcfb3598b update for adjustments to ISA and PCI 'files' files 1996-02-28 01:58:25 +00:00
cgd df03361e4b update for new method of attaching isa/pci busses 1996-02-28 01:54:44 +00:00
cgd 591c6fd2cd make PCI bus match/attach and sub-device attachment machine-independent.
(remove that code from this file.)
1996-02-28 01:50:02 +00:00
cgd f5f5831829 make ISA bus match/attach and sub-device attachment machine-independent.
(remove that code from this file.)
1996-02-28 01:49:35 +00:00
jtc bfbc5fb90c Copyright assigned to the NetBSD Foundation 1996-02-27 22:39:39 +00:00
jtc 8bd51c47b9 Copyright assigned to the NetBSD Foundation 1996-02-27 22:28:09 +00:00
cgd e4a3b7650e oops; remove extraneous #if/#endif pair 1996-02-27 00:15:23 +00:00
cgd 570976f77c change previously-useless config_rootfound() for the EISA bus so that
it provides what the new MI EISA code expects.
1996-02-27 00:13:45 +00:00
cgd 188cda224f Trim some comments relating to EISA configuration that are no longer relevant. 1996-02-27 00:08:29 +00:00
cgd 440b3cbc94 update for new EISA autoconfiguration: there can now be an eisa0 at root,
and ahb attaches to eisa, not isa.  Also, ahb* at eisa?... is now supported,
so you can get all ahb's configured easily.
1996-02-27 00:06:42 +00:00
mycroft 2ce52ae489 Define build programs with `?=', so they can be overridden with `makeoptions'. 1996-02-26 02:53:20 +00:00
scottr 5be12dbfc8 Move the speaker driver to 'new' config. (Closes PR 1361, from Rafal Boni) 1996-02-22 05:53:16 +00:00
mycroft 2b9c3e10b9 Add SCSI scanner device. 1996-02-18 22:57:54 +00:00
mycroft f9596bfc43 Use the same timing hacks as in pccons for the keyboard. 1996-02-18 22:49:12 +00:00
mycroft 0e335a2150 Move the DDB initialization later. 1996-02-18 22:44:27 +00:00
mycroft d1bae2700f Add the obligatory copyright notice. 1996-02-18 13:01:05 +00:00
christos 4d234d08d8 Move pmap_page_index declaration to <vm/pmap.h> 1996-02-12 21:12:29 +00:00
christos 47058c3660 make pmap_page_index() return a signed int. 1996-02-12 21:11:20 +00:00
thorpej d586688437 In fdcretry(), set the state to DOSEEK rather than SEEKCOMPLETE before
retrying the operation.  Fixes disk_unbusy() imbalance and really seems
like the right thing to do in case it was the seek that failed.  Takes
care of PR #1985.  Patch from John F. Woods <jfw@jfwhome.funhouse.com>
1996-02-10 18:31:13 +00:00
christos 45aca3f276 fix _insque and _remque declarations 1996-02-10 00:51:52 +00:00
mycroft 45e308cd51 Be more verbose when a CPU class is not configured. 1996-02-09 17:15:27 +00:00
mycroft db070d4271 Enforce the hierarchy: imp > tty > net > bio, to cater to lame PC devices. 1996-02-09 02:26:00 +00:00
mycroft 753fe3a25a Fix mkdep problems due to missing flags. 1996-02-09 02:21:13 +00:00
jtc 7eb02879b7 Simplify -I's in CFLAGS 1996-02-05 07:42:54 +00:00
christos 684b37e33e vm prototype changes. 1996-02-05 01:59:12 +00:00
mycroft b6f55847e5 Fix #includes. 1996-02-03 01:05:36 +00:00
mycroft 5bc076e17e Use `-traditional-cpp' when building .s and .S files. 1996-02-03 00:43:50 +00:00
mycroft dcd66e9f4d Clone these, and fix many bugs. 1996-02-02 20:08:17 +00:00
mycroft 9db20bf150 Don't define _KERNEL here. 1996-02-02 19:42:08 +00:00
mycroft 9d9a70a5a2 Fix #includes. 1996-02-02 18:05:36 +00:00
mycroft f3bbe0e453 Turn off a few things. 1996-02-02 09:09:39 +00:00
mycroft fc9d84fb46 assym.s -> assym.h
(Some ports did this already.)
1996-02-02 02:34:09 +00:00
mycroft 88e512b693 LOCORE -> _LOCORE 1996-02-01 22:28:24 +00:00
mycroft b050cf3d61 Allocate the GDT area in a different way. 1996-01-31 03:13:07 +00:00
scottr 25879b675b Resolve return type conflict for microtime(); closes PR #1835. 1996-01-30 23:15:01 +00:00
mycroft 467bd97c79 Make a small attempt to deal better with VM86 mode in GDB. 1996-01-13 06:14:44 +00:00
thorpej e422ebca1a Add the "ahe" driver, autoconfiguration support for the aic7xxx-based
Adaptec 2[78]4x SCSI controllers, from Michael Graff <explorer@flame.org>.
Fixes PR #1594 from Noriyuki Soda <soda@sra.co.jp> in a different way.
1996-01-13 02:05:14 +00:00
thorpej 43b4486bb3 Balance calls to disk_busy() and disk_unbusy() properly to avoid
dk_busy < 0 panics.  Count seeks.
1996-01-12 00:19:29 +00:00
mycroft 8ee41dc35a Make sure some registers are accessed in 16-bit mode. 1996-01-08 22:23:35 +00:00
mycroft d74e9d43ab Also reset %fs and %gs when delivering a signal. 1996-01-08 20:12:20 +00:00
mycroft 47e444bf50 Attempt to deal with wrap-around problems in 16-bit segments. 1996-01-08 19:11:00 +00:00
mycroft 7149c5ff14 VM86 support, by John Kohl, touched up a bit by me. 1996-01-08 13:51:30 +00:00
thorpej 5b39541e48 New generic disk framework. Highlights:
- New metrics handling.  Metrics are now kept in the new
	  `struct disk'.  Busy time is now stored as a timeval, and
	  transfer count in bytes.

	- Storage for disklabels is now dynamically allocated, so that
	  the size of the disk structure is not machine-dependent.

	- Several new functions for attaching and detaching disks, and
	  handling metrics calculation.

Old-style instrumentation is still supported in drivers that did it before.
However, old-style instrumentation is being deprecated, and will go away
once the userland utilities are updated for the new framework.

For usage and architectural details, see the forthcoming disk(9) manual
page.
1996-01-07 22:01:38 +00:00
mycroft 87a8c945ba Hand-code softintr() to deal with GCC braindamage. 1996-01-07 21:48:35 +00:00
mycroft ba1353b388 Stylistic changes. 1996-01-07 21:29:47 +00:00
mycroft 0696821419 Deal with GCC's dead code elimination being suboptimal. 1996-01-07 03:59:28 +00:00
mycroft 41f463bf2c Modify splraise() to allow better optimization. 1996-01-07 02:40:44 +00:00
mycroft 946507cf4d Make cpl, ipending, and astpending volatile. 1996-01-07 02:08:28 +00:00
mycroft 3afeb8d6b0 Make sure interrupts are disabled before jumping to a resume point, to prevent
races.
1996-01-07 02:07:07 +00:00
mycroft f149f4f6f1 Make FPU faults use INTRFASTEXIT, and remove INTREXIT. 1996-01-07 02:04:31 +00:00
mycroft 9e6f4ae58a Remove unused macros. 1996-01-07 02:03:20 +00:00
mycroft 19914b6e10 Build the frame for recursive interrupts manually, and make sure to disable
interrupts to avoid races.
1996-01-07 02:02:28 +00:00
mycroft 7f6d0eaf9b Put #includes in the right order. 1996-01-07 02:00:31 +00:00
mycroft 96e91cd027 Don't save caller-saved registers. 1996-01-06 22:15:29 +00:00
jtc 2fce159ff8 Changed name of sigaltstack's ss_base field to ss_sp to match XPG4.2 and
traditional usage.
1996-01-04 22:21:33 +00:00
thorpej 17eb6e2bc1 Move the old-style disk instrumentation "structures" to a central location
(sys/kern/subr_disk.c) and note that they should/will be deperecated.
1995-12-28 19:16:31 +00:00
perry 74e1e47aeb fixed my own pr 1758 -- the floppy drive motor was not being turned off
at halt time, especially if a floppy was mounted. Added a shutdown hook
to turn off the motor. Per a request by mycroft, the cookie from the hook
is saved in a new member I added to the fd_softc structure.
1995-12-28 15:48:57 +00:00
mycroft 883fb8f0ca Copy md_flags during fork. 1995-12-26 16:59:47 +00:00
mycroft cd8fe86bcb Make the type of __builtin_va_list a long. 1995-12-26 01:16:24 +00:00
mycroft 0c00214737 Use __builtin_va_alist. 1995-12-26 00:19:09 +00:00
mycroft fa887628d8 Stylistic changes. 1995-12-25 23:15:31 +00:00
mycroft d1de691efb Stylistic changes. 1995-12-25 22:22:02 +00:00
mycroft 0199e002ad Update for GCC 2.7, and fix bugs. 1995-12-25 21:41:08 +00:00
neil c93761e267 Added ccd pseudo device. 1995-12-24 18:00:29 +00:00
mycroft 3da4b2a160 The IST_* and IPL_* constants are not bus-specific; don't treat them as such.
Change splimp -> splnet in Ethernet, ARCnet, and FDDI drivers.
1995-12-24 02:29:35 +00:00
mycroft 1ca89b7f91 Enable paging of the user area. 1995-12-24 01:07:32 +00:00
neil 6d9d4bb77a Added ccd pseudo-device. 1995-12-24 00:22:20 +00:00
perry 765bb97fe9 fix my own pr 1762, in which it was noted that boot2 used a busy loop
to time out the boot prompt.  Now uses a usleep() routine that calls
the BIOS and the functionality is separate from gets(). Timeout is
#defined to 5 seconds. Also did some minor cleanup in preparation to
prototype/ANSIfy everything.
1995-12-23 17:21:23 +00:00
mycroft d2e4a2de4b Minor cleanup. 1995-12-21 01:08:59 +00:00
mycroft 6698d239ca Use the U suffix to insure unsigned values are treated as such. 1995-12-20 23:30:57 +00:00
mycroft e28d5e9168 Use #pragma only for 2.0 <= GCC < 2.7. 1995-12-20 18:09:24 +00:00