Commit Graph

8138 Commits

Author SHA1 Message Date
pk
5ce90889f0 Remove unneeded header file. 1996-06-12 23:40:29 +00:00
cgd
a59ba05045 don't pass "argc," "argv," and "envp" from boot blocks to kernel;
they're unnecessary and there's no reason to use them.  Have the
kernel get necessary values from the PROM directly.
1996-06-12 22:11:28 +00:00
cgd
3b3f71fb25 don't pass the firmware's console environment variable to the various console
initialization functions any more.  None of them used it, and they can
get the same data more easily via the RPB.
1996-06-12 22:06:40 +00:00
cgd
f6d4b1367d null-terminate strings returned by prom_getenv() 1996-06-12 21:59:52 +00:00
mark
31c4f7d574 Only read beyond the first byte of the podule header if we know that
an extended header is present i.e. don't assume an extended header as
however unlikely there could be a podule that doesn't have one.
Calculate an absolute address for the podule's interrupt mask rather
than leaving it relative to the base address of the podule.
If the interrupt status pointers are not present or are zero then
used the default bits as specified in the podule specification to
determine if the podule is interrupting.
1996-06-12 21:09:55 +00:00
mark
857439698b Claim the interrupt when leaving the interrupt handler as there can
only ever be a owner of the netslot interrupt.
Don't declare ebintr() as static.
1996-06-12 21:01:56 +00:00
mark
27ab616466 Don't claim the podule interrupts but pass them on in case of
chained podule interrupt handlers.
Fill out the ih_maskaddr and ih_maskbits fields in the interrupt handler
structure so that interrupt dispatcher knows where to look to determine
if the handler should be called.
General code tidy up and source code formatting.
1996-06-12 20:59:10 +00:00
mark
4dd0dabfca Don't claim the podule interrupts but pass them on in case of
chained podule interrupt handlers.
Fill out the ih_maskaddr and ih_maskbits fields in the interrupt handler
structure so that interrupt dispatcher knows where to look to determine
if the handler should be called.
1996-06-12 20:46:58 +00:00
mark
e5aad86168 Allow the mouse interrupt to be specified in the config file. Fall
back on timer 1 interrupts if none is specified.
Only set up timer 1 is the driver is using timer 1 interrupts.
Don't claim the interrupt but allow them to be passed on to other
handlers.
1996-06-12 20:30:59 +00:00
mark
7d688793a8 Claim the interrupt if it has been dealt with otherwise pass it on. 1996-06-12 20:28:29 +00:00
mark
08ec43427f Added some sanity checks to irq_claim().
Fixed the handling of IPL_NONE.
Debugged support for interrupt chaining.
Fill out the intrnames array with the name of the interrupt handler
currently at the head of the chain.
Guarded several sanity checks with #ifdef DIAGNOSTIC.
1996-06-12 20:23:58 +00:00
is
51e832dc49 Fix a few off-by-one errors in bitnumbers used by print_fcode.
ptestX fc,<ea>,M used to be printed with the wrong semantics of the fc
field, and could panic the kernel if fc was interpreted as a register number.
1996-06-12 20:22:42 +00:00
mark
459cefbe67 Added support for the RC7500 interrupt registers
Added interrupt chaining.
Removed some dead debugging code.
Guarded several sanity checks with #ifdef DIAGNOSTIC
Make sure interrupts are disable while updating the IOMD interrupt
masks.
1996-06-12 20:19:35 +00:00
mark
1fd9b6f37c Removed some dead code that could never get executed (followed a panic).
Updated several panic messages to indicate what part of the fault code
they came from.
1996-06-12 20:15:28 +00:00
mark
977f90bd3b Removed copyin()/copyout() stub code.
Removed several old debugging functions that are no longer needed.
Block interrupts while updating the soft interrupt masks.
Fixed softclock interrupts and added IRQ_SOFTPLIP to the SPL_SOFT mask.
1996-06-12 20:12:04 +00:00
mark
47c523fff0 Spilt the copyinout() function into two separate functions copyin()
and copyout() so that the address space checks are done here rather than
in a bit of stub code.
1996-06-12 20:06:00 +00:00
mark
7b05ce2841 Updated to match changes in the irq handler structure.
Define symbols for the address space limits that copyin() and copyout()
compare against.
1996-06-12 20:02:42 +00:00
mark
13ff05d513 Don't claim the interrupts in hardclock() and statclock() but allow
them to be passed on to other interrupt handlers attached to the
timer interrupts.
1996-06-12 20:00:21 +00:00
mark
b8dfbd8fe6 Don't use signed compares when determining the copy direction. 1996-06-12 19:58:43 +00:00
mark
120210258e Added a new machine command intrchain to dump the interupt handler
chains.
1996-06-12 19:57:06 +00:00
mark
8f541bdd1d Added a couple of comments.
Defined VM_MAXKERN_ADDRESS as the maximum address for the kernel address
argument to copyin() and copyout().
1996-06-12 19:55:04 +00:00
mark
78d05630aa Define insl() and outsl() as macros that currently just panic for the
moment.
1996-06-12 19:50:14 +00:00
mark
167d543662 Define several new macros for testing the processor mode. 1996-06-12 19:48:48 +00:00
mark
544631c0be Guard structures and prototypes with #ifndef _LOCORE
Rename the currently unused irq handler structure fields for podule
interrupts so they make more sense.
Define IPL_NONE as a positive value instead of -1 and increase the
number of IPL levels.
1996-06-12 19:47:11 +00:00
mark
4d280731dd Updated comments.
Print the irq masks for IPL_NONE.
1996-06-12 19:42:23 +00:00
mark
1f81e394d6 Only check the proc pointer in userret() if DIAGNOSTIC is defined. 1996-06-12 19:40:48 +00:00
mark
d4a21812c0 Updated the arm_fpe_boot() prototype. 1996-06-12 19:37:37 +00:00
mark
bbf3f35a4c Pass the cpu structure to the FPE boot function so that the FPU class
and type can be updated if a FPA is detected.
1996-06-12 19:37:03 +00:00
mark
d9d6f7f246 RCS Id police. 1996-06-12 19:24:19 +00:00
mark
3ed835cae8 Only attach 1 VSYNC interrupt handler instead of a interrupt handler per
virtual console.
1996-06-12 19:12:57 +00:00
pk
2266b8dd57 Use the setting of the ESPCFG2_FE bit rather than revision number to decide
on the ESP chip's maximum transfer count.
1996-06-12 19:12:19 +00:00
cgd
5006cfa9ac remove old, unused, framework for boot device detection. It's going
to be replaced by something new and working.
1996-06-12 19:00:17 +00:00
pk
d16dcebba7 Add signature for the Fujitsu MB86904 processor. 1996-06-12 18:39:15 +00:00
pk
f87e51fb6b Turn on RB_ASKNAME if a `swap generic' kernel was not able to determine
the boot device. Also, call boot device hooks for all types of kernel
configurations.

Print "mainbus" name on sun4m machines.
1996-06-12 15:24:05 +00:00
pk
4dd7cb4f5c Use ic_*' cacheinfo fields, and in the split-I&D case, derive c_linesize[l2]'
from from the corresponding `ic_*' and `dc_*' values. This is not perfect,
but it makes SS4s and SS5s run until we have proper per-cpu cache handling.
1996-06-12 14:57:03 +00:00
pk
52d6871979 Use ic_*' cacheinfo fields, and in the split-I&D case, derive c_linesize[l2]'
from from the corresponding `ic_*' and `dc_*' values. This is not perfect,
but it makes SS4s and SS5s run until we have proper per-cpu cache handling.

