Commit Graph

14748 Commits

Author SHA1 Message Date
scottr
233a1d3f57 Use only FC $1 in TT0 in get_pte(), and map the entire address space. We
can then access the page table entries directly using user data space with
the MOVES instruction.  This should resolve the problem on the Duo 2x0
series with hard hangs in this function.

Warning:  do not call any function that accesses user data space (FC $1)
from get_pte()!
1997-01-09 07:28:12 +00:00
scottr
8bd4e6d18e Sync with current 040-related development:
- Figure out what CPU we have, rather than assuming the Booter knows,
   and set cputype variable accordingly.
 - Carefully rearrange the order of various MMU/ATC operations so as to
   eliminate possible side effects.  Also, re-order the initial bootstrap
   code to make clear what various sections of this code do.
 - Adjust to combined initenv()/genenvvars() (the latter has assimilated
   the former).
 - Add a function code argument to ptest040().
 - Use symbolic constants from assym.h where appropriate (and defined).
 - Some style cleanup.
1997-01-09 07:24:39 +00:00
scottr
cd2817bffb Sync with current 040-related development:
- Combine initenv() and getenvvars().
 - Hardwire some PowerBook internal video addresses, from Takashi Hamada.
 - When printing out the machine model/CPU, use the new cputype variable
   instead of the Booter's PROCESSOR environment variable.
 - Use new ptest040() function code argument (though for now, the MMU is
   disabled on the 040).
 - Revert previous change in get_physical() that seems to have broken
   some machines; use an ADD instead of an OR when determining the PA.
 - Some (very minor) style cleanup of asm code.
1997-01-09 07:20:46 +00:00
scottr
f832503ac5 Add CACHE40_ON, for locore 1997-01-09 07:14:17 +00:00
thorpej
1dc6efd7e6 Only call Debugger() on panic if "db_onpanic" is set. 1997-01-09 05:38:22 +00:00
thorpej
8404eae1ea Grok CTL_DDB. 1997-01-09 05:37:41 +00:00
thorpej
c14ce368af Define db_onpanic variable; if non-zero, the DDB will be entered when
the kernel panics.  It may be initialized to 0 with the kernel option
"DDB_ONPANIC=0", and is patchable.  It may be changed at run-time
from within the DDB (as a DDB variable) or via the ddb.onpanic sysctl
node.

