Commit Graph

1261 Commits

Author SHA1 Message Date
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
matt 83a385c230 use splsoftddb() instead of hardcoding the ipl. 2000-06-02 21:49:06 +00:00
matt b8cccfafd8 Move spl macros from <machine/param.h> to <machine/intr.h>
Fix botch on my part and make the IPL_* match reality on VAX.
Redefine spl macro using the symbolic IPL_ instead of being hardcoded.
Move schedsoftnet, schedsoftclock from <machine/cpu.h> to <machine/intr.h>
Add a _setsirr macro for schedsoft*.
Add softintr function and framework.
2000-06-02 21:47:02 +00:00