Commit Graph

2000 Commits

Author SHA1 Message Date
aymeric c54298e658 - ANSIfy
- remove some trailing spaces/tabs
- minor style nits
2002-01-26 13:18:57 +00:00
aymeric 181d083e76 s/BOOT_ELF/BOOT_ELF32/ inside a comment 2002-01-26 13:17:58 +00:00
aymeric c520d6cae2 - ANSIfy
- remove some trailing spaces/tabs
- minor style nits
2002-01-26 13:16:06 +00:00
is 5e5bb729dc First draft of a Toccata driver. 2002-01-21 22:13:25 +00:00
jdolecek ff8305bbac Switch to MI dev/md_root.c for archs which don't have any special
memory disk hooks (i.e. everything except atari).
2002-01-21 21:56:57 +00:00
oster 39b858e3bf Add new RF_* options for RAIDframe bits that are no longer built by default.
While we're here, enable RAIDframe (and RAID_AUTOCONFIG) by default for
architectures that I'm comfortable can deal with it being on by default.

Also: bump the number of 'raid' devices from 4 to 8, since 4 seems to
be insufficient in practise.
2002-01-19 18:45:06 +00:00
jandberg 2a9f95f2ad Regenerated AMIGA, INSTALL and DRACO from GENERIC. 2002-01-14 18:56:35 +00:00
jandberg 389100f5d8 Amiga wsdisplay updates.
conf/GENERIC:
conf/files.amiga:
 - Bring in wsfont definitions.

dev/grfabs_reg.h:
 - Add macros for decomposing palette entries.

dev/amidisplaycc.c:
 - Support for fonts, either wsfonts compiled into kernel
   or runtime-loadable by ioctl. Font width still limited to 8,
   height may vary.
 - Limited support for mapped displays. No way to adjust display
   mode. Palette setting works.
 - Prettier default palette (white on black).
 - Probes correctly as WSDISPLAY_TYPE_AMIGACC.
 - Support for screen blanking.
2002-01-13 23:24:22 +00:00
jandberg 75e5cd6d4f wskbd updates.
kbd.c: Now identifies itself as WSKBD_TYPE_AMIGA.
 wskbdmap_amiga.c: Updated de/dk/sv/no keymaps.
2002-01-13 22:47:43 +00:00
aymeric 6f9753bcdd Revert last commit in order to do the right thing.
(i.e. use jmp xx:l instead of exporting xx)

No functional change.
2002-01-12 11:45:26 +00:00
aymeric 6b2ea61c0c When we jump to the absolute address of the next instruction, we have to
export the label we use for that purpose, otherwise, that smart gas will
change it to a relative jump, which does basically nothing.

I can finally boot NetBSD/amiga ELF. (Yippee!)

While there, test if we are a 68851 before we invalidate the TLB,
instead of doing it between the TLB flush and the data cache flush.
2002-01-03 01:13:35 +00:00
chs 9451559ef4 pmap_page_protect(VM_PROT_NONE) must remove all mappings in the PV list,
even if they are wired.  we need to be able to remove all mappings to
pages that are being freed due to (eg.) file truncation.
2002-01-02 00:51:33 +00:00
martin b506d6e135 Add PPPoE to all generic kernels that should be able to use it.
XXX TODO: do this for INSTALL kernels too, add sysinst support and make the
XXX needed binaries available on the ramdisk root fs.
2001-12-28 12:21:52 +00:00
aymeric 186cb1ec17 include m68k a.out compatibility module so we can use
options COMPAT_AOUT_M68K
2001-12-23 12:01:12 +00:00
mhitch 8923d6ba13 The ELF counterpart to aout2bb: convert a relocatable ELF object file
to the simple relocatable image used for the amiga bootblock loader.
2001-12-19 06:51:05 +00:00
mhitch 9d4755dd24 Adjust for a.out/ELF conversion program. 2001-12-17 05:49:41 +00:00
mhitch 79193d3408 Changes for building two stage loader, and add support for ELF object
format.
2001-12-17 05:48:09 +00:00
mhitch 4038ed8a29 Select relocatable to bootblock conversion program based on which object
format is being used.
2001-12-17 05:46:52 +00:00
mhitch 5a3ab70cb5 Add some additional conversions for ELF assembler output. 2001-12-17 05:45:08 +00:00
mhitch 29ee3faf63 Change fixed-size buffers to variable, with an option to set the size for
the second stage loader.

Show the number of bytes remaining in the boot file image.
2001-12-17 05:43:40 +00:00
mhitch e1d8eca622 Update amiga booter to two-stage booter.
First stage is bootxx_ffs (for ffs boot partitions) or bootxx_fd (for bootable
floppy disk).  These locate, load, and execute the second stage loader boot.amiga.
The console screen is created and passed to the second stage loader.

The second stage loader uses loadfile() to load the kernel image, which can
be either a.out or ELF format, and can also be compressed.  It will load a
kernel file from ffs file systems or the ustarfs used on floppy disks.
2001-12-17 05:40:40 +00:00
tsutsui 20d126a5b4 Fix comments for ref-count of PT pages. 2001-12-16 03:53:21 +00:00
gmcgarry bdd225baa1 Add a blurb to the top of all GENERIC files. This serves three purposes:
- to clarify some terminology
- to clarify the intention of the GENERIC file
- to cross-reference some useful man pages
2001-12-14 05:34:45 +00:00
chs 2dfd15933e change the reference-counting of PT pages to start from zero instead of
one, so that we don't mess up the global count of wired pages by having
the page's wire_count be non-zero when we free the page.
pointed out by Michael Hitch.
2001-12-13 04:39:50 +00:00
tv 8e6f7afb5b MKfoo=no -> NOfoo 2001-12-12 01:48:43 +00:00
mhitch 4c3d013b14 Add a left shift routine needed by changes in lib/libsa/ufs.c. 2001-12-10 05:31:39 +00:00
atatat b45c51b1fc Roll the rest of the ports over to the new MI kernel build machinery.
Any problems reported by testers have been fixed, and massive
cross-compiling of kernels has shown that any problems that remain
with actually building kernels are not related to this.
2001-12-09 05:00:40 +00:00
aymeric e3ed0e40da do not include opt_lev6_defer.h when compiling for powerpc 2001-12-01 13:44:22 +00:00
kleink e5341ee40f No point in installing svr4_machdep.h. 2001-11-28 13:14:12 +00:00
lukem ecb81c3f6d - convert usage of "defopt" to "defflag" where the relevant option does
not support a value (e.g., it's to be used as "options FOO" instead of
  "options FOO=xxx"). options that take a value were converted to
  defparam recently.