Export all DDB built-in variables via sysctl.
1997-01-09 05:37:02 +00:00
thorpej
da30871192 Define top-level MIB node for DDB (CTL_DDB) and DDB MIB identifiers. 1997-01-09 05:33:42 +00:00
mycroft
5369bfe88a s/soft error/soft error (corrected)/, to avoid confusion. 1997-01-09 04:30:08 +00:00
scottr
b917ce3294 Bracket kernel structs with #ifdef _KERNEL so that bootblocks will once
again build.
1997-01-09 01:07:59 +00:00
veego
d61e3f8c25 ipl[attach|detach]->ipfilter[attach|detach] for the pseudo-device change 1997-01-08 21:45:39 +00:00
oki
a83d534e05 Add EXEC_AOUT and EXEC_SCRIPT. 1997-01-08 16:17:29 +00:00
oki
0f23801475 Fix typo. 1997-01-08 16:16:14 +00:00
leo
7e22e8338d Adjust 'fill'. 1997-01-08 12:57:22 +00:00
leo
5df535d814 Handle DTYPE_ESDI like ST506. 1997-01-08 12:55:41 +00:00
leo
d1538cb3c0 Don't try to init the keyboard interrupts in cngetc(). This caused the
keyboard to hang when booting directly into the debugger.
1997-01-08 11:28:03 +00:00
oki
7dcae7a79d Add macros. 1997-01-08 10:29:27 +00:00
leo
1d1bc2cb98 Bump version. 1997-01-08 10:18:39 +00:00
oki
e4b66b6973 Compile again. 1997-01-08 10:15:51 +00:00
oki
0c47c09505 Use FPU_XXXXX macro, x68k is now use this file. 1997-01-08 04:03:50 +00:00
oki
0e00922730 Add fpu_probe prototype. 1997-01-08 04:00:47 +00:00
oki
c68b49f85c Add fpu.c, delete unneeded fpe_emulate.c line. 1997-01-08 03:59:32 +00:00
mrg
c71a371532 use pseudo-device ipfilter, not ipl. 1997-01-07 11:35:01 +00:00
mrg
9cc6a2a495 remove some old debugging statements. 1997-01-07 10:51:01 +00:00
mrg
615fc0a880 add netinet... 1997-01-07 10:48:19 +00:00
mrg
f9eeb3865a oops; forgot these. 1997-01-07 10:47:35 +00:00
mrg
7de1b7c8eb only set P_SUGID once. 1997-01-07 10:41:02 +00:00
thorpej
c56e780e4f Bring some sanity into my frazzled existence:
- Always ensure that RAW_PART ("c") can be opened.
- Disallow unused or non-existent partitions from being opened.
- Don't do bounds checking or partition translation on RAW_PART.
This is consistent with other disk drivers in the NetBSD source tree,
and fixes a condition where the user could not fix a corrupted disklabel
due to a bogus offset for partition "c".
1997-01-07 09:29:30 +00:00
veego
863a668514 Add the pseudo-device for ipl and PFIL_HOOKS which is required for ipl. 1997-01-07 08:01:32 +00:00
veego
6141167d37 Add cdevsw entry (#44) for ipl (IP filter). 1997-01-07 07:57:31 +00:00
scottr
4211100164 Don't unlock the NuBus on PowerBooks; this bit controls the Power Manager
chip on these machines.  From Takashi Hamada.
1997-01-07 07:45:45 +00:00
scottr
a54b50a58c If 040 MMU is enabled, attempt to get memory mapping. (At present, this
can't happen because we've faked a disabled MMU.)
1997-01-07 07:44:01 +00:00
scottr
c0af85f6f3 Add CPU_XXX macros to assym.h 1997-01-07 07:42:17 +00:00
scottr
3753710f38 Fix typo in last: cf->cf_unit -> sc->dv.dv_unit 1997-01-07 07:40:46 +00:00
cgd
ebabdb626a dd bdevsw and cdevsw entries for floppy disk driver (not currently usable),
and cdevsw for ipl (IP filter).
1997-01-06 23:28:09 +00:00
is
d97cf56937 Add manufacturer/product id for Apollo-68060 accellerator board. 1997-01-06 18:05:15 +00:00
is
61e3fad685 Build / install some stuff from stand (e.g.: bootblock) 1997-01-06 12:33:09 +00:00
veego
918ad06a75 Add PFIL_HOOKS and NSIP. 1997-01-06 09:59:32 +00:00
thorpej
32dda9a886 Kludge newvers rule, so that it works with old and new config. 1997-01-06 08:49:30 +00:00
thorpej
c26a11ab21 Add PFIL_HOOKS and ipl pseudo-device. 1997-01-06 08:48:36 +00:00
thorpej
7e3b804ce5 Add ipl pseudo-device. 1997-01-06 08:47:43 +00:00
thorpej
3941a378c0 Give the "ipl" pseudo-device the "device-driver" attribute, so that
ipl.h is generated.
1997-01-06 08:41:19 +00:00
mrg
394d540361 add PFIL_HOOK and ipl, both commented. 1997-01-06 07:35:39 +00:00
mrg
fb5d192bc3 include the GENERIC kernel, and then map the disks. 1997-01-06 07:34:14 +00:00
mark
fd643704d1 Minor changes (inline -> __inline)) 1997-01-06 04:47:53 +00:00
mark
fe764c2415 Added the ipl pseudo device.
Cleaned up the options and sync with reality.
1997-01-06 03:39:13 +00:00
mark
5aad105fd0 Added character ipl device on major 46. 1997-01-06 02:44:10 +00:00
mark
bc3f67bb21 Use the irqblock array to provide the information about which interrupts
should be blocked for each irq currently asserted.
1997-01-06 02:35:46 +00:00
mark
c87f4e3785 Added the functions intr_claim() and intr_release(). These are front
ends for irq_claim() and irq_release() that will allocate and free
memory for the irqhandler structure.
Added an irqblock array that provides a quick reference to all the
interrupts that should be blocked when a particular interrupt is
received. The irq_claim() and irq_release() functions now update the
irqblock array.
1997-01-06 02:30:21 +00:00
mark
b34fcd542a Added prototypes for intr_clain() and intr_release().
Added const to the ih_name member of the irqhandler structure.
1997-01-06 02:19:06 +00:00
mark
9f1c9fe28e Symbol kernel_text -> _kernel_text 1997-01-06 02:15:17 +00:00
veego
98bf77c987 Add needs-flag and ifnet for ipl. 1997-01-05 22:16:51 +00:00
veego
cf21385a5e use NIPL. 1997-01-05 21:44:24 +00:00
veego
473d4f54d1 Add $NetBSD$ id's and restore the orginal Id's. 1997-01-05 21:32:18 +00:00
veego
25bcda3b52 Add $NetBSD$ id's and restore the orginal Id's. 1997-01-05 21:32:17 +00:00
mrg
ad6281b640 use NIPL. 1997-01-05 21:32:15 +00:00
veego
47517abd07 Add $NetBSD$ id's and restore the orginal Id's. 1997-01-05 21:32:14 +00:00
thorpej
246654663f Add "ipl" device at cdev major 18. 1997-01-05 21:29:49 +00:00
veego
ea9ed8902e add a ipl pseudo-device. 1997-01-05 20:44:42 +00:00
veego
048acbeb1e add ipl device. 1997-01-05 20:39:01 +00:00
mark
c65504baea Lowered the FIFO trigger threshold to 4 for rather than 8.
Impelemented a fix for kernel locks when opening the serial post :
Revisions A->D of the SMC FDC37GT665 Peripherial controller have
a bug in the serial port that is triggered if the FIFO is enabled
while there is a byte in the rx data register resulting in the
rx ready bit being permenantly set.
1997-01-05 19:19:57 +00:00
mark
17d2a69941 Updated for latest major allocations. 1997-01-05 19:01:18 +00:00
mark
cd9c6d9853 Change rd references to md that escaped the previous change.
Reformatted a few over-long source lines.
1997-01-05 18:57:04 +00:00
ragge
3896082c5a Add rd, sd, cd, md, st, ss, uk, ch and ipl device entries. 1997-01-05 18:49:12 +00:00
mrg
c1067a3f4b initial import of darren reed's ip-filter, version 3.1.2. 1997-01-05 13:47:59 +00:00
mrg
ca896854ef add ipl device. 1997-01-05 13:43:04 +00:00
mrg
07bfe47053 add cdev_ipl_init() and cdev_decl(ipl), for ip-filter. 1997-01-05 13:41:50 +00:00
mrg
b002cf09d3 initial import of darren reed's ip-filter, version 3.1.2. 1997-01-05 13:39:41 +00:00
mrg
85f84f08cd initial import of darren reed's ip-filter, version 3.1.2. 1997-01-05 13:26:10 +00:00
scottr
3afad659e2 Add basic support for a Duo dock SCSI controller, from Daishi Kato.
XXX - This could probably be improved if all docking hardware has a
NuBus declaration ROM that we can get to.  This should be investigated
further.
1997-01-05 10:01:42 +00:00
thorpej
f77141521c Oops, build dio.o in the old config case, too. Pointed out by
Dave Carrel <carrel@cisco.com>.
1997-01-05 04:41:48 +00:00
leo
1b2f4a364c grf? -> grfcc? 1997-01-04 23:32:08 +00:00
leo
0713c0ee88 Fix a rather nasty thinko that made the keyboard useless on the Falcon.
Thanks to Markus Kilbinger for finding it.
1997-01-04 23:30:21 +00:00
jonathan
f703350d59 typo in definition of extended-geometry register. 1997-01-04 16:47:03 +00:00
jtk
d721f54830 Be more careful with posting events for user standbys and user
suspends--let the user-level daemon handle it if present.
(pr#3005)
1997-01-04 03:04:25 +00:00
leo
a5eb9c92ec Use the [HD|WR]FAULT macro's from the hp300 version of trap.c and use
cputype where appropriate.
1997-01-04 00:10:30 +00:00
leo
9f5f6ada1b Remove ST-DMA handler, this interrupt now uses the glue code. Count the
clock interrupts in the new counter set.
1997-01-04 00:08:46 +00:00
leo
cafb680cf1 Oops, the declaration of cputype was gone... 1997-01-04 00:06:21 +00:00
mark
2bb8f07910 Added a probe for a podule is EASI space if it is not found in normal
podule space.
Fixed a bug in the reading of bytes from network slot cards that prevented
the correct reading of the network slot ROM description.
config code now allows duplicable devices to be attached.
1997-01-03 23:30:30 +00:00
mark
4065dc201f Increased the podule description length from 47 to 63 characters.
Commented some structure members.
1997-01-03 23:27:31 +00:00
mark
dc9795f6e8 Removed a lurking ; from a #define line. 1997-01-03 23:26:22 +00:00
mark
e1395f3c17 Updated credits. 1997-01-03 23:24:48 +00:00
mark
0b49070ad5 Rebuild from latest podules list. 1997-01-03 23:22:03 +00:00
mark
180ca73617 Added new manufacturer and podule ID's. 1997-01-03 23:21:28 +00:00
mark
04d5907be9 Clean up the code formatting. 1997-01-03 23:19:02 +00:00
mark
de84ec92b1 Fixed several lurking function calls (printf -> db_printf). 1997-01-03 23:17:40 +00:00
mark
d60f65e8bc Guard all functions that are only used by kshell with #ifdef KSHELL. 1997-01-03 23:15:44 +00:00
mark
763f5034bd ib_addr in the iicbus attach args should be an int not a u_int as -1
is an acceptable address.
1997-01-03 23:13:05 +00:00
mark
ff84194c2f Sync with reality. 1997-01-03 23:10:31 +00:00
leo
da93afbd05 Get rid of 'cpu040' variable. Use 'mmutype' or 'cputype' for testing
instead.
1997-01-03 22:54:22 +00:00
mrg
4f2a217c2b pull up vm_object_collapse() fix from mrg_vm_object_collapse branch.
many thanks to niklas hallqvist (niklas@appli.se) for this.
1997-01-03 18:03:14 +00:00
mrg
f3d9c468e1 minor KNF changes. 1997-01-03 18:00:25 +00:00
mikel
d235ef1a1c hide softc array and kernel routine prototypes from userland; PR misc/3070 1997-01-03 07:23:29 +00:00
christos
3ec6dad0f1 Typo police from: Juergen Hannken-Illjes 1997-01-02 22:06:51 +00:00
is
9ad0171cce Use the right parameter to decide whether it's early configuration. (I wonder
why this worked with some configurations... it shouldn't have).

While we're here, correct the 2.4% error in the delay divisor message.
1997-01-02 20:59:42 +00:00
pk
a0f6df960f RAMDISK_HOOKS => MEMORY_DISK_HOOKS 1997-01-01 23:46:29 +00:00
pk
fbfb9e1144 Device rename: rd' => md' 1997-01-01 23:32:41 +00:00
pk
fe71b17fca Device rename: rd' => md' 1997-01-01 23:21:54 +00:00
pk
84a0f13e4c RAMDISK_HOOKS => MEMORY_DISK_HOOKS 1997-01-01 23:12:23 +00:00
pk
072388d107 Device rename: rd' => md' 1997-01-01 23:04:58 +00:00
leo
54608785fb The ST-DMA driver now uses intr_establish. 1997-01-01 21:14:47 +00:00
leo
493e4aaebb The Hades floppy driver now uses intr_establish(). Also the interrupt
accounting is fixed (ie. counted as the right interrupt).
1997-01-01 21:12:56 +00:00
leo
b3e93de260 The ST-DMA driver now uses intr_establish. 1997-01-01 21:11:44 +00:00
leo
139d65ffa2 Fix some leftovers from rd -> md rename. 1997-01-01 21:08:02 +00:00
veego
034ed50ead Add the Matrox Millenium and regen the header files. 1997-01-01 14:56:19 +00:00
veego
fd4d6f207d Add '-I${.CURDIR} ${.CURDIR}/' before netbsd.S to compile it with
object dirs.
1996-12-31 22:44:13 +00:00
veego
d11893c65a Remove a no longer exists <machine/exec.h>. 1996-12-31 22:39:58 +00:00
veego
b66e2c7e4d Add NOMAN= 1996-12-31 22:36:18 +00:00
jonathan
9821b30fe4 Use DELAY() after doing a TX_RESET or RX_RESET command.
Newer boards (e.g., Vortex) take  time to reset, and wedge on some machines.
Polling on S_COMMAND_IN_PROGRESS would be better, but that doesn't
work with xx_RESET commands on 3c509s.
1996-12-31 21:36:30 +00:00
jonathan
0ede4558bc Use the same symbolic cnames for 100Mbit media as epconfig(). 1996-12-31 21:26:10 +00:00
is
5859191f82 First part of making hardware cursor actually work.
For some reason it wouldn't get positioned right when mapped in through the
blitter memory mapped location, so switched to the register mapping, which
works.
XXX colormap handling for the cursor is still broken.
1996-12-31 17:54:28 +00:00
is
cb235d56eb Add names for some more Phase5 boards. 1996-12-31 17:44:04 +00:00
mrg
718a70d239 oops; rd -> md paul left behind... 1996-12-31 07:12:43 +00:00
scottr
8a30e067ed Sync COMPAT_SUNOS trace trap handling with other m68k ports; no
functional change.
1996-12-31 06:32:17 +00:00
oki
4c16b00300 #include "..." --> #include <...> 1996-12-31 00:35:21 +00:00
gwr
1468d5102b Remove some junk. 1996-12-30 21:13:50 +00:00
gwr
b3adae991a Fix warnings. 1996-12-30 21:12:01 +00:00
jonathan
259ce9f178 * make sure 100mbit media-present bits don't collied with 3c509
CONFIG_CNTRL bits by making the "conn" argument to epconfig()
   a u_int, not a u_int16_t, and by defining 100mbit media
   bits in the upper 16 bits.

A redesigned interface that fixes this properly is in the pipeline.
1996-12-30 19:18:28 +00:00
jonathan
b00ac4cf2c * add epshutdown(), and establish as shutdown hook: see multiboot
comments in pr port-i386/2358: "if_ep/3C590 no longer working"
* Only call Vortex media-config code on PCI-attached devices, until
  we know if it works on ISA and EISA large-packet devices also.
* Fix typo in printf of MAC address
1996-12-29 17:01:58 +00:00
jonathan
1d7f16f4d9 * Accept 100baseT4, MII variants of 3c595 as 3c595-model devices,
rather than unknown.

* Look for 100mbit interfaces, and for any present, set corresponding
  bits in `conn' argument to epconfig(). epconfig() will now print
  100Mbit media by name.
1996-12-29 13:42:58 +00:00
jonathan
23c1d14c64 * Add 100Mbit xcvr flags to epconfig():
look for 100mbit Xcvrs, print their names, add to ep_connectors.

* Print 10baseT as 10baseT, since media name (utp) is no longer a unique
  transceiver type.

* Redo FIFO memory size printing, also show Tx/Rx split (xxx isa 3c509?).

* Print MAC address on a separate line,  with 100Mbit media and fifo-ram
  info it no longer fits on the same line as media types.

* Comment the fact that the "connection" media-selection code just doesn't
  grok 100Mbit media.

* add code to look for 3c59x/3c90x media-select and autoconfig bits, though
  we don't yet dynamically probe media when the autoconfig bit is set
  (see previous bullet).

* XXX the whole connector/media code should be redone, perhaps a' la
  the BSDI ifmedia design.
1996-12-29 13:32:46 +00:00
jonathan
6ad69cd711 * Expand softc sc_connectors field to 16 bits.
For now, we really only need 8 bits of media type.

* Add bogus definitions for 100mbit transcievers, to be set in the
  "conn" argument to ep_config(). Should  really  use the same bits
  as in EP_W0_CONFIG_CTRL bits, but I don't know what bits the 3c515
  &c use for 100mbit media.

* Define bitflags for 100Mbit transceiver options in ep_connectors.

* Add definitions of powerup/powerdown commands. for interfaces with
  power management. Should send a powerup after APM resume?

* Add definition of fragment-busmaster (vortex) START_DMA command.

* Add definition  of PCI configuration-space media-present bits.
  (really just EP_W3_RESET_OPTIONS remapped into pci config space.)

* Add comments describing what the #define's above are used for.
1996-12-29 13:25:23 +00:00
jonathan
48f7828104 * Expand softc sc_connectors field to 16 bits.
For now, we really only need 8 bits of media type.

* Add bogus definitions for 100mbit transcievers, to be set in the
  "conn" argument to ep_config(). Should  really  use the same bits
  as in EP_W0_CONFIG_CTRL bits, but I don't know what bits the 3c515
  &c use for 100mbit media.

* Define bitflags for 100Mbit transceiver options in ep_connectors.

* Add definitions of powerup/powerdown commands. for interfaces with
  power management. Should send a powerup after APM resume?

* Add definition of fragment-busmaster (vortex) START_DMA command.

* Add definition  of PCI configuration-space media-present bits.
  (really just EP_W3_RESET_OPTIONS remapped into pci config space.)

* Add comments describing what the #define's above are used for.
1996-12-29 12:36:43 +00:00
jonathan
f029ade219 Define the contents of window 3's InternalConfig register. 1996-12-29 10:21:48 +00:00
jonathan
2d9783cc79 Remove {GENERIC,INST}{ADP,OTHER}: split Adaptec {ADP} and other-scsi {OTHER}
{GENERIC,INSTALL} config files, respectively.

The BusLogic SCSI driver no longer accepts Adaptec 154x devices,
making the split kernels unecessary.
1996-12-29 07:28:53 +00:00
pk
3bbf01bfb7 rename: ramdisk => md 1996-12-28 23:53:10 +00:00
pk
c4a0dfb011 omission in last commit: ramdisk.h => md.h 1996-12-28 23:50:44 +00:00
pk
f750d179be rename: ramdisk => md 1996-12-28 23:42:33 +00:00
leo
aae827a845 - The Hades bios does not pass a 'bootpreference' in d5. Deal with it by
getting the 'bootpreference' ourselves when it is not set to any legal
  value.
- Because the relation between memtop/membot and the video base does not
  hold on the Hades, skip testing on it.
1996-12-28 23:37:53 +00:00
pk
a8b4babc16 rename: ramdisk => md 1996-12-28 23:37:26 +00:00
pk
d5b11782b5 rename: ramdisk => md 1996-12-28 23:27:00 +00:00
leo
223682435b Oops, this one was missed in the BROKEN_INDIRECT_CONFIG cruisade. 1996-12-28 23:26:36 +00:00
pk
603b61c3e0 rename: ramdisk => md 1996-12-28 23:22:07 +00:00
pk
114271a083 rename: ramdisk => md 1996-12-28 23:10:44 +00:00
pk
1cfdb29905 Rename this driver `md'. 1996-12-28 23:09:26 +00:00
cjs
1c0c346e1d This recently stopped compiling due to a warning about const being
dropped. This fix suggested by cgd.
1996-12-28 22:37:03 +00:00
matthias
e16e1de8fd * remove NKPDE, this was never used.
* add IV_MASK (new member of struct iv) and IV_SIZE (sizeof(struct iv)).
1996-12-28 09:15:27 +00:00
pk
31045b4490 Annul __builtin_classify_type' and __extension__' if __lint__. 1996-12-27 20:55:28 +00:00
pk
be41891152 For now, define __indr_reference' and __warn_references' as empty
macros if __GNUC__ not defined.
1996-12-27 20:51:31 +00:00
pk
269e64e16b asm => __asm__ 1996-12-27 20:48:56 +00:00
pk
12729c12d1 Add missing `#ifdef NFS_DEBUG' (from Rolf Grossmann; PR#3061). 1996-12-27 11:55:58 +00:00
mark
adfe1faa81 Removed bogus devices. 1996-12-27 02:04:45 +00:00
mark
ad3eed8ce3 Fixed PPP soft interrupts.
Make sure soft interrupts are only every delivered when the interrupt
depth is 1.
1996-12-27 02:01:02 +00:00
mark
77f7e266f1 Added a definition for the maximum amount of kernel VM space buffers can
occupy.
1996-12-27 01:55:48 +00:00
mark
2cfb4cba1e Added temporary fix for excessive VM memory allocation for buffers. 1996-12-27 01:53:41 +00:00
mark
cc3383de63 Fixed a couple of STM^ instructions lurking in the FPE core. 1996-12-27 01:46:07 +00:00
mark
02d0fd2ea5 Added function fpe_set_execption_mask() to allow the FP exception mask
to be manipulated.
During initialisation the exception mask is set to allow divide by zero
and overflow exceptions to be signaled.
1996-12-27 01:39:14 +00:00
leo
c4b08fe059 Add intr_establish/disestablish functions. Currently only the lpt-driver
is converted to use them...
1996-12-26 23:25:01 +00:00
christos
3463f39651 PR/2981: use ${VAR:Q} instead of '${VAR}' to avoid quoting problems 1996-12-26 21:32:37 +00:00
christos
2c8d554885 PR/2981: use ${VAR:Q} instead of "${VAR}" to avoid quoting problems 1996-12-26 21:32:08 +00:00
christos
56829373e8 PR/2981: use ${VAR:Q} instead of '${VAR}' to avoid quoting problems 1996-12-26 21:30:59 +00:00
leo
112a968fb4 Make sure that the caches are pushed and turned off before jumping into
the kernel image. This makes booting a 040 kernel finally reliable.
1996-12-26 15:07:33 +00:00
leo
0b4a540e3b Correct the IDE port-addresses and data transfer method so this will work
both Hades & Falcon.
1996-12-26 14:55:16 +00:00
jonathan
18a537d1da Pander to "kernel_text" kludge. 1996-12-23 15:27:47 +00:00
veego
94b6312429 Get rid of __BROKEN_INDIRECT_CONFIG. 1996-12-23 09:09:49 +00:00
matthias
92a5d4d222 * We no longer have a scsi subdirectory. Remove it from the list of
directories in which get tag links.
1996-12-23 08:38:02 +00:00
matthias
2e7cb22267 * Use bcopy, not memcpy. 1996-12-23 08:37:55 +00:00
matthias
54e6abd9e7 * Remove __BROKEN_INDIRECT_CONFIG. 1996-12-23 08:37:43 +00:00
matthias
4bd938a998 * Remove IPL_NONE. This is no longer used.
* Add IPL_HIGH. Alias IPL_HIGH to IPL_RTTY
* Define splrtty (used by the scn driver).
* Add iv_level and iv_mask to struct iv. These define the IPL at
  which the handler should run.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.
1996-12-23 08:37:41 +00:00
matthias
b01c5dfbcb * Define NKPDE_BASE, NKPDE_MAX and NKPDE_SCALE for boottime computation of
nkpde (From the i386 port).
1996-12-23 08:37:38 +00:00
matthias
b30b4f9fcf * Define new sysctl variable "machdep.nkpde" (From the i386 port). 1996-12-23 08:37:37 +00:00
matthias
41cc99aa8c * Rearange duart_info and add hwflags to store uart type (Ian Dall).
* Define SCN_RING_HIWAT and add sc_rbhiwat to scn_softc. When the
  ringbuffer gets full up to this mark, rts gets asserted (Ian Dall).
* Add sc_rx_blocked to scn_softc. This is used to tell scnsoft that
  rxinterrupts are blocked (Ian Dall).
1996-12-23 08:37:11 +00:00
matthias
2c7e970491 * Define the bits in MR0 for the SCC26C92 (Ian Dall).
* Define SCC26C92-only commands (Ian Dall).
1996-12-23 08:37:10 +00:00
matthias
b080d4fea0 * Match functions take a "struct cfdata *" as their second argument.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.

All the following changes were provided by Ian Dall:
* Remove SCN_HSOFT. Now that the pc532's software interrupt system is running
  from int14, this won't work anymore.
* Add code to detect uart type (SCN2681, SCC2692 or SCC26C92).
* Cleanup my RECOVER mess. Thank's to Ian Dall for reading the datasheet
  and removing all the unnecessary RECOVERs.
* Cleanup scnrxintr.
* Implement scnhiwflow.
* Do not use automatic RTS. This and scnhiflow and some changes to the
  interrupt system suggested by Ian fix the scn overrun problem at 57600
  baud.
1996-12-23 08:37:07 +00:00
matthias
70597563c6 * Match functions take a "struct cfdata *" as their second argument.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.
* Make transfersize configurable for input and output. Default the input
  transfersize to 128 bytes. That way interrupts won't be disabled for more
  then about 128us-256us for slow targets. This is necessary to prevent scn
  fifo overruns. Cleanup the pdma code. Thank's to Ian Dall for these
  changes.
1996-12-23 08:37:04 +00:00
matthias
c3f3bc0228 * Match functions take a "struct cfdata *" as their second argument.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.
1996-12-23 08:37:02 +00:00
matthias
7736d33def * membus is now called mainbus. 1996-12-23 08:36:43 +00:00
matthias
b6f24c53a9 * Use std.pc532.
* Remove obsolete options CONFIG_NEW and CON_BRK_PANIC.
1996-12-23 08:36:40 +00:00
matthias
a6953fcdd8 * membus is now called mainbus. 1996-12-23 08:36:37 +00:00
matthias
d949824775 * Use std.pc532.
* Make it work on 30mhz machines.
* Configure MSDOSFS, CD9660, KERNFS, NFSCLIENT and INET.
* Configure SCSI-cds, slip and ppp.
* Update for mi ramdisk driver.
1996-12-23 08:36:36 +00:00
matthias
bddb87af16 * Configure UNION and NULLFS. UNION doesn't seem to work as a lkm yet. 1996-12-23 08:36:33 +00:00
matthias
181cf4f705 * Use std.pc532.
* Make it work on 30mhz machines.
1996-12-23 08:36:31 +00:00
matthias
553486636e * Define and use nkpde. 1996-12-23 08:36:11 +00:00
matthias
15e824377a * Add code for CPU_NKPDE sysctl.
* Compute nkpde at boottime.
1996-12-23 08:36:08 +00:00
matthias
eb68ad8281 * Recode _interrupt to use IV_MASK. 1996-12-23 08:36:05 +00:00
matthias
99cc2dd46d * Initialize IPL_HIGH's imask to 0xffffffff.
* Initialize iv_level for all interrupts.
* Protect the call to the sir-handler with splraise.
* intr_establish now takes *two* ipls. One at which the handler should run,
  and one in which the interrupt should get blocked.
* Compute iv_mask for all interrupts in intr_establish.
1996-12-23 08:36:02 +00:00
matthias
c1921b48eb * intr_establish now takes *two* ipls. One at which the handler should run,
and one in which the interrupt should get blocked.
1996-12-23 08:36:00 +00:00
matthias
9d6e666ea7 * Rename membus to mainbus.
* Remove config_scan. Thank's to Chris G. Demetriou for providing patches.
1996-12-23 08:35:57 +00:00
pk
bb12d8fd9a Prevent `unused function' warning (from Robert Evans; PR#2770). 1996-12-23 01:46:30 +00:00
fvdl
468d71d6f9 Add kernel_text symbol (from Jonathan Stone) 1996-12-22 23:05:31 +00:00
fvdl
bb31faf853 Make this compile again, including Politically Correct const handling. 1996-12-22 23:00:02 +00:00
veego
26f6e45d39 Fix a typo: s/COPT/COPTS/ 1996-12-22 19:14:14 +00:00
cgd
73f996ef33 note in a comment (XXX) that strchr() (what's it doing here, anyway?)
causes 'const' to be discarded.
1996-12-22 10:35:08 +00:00
cgd
145233fa6e Change the second and third args to struct vfsops' (*vfs_mount)() to
'const char *', and 'void *', respectively.  The second arg is taken directly
from user arguments, and is const there, so must be const in the prototypes
and functions.  The third arg is also taken directly from user arguments.
It doesn't have to be changed, but since it's cleaner to keep the type
the same as the user arg's type, and I'm already making the 'const char *'
change...
1996-12-22 10:31:41 +00:00
cgd
e7af2a8237 * catch up with system call argument type fixups/const poisoning.
* Fix arguments to various copyin()/copyout() invocations, to avoid
  gratuitous casts.
* Some KNF formatting fixes
1996-12-22 10:21:06 +00:00
cgd
b8cb96e094 make struct exec_package's ep_name field be a _const_ char *. It's set
directly from the syscall's program name argument, which is const, so must be
const itself to preserve const-ness.
1996-12-22 10:19:16 +00:00
cgd
c60b7587ab * catch up with system call argument type fixups/const poisoning.
* Fix arguments to various copyin()/copyout() invocations, to avoid
  gratuitous casts.
* Some KNF formatting fixes
* Change sockargs()'s second argument to be a const void *, to help
  with dealing with the syscall argument type fixups/const poisoning.
1996-12-22 10:16:54 +00:00
cgd
b1a10f6f23 change sockargs()'s second argument to be a const void *. It used
to be a caddr_t, but since it's being passed constant user argument pointers
it needs to be const, and since it's being passed a variety of argument
pointer types it makes sense to change it to void *.  That argument is
simply being handed to copyin().
1996-12-22 10:14:06 +00:00
cgd
90688fce27 Change the second and third args to struct vfsops' (*vfs_mount)() to
'const char *', and 'void *', respectively.  The second arg is taken directly
from user arguments, and is const there, so must be const in the prototypes
and functions.  The third arg is also taken directly from user arguments.
It doesn't have to be changed, but since it's cleaner to keep the type
the same as the user arg's type, and I'm already making the 'const char *'
change...
1996-12-22 10:10:12 +00:00
cgd
0396cad668 if __lint__ is defined, #define __builtin_saveregs() and
__builtin_classify_type() into harmless values, so that lint doesn't
get confused, think they're real functions, and that they're being
invoked in the wrong ways.
1996-12-22 08:57:23 +00:00
cgd
50cb6df652 for now, -Wcast-qual is just not practical in the kernel 1996-12-22 08:33:19 +00:00
cgd
7e31391b10 update for new syscalls.master 1996-12-22 08:05:47 +00:00
cgd
acad90d846 * (slight) general cleanup
* change in-kernel syscall prototypes to match user-land prototypes in
  the following ways:
    + add 'const' where appropriate.
    + make the following "safe" type changes where appropriate:
	caddr_t -> struct msghdr *
	caddr_t -> struct sockaddr *
	caddr_t -> void *
	char * -> void *
	int -> uid_t (safe because uid_t not used as index/count)
	int -> gid_t (safe because gid_t not used as index/count)
	u_int -> size_t
    + change "int" to "u_long" in flags arguments to chflags() and
      fchflags().  This is safe because the arguments are used as
      flag bits and there's nothing that would cause the top bit
      of the int to be set yet, and because the user-land definitions
      already specified u_long, so a u_long's worth of argument was
      already being passed in.
1996-12-22 08:04:06 +00:00
cgd
997ec138ad change ntp_gettime's struct ntptimeval *'s name to match kern_ntptime.c 1996-12-22 07:47:43 +00:00
cgd
c99936a735 * fix return types. previously, most things returned 'int.' which was
wrong for a bunch of functions:
	void:		sys_exit, sys_sync
	ssize_t:	sys_read, sys_write, sys_recvmsg, sys_sendmsg,
			sys_recvfrom, sys_readv, sys_writev, sys_sendto
	long:		sys_pathconf, sys_fpathconf
	void *:		sys_shmat

* Note that sys_open, sys_ioctl, and sys_fcntl are defined such that their
  last argument is optional.

These changes should not have any real effect, because right now this
information is not actually used for anything.
1996-12-22 07:00:57 +00:00
cgd
8fac03afc3 regen for syscalls.master and makesyscalls.sh changes 1996-12-22 06:48:18 +00:00
cgd
747448fc3e mark syscall() and __syscall() as INDIR syscalls 1996-12-22 06:46:50 +00:00
cgd
0e9ddb9039 * Don't actually output args structure definitions for INDIR syscalls (typo).
* Don't output prototypes for INDIR syscalls (since they always show up as
  sys_nosys() in the syscall table).
* Add "indir" to the comment for INDIR syscalls in the syscalls table, so
  it's more obvious why they call sys_nosys().
1996-12-22 06:45:14 +00:00
cgd
ba32ea9a68 update copyright date 1996-12-22 06:33:46 +00:00
cgd
286395d1b3 * remember (i.e. don't throw away) system call return types.
* Deal with multi-word system call return types (i.e. foo *, or
  struct foo *, or struct foo, etc.).
* Add a new class of system calls "INDIR" (for "indirect"), which
  is to be used to represent indirect syscalls like syscall() and
  __syscall() which are implemented in MD code and which don't want
  args structures defined.  (The old way of declaring this type of
  syscalls still works.)
* Allow system calls to be marked as having a variable number of
  arguments, by inserting "..." (no trailing comma) before the
  first hf the optional arguments in the syscall definition.  Because
  of the way syscall arguments are handled by MI code, _ALL_ syscall
  arguments must actually be included in the definition, i.e.
  "optional" arguments are either "are there or aren't," i.e. these
  aren't really varargs functions.  Therefore, for normal syscalls,
  there _must_ be arguments listed after the "...".  For INDIR
  syscalls, which really do have a variable number of arguments and
  which aren't handled via the normal mechanism, that requirement is
  not in force.
* output primitive (machine-parsable) syscall descriptions as comments
  in <sys/syscall.h>.  These can be used to easily build real function
  prototypes, or to build stub functions for use by lint.
1996-12-22 06:33:16 +00:00