jdolecek
49c105ffdb
add new macro BOOT_FLAG() (defined in <sys/boot_flag.h>) - this
...
maps standard boot flags to corresponding RB_* values
use BOOT_FLAG() in port's MD code as appropriate
as discussed on tech-kern, add new boot flags -v, -q for booting
verbosely or quietly, and corresponding AB_VERBOSE/AB_QUIET
boot flags; also add FreeBSD-compatible bootverbose macro and
NetBSD-specific bootquiet macro
for hpcmips, use new bootverbose instead of it's own hpcmips_verbose
Tested on i386, and to limited extend (compile of affected files) also for
mvme68k, hp300, luna68k, sun3.
2000-09-24 12:32:31 +00:00
simonb
cd2e1c1e91
Use ${COPY} instead of -c for ${INSTALL} commands.
2000-09-23 13:53:41 +00:00
thorpej
72a24b4eae
Add an align argument to uvm_map() and some callers of that
...
routine. Works similarly fto pmap_prefer(), but allows callers
to specify a minimum power-of-two alignment of the region.
How we ever got along without this for so long is beyond me.
2000-09-13 15:00:15 +00:00
chs
e3b6ec1d77
remove extra paren so this compiles again.
2000-09-08 19:26:17 +00:00
ragge
d85872dd78
By some reason setstatclockrate() suddenly get called occationally
...
(it hasn't been called since -94 :-) Remove the panic that happens when
it is called.
2000-09-08 11:41:59 +00:00
ragge
7b3463b7d7
Fix to correctly identify 3100/m30. From moj@stacken.kth.se.
2000-09-04 11:46:33 +00:00
jhawk
a022cf9d37
Use
...
${MAKE}
instead of
make
2000-08-30 23:51:46 +00:00
jdolecek
ad4cbd94a4
Switch to newvers_stand.sh-based boot block versioning. Add sensible 'version'
...
template, the boot block changes were picked from cvs annotates for Makefile
and boot.c.
Reviewed by Ragge.
2000-08-30 18:16:09 +00:00
matt
4027af140c
Make the pmap: enter on myself panic conditional under DIAGNOSTIC
2000-08-27 17:14:44 +00:00
ragge
fa53886b69
Wiring of a page were done at the wrong place, so pages in kernel space
...
never got the wired bit set. This caused panics if a swapped out process
was swapped in again and the kernel stack had not yet been unmapped.
While here, add a forgotten lock initializer.
2000-08-27 14:14:50 +00:00
matt
98e5e148fa
Since cpu_switch (aka Swtch) is now called at splsched() with sched_lock
...
locked, cpu_exit needs to do that too. Since in the lock debug case we
have to use a CALLS which wipes out R0-R6, change the convention for Swtch
so that the proc is passed in R6 and that R6 is clobbered. This is so
Swtch itself doesn't have to save/restore the proc pointer explicitly.
2000-08-27 00:21:46 +00:00
matt
5c62e0cab4
Fix the idle loop.
2000-08-26 15:13:23 +00:00
matt
7e0ad8b0c2
Update to reflect new processor switching conventions w/ LOCKDEBUG
...
and MULTIPROCESSOR
2000-08-26 03:38:46 +00:00
matt
fc1511e910
add a COMPAT_15 and remove TCP_COMPAT_42
2000-08-26 02:32:57 +00:00
matt
3fec8167d3
Reverse polarity on INSN_EMULATION to NO_INSN_EMULATION. Thus by default
...
all kernels will have instruction emulation.
2000-08-26 02:30:59 +00:00
matt
3351f4cf4b
Need <bsd.own.mk> for OBJECT_FMT.
2000-08-25 03:51:34 +00:00
thorpej
4db6fc7542
Make need_resched() take a "struct cpu_info *" argument. This
...
causes gives a primitive form of processor affinity. Its use in
roundrobin() still needs some work.
2000-08-25 01:04:06 +00:00
ragge
5796505d43
Fix after %b fixes.
2000-08-24 13:12:25 +00:00
thorpej
58e7a6954b
Add spllock(). See spl(9) for details.
2000-08-22 19:46:26 +00:00
thorpej
23a7f255d4
Make sure we provide splsched() as described in spl(9).
2000-08-21 02:06:31 +00:00
ragge
d9bb2fc1fa
Clear result registers before using them.
...
Be more informative if unimplemented addressing modes.
2000-08-14 11:16:52 +00:00
itojun
85dda25e94
move "options PULLDOWN_TEST" into sys/sys/mbuf.h (in #ifdef _KERNEL),
...
as it is no wthe default setting for everyone.
the reason we still use the name "PULLDOWN_TEST" while it is now default:
kame code sharing.
2000-08-13 01:31:15 +00:00
tv
ccb5bdbdd9
%b -> bitmask_snprintf()
2000-08-09 03:02:52 +00:00
tshiozak
51a53de0d5
Preparation for the future introduction of multibyte locale.
...
- MB_LEN_MAX is increased to 32.
- To ensure binary compatibility for old executables
under multibyte locale, versioned setlocale is added.
- __mb_len_cur definision is added in setlocale.c
and enable it in stdlib.h .
It is also important for multibyte locale stuffs,
but I just forgot.
2000-08-08 22:31:13 +00:00
ragge
d254a73539
Remove some unneccessary TBIA's. Keep track of wired pages.
...
Fix PR#8503 (refcount error).
2000-08-08 19:06:52 +00:00
ragge
a8b7c77ff8
Be sure that cache is enabled.
2000-08-08 17:54:46 +00:00
ragge
73bb1e9018
Write code to handle unimplemented instructions trapped via SCB vector 0x18.
...
This may happen on machines missing parts of the instruction set (like
some floating point formats).
Only one new instruction added; POLYD, so that the libm assembly files can
be used on architectures missing that instruction.
Also; include emulation code if compile-time option INSN_EMULATE is defined
instead of trying to match on which cputype it is.
N.B. POLYD isn't fully implemented, just enough to make libm happy.
2000-08-08 16:48:12 +00:00
ragge
cf62d07e82
Fix bug that trashed the SPT if any copy* function were used before
...
the first swtch().
2000-08-02 12:13:22 +00:00
mason
4a353b5330
Moving to a default of 64 PTYs.
2000-07-27 17:53:35 +00:00
matt
63466a9699
Un __P.
2000-07-26 21:50:48 +00:00
ragge
1d79c50d61
Oops, forgot a debug return.
2000-07-26 15:16:55 +00:00
ragge
97c8ae87cd
nmi files.
2000-07-26 12:37:14 +00:00
ragge
f9374fe05f
Add bi interrupt allocator. Should be somewhere else.
2000-07-26 11:55:55 +00:00
ragge
e50ddafc0b
Add badaddr() field.
2000-07-26 11:55:01 +00:00
ragge
550bb5fbb2
Make yeartonum/numtoyear visible.
2000-07-26 11:54:32 +00:00
ragge
c034e1d483
VAX-specific bi support changes.
2000-07-26 11:53:30 +00:00
ragge
9c3b3ed9c6
Discover the KA88 cpu.
2000-07-26 11:50:51 +00:00
ragge
3a73106b1b
KA88 console support.
2000-07-26 11:50:16 +00:00
ragge
0aeb2853f9
Support for a machine-specific badaddr handler.
2000-07-26 11:48:50 +00:00
ragge
b38b1995fa
Support for the KA88 CPU and the NMI backplane.
2000-07-26 11:47:15 +00:00
ragge
851da6dda0
Remove the use of global "mastercpu", the world is different now.
2000-07-26 11:44:25 +00:00
matt
a6f212052a
Enable emulation for everything but 7xx/8xxxx
2000-07-22 05:03:23 +00:00
ragge
96122c2884
Do mtpr(0, PR_TBIA), not mtpr(1, PR_TBIA). This has worked on all CPUs
...
except for KA88.
2000-07-19 21:08:06 +00:00
matt
b14e1fbbd4
Tpyo
2000-07-19 20:29:45 +00:00
matt
38c659cca5
Include ELF support by default.
2000-07-19 18:29:21 +00:00
matt
8e9ff5814e
More ELF changes (a.out still works).
2000-07-19 18:15:01 +00:00
matt
d66b7dcc2d
Switch to loadfile instead of exec. Now we can load a.out or ELF kernels.
2000-07-19 02:39:11 +00:00
matt
ad99ca5ed2
use size_t instead of u_int.
2000-07-19 01:02:52 +00:00
matt
ab5d2882a0
Move KA630 definitions from boot/boot/consio.c to here.
2000-07-19 01:01:58 +00:00
matt
15c6bb6dbd
ELFify (udiv -> __udiv, urem -> __rem)
2000-07-19 01:01:02 +00:00
matt
732a08c3c3
Put the assembly consio routines in a separate file so it can deal with
...
a.out/ELF differences.
2000-07-19 00:59:20 +00:00
matt
9b4c867626
Add support for loading a 2nd stage boot in either a.out or ELF.
...
Add support for loading a 2nd stage boot directly to it's desired address
if possible.
cleanup use of u_int/size_t.
2000-07-19 00:58:23 +00:00
matt
f96915efa5
Changes so that the kernel can be compiled under __ELF__.
2000-07-17 02:54:04 +00:00
matt
5d9fda1ecd
switch size_t, ptrdiff_t, & ssize_t to long int (signed or unsigned) for
...
__ELF__.
2000-07-17 02:52:24 +00:00
matt
cb551c438d
Reflect the new reality.
2000-07-13 03:18:22 +00:00
matt
841f05f1b2
Use <machine/asm.h>
2000-07-13 03:17:21 +00:00
matt
20b3698aee
Include libkern.h
2000-07-13 03:13:40 +00:00
matt
98ffc615b2
Use <machine/asm.h>. (e.g. prepare for ELF)
2000-07-13 03:13:05 +00:00
ragge
c71d0f69c6
Forgot a debug printf.
2000-07-10 10:45:21 +00:00
ragge
5ae755e1bf
Save registers for eventually later usage.
...
Use REI to clear pipes after code copy.
2000-07-10 10:42:27 +00:00
ragge
baec928850
NODESIZE -> BI_NODESIZE.
2000-07-10 10:40:38 +00:00
ragge
ed83213bf2
Add support for VAX 6000 + VAX 8000. Tweak console routines.
...
Create a fake RPB if either netbooted (on machine without RPB) or
loaded from console storage (without VMB intervention).
2000-07-10 10:38:23 +00:00
ragge
175e6ad859
Add code that allows the boot blocks to be loaded by VMB.EXE, and
...
also have optional MTPR printf available.
2000-07-10 09:55:36 +00:00
ragge
8658157274
Nexus vector number is 0x14-0x17, not 14-17! Fortunately, 3 wrong did
...
one right. Pointed out by Kenn Humborg (kenn@linux.ie ).
2000-07-10 09:14:32 +00:00
ragge
089ed65ef7
Add NMI and XMI outcommented, the same with VAX 6400 and VAX 8000.
2000-07-06 18:04:56 +00:00
ragge
0e29b678ce
Add xmi_mainbus.c file.
2000-07-06 17:43:38 +00:00
ragge
63852b4193
Some defines for the 6000/400 CPU.
2000-07-06 17:42:49 +00:00
ragge
443db45277
Framework for the mainbus-XMI block. Not completely finished.
2000-07-06 17:41:37 +00:00
ragge
b98189c9f5
CPU support for the 6000/400 CPU. No support for spinning up the
...
slave processor yet, though.
2000-07-06 17:40:00 +00:00
ragge
d5e70ee279
Add code to support loading of kernel directly via MOP.
...
This is only intended for development purposes, not production use.
2000-07-06 17:37:40 +00:00
ragge
6bf625c8c0
Recognise VAX 6000/400.
2000-07-06 17:36:22 +00:00
ragge
5c50116697
Console Communication Area (CCA) layout description.
...
Used on for example VAX 6000 machines.
2000-07-06 17:34:29 +00:00
matt
8fbc28d991
Revert WEAK_ALIAS back to ELF only.
...
Change ALTENTRY so there is no change of alignment or section
2000-07-03 23:05:32 +00:00
matt
4f1fa84a93
Rework ALTENTRY a bit.
2000-07-03 04:24:56 +00:00
matt
959b8d8a1e
Make cross-compile friendly
2000-07-03 04:24:12 +00:00
cgd
a5c13f9ad4
Kwality control:
...
* put #includes of opt headers and headers to get protos used by
net/netisr_dispatch.h in net/netisr.h (if !defined(_LOCORE)) (rather than
in netisr_dispatch.h itself, and potentially nowhere, respectively).
* require netisr.h to be included before netisr_dispatch.h.
* minor additional cleanup of both netisr.h and netisr_dispatch.h.
* clean up uses to remove now-unnecessary header file inclusions, and
local prototypes of the fns.
* convert netisr dispatch implementations which didn't use
netisr_dispatch.h (pc532) to use it.
2000-07-02 04:40:33 +00:00
matt
c9e87920af
GCC 2.96 wants the = constraint first. Older gcc(s) don't care.
2000-07-01 06:43:42 +00:00
matt
5ccb0f3e95
Add ELF support.
2000-07-01 06:42:54 +00:00
matt
c9e3b4a94f
a.out allow weak symbols too.
2000-07-01 06:42:06 +00:00
matt
e9b3d6fc85
GCC 2.96 wants the = constraint first. Also change to be a bit more
...
efficient. Instead of using indirect register access, change the
constraint to memory and use the value directly. This allow PC-rel
access among other things.
2000-07-01 06:41:06 +00:00
matt
54a2dbe16a
More GCC 2.96 changes.
2000-07-01 06:38:53 +00:00
itojun
d738f90fd7
raise MSIZE from 128 to 256.
...
- for sizeof(void *) == 8 arch, this is mandatory. MHLEN is too small
already (less than 80) and there are chances for unwanted packet loss due
to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
(even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
extension header)
portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
2000-06-30 17:55:11 +00:00
itojun
d76ae83df8
add PULLDOWN_TEST for all the platforms.
...
XXX should be moved to somewhere else when stabilized
2000-06-30 17:10:15 +00:00
matt
8231e1afca
fix typo
2000-06-30 03:35:32 +00:00
mrg
7e590c46fe
remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h>
2000-06-29 07:07:52 +00:00
matt
f77f36407d
Use __builtin_va_list when GCC >= 2.96
2000-06-28 21:13:35 +00:00
ragge
30a1a1bb3c
Add hdc controller and rd disks.
2000-06-27 18:50:47 +00:00
ragge
2be09b4a84
Do 3 retries on a failing sector before giving up.
...
Clear pending interrupts before starting a DMA transfer. If an interrupt
occurs while the HDC9224 is doing DMA, the transfered data will be
scrambled (without giving any errors, quite bad).
2000-06-27 18:46:17 +00:00
ragge
92f0a8f388
Make this file compile again.
2000-06-27 18:38:27 +00:00
mrg
d726c1dfc5
remove redundant vm includes.
2000-06-27 09:09:51 +00:00
matt
34def42c3d
Add ELF support.
2000-06-27 06:17:28 +00:00
kleink
bb2ed0f487
G/c _BSD_INTPTR_T_ and _BSD_UINTPTR_T_.
2000-06-27 05:53:22 +00:00
kleink
47b5c5e3b1
Resolve some formatting nits; add __intptr_t and __uintptr_t.
2000-06-27 04:58:51 +00:00
kleink
e695f72a2e
Add <machine/int_types.h>, which provides namespace-pure definitions
...
of exact-width integer types.
2000-06-26 15:42:16 +00:00
mrg
2f159a1bac
remove/move more mach vm header files:
...
<vm/pglist.h> -> <uvm/uvm_pglist.h>
<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
<vm/vm_object.h> -> nothing
<vm/vm_pager.h> -> into <uvm/uvm_pager.h>
also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb
889c658b5b
Change the kernel mmap interface so that the offset to map is an
...
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes. Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".
Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
ragge
7781fd263e
Detect "rd" as root device.
2000-06-25 18:27:24 +00:00
ragge
bd66c9dafc
Make the HDC9224 MFM device driver up-to-date; has been not-working
...
since NetBSD 1.2 (!) It also uses interrupts instead of polling now.
Also fix the DMA area locking between SCSI and MFM disks.
Still missing - floppy support.
2000-06-25 16:00:43 +00:00
kleink
133ea38323
Add a WEAK_ALIAS() macro.
2000-06-23 12:18:45 +00:00
fvdl
1ee7d22c0b
Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC.
2000-06-22 20:27:49 +00:00
matt
15511d1dcc
Move COFF_LDPGSZ to ibcs2_machdep.h. Fix nmagic loader to deal with
...
subpage mappings.
2000-06-21 05:45:15 +00:00
ragge
e79e5730cc
Variable "from" must be in first block read from disk, otherwise it will be
...
overwritten on non-VMB machines.
2000-06-19 20:05:17 +00:00
matt
1293f1b88b
Rename ncr[5380] device to si to more consistent with other ports.
...
Add VAX660 to cputype.h. Remove needs-flag from si & asc entries.
2000-06-19 04:22:14 +00:00
matt
955a631ce4
We use opt_cputype.h now.
2000-06-18 22:47:19 +00:00
matt
4e6d07206d
make printf happy.
2000-06-17 01:05:11 +00:00
matt
ff76991706
Add an installboot.
2000-06-17 01:01:06 +00:00
matt
94956e7869
Adjust this a bit so that the primary entry point is 0x200, not 0x0a.
2000-06-17 01:00:17 +00:00
matt
4343326b78
Add an installboot(8) for vax. This is needed so the VAX can do multiboot
...
CDroms.
2000-06-17 00:59:24 +00:00
matt
bd160eabec
these are obsolete now that vax uses sysinst.
2000-06-16 06:36:45 +00:00
matt
1e3f670589
This file now lives one level down in common.
2000-06-16 06:35:12 +00:00
matt
2aaf9eb5c7
now lives one level down in boot.
2000-06-16 06:33:22 +00:00
ragge
53cc7ebe6b
Standalone device driver for DEBNx (ni) ethernet controllers.
2000-06-15 19:53:23 +00:00
ragge
8767feaaff
Recognize "ni" as boot device.
2000-06-15 19:49:37 +00:00
veego
223d7455c7
Remove the obsolete config fragments for kernel crypto, because the IPsec
...
crypto code is now in the kernel source tree.
2000-06-14 22:02:13 +00:00
ragge
2df63a9cc1
Evil bug: sizeof(struct cpu_info) -> sizeof(struct ka820_softc).
2000-06-12 11:26:26 +00:00
ragge
8ea974e809
Put all cputype definitions in one file instead of separate files.
...
This was becoming unmaintainable.
2000-06-12 11:13:14 +00:00
matt
7f40194cbc
Make spl0 & spllowersoftclock return void.
2000-06-11 23:33:37 +00:00
matt
0dc4d9cf90
export bus.h
2000-06-11 23:32:55 +00:00
matt
e910b71c73
Comment out asc0 for vs4000/90. remove slip/ppp.
2000-06-11 23:32:10 +00:00
matt
3dfb96fa8f
Add local symlink so that machine & vax refer ../../include instead of the
...
system ones.
2000-06-11 23:30:35 +00:00
ragge
11b7c895aa
Remove some unneeded code.
2000-06-11 10:40:06 +00:00
ragge
fdc27c43a1
Fix booting from BI-based disks.
2000-06-11 10:39:26 +00:00
ragge
e7aefcd7ae
Allow printf's from slave CPUs by stealing the v_putc function.
...
Easier than expected because the printout lock is hold in the higher levels.
2000-06-11 07:50:11 +00:00
ragge
b826825917
Code to spin up other CPUs on a VAX 8200 system.
...
Haven't solved the printf() problem yet, though.
2000-06-10 14:59:38 +00:00
matt
50dff37fd9
fix botch by me.
2000-06-10 05:24:46 +00:00
matt
2dde4ce0c9
Slight stylistic changes. Add KAME checksum routine.
2000-06-07 19:31:33 +00:00
jhawk
c063b64a2b
Do not clear msgbufenabled in dumpsys(). Dump messages will now go to
...
the message buffer. This can be invaluable in debugging if the dump
fails (assuming a persistant message buffer)
2000-06-05 23:44:55 +00:00
nisimura
4371d91433
Have MI ncr53c9x_attach() the 2nd and 3rd arguments for scsipi_adater
...
and scsipi_device respectively, with size reduction of ncr53c9x_softc.
Specifying NULL instructs the driver to use default adapter and default
device codes. Every target port has ncr53c9x_attach(sc, NULL, NULL) anyway.
2000-06-05 07:59:50 +00:00
matt
661884208a
add support for counting soft interrupts
2000-06-05 03:45:23 +00:00
matt
2f85fe7adb
Adjust to new evcnt stuff.
2000-06-05 00:09:17 +00:00
matt
ac621687a3
Add coff_machdep.h (now need due to the recent exec_coff changes).
2000-06-04 21:06:18 +00:00
ragge
1320a4106c
Adopt to latest mba/hp changes.
2000-06-04 20:04:21 +00:00
ragge
79e7f9966d
Adapt to mba changes. Fix assembler buf (EDIV uses 64-bit arg, not 32).
2000-06-04 19:58:17 +00:00
matt
a8a863d4ea
more cleanup. use __builtin_frame_address(0) instead of our funky
...
FRAMEOFFSET macro. define an interrupt call frame and use that directly
instead of some magic offsets. Make boot autoconf.o use the current
reality.
2000-06-04 19:30:14 +00:00
matt
e2293f4ad0
Add a comment
2000-06-04 19:03:27 +00:00
ragge
c46119030a
Forward declaration of `struct proc'.
2000-06-04 18:27:39 +00:00
matt
f08ff1ad2d
use PR_IPL instead of 0x12.
...
align entries of various symbols.
2000-06-04 18:13:06 +00:00
ragge
db7db1456e
Remove home-grown interrupt vector handler.
...
Bus_space'ify; needed to get RH11 working. Still much more to do, though.
2000-06-04 18:04:38 +00:00
ragge
d7a5a63645
Changes to sbi_attach_args. (and some cleanup)
2000-06-04 18:02:35 +00:00
ragge
1838716f7b
Remove some unneeded code. (and cleanup).
2000-06-04 18:00:48 +00:00
ragge
82e0b5f7db
Changes of sbi_attach_args. (and cleanup)
2000-06-04 17:59:50 +00:00
ragge
1e19df4bfd
Clean up the sbi_attach_args struct and put in tag/handle.
...
Move a nice macro to scb.h.
2000-06-04 17:58:19 +00:00
matt
0bd304e528
More event counter stuff. Plus a little cruft cleanup while doing it.
2000-06-04 06:16:53 +00:00
matt
713121e8c4
Nuke it. It's in dev/qbus now...
2000-06-04 04:48:34 +00:00
matt
078c7563c2
newer version exists in dev/qbus. nuke this one.
2000-06-04 04:19:57 +00:00
matt
061896a992
now in dev/qbus so nuke this version.
2000-06-04 04:16:58 +00:00
matt
7c24069048
Add extra argument to scb_vecalloc (a struct evcnt *)
...
Move ivec_dsp from trap.h to scb.h
Add interrupt counting to asc, le, ze, ncr, dz interrupts.
add common support for counting interrupts to cnm_idisp so
it can be done very efficiently.
2000-06-04 02:19:24 +00:00
matt
baaa1154d5
no need to raise ipl since the definition of softintr_schedule is that
...
it's from at or above softipl.
2000-06-02 22:14:10 +00:00
matt
34a96c661b
replace spl4 with splconsmedia
2000-06-02 21:51:46 +00:00
matt
d278b1da45
Add IPL_* codes.
...
Add other codes for struct references.
Add softintr framework for IPL_SOFTNET and IPL_SOFTSERIAL.
General cleanup of .s files replacing hardcoded structure offsets with
symbolic ones.
2000-06-02 21:51:15 +00:00