- minor whitespace & formatting cleanups
2001-11-28 10:21:10 +00:00
kleink a83174b856 Update to reflect that unlike in m68k a.out environments, where the .align
directive is given a log2 argument, .align is given a linear argument in
m68k ELF environments.
2001-11-28 09:49:51 +00:00
isaki 26b511b905 fix typo s/68551/68851/ in a comment. 2001-11-24 06:53:16 +00:00
lukem 0fa231134c - replace "defopt" with "defparam" for options which must take a value,
as config(8) will warn for value-less defparam options
- minor whitespace/formatting cleanup
- consolidate opt_tcp_recvspace.h and opt_tcp_sendspace.h into opt_tcp_space.h
2001-11-20 14:34:18 +00:00
lukem 03aef4723c cleanup:
options SPACE TAB
	makeoptions TAB
	psuedo-device TAB
	remove trailing whitespace
	replace multiple spaces -> tabs
	options "FOO" -> options FOO
	options "FOO=bar" -> options FOO=bar
	options "FOO=\"bar\"" -> options FOO="\"bar\""
2001-11-20 12:56:17 +00:00
chs 621a9ec9ea allocate and free page table pages explicitly instead of abusing
uvm_fault_wire().  this allows us to make pt_map non-pageable,
but we need to be careful in pmap_remove() not to attempt to
reference PTEs after the PTP has been freed.
2001-11-19 06:40:11 +00:00
soren 662f877587 MAXSLP is defined to be a machine-independent scheduling parameter,
so move it into sys/param.h.
2001-11-15 18:06:11 +00:00
aymeric 77dd4deaa6 introduce an interrupt_depth variable which counts how nested we are into
interrupts.
This allows hardclock() to account for the time spent in interrrupts, and
as a side-effect, top(1), systat(1) and others will no more report 0% of
interrupt activity.

mvme68k does that already.
2001-11-07 23:25:03 +00:00
aymeric a2cea87aee defopt SERCONSOLE 2001-11-05 21:29:43 +00:00
thorpej e727e3f180 Split elf32 vs. elf64 handling in loadfile(), including support for
each separately and explicitly.  BOOT_ELF is now BOOT_ELF32 and
BOOT_ELF64, and ELFSIZE should no longer be defined in loadfile_machdep.h.
2001-10-31 17:20:45 +00:00
jmc 6d536163de Change defaults for kernel compiles. Default all to USETOOLS?=no and have
the etc Makefile override that by putting USETOOLS into $.MAKEOVERRIDES
This way the default for kernel compiles is still to use the installed
toolchain instead of depending on $TOOLDIR. $TOOLDIR can be used by
simply adding USETOOLS=yes to the command line as usual.

Adjust each ports template to set the default no setting and also pull in
bsd.own.mk if they weren't already to ensure they'll build correctly
with the new toolchain setup.
2001-10-26 06:45:33 +00:00
thorpej ba217c4196 Set MACHINE_ARCH explicitly in Makefiles for which it is constant.
Also, since config(8) now explcitly sets MACHINE, there is no need
to do it here in the Makefile.
2001-10-23 19:26:41 +00:00
is 9bf40ca410 Make the Cyberstorm PPC/ Cyberstorm Mk. 3 driver drive the LED.
Actually, this is added to the siop2_script; should we ever support another
siopng board that does connect something else to GPREG bit 4, we'll have
to move this to C code and make it optional.
OTOH, by then we'll have switched to the MI driver by then.
2001-10-08 21:18:58 +00:00
augustss 1339e88a86 Add a new optional method, dev_ioctl, to the audio hardware driver interface.
It is called when an unrecognized ioctl() is performed on a device,
thus allowing ioctl()s that frob the hardware driver (like loading
microcode).
2001-10-03 00:04:47 +00:00
chs 15982c7311 fix typo in pmap_kremove() which was invalidating the wrong TLB entry.
from Hiroki Tanikawa in PR 14099.
2001-09-29 22:00:29 +00:00
is 9a02c51726 Security check - don't paste new command line into bootblock that
don't look like the new style bootblock (with enough space in it).
2001-09-25 19:07:00 +00:00
is e9023155ad Replace skript by a C program, that knows how to manipulate the default
command line in the bootblock and to recompute the bootblock checksum.
2001-09-25 18:47:55 +00:00
is 36fb85f059 Put default command line into a fixed location with a known size.
This is intended to allow patching of the command line without a
compiler.
2001-09-24 20:27:08 +00:00
thorpej e38a2e561a machine/fbio.h -> dev/sun/fbio.h 2001-09-19 18:10:32 +00:00
thorpej 04c2f2a9a2 Amiga don't need its own fbio.h anymore; screenblank(8) uses <dev/sun/fbio.h>,
and the ioctl that this file defines is compatible.
2001-09-19 16:40:52 +00:00
wiz 456dff6cb8 Spell 'occurred' with two 'r's. 2001-09-16 16:34:23 +00:00
chris 0e7661f023 Update pmap_update to now take the updated pmap as an argument.
This will allow improvements to the pmaps so that they can more easily defer expensive operations, eg tlb/cache flush, til the last possible moment.

Currently this is a no-op on most platforms, so they should see no difference.