Use the `cache-physical?' property to determine the value of `vactype'
on sun4m's. If absent, set vactype to VAC_WRITETHROUGH (XXX) else VAC_NONE.

Print simpler sun4m CPU identifier on attach.
1996-06-12 14:56:09 +00:00
pk
6281105c8f Introduce separate ic_* fields for instruction caches. 1996-06-12 14:47:45 +00:00
pk
6a4a26da0c Correct test for dmachild' which failed on esp at obio*' configs (PR#2541). 1996-06-12 12:46:21 +00:00
oki
add137e8e1 fixed sometimes hang up bug at boot time. 1996-06-12 12:09:30 +00:00
cgd
eef7b263f1 remove GENERIC_NFS, because:
(1) right now GENERIC can boot via NFS, and
	(2) in the long run, GENERIC should autodetect network booting
	    and pick the correct root device.
Because of (1), GENERIC_NFS is no longer _needed_ in the short term.
Because of (2), GENERIC_NFS is not _wanted_ in the long term.
1996-06-12 02:00:10 +00:00
cgd
811bbb5c72 rework setroot() and friends, largely by cloning from the sparc code
and whacking a bit here and there where appropriate.  Does not yet do
automatic root device detection, but that's much easier to add now.
RB_ASKNAME now supports specification of network devices, for diskless
booting.  Also, RB_ASKNAME is now supported on _all_ kernels.
1996-06-12 01:57:17 +00:00
cgd
ba53a90965 add example 'config' specs for 'root on sd0...' and 'root nfs...' 1996-06-12 01:44:31 +00:00
cgd
698dd157cf remove "options GENERIC" since it's not needed with new setroot() code for
GENERIC kernels, and since it no longer has any other special meaning.
1996-06-12 01:42:46 +00:00
cgd
9d614a5f3f GENERIC no longer has any special meaning (don't set RB_ASKNAME #ifdef GENERIC) 1996-06-12 01:38:09 +00:00
cgd
5109def361 change the meanings of some boot flags:
a (was ~RB_SINGLE, redundant with 'A') -> askname
n (was RB_ASKNAME) -> no meaning
d (was RB_DFLTROOT) -> no meaning (unnecessary with new setroot() code)
m (was RB_MINIROOT) -> no meaning (miniroots currently unsupported;
    #ifdef'd out)
N (was ~RB_ASKNAME) -> no meaning (unnecessary; just don't specify RB_ASKNAME!)
1996-06-12 01:36:01 +00:00
cgd
4a4d4dfc26 copy from sparc port, trim bogus swdevt entries 1996-06-12 01:26:37 +00:00
thorpej
87a6b74c89 Sync up with my local tree:
- add union filesystem
	- add DEFTA device
1996-06-11 23:24:02 +00:00
pk
94cd1644ee Avoid the "features enable" bit on ESP100A's; apperently this is a source
of trouble on many machines (from Krister Walfridsson; PR#2537).
1996-06-11 22:26:16 +00:00
pk
49aec33417 pmap_changeprot: truncate VA argument to page-boundary. Needed in case we
call cache_page_flush().
1996-06-11 21:54:44 +00:00
cgd
f4e69ce47d fix pasto in last commit. 1996-06-11 21:28:31 +00:00
cgd
2d9140fb20 add definitions and code to support use of multiple I/O and _dense_
memory regions.
1996-06-11 21:25:25 +00:00
cgd
bbdf2df9b0 since bus_mem_subregion() can return failure, don't even bother to try
to handle the case where subregion offset isn't a multiple of 8.
1996-06-11 21:20:08 +00:00
cgd
d714189d53 implement bus_mem_subregion() and bus_io_subregion(). 1996-06-11 21:16:21 +00:00
scottr
26f0e61730 Update for current reality 1996-06-11 03:39:20 +00:00
scottr
c72d612674 Deal with interrupt flags more carefully, and use the correct offset
for PB500-series SCSI I/O.  While I'm here, update the copyright.
1996-06-11 03:20:23 +00:00
scottr
c74cec9954 Add missing cpu model info for Powerbook 500, and correct the ROM
vectors for the same.
1996-06-11 03:11:06 +00:00
scottr
3bac925c32 Fix bounds check for fpu description array. 1996-06-11 02:56:22 +00:00
scottr
5057bf9c78 Add Powerbook 500 series machine ID 1996-06-11 02:52:54 +00:00
is
5af73f7ab0 Activate M68040 cache flushing code also in 68060 only kernels. 1996-06-10 16:11:20 +00:00
cgd
352d972c94 locc() is unused. Remove it from the machine-independent kernel interface. 1996-06-10 15:33:33 +00:00
thorpej
156eaa5f84 Add "needs-count" to the `ac' driver so an ac.h file gets generated. 1996-06-10 06:48:44 +00:00
thorpej
a323ce7b09 Add the "Python 28849" to the list of `supported' tape drives as a PYTHON
type.
1996-06-10 06:39:31 +00:00
cgd
9aa03f4dd9 update for changed definitions in ciareg.h 1996-06-10 00:04:53 +00:00
cgd
2465bd00e5 store HAE_MEM and HAE_IO register contents in the cia configuration
structure, and add prototypes for the bus_{mem,io}_init() functions.
1996-06-10 00:03:59 +00:00
cgd
55cbf94f22 read value of HAE_MEM and HAE_IO, so that the bus_* functions can
do window recognition correctly.
1996-06-10 00:02:31 +00:00
cgd
9198817ce3 update for new memory window handling in pcs_bus_mem_common.c. 1996-06-10 00:01:09 +00:00
cgd
c247b24843 add definitions used to figure out how PCI/EISA/ISA memory regions are
mapped.
1996-06-09 23:59:38 +00:00
cgd
df2ba1e245 add support for mapping multiple memory windows. This is necessary
for mapping ISA/EISA 'hole' memory on the AlphaStation 600.
1996-06-09 23:57:45 +00:00
cgd
8df74fa62a wrap __STRING() in a #define so that its argument, which must be
expanded by the preprocessor, will be.  Problem pointed out by Matt
Thomas.
1996-06-09 23:49:24 +00:00
veego
15088ebf44 Make this really work on the Domino. Patch from Klaus Burkert 1996-06-09 13:21:10 +00:00
briggs
9697ef6407 Add machine/viareg for prototype of via_set_modem(). 1996-06-09 04:27:59 +00:00
briggs
2b220a1581 Implement suggestion from is -- handle _fpfault differently for 040 and better. 1996-06-09 01:53:42 +00:00
is
623536ac6e Make this really really compile. 1996-06-08 15:42:00 +00:00
is
f39d801ab0 Really compile and install keymap loader and binary keymaps. 1996-06-08 15:28:41 +00:00
thorpej
a01d6597b6 Squish a couple of rogue $Id's.. 1996-06-07 21:48:33 +00:00
briggs
b6759b3498 Fix typo. 1996-06-07 13:04:46 +00:00
briggs
04ad749207 Disable ROM vectors if booting from either serial console. PR#2525. 1996-06-07 10:48:26 +00:00
briggs
00c097a027 Changes from Bill Studenmund to support external clocks on the modem port. 1996-06-07 10:41:30 +00:00
briggs
4498ce3c90 Add constants for booter interface. 1996-06-07 10:27:19 +00:00
briggs
0d0487a98b Wait longer (2.5 sec) in wait_req_true/false. Some targets take a long time. 1996-06-07 02:44:15 +00:00
briggs
5c13e7184b Fix a typo. 1996-06-07 01:45:43 +00:00
briggs
79309c78d8 Patches from Bill Studenmund to get serial default settings from the booter. 1996-06-07 00:15:24 +00:00
thorpej
bcab59cd3c Remove the old-style disk instrumentation support. Nothing uses it
anymore.
1996-06-06 16:17:41 +00:00
thorpej
e9e80a6043 Add calls to tty_attach() and tty_detach() where appropriate. 1996-06-06 15:36:06 +00:00
mhitch
c16e87c7b7 Add tty_attach() calls for pstat -t. Closes PR #2519 1996-06-06 04:47:31 +00:00
jonathan
e0638e0c44 Include <mips/types.h> to bring u_int32_t and u_int16_t in scope for
the argument and return type of  {n,h}to{h,n}{l,s}.
1996-06-05 23:44:31 +00:00
cgd
ebe3a58f01 pull down changes from NetBSD 1.2 release branch:
>Update for present reality (function names), clean up a bit (printfs,
>"panic: foo XXX"), and fix a couple of printf format specified bugs
>(which were normally #if 0'd out).  Inspired by Multia/UDB support
>changes sent by Matt Thomas.
and:
>changes from Matt Thomas so that the Multia/UDB can attach its
>'com' interrupts, cleaned up some.  Basically: if sharing type of
>new interrupt is different than what the hardware is currently set up
>for (e.g. requesting edge-triggered and the hardware is set up by
>the PROM for level triggered) and there are no interrupt handlers on
>that line already, warn about it and use the hardware type that the
>line was already set for (to avoid making the console blow up on
>reboot).  If same circumstances but there is already a handler, panic
>as before.
1996-06-05 22:52:34 +00:00
christos
207d85a1cc Handle T_RESET, otherwise DIAGNOSTIC kernels panic. 1996-06-05 19:30:43 +00:00
oki
ce510f6b02 add tty_attach(tp); 1996-06-05 17:12:52 +00:00
oki
76fc9e1d30 fixed compiler error at kvtop(). 1996-06-05 16:21:44 +00:00
is
87e300e2dc Not needed anymore due to newer boot loader 1996-06-05 16:10:45 +00:00
cgd
37ec86f0cc avoid lots of upper-case letters in interrupt names. prettier that way. 1996-06-05 03:38:02 +00:00
cgd
56db5baced print slot number as decimal, not hex 1996-06-05 01:32:00 +00:00
cgd
666c7f6fd4 interrupt counters for TurboChannel systems. 1996-06-05 00:30:48 +00:00
cgd
78937ab274 change > to >= in #endif comment, too. 1996-06-04 20:01:58 +00:00
cgd
6110ea9366 #ifdef tty_attach() with PCVT_NETBSD >= 120 (rather than just >),
since tty_attach() is now in the 1.2 release.
1996-06-04 19:53:28 +00:00
cgd
abc294c9d9 don't tty_attach() the mouse emulator tty. 1996-06-04 19:47:51 +00:00
cgd
2d03e599c7 don't depend on being able to read the IMR. Apparently, it doesn't
work (as documented in the DEC 3000/[3-9]00 System Programmer's Manual)
in some of the older 3000/500 systems.
1996-06-04 19:02:16 +00:00
briggs
6959d64eeb Some more constants from Bob Nestor--MacTV ADB works, now. 1996-06-04 03:04:49 +00:00
pk
3dfb6ab8c0 Code the residual computation a bit differently. 1996-06-03 23:48:41 +00:00