Reviewed by Jason.
2001-09-10 21:19:08 +00:00
atatat 97c67a9bae Add bridge pseudo devices to GENERIC configs 2001-09-01 21:52:23 +00:00
simonb 023bdd2bf2 Use comments around the token after a #endif. 2001-08-31 04:44:54 +00:00
is e2ad09e624 synchronize (addition of repulse driver). 2001-08-25 21:19:20 +00:00
is bd5a12de41 Driver for the ALiENDESiGN Repulse board.
- only 8/16 bit precision supported
- no support for the Repulse special S/P-DIF I/O yet
- I think ac97.c needs some work.
2001-08-25 21:15:44 +00:00
wiz c52d355d71 "wierd" is weird. 2001-08-20 12:20:01 +00:00
chs c489e9bff4 add missing pmap_update(). 2001-08-19 18:09:20 +00:00
wiz a5226c0bb5 Remove files describing hp300/HPBSD.
Can still be found in sys/arch/hp300/DOC as Debug.tips and HPMMU.notes.
Okay'd by is.
2001-08-18 10:07:35 +00:00
is de14426106 Ansification by Petri Koistinen 2001-08-17 19:56:51 +00:00
mhitch e6118cd2a1 ELF symbol support for DDB. 2001-08-15 01:29:29 +00:00
mhitch cfc1f88145 loadfile() support for new amiga boot loader. 2001-08-15 01:18:09 +00:00
mhitch 0b5d3c0d43 From Chuck Silvers:
implement pmap_k{enter_pa,remove}() correctly.
remove various checks for impossible conditions.
other misc cleanup.
2001-08-15 01:03:59 +00:00
jdolecek 74954dadf9 use unsigned variable types as appropriate 2001-08-05 18:07:51 +00:00
chs 6bc422a7ee use pmap_k* in pagemove() (ie. for buffer cache pages)
and in vmapbuf() and vunmapbuf() (since there's no VAC on this platform).
2001-08-04 07:44:52 +00:00
wiz 30b2bf87ed Various typos in comments (neccessary, sceme, choise, ...). 2001-07-26 15:05:07 +00:00
aymeric 16d48eec82 These programs are for the host, not for the target, to execute. 2001-07-25 12:32:48 +00:00
wiz a9356936b4 seperate -> separate 2001-07-22 13:33:58 +00:00
abs 29dcb5e3f6 (Regenerated atari and amiga)
Standardise TCP_COMPAT_42 as commented out, grouped with other COMPAT options,
and with the comment '4.2BSD TCP/IP bug compat. Not recommended'
Add commented out 'TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG'
(All hail amiga and atari which make some attempt to automate the
multiplicity of config files...)
2001-07-08 16:34:03 +00:00
abs 01b024cd5b Standardise TCP_COMPAT_42 as commented out, grouped with other COMPAT options,
and with the comment '4.2BSD TCP/IP bug compat. Not recommended'
Add commented out 'TCP_DEBUG # Record last TCP_NDEBUG packets with SO_DEBUG'
(All hail amiga and atari which make some attempt to automate the
multiplicity of config files...)
2001-07-08 16:32:12 +00:00
darcy ce0ec1e208 Add System V semaphore resource limits to each GENERIC file that has an
option for System V semaphores.  It appears that there are no overrides
in the code and each file has the following added.

 options    SYSVSEM     # System V semaphores
+#options   SEMMNI=10   # number of semaphore identifiers
+#options   SEMMNS=60   # number of semaphores in system
+#options   SEMUME=10   # max number of undo entries per process
+#options   SEMMNU=30   # number of undo structures in system
 options    SYSVSHM     # System V shared memory

If anyone thinks that this is incorrect for any of these files, please
correct it.

Note - the i386 port was not forgotten.  It was done separately.
2001-06-30 11:00:31 +00:00
jdolecek 89238be159 Adapt to lance_init() change 2001-06-20 10:10:12 +00:00
wiz 3f9984fc90 `existent', not `existant' 2001-06-19 13:42:07 +00:00
christos 0f380fac15 Add an e_trapsignal member to struct emul, so that emulated processes can
send the appropriate signal depending on the trap type.
2001-06-18 02:00:48 +00:00
wiz c03a48d64f withough -> without 2001-06-13 10:45:57 +00:00
wiz 2a8c778f1b retrieve, not retreive 2001-06-12 14:59:27 +00:00
wiz 40ac848024 Fix various misspellings of compatible/compatibility. 2001-06-11 01:50:48 +00:00
chs 821ec03ed9 replace vm_map{,_entry}_t with struct vm_map{,_entry} *. 2001-06-02 18:09:08 +00:00
lukem d84d2c6c85 add missing #include "opt_kgdb.h" 2001-05-30 15:24:23 +00:00
mrg 67afbd6270 use _KERNEL_OPT 2001-05-30 11:57:16 +00:00
mrg 3783ca5d30 define _KERNEL_OPT as well as _KERNEL. we will use this in the future to
get kernel "opt_foo.h" headers, rather than _KERNEL && !_LKM.
2001-05-29 02:20:20 +00:00
is 45effccbef make the defopted "LEV6_DEFER" work for LKMs, too. 2001-05-27 20:22:57 +00:00
chs e44e9dec8a replace vm_page_t with struct vm_page *. 2001-05-26 21:27:02 +00:00
chs 118ddca24a replace {simple_,}lock{_data,}_t with struct {simple,}lock {,*}. 2001-05-26 16:32:40 +00:00
is 09a3dd5f0c defopt LEV6_DEFER. 2001-05-08 06:09:29 +00:00
is 9c48209178 Be more verbose in the warnings. 2001-05-06 20:49:43 +00:00
scw 2963ff5c58 Add `l_poll' to `struct linesw' and provide an xxxpoll() entry point
in each tty driver to indirect through it.

This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
thorpej cf67ac7122 Per discussion w/ chuck and chuck, restructure the md page stuff
to use a structure called "vm_page_md", and use __HAVE_VM_PAGE_MD
and __HAVE_PMAP_PHYSSEG.
2001-05-01 02:19:13 +00:00
thorpej 2b27ac7a99 Add a VM_MDPAGE_MEMBERS macro that defines pmap-specific data for
each vm_page structure.  Add a VM_MDPAGE_INIT() macro to init this
data when pages are initialized by UVM.  These macros are mandatory,
but ports may #define them to nothing if they are not needed/used.

This deprecates struct pmap_physseg.  As a transitional measure,
allow a port to #define PMAP_PHYSSEG so that it can continue to
use it until its pmap is converted to use VM_MDPAGE_MEMBERS.

Use all this stuff to eliminate a lot of extra work in the Alpha
pmap module (it's smaller and faster now).  Changes to other pmap
modules will follow.
2001-04-29 22:44:31 +00:00
is f7455bf6e8 Be more specific than "some isic board". 2001-04-26 05:58:41 +00:00
bouyer 937a7a3ed9 Pull up the thorpej_scsipi branch to main branch.
This is a completely rewritten scsipi_xfer execution engine, and the
associated changes to HBA drivers. Overview of changes & features:
- All xfers are queued in the mid-layer, rather than doing so in an
  ad-hoc fashion in individual adapter drivers.
- Adapter/channel resource management in the mid-layer, avoids even trying
  to start running an xfer if the adapter/channel doesn't have the resources.
- Better communication between the mid-layer and the adapters.
- Asynchronous event notification mechanism from adapter to mid-layer and
  peripherals.
- Better peripheral queue management: freeze/thaw, sorted requeueing during
  recovery, etc.
- Clean separation of peripherals, adapters, and adapter channels (no more
  scsipi_link).
- Kernel thread for each scsipi_channel makes error recovery much easier
  (no more dealing with interrupt context when recovering from an error).
- Mid-layer support for tagged queueing: commands can have the tag type
  set explicitly, tag IDs are allocated in the mid-layer (thus eliminating
  the need to use buggy tag ID allocation schemes in many adapter drivers).
- support for QUEUE FULL and CHECK CONDITION status in mid-layer; the command
  will be requeued, or a REQUEST SENSE will be sent as appropriate.

Just before the merge syssrc has been tagged with thorpej_scsipi_beforemerge
2001-04-25 17:53:04 +00:00
thorpej 1c3a62e066 Sprinkle pmap_update() calls after calls to:
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).

These calls are relatively conservative.  It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
thorpej 55044638aa Remove pmap_kenter_pgs(). It was never really adopted by
anything, and the interface itself wasn't as flexible as
callers would have probably liked.
2001-04-22 23:42:11 +00:00
thorpej 69abdbf60c Undo a misguided previous change to the pmap_update() API. 2001-04-22 23:19:26 +00:00
thorpej 4738622712 Give pmap_update() an argument (a pmap_t) so that it knows which
pmap it should be updating.
2001-04-22 00:33:59 +00:00
thorpej 7f10ba88b1 #define away pmap_update() in <machine/pmap.h> so that no function
call overhead is incurred as we start sprinkling pmap_update() calls
throughout the source tree (no pmaps currently defer operations, but
we are adding the infrastructure to allow them to do so).
2001-04-21 23:51:14 +00:00
thorpej 15f731ee94 pmap_update() should not be equated with "flush entire TLB", it is
used to process deferred pmap operations.  Since these pmaps don't
defer anything, pmap_update() is a noop.
2001-04-21 17:25:01 +00:00
kleink f06533a1ee Add definitions of C99 integer format conversion macros.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 17:13:04 +00:00
kleink 739cb75837 Add definitions of C99 specified-width integer type limits.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-15 15:29:02 +00:00
kleink cdcf9f46c5 Add definitions of C99 integer constant macros.
Tidy Makefiles up a little.
2001-04-14 22:46:19 +00:00
kleink a7c20e5788 Add definitions of C99 integer constant macros. 2001-04-14 22:38:33 +00:00
kleink 7affdab52e Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
thorpej bf2dcec4f5 Remove the use of splimp() from the NetBSD kernel. splnet()
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
tron 824065dc0a Don't call "is_a1200()" again after its result was stored in the "softc"
structure.
2001-04-07 05:09:27 +00:00
tsutsui 7f28cbe9dc Fix an obvious typo. 2001-03-28 17:33:07 +00:00
lukem 20ba07f2fe - add dev_noimpl(xxx,yyy) macro to replace "(dev_type_xxx((*))) yyy",
and use appropriately

- create more helper macros:
   . cdev__xyz_init(c,n), such as cdev__ocri_init() for
     /* open, close, read, ioctl */, etc.
   . cdev__xRy_init(c,n), where nullop is used instead of enodev to dummy out
     method `R' and the comments now read /* xxx (read) yyy */ instead
   . cdev__xyz_t_init(c,n,t) - as per cdev__xyz_init, but sets d_type = t
     as well

- use seltrue instead of dev_noimpl(poll,*), as (IIRC) cdevsw.d_poll should
  always DTRT WRT returning a valid result.  (a few devices previously
  incorrectly returned ENODEV)

- use dev_noimpl(stop,enodev) instead of dev_noimpl(stop,nullop) if tty
  == 0, because it doesn't matter if dev_type_stop isn't implemented in that
  case, and it allows the use of the cdev__xyz_init macros. certain ports
  (sparc,sparc64,x68k) used the nullop method for dev_type_stop in a few
  drivers, whereas everything else uses enodev

- ensure that the comments are accurate WRT the behaviour of a given entry
2001-03-26 12:33:22 +00:00
is 0e72b76163 Missing changes to the last update, making this compile (and work) again. 2001-03-25 16:14:00 +00:00
martin 478c6ce6b9 Adjust to new hardware driver <-> isdn layer 2 and above sheme. 2001-03-24 12:45:15 +00:00
lukem 9f60674a47 now that duplicated stuff has been moved to sys/conf.h, remove unnecessary
defs for: lpt, joy, pc
2001-03-21 23:42:14 +00:00
lukem 723cd818d8 move duplicate definitions for:
pc, lpt, joy, ocis, apm, satlink, i4bctl, i4brbch, i4btel, i4btrc, i4b
from the port-specific arch/*/*/conf.c files into sys/conf.h
2001-03-21 22:25:52 +00:00
chs e47583af2c missed some KERN_FAILUREs. 2001-03-18 23:43:53 +00:00
is d7e64c2e21 Method array for a really big inter-byte offset. 2001-03-17 22:03:12 +00:00
chs ac3bc537bd eliminate the KERN_* error codes in favor of the traditional E* codes.
the mapping is:

KERN_SUCCESS			0
KERN_INVALID_ADDRESS		EFAULT
KERN_PROTECTION_FAILURE		EACCES
KERN_NO_SPACE			ENOMEM
KERN_INVALID_ARGUMENT		EINVAL
KERN_FAILURE			various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE		ENOMEM
KERN_NOT_RECEIVER		<unused>
KERN_NO_ACCESS			<unused>
KERN_PAGES_LOCKED		<unused>
2001-03-15 06:10:32 +00:00
is e2e5c62d49 Make this compile again (when building the LKMs). 2001-03-12 21:00:02 +00:00
mhitch 1c10294eb2 ELF ABI requires address to be returned in A0.
Change an external reference from absolute address to PC-relative.
2001-03-11 20:15:02 +00:00
mhitch 5a182288c0 ELF ABI requires address to be returned in A0. 2001-03-11 20:10:04 +00:00
mhitch 751017e6c1 Pack the ExecBase structure to avoid aligning contraint problems with ELF
compiler
2001-03-11 20:09:07 +00:00
is 782a7670e9 - The ioblix zbus board comes in 24 MHz and 22.1184 MHz clock variants.
We default to the (newer, more sane) 22.1184 MHz value, but set it from
the iobzclock variable (in Hz), which is initialized from the IOBZCLOCK
configuration option and patchable.
XXX we should time the clock at system startup.
- add ioblix_zbus to the GENERIC configuration.
2001-03-10 23:55:29 +00:00
is 6288edb5bd Add rcsid. 2001-03-08 19:21:53 +00:00
mhitch 626864333b Use ${NM} and ${SIZE} so cross-compiling works. The machine and m68k include
directories still need to be fixed.
2001-03-02 16:46:19 +00:00
mhitch f9e9387cf0 More missing register prefixes and _C_LABEL()s for ELF. Should now compile
with ELF, but still needs an "elf2bb" program.
2001-03-02 16:43:25 +00:00
mhitch 5864b6d958 More missing register prefixes. 2001-03-02 16:29:41 +00:00
is db27e55251 Add register prefixes. 2001-03-01 21:32:53 +00:00
is 9af33798b8 pack the structure to avoid aligning contraint problems with ELF compiler 2001-02-26 16:07:58 +00:00
is 19d69802f3 fix comment 2001-02-26 16:07:19 +00:00
is 025d7c7815 use ENTRY_NOPROFILE and _C_LABEL, where appropriate. 2001-02-26 14:58:36 +00:00
martin f0d6660cf4 Filename cleanup: remove i4b_ prefixes outside sys/netisdn, last round.
Renamed in sys/dev/ic:
i4b_hscx.c -> hscx.c
i4b_hscx.h -> hscx.h
i4b_ipac.h -> ipac.h
i4b_isac.c -> isac.c
i4b_isac.h -> isac.h
i4b_isic.c -> isic.c
i4b_isicbchan.c -> isic_bchan.c
i4b_isicl1.c -> isic_l1.c
i4b_isicl1.h -> isic_l1.h
i4b_isicl1fsm.c -> isic_l1fsm.c
2001-02-20 22:24:31 +00:00
is fcc944a0c5 Clean up messages, and replace nested ifs by switch statement. 2001-02-20 21:55:00 +00:00
is dd234724b6 Print out IPL. 2001-02-14 21:05:31 +00:00
is 1f9f72f6df Missing: register prefixes, _FOO_LABEL(n) macros, etc, in preparation for
ELFing the port. Patch provided by scw.
2001-02-14 20:24:17 +00:00
thorpej 043e519d55 Adjust the way that media is initialized on DP8390-compatible
chips.  The dp8390_softc now has media_init and media_fini
function pointers that do the work.
2001-02-12 18:49:03 +00:00
is 15d041fe54 Be a bit more helpful in the error case. 2001-02-11 09:54:48 +00:00
is 8b2795fa72 Support for BSC ISDN Master II. As far as we are concerned, this seems
to be identical to the old model.
2001-02-08 18:08:22 +00:00
is e36ad02480 gspa can directly create the C language array. 2001-02-03 20:23:59 +00:00
is 92fd3fa589 Initial, still incomplete wscons support by Jukka Andberg, PR 11068 2001-02-02 21:52:11 +00:00
is 6cec6799ac SIR_CLOCK is gone. 2001-01-28 22:31:53 +00:00
is 5d4912dc4b Add NetBSD rcsid, clean up comments. 2001-01-28 22:18:17 +00:00
is f7aa87a4a5 Jens Schönfeld seems to recall the name is ISDN link. 2001-01-28 21:43:38 +00:00
is facd2d0feb Support for the Zeus Development(?) ISDN board (2189/3). 2001-01-26 21:49:04 +00:00
aymeric a85be0a99c process_machdep.c is actually procfs_machdep.c 2001-01-26 10:31:29 +00:00
is d2ace86ad7 Two suggestions by jhawk:
- be more verbose about what file is created
- adjust copied $NetBSD...$ from $ NetBSD to NetBSD.
2001-01-25 22:34:20 +00:00
is 3f25157bea Add support for ISDN Surfer (ISDN only, for the time being). 2001-01-25 22:22:15 +00:00
is 93f107e677 adjust comments to reality 2001-01-23 11:25:59 +00:00
is c1f1dff4bd Amiga part of isdn4bsd, and an example kernel configuration file. 2001-01-21 22:23:07 +00:00
is f3f791ab03 - Replace idesc by standard wdc attachment.
- Add A1200 pcmcia slot driver.
(Both where options already.)
2001-01-21 20:41:39 +00:00
is fec2d92852 - Replace idesc driver by standard wdc attachment.
- Add PCMCIA driver for A1200.
(Both where options already.)
2001-01-21 20:38:20 +00:00
mhitch 62ec5a5bc5 UVM pagesize needs to be set *before* UVM tries to use it. The change to
a constant PAGE_SIZE value didn't include setting the UVM pagesize, and the
attempt to add this ended up in the wrong place.  Amiga should now boot
again.
2001-01-20 17:08:41 +00:00
is ca0031c4cd No need for a seperate "I'm initialized" variable - the pointer itself
should work fine.
2001-01-19 21:18:29 +00:00
tv e58532a4bf No-op commit to force update to a non-"-kk" revision. 2001-01-18 17:47:58 +00:00
is 72d949304b Add IPL_SOFTCLOCK, which was missing. 2001-01-17 20:53:43 +00:00
fvdl c7f1462f3e Add machdep file for procfs. Currently only used for linux-style
/proc/cpuinfo (only active when procfs is mounted with -o linux).
For ports other than the i386 this currently produces an empty
string.
2001-01-17 00:07:18 +00:00
thorpej d74e432ed3 Make softclock a generic soft interrupt of the API is available,
adding the requisite void * argument to softclock().
2001-01-15 20:19:50 +00:00
thorpej 45de366b2e Rename __GENERIC_SOFT_INTERRUPTS to __HAVE_GENERIC_SOFT_INTERRUPTS,
and place the definition in <machine/types.h>.  This can now be used
as a flag to indicate whether or not <machine/intr.h> can be included
to get the generic soft interrupt API.
2001-01-14 23:50:28 +00:00
martin a261276f16 The i4b raw b-channel devices actually do have an ioctl routine,
so better add this to the cdevsw entry.
Noted by Bruno Achauer.
2001-01-14 11:17:28 +00:00
thorpej 6f0dfa5049 splimp() -> splvm() 2001-01-14 03:32:20 +00:00
thorpej d85a75f583 Make sure everybody has an splvm() and equate it with splimp() (splimp()
is the historical name for this interrupt level, and the historical name
is going to go away in the near future).
2001-01-14 02:00:37 +00:00
aymeric edecf4bc97 Notify UVM subsystem about our page size in pmap_init().
Some MI code needs it (Linux emulation, sysctl and the like).
Thanks to Izumi Tsutsui for pointing it.
2001-01-13 11:31:04 +00:00
aymeric f806b0811c Pass CPPFLAGS to gcc in NORMAL_G, plus minor change: ; -> && 2001-01-13 02:17:50 +00:00
aymeric 80f1cca44e Make this compile again: we don't need to initialize PAGE_SIZE and friends
since they are now (preprocessor) constants.
2001-01-13 02:15:16 +00:00
aymeric 032ced3b65 Make these compile again, plus minor aesthetic changes. 2001-01-13 02:09:27 +00:00
aymeric 11dbbd8afe make this compile again 2001-01-13 02:08:15 +00:00
martin f53c899649 Add isdn devices to all archs that seem to support at least one of the
necessary busses. Sync comments with reality for archs that already had
the devices.
2001-01-08 21:46:33 +00:00
martin 242656c78a Enable the imported ISDN4BSD based ISDN subsystem.
This is the kernel part (userland to follow soon) of the latest (and
very probably last) release (version 0.96) of ISDN4BSD. ISDN4BSD has a
homepage at http://www.freebsd-support.de/i4b/.

It gives the user various ways to use the isdn connection: raw data (via
the i4brbch "raw b-channel" device), ppp (via the isp "isdn PPP" device),
voice/answering machine (the i4btel "telephone" device) and ip over isdn
(the ipr device, "IP over raw ISDN").

Supported are a bunch of common and older cards, more to be added soon
after some cleanup. Currently only the european E-DSS1 variant of the
ISDN D channel protocol is supported.
2001-01-05 13:09:15 +00:00
is d1089630fa The name is X-surf, not X-serv. I'll never learn this.
Thanks to Petri Koistinen for the correction.
2000-12-29 22:39:29 +00:00
is 9ae07c3362 Update for vlan addition and Xsurf name addition. 2000-12-29 22:36:51 +00:00
is f2ff118b7c Add name of X-surf Ethernet board. Patch by Petri Koistinen. 2000-12-29 22:31:56 +00:00
jdolecek de31133f1d split off thread specific stuff from struct sigacts to struct sigctx, leaving
only signal handler array sharable between threads
move other random signal stuff from struct proc to struct sigctx

This addresses kern/10981 by Matthew Orgass.

XXX I wish m68k ports would share trap.c
2000-12-23 09:35:51 +00:00
scw 4350a7f2b7 Unification of the m68k syscall() function. 2000-12-19 21:09:54 +00:00
tsutsui cb7f7c7f3b Remove "rnd is EXPERIMENTAL" comments. 2000-12-19 15:51:47 +00:00
bouyer c71f40d166 Add pseudo-device vlan 2000-12-19 10:42:02 +00:00
jdolecek cacec11253 delete obsolete comment 2000-12-17 15:52:39 +00:00
jdolecek ca57e681bd g/c obsolete vtrace(2) stuff 2000-12-13 18:13:05 +00:00
jdolecek 17a9fd0da5 split m68k SunOS and SVR4-specific sigcode.s code to sunos_sigcode.s
and svr4_sigcode.s respectively
adjust individual m68k port's locore.s to include new sigcode files if
appropriate
2000-11-26 11:47:23 +00:00
tsutsui 2c7e91a09e Define proper macros for FP frame offsets rather than magic numbers. 2000-11-21 13:54:13 +00:00
jdolecek baae0324b9 restructure struct emul and execsw, in preparation to make emulations LKMable:
* move all exec-type specific information from struct emul to execsw[] and
  provide single struct emul per emulation
* elf:
  - kern/exec_elf32.c:probe_funcs[] is gone, execsw[] how has one entry
    per emulation and contains pointer to respective probe function
  - interp is allocated via MALLOC() rather than on stack
  - elf_args structure is allocated via MALLOC() rather than malloc()
* ecoff: the per-emulation hooks moved from alpha and mips specific code
  to OSF1 and Ultrix compat code as appropriate, execsw[] has one entry per
  emulation supporting ecoff with appropriate probe function
* the makecmds/probe functions don't set emulation, pointer to emulation is
  part of appropriate execsw[] entry
* constify couple of structures
2000-11-21 00:37:49 +00:00
chs c62d17a551 rationalize the use of b_flags for geteblk() buffers.
rather than assigning to the whole field, set or clear individual flags,
which implies that the B_BUSY and B_INVAL flags will remain set.
this allows us to make the assertion in brelse() that B_BUSY is set,
which is the purpose of all this.
2000-11-20 08:24:08 +00:00
thorpej b84f740be0 Move bpfattach()/bpfdetach() calls into ether_ifattach()/ether_ifdetach(). 2000-11-15 01:02:11 +00:00
thorpej f74dfc7755 We use 8K pages on the Amiga. Make PAGE_SIZE and friends into
compile-time constants.
2000-11-14 18:58:29 +00:00
is 588900ab75 Remove some of the bitrot. 2000-11-08 21:50:25 +00:00
eeh bc7363329c Adapt to new line discipline scheme. 2000-11-02 00:26:35 +00:00
aymeric 79041c7a30 add a semicolon to make this compile again 2000-10-30 14:40:33 +00:00
is b0ee22422c Regenerate from INSTALL. 2000-10-04 20:44:53 +00:00
is 6458912fb4 regenerate: INSTALL changes as implemented in GENERIC and Makefile. 2000-10-04 20:40:06 +00:00
is 986619df97 Reimplement the INSTALL changes in GENERIC and Makefile. 2000-10-04 20:38:11 +00:00
is 1c9bb33fcb resync, mostly for the rnd addition. 2000-10-04 20:13:42 +00:00
itojun 9e47af8814 enable rnd device. they are now mandatory for ssh/sshd support,
so it makes more sense to enable it.
please disable them if there's any issues, but in that case, in-tree
ssh/sshd won't work.
2000-10-04 03:35:53 +00:00
abs 2824f4906d Ensure all INSTALL* kernels have two ptys, and a note explaining why:
pseudo-device  pty             2       # pseudo-terminals (Sysinst needs two)
(Some installers may not be using sysinst, in which case this just reduces
the number of ptys from 16 that are not used to 2 that are not used)
For i386 conf files, no change other than comments.
2000-10-02 18:43:34 +00:00
thorpej 7ca3fb9ef0 Move the check for "promisc + unicast + not for us" into ether_input(),
and change Ethernet drivers to always pass all received frames to
ether_input() (with a few exceptions, which are documented in the
code).
2000-10-01 23:32:39 +00:00
aymeric 5712405584 cross-compile properly 2000-09-27 08:28:34 +00:00
aymeric 25365607f3 minor aesthetic changes, plus explicitly state this is public domain 2000-09-27 08:24:02 +00:00
aymeric 97e929ff45 define PCB_REGS_* so that kdb compiles again 2000-09-27 08:23:50 +00:00
abs 3ef92f0bdb Use "options<SPACE><TAB>" not "options<TAB>" - noted by simonb.
Move VNODE_OP_NOINLINE and NFS_V2_ONLY into '# Filesystem options' section.
Consistently label '# Filesystem options' and '#File systems' sections.
2000-09-25 13:54:50 +00:00
abs ccf1c822a6 Ensure all INSTALL config files have (at least) COPTS="-Os", cincluding bebox
based on it working already for macppc.
Also add commented out:
#options        VNODE_OP_NOINLINE       # Don't inline vnode op calls
#options        NFS_V2_ONLY             # Exclude NFS3 and NQNFS code
as suggestions for additional savings
2000-09-25 11:46:37 +00:00
jdolecek f9f2c92422 this file was oversight at first (pointed out by is):
Add new boot flags -v, -q, which switch on AB_VERBOSE or AB_QUIET
respectively. This follows recent bootverbose/bootquiet changes.
2000-09-24 20:56:04 +00:00
jdolecek b1f94e26ab don't specify number of ptys if >= 16 (current default initial number)
pty comments: normalize and g/c what is no longer relevant
2000-09-24 15:59:26 +00:00
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
is ff3689f89c On AmigaPPC, the kernel directly maps the i/o range. 2000-09-20 19:05:53 +00:00
is ff3205e665 Make this build again. Fixes by Michael Hitch. 2000-09-17 18:24:12 +00:00
is 47d6ee388a Missing piece of PowerPC support. 2000-09-13 20:15:52 +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
is 7d54381711 sm* at (mhz at) pcmcia* needs mii to link (although not at runtime...). 2000-09-03 19:07:05 +00:00
mhitch 4a320ca712 Use the correct DMA pointer for the second channel on 14-bit byte-swapped
conversion.  Fixes NULL pointer reference crash when playing 16 bit little
endian audio.
2000-09-03 02:04:53 +00:00
mhitch 76585aedee Fix typo: a%0 -> %a0. 2000-09-02 04:50:08 +00:00
jhawk a022cf9d37 Use
${MAKE}
instead of
  make
2000-08-30 23:51:46 +00:00
is 9ec45c470a Use an INSTALL kernel, instead of GENERIC. We want this to be as small as
possible so that it can boot even on low memory Amiga machines.
2000-08-30 09:43:04 +00:00
is e83ee64031 Stripped down Install kernels (no audio, no OSI or Xerox networking, no
scanners).
INSTWDCPCM has the wdc instead of the idesc, and the PCMCIA support, so
that people can test it easily.
2000-08-29 21:09:28 +00:00
is 115bd3b350 Replace one callout handler by using a timeout in tsleep().
1.4.x version of it submitted by Ingolf Koch; translated to 1.5-ish by
myself.
2000-08-27 10:35:43 +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
thorpej 58e7a6954b Add spllock(). See spl(9) for details. 2000-08-22 19:46:26 +00:00
thorpej a86d1f4891 Add a lock around the scheduler, and use it as necessary, including
in the non-MULTIPROCESSOR case (LOCKDEBUG requires it).  Scheduler
lock is held upon entry to mi_switch() and cpu_switch(), and
cpu_switch() releases the lock before returning.

Largely from Bill Sommerfeld, with some minor bug fixes and
machine-dependent code hacking from me.
2000-08-20 21:50:06 +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
mason 4a353b5330 Moving to a default of 64 PTYs. 2000-07-27 17:53:35 +00:00
sommerfeld bd29eb7984 regenerate 2000-07-05 04:10:15 +00:00
sommerfeld 502fc00210 Comment out EON ISO-over-ip tunneling pseudo-driver, and document as
broken/fragile.  Unlikely to be of much use, and confuses new users
when their system crashes when they, or their dhclient stumble over
it.  See kern/10500, kern/8994 for the gory details.
2000-07-05 04:07:22 +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
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
mrg b564830503 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:44:03 +00:00
mhitch e87450fc4b Add cdev_decl() to declare mm*() routines. 2000-06-29 01:55:57 +00:00
mrg e185413725 remove redudant <vm/pmap.h> includes. <vm/pmap.h> -> <uvm/uvm_pmap.h> 2000-06-27 04:18:48 +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 89d0a3e519 remove redundant vm includes. 2000-06-26 14:38:50 +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
fvdl 1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
is 30cef4176a - auto-USE_C_BFOPS when !defined(__m68k__)
- for bold characters, only blit the leftmost ftwidth pixels per character
  cell row. The rightmost row which used to be printed would have been
  overwritten formerly by the next character on sequential output, so no
  visible change will result most of the time.
  This fixes two problems:
  * USE_C_BFOPS (which only works for 8 pixel wide fonts) blits the same
    for bold characters now... it used to print the rightmost 8 pixel columns
    of the bold-smeared characters
  * we no longer need a reserved 1 pixel column at the right end of the screen.
    That is, a 640x400 screen will hold 80x50 charactes with the 8x8 font.
2000-06-21 21:28:39 +00:00
is d139625de5 Fix for two bugs discovered by Gunther Nikl:
- missing printf parameter
- error in DraCo detection
2000-06-15 13:43:35 +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
frueauf 3be3d75487 recently findroot() was changed to get no arguments, so remove the
arguments in the findroot() call withing cpu_rootconf().
2000-06-10 19:34:46 +00:00
soren a9aa2abf94 defopt SYSCALL_DEBUG. 2000-06-06 18:52:30 +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
tsutsui 8c4d1bf1f9 Adapt MI ncr53c9x changes. 2000-06-05 15:08:00 +00:00
matt 33763f10cf Fix a missing cases of devpp -> booted_device, partp -> booted_parition 2000-06-01 17:42:59 +00:00
matt 9169d99f2a Don't pass booted_* to findroot/getdevice, access them via the globals.
Also, make findroot static.  This eliminates unneeded clearing of them
and make their use consistent among the ports.
2000-06-01 15:38:20 +00:00
matt c9aff328d9 Make booted_device global (and booted_parition for consitency).
Eliminate it from header files and other extern definitions.
2000-06-01 00:49:49 +00:00
thorpej 8871d8563a Add a comment on single-processor systems about p_cpu being initialized
by fork1().
2000-05-31 05:06:43 +00:00
thorpej e03e9e8086 Rather than starting init and creating kthreads by forking and then
doing a cpu_set_kpc(), just pass the entry point and argument all
the way down the fork path starting with fork1().  In order to
avoid special-casing the normal fork in every cpu_fork(), MI code
passes down child_return() and the child process pointer explicitly.

This fixes a race condition on multiprocessor systems; a CPU could
grab the newly created processes (which has been placed on a run queue)
before cpu_set_kpc() would be performed.
2000-05-28 05:48:59 +00:00
sommerfeld 40339b39f9 Reduce use of curproc in several places:
- Change ktrace interface to pass in the current process, rather than
p->p_tracep, since the various ktr* function need curproc anyway.

 - Add curproc as a parameter to mi_switch() since all callers had it
handy anyway.

 - Add a second proc argument for inferior() since callers all had
curproc handy.

Also, miscellaneous cleanups in ktrace:

 - ktrace now always uses file-based, rather than vnode-based I/O
(simplifies, increases type safety); eliminate KTRFLAG_FD & KTRFAC_FD.
Do non-blocking I/O, and yield a finite number of times when receiving
EWOULDBLOCK before giving up.

 - move code duplicated between sys_fktrace and sys_ktrace into ktrace_common.

 - simplify interface to ktrwrite()
2000-05-27 00:40:29 +00:00
thorpej a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
thorpej 8964c35eca Introduce a new process state distinct from SRUN called SONPROC
which indicates that the process is actually running on a
processor.  Test against SONPROC as appropriate rather than
combinations of SRUN and curproc.  Update all context switch code
to properly set SONPROC when the process becomes the current
process on the CPU.
2000-05-26 00:36:42 +00:00
is f0d88bea57 Prepare for AmigaPPC. 2000-05-25 19:10:04 +00:00
is da281d4321 Prepare for AmigaPPC. 2000-05-25 18:39:09 +00:00
is ebc6483ef9 missed one line when converting m68k asm() to macro calls. 2000-05-24 19:36:29 +00:00
thorpej 1140468205 Use preempt(), not an open-coded equivalent (which won't be
equivalent for long).
2000-05-24 16:48:33 +00:00
thorpej 071aed40ac A foolish consistency; most parts of the kernel use bp->b_data, so
change these from bp->b_un.b_addr to bp->b_data, as well.  This also
allows us more flexibility to experiment with other data buffer types
hung off of struct buf.
2000-05-19 18:54:22 +00:00
is 5e33ffef22 Initialize hardware for mouse mode at open time.
This fixes MB2 and MB3 on the 2nd mouse port (the first is initialized by
the Amiga ROM at boot time).
2000-05-18 19:58:30 +00:00
kleink 8050d5687d Restructure the ms(4) autoconfiguration code to attach as a single device
instance and select a mouse port via the least significant bit of its
device minor number.  Fixes abuse of cf_unit in this driver.
2000-05-18 15:39:22 +00:00
thorpej 463931b3ba Nuke dk_establish() from orbit except from those ports which still use
it to determine the boot device: mvme68k, pc532, macppc, ofppc.  Those
platforms should be changed to use device_register().  In the mean time,
those ports defined __BROKEN_DK_ESTABLISH.
2000-05-16 05:45:44 +00:00
minoura 879e4dbe7c defopt FPSP. 2000-05-14 14:13:50 +00:00
hubertf 9f48bba3ae Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
2000-05-09 00:56:21 +00:00
thorpej 6a33c86623 HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well. Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
2000-05-09 00:32:19 +00:00
thorpej f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00