Commit Graph

2206 Commits

Author SHA1 Message Date
reinoud 7d798b3ef7 Initial ELF kernel loading for RiscPC/A7000/NC based on Ben Harris's work
Since arm32 isnt switched to ELF yet its not completely tested; It loads
a kernel but then hangs on symbol table loading; propably a ELF/a.out
symbol table conflict.

Also cleaned up the code a bit
2001-03-30 23:44:58 +00:00
toddpw a6a587a71e Track prototype change to isa_fillw() that avoids passing u_short as an arg. 2001-03-30 11:21:33 +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
reinoud 903b8688da The interface to `setdisplay' was implemented wrong. The utility stated the number
of bits per pixel instead of the log2_bpp as assumed (since the rest uses this).
2001-03-25 21:25:35 +00:00
bjh21 8edd158910 MI(ish) EtherB driver using the MI SEEQ 8005 driver. Very lightly tested. 2001-03-25 01:09:36 +00:00
bjh21 cbe4d910da It might be useful if I actually filled in the interrupt handle for
podulebus_irq_establish() to use.
2001-03-25 00:56:58 +00:00
bjh21 8bd452c648 Create an MI Ether3 driver. It's derived from the arm26 driver, which uses
my MI SEEQ 8005 driver, which is based on the arm32 ea driver.
2001-03-24 00:14:52 +00:00
bjh21 2714607c72 Add podulebus_shift_tag, which generates a bus_space_tag_t with a specified
address shift (stride).  This is necessary because many podules have standard
chips with odd address-bus wiring to allow for using LDM for
bus_space_*_multi_*().
2001-03-24 00:10:42 +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
soren 912c115675 s/vm_page_alloc_memory/uvm_pglistalloc/ in panic message. 2001-03-21 18:40:28 +00:00
bjh21 998606396f Move struct podule_list and struct podule_description to podulebus.h.
They're MI, even if only arm32 actually uses them at present.
2001-03-20 23:27:04 +00:00
bjh21 86d6442c28 Move machine-dependent podulebus headers to <machine/podulebus_machdep.h>.
<dev/podulebus/podulebus.h> is the canonical file to include, and includes
<machine/podulebus_machdep.h>.
<arch/${MACHINE}/poudulebus/podulebus.h> remains for backward compatibility.
2001-03-20 22:59:39 +00:00
reinoud df2b9ae2bd Initial commit of wscons for the RiscPC/A7000 arm32 family. There is still lots
to do notably the mouse, some issues about 4 bpp modes and most of all Xwscons !

This code will still allow usage of the old vidcconsole complete with X etc.
Note that the wscons code can now only be booted with the new bootloader but
kernels compiled with vidcconsole can still be booted the old way.
2001-03-20 18:20:53 +00:00
reinoud 482f11868a Added dependency for "VIDCCONSOLE" (old console code) for the physcon char
device on console (makedev(4,0)) to aid in wscons transition.
2001-03-20 15:39:16 +00:00
reinoud adbed15428 Replace `bitsperpixel' by `log2_bpp' for thats the value that is in it
and not the number of bits per pixel !
2001-03-20 12:52:03 +00:00
reinoud e8f67fd5b7 `bitsperpixel' in the bootconfig structure is replaced by `log2_bpp'
for thats the value that is in it anyway and not the number of bits per pixel !
This to avoid confusion.
2001-03-20 12:50:08 +00:00
reinoud 2ac5b2f7cf Replace `bitsperpixel' by `log2_bpp' for thats the value that is in it
and not the number of bits per pixel !
2001-03-20 12:48:37 +00:00
bjh21 34cca2e23e Pull in shared podulebus drivers. 2001-03-20 00:01:37 +00:00
bjh21 2821b16ef4 Quick hack implementation of region ops. Not very pretty, but good enough
to get ei(4) working on arm32.
2001-03-19 23:56:45 +00:00
bjh21 4d5762c860 This file depends on <machine/io.h>. 2001-03-19 23:03:59 +00:00
bjh21 e7cc62cc44 A few #defines for the common podulebus API. 2001-03-19 22:59:13 +00:00
rearnsha 51e6b460ab Slightly smaller code and tune for StrongARM. 2001-03-19 22:51:51 +00:00
rearnsha 77d7115444 Spelling mistake (saftey -> safety). No functional change. 2001-03-18 18:49:37 +00:00
rearnsha f8ffa07954 Always restore the spl value when returning form physconkbd. 2001-03-18 17:03:26 +00:00
rearnsha 62dd3b3608 Fix a couple of cases where we could return without restoring the
SPL value.  Fixes a problem with the Xserver on A7000 kernels.
2001-03-18 17:00:56 +00:00
bjh21 614827277d Switch over to using podulebus_irq_establish(). 2001-03-18 16:58:55 +00:00
bjh21 5c98fe3fec Gratuitous change of signature for podulebus_irq_establish(). It now takes
an opaque podulebus_intr_handle_t, which can be found in podulebus_attach_args.
It's actually the slot number, but don't tell anyone.
2001-03-18 15:56:04 +00:00
bjh21 6c42a5d73a Move over to using podulebus_irq_establish. 2001-03-18 01:31:03 +00:00
bjh21 63059bd6dc Remove redundant sc_ih from struct ea_softc. 2001-03-18 01:30:30 +00:00
bjh21 b369fdfd44 Use podulebus_irq_establish().
To avoid complexity, don't bother with ea_irq_claim() and ea_irq_release() any
more.  This driver will be replaced with an MI one soon eough -- it just
happened to be convenient for me to test.
2001-03-18 00:00:43 +00:00
bjh21 f98a674d6d Add podulebus_irq_establish(), with the same spec as the arm26 one. 2001-03-17 23:58:43 +00:00
bjh21 697e84ed46 Update for new location of podules.h and podule_data.h 2001-03-17 20:34:43 +00:00
bjh21 e6a3d0d5c9 Move generated files from sys/arch/arm32/podulebus to sys/dev/podulebus. 2001-03-17 20:32:00 +00:00
bjh21 255336b13c Migrate known-podules list from arch/arm32/podulebus to dev/podulebus. 2001-03-17 19:05:19 +00:00
bjh21 17b6222740 Small beginnings of podulebus convergence: Have podule drivers print colons
in attach messages, rather than doing it in podulebusprint().
2001-03-17 18:46:25 +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
toshii 300d398485 Move references to arm/arm/disksubr*.c from files.arm to
files.{arm26,arm32,dnard}.
2001-03-14 14:39:45 +00:00
bjh21 b01c113e98 ARM7TDMI != ARM7 for our purposes (it has an ARMv4 CP15). 2001-03-10 20:03:51 +00:00
bjh21 1f9f430e03 Patch from Richard Earnshaw:
Add some calls to drain the write buffers -- these are particularly
important when we are trying to synchronize I$ and D$.
2001-03-09 16:24:51 +00:00
bjh21 5a6e5a05e3 Increase the size of regions for which we use the single line flush
commands -- profiling shows this to be a major win over flushing the
entire cache (since the likelihood is that such lines won't be in the
cache anyway).

Patch supplied by Richard Earnshaw.
2001-03-09 16:17:19 +00:00
bjh21 4ada0ac792 Create cpufunc_null_fixup() to replace all the CPU-specific abort-fixup
routines that did nothing.
2001-03-06 22:29:13 +00:00
matt b7cd0eeaac Move arm32/arm32/ast.c to arm/arm32/ast.c 2001-03-06 07:52:35 +00:00
bjh21 83b8de43dd Move undefined.c from sys/arch/{arm32/arm32,hpcarm/hpcarm} to sys/arch/arm/arm
in preparation for making it usable on arm26 as well.
2001-03-05 23:06:14 +00:00
bjh21 25ec015449 Merge setregs() from sys/arch/arm32/arm32/machdep.c,
sys/arch/hpcarm/hpcarm/machdep.c and sys/arch/arm26/arm26/vm_machdep.c
into sys/arch/arm/arm/arm_machdep.c.
2001-03-04 23:25:00 +00:00
bjh21 88951e75fa Rather than using a list of CPU IDs, take a heuristic approach to working
out which set of functions to use.  This should help cope with the fact that
my list of CPU IDs is probably incomplete.
2001-03-04 23:13:29 +00:00
matt d6fc837c17 more vm_offset_t/vm_size_t -> {p,v}{addr,size}_t changes
move pmap_* declarations to pmap.h.  fix conflicts this
exposed (e.g different definitions for pmap_bootstrap).
2001-03-04 19:05:55 +00:00
bjh21 aa34be4532 Make "options ARMFPE" work again.
Mostly due to Richard Earnshaw.
2001-03-04 14:32:12 +00:00
matt 93c0e77b0f Only define MACHINE & MACHINE_ARCH in port-dependent param.h.
Everything else (since it's common) is from <arm/arm32/param.h>
2001-03-04 08:28:51 +00:00
matt 58438fb425 Move compat_13_machdep.c, strstr.c, copystr.S, bcopyinout.S, and
bcopy_page.S to arm/arm32 and remove port-local copies.
2001-03-04 08:25:38 +00:00
matt aada69afd5 Synch with file movement. 2001-03-04 05:15:39 +00:00
matt fb62f0c378 These have moved to ../../arm/arm (disksubr*.c) or ../../arm/arm32
(everything else).
2001-03-04 05:14:06 +00:00
matt 5d1d7ca9ca Remove a shark dependency in machdep. Use booted_kernel instead of
boot_kernel to be similiar to booted_device.
2001-03-04 01:50:53 +00:00
bjh21 c32dba2092 Remove support for /dev/cpu*. This code has never done anything useful anyway. 2001-03-03 18:04:34 +00:00
reinoud 5cc6423696 Fixed the bug that crept into giving support for moving IOMDs during startup.
Initially I gave it the type `int *iomd_base' but some macro's defined in
iomdreg.h calculated with the value asuming it to be an int ... thus all the
registers offsets were multiplied by four and that can only mean trouble !
The kernel boots again ever happily. Sorry for the inconvenience... it was
a good bug hunt though!
2001-03-02 01:46:57 +00:00
bjh21 5b15e666a1 ARM7100 -> ARM710A, following information from reinoud. 2001-03-01 23:45:56 +00:00
bjh21 c25aec3d9f PCB convergence, part the first:
Move the pointer to the current user trapframe from struct mdproc to struct
pcb (as on arm26).  Only tested by compiling kernels on arm32 and
hpcarm (dnard seems to be incomplete anyway).  Someone should try running one.
2001-02-28 18:15:42 +00:00
reinoud 4cb4b8642c Make it compile again... 2001-02-27 20:27:17 +00:00
reinoud 3500dc208f Centralise declaration of memc_base 2001-02-27 20:23:11 +00:00
reinoud b8c8050369 Define iomd_base ... make it compile again 2001-02-27 19:57:51 +00:00
reinoud 5cd12d1f9e Make it compile again 2001-02-27 18:33:26 +00:00
reinoud d4eb8fb142 Also forgot to declare the iomd_base. 2001-02-27 18:30:46 +00:00
reinoud d35a86c1a6 Forgot to declare iomd_base since it isnt in iomdreg.h anymore due to the
inclusion of this file in assembler.
2001-02-27 18:29:36 +00:00
bjh21 4b483d7606 Move "options ARMFPE" to files.arm, so generic ARM files can use it. 2001-02-27 17:56:31 +00:00
bjh21 f983a837ed Add multiple-include protection, and include <machine/cpus.h> here (where
it was actually needed).
2001-02-26 16:40:00 +00:00
bjh21 d666817eff Remove unnecessary #include <machine/cpus.h>. 2001-02-26 15:59:54 +00:00
reinoud 9f68c8b2b1 Putting param.h back to arm32 include directory 2001-02-26 00:06:45 +00:00
reinoud e4e4d358a0 Fixed IOMD remapping during boottime 2001-02-25 23:59:48 +00:00
bjh21 3fb058011a Move arm32 ports over to using <arm/armreg.h>, so <cpu.h> mostly contains
NetBSD-specific definitions.

This also entails some changes to the way CPU identification is done.  I hope
I've got it right.
2001-02-25 21:31:13 +00:00
bjh21 846fe69958 Remove CPU_* options (they're in files.arm now -- for some reason I missed
this lot in the last commit).
2001-02-25 18:28:27 +00:00
reinoud 1a53c63fd7 Finally implemented the moving VIDC chip; this solves the red colour too at startup
for RiscPC, A7000 and RC7500. A better solution should be made but is currently
unavailable for all the VIDC stuff isnt using bus_space at all...
2001-02-25 17:17:55 +00:00
reinoud 142f62c206 Moved the mainbus files to the arm/conf/file.arm from the arm32 and the
hpcarm/conf/files.hpcarm
2001-02-24 21:43:01 +00:00
reinoud 7535275b7c Fixed the `slow printing' bug that occured with debugged kernels on RiscPC's.
When the IOMD isnt mapped and all is mapped 1:1 a read gives garbage and thus
the obscure feature that slows down printing (or halts it!) when the mouse
button is pressed during output to the vidcconsole gets allways activated.

Included a simple flag that signals if the IOMD is mapped; the delay routine
won't check the mouse if this flag is still clear.
2001-02-24 21:29:38 +00:00
reinoud 1267afb3b6 Make lm audio for RiscPC compile again 2001-02-24 20:12:40 +00:00
reinoud b7b1d6b636 Make rc7500 compile again 2001-02-24 20:11:08 +00:00
reinoud 78a1b11faf Make arm32 RiscPC compile again 2001-02-24 20:08:53 +00:00
reinoud 286f491040 Changed an innocent looking but pretty expensive table walking in pmap.c
from DIAGNOSTIC to PMAP_DEBUG
2001-02-24 20:04:42 +00:00
reinoud f583057770 Repaired a syntax fault in the files.[hpcarm,arm32] 2001-02-24 19:43:50 +00:00
reinoud 086a93939c Part 2 of merge.... the dissapearance of mainbus from arm32 and hpcarm;
these parts were a 100% the same and i've included the extensions made by
hpcarm in the tree.
Checked for occurence of MD parts; none found.
2001-02-24 19:38:01 +00:00
bjh21 6b7ad3aa3e __HAVE_NWSCONS and __HAVE_DEVICE_REGISTER are MACHINE-dependent. 2001-02-23 22:02:43 +00:00
reinoud 92493b7a32 Missed this file in the merge due to a typo ! 2001-02-23 21:27:46 +00:00
reinoud c1f753f9b4 Big patch for merging common include files of the new hpcarm tree and the old arm32
tree into the new arm substree. All moved files are relinked with a stub that included
the file from the new location; this might be done better later.
2001-02-23 21:23:45 +00:00
reinoud ed2535fabd Changing rc7500 for naming change of vidcvideo to vidcconsole 2001-02-21 00:55:34 +00:00
reinoud 926ac33ffb Add newly renamed file for transition to new naming
vidcrender.c  is old vidcconsole.c
  vidcconsole.c is old vidcvideo.c
2001-02-21 00:53:36 +00:00
reinoud 37eca554a2 vidcvideo rename phase 2 : getting it to build again; tested ok 2001-02-21 00:51:26 +00:00
reinoud 23d7dbe67e Updated documentation about the bootloader 2001-02-20 22:58:34 +00:00
reinoud f1d3c5daa6 Renamed vidcvideo configure option to vidcconsole wich covers the function
better and allows to clean up vidc tree by enabling the use of the term
vidcvideo for what it is : configuring video independent of choise of console
to allow implementation of wscons for RiscPC/A7000 and RC7500.
2001-02-20 22:49:55 +00:00
reinoud 68eaed4e53 Extended monitor file definition for AKF 85 (Phillips Brilliance 17'')
Some extra modes added and changed some mode definitions to better suit
my monitor.
2001-02-19 16:46:42 +00:00
bjh21 d03f5eac72 Some of this code is based on an old version of BBBB -- update the copyright
message to indicate this.
2001-02-19 15:54:16 +00:00
reinoud 73254cd1f4 Import of newest version ... checked for correct importing now ....
The import script needs some sophistication but its ok now...
2001-02-19 15:28:13 +00:00
reinoud 64ceee1d67 Fixed CVS directory overwriting by deleting it in the copy first; this to
prevent import trouble due to messed up CVS directories.
2001-02-19 14:32:45 +00:00
reinoud 0a46ddf1e2 Changed export script so it doesn't kill the CVS directory :) 2001-02-19 14:26:41 +00:00
reinoud e263b21061 Another bug ... the extract archive wasnt build in the correct directory 2001-02-19 14:18:24 +00:00
reinoud f3b8ca18f1 Fixed a small bug in the export script 2001-02-19 14:15:42 +00:00
reinoud 0085973034 Import of the new RISCOS bootloader in the CVS tree with import and export scripts.
Start version is v 0.91
2001-02-19 14:09:00 +00:00
bjh21 d7fca27e58 Garbage-collect vestigial support for the Simtec Hydra board. The main code
to support it was never committed to the tree, and it would probably need
major reworking anyway.
2001-02-19 13:29:39 +00:00
bjh21 504ce207cb Make the kenrel base address a variable. 2001-02-19 13:26:17 +00:00
simonb d669e1cea8 Fix tyop. 2001-02-18 22:32:32 +00:00
reinoud 5fa30a864f fixed naming bug :( ... I should be more carefull 2001-02-18 12:42:31 +00:00
reinoud 7665787d5e Fix to solve PR arm32/9208 "RiscPC reboot hangs"
Due to the StrongARM support code in the cpu_reset() MC-function,
an instruction was executed to drain the write back buffer on StrongARM
processors (might even be armv4+).

Since ARM{6,7} don't recognize this instruction they will either except
for an illegal instruction on this or have undefined behaviour resulting
in an endless illegal instruction/data abort/reset behaviour.

The fix contains a flag that signals if the WB flush should be executed
or not for the detected processor.
2001-02-18 12:21:02 +00:00
reinoud 9dd76bf15d Updated the bootloader for RiscPC/A7000/NCs etc. remains compatible with the old bootloader by an COMPAT_OLD_BOOTLOADER option 2001-02-18 00:59:33 +00:00
reinoud 3043022c3a Added extra kernel vm by moving up vidc space 2001-02-18 00:56:42 +00:00
reinoud a598ade96e Updated MAGIC number for new bootloader 2001-02-18 00:55:31 +00:00
reinoud 00b4361e08 Add compatibility option for old bootloader 2001-02-18 00:54:02 +00:00
bjh21 8b601afaf3 Re-introduce <arm/endian_machdep.h>, this time using GCC's idea of the target
endianness.
2001-02-17 14:55:44 +00:00
bjh21 9b6de1da90 Move cpu_coredump() from arm32/arm32/vm_machdep.c to arm/arm/vm_machdep_arm.c.
Also ANSIfy it and use it on arm26.
2001-02-13 22:54:25 +00:00
bjh21 7b820f85da Fix to compile with current ne2000.c: ne2000_attach() now only takes two
arguments.
2001-02-13 19:17:13 +00:00
bjh21 284047a2b2 Move sendsig() and sys___sigreturn14() from arm26/arm26/vm_machdep.c and
arm32/arm32/machdep.c into arm/arm/sig_machdep.c, merging and ANSIfying in
the process.

The code is based on the arm32 version, so I don't think anything should break
there.
2001-02-13 13:19:52 +00:00
bjh21 a4e55e0f13 Shared ARM ptrace(2) implementation. Mostly the same as the arm32
version, but with some #ifdefs for arm26.

Also, don't define PT_STEP, since we don't implement it.  This should
reduce code size a little.
2001-02-11 17:03:04 +00:00
bjh21 9826a76781 Common <arm/reg.h> (and hence common struct reg) for ARM.
This is theoretically backward-incompatible on arm26, but GDB doesn't work there
yet anyway.
2001-02-11 14:51:55 +00:00
tsutsui 6b047fe46b In footbridge_pci_intr_map(), pcv and intrtag are used
only #ifdef PCI_DEBUG. Move declarations in it.
2001-02-08 13:59:38 +00:00
tsutsui 276fc3f6b7 One more fix for pci_intr_map() API change. 2001-02-08 13:55:45 +00:00
jdolecek 8b24036797 Require the machine-dependant DDB commands to be in db_machine_command_table[]
and link it directly to db_command_table[] so that it's not necessary
to do this at runtime. Make db_machine_command_table[] const on all ports.
g/c now unneded stuff, like db_machine_commands_install(), db_machine_init()

Patch written by enami.
2001-01-22 13:56:55 +00:00
jdolecek ecf8569ea6 make beep_waveform[] const 2001-01-22 13:31:45 +00:00
bjh21 8805bd8b56 Unify arm26 and arm32 trapframe structures. The unified trapframe is the same
shape as the old arm32 one, but there are a few #defines to keep arm26 code
happy.  Anything that depends on the precise shape of the trapframe,
and especially on being able to treat it as an array of registers, has been
updated.
2001-01-20 17:14:19 +00:00
lukem b01d829ec1 s/ea/eb/ in a couple of places 2001-01-20 02:41:19 +00:00
bjh21 2c89ce7e74 Add <arm/frame.h>, for shared stack frame structures. Currently, only sigframes
are common.
2001-01-18 21:48:25 +00:00
tv e58532a4bf No-op commit to force update to a non-"-kk" revision. 2001-01-18 17:47:58 +00:00
jdolecek c1fc5392f5 adjust ddb variable access functions to have first arch 'const', make db_[e]regs[] const 2001-01-18 10:55:29 +00:00
jdolecek 65e6340df5 adapt to recent changes of signal structures changes 2001-01-18 10:18:24 +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
augustss 46130fb7e5 Add uyap. 2001-01-16 03:38:22 +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
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 a3ec356d52 splimp() -> splvm() 2001-01-14 03:22:04 +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
bjh21 8df387473f Move <machine/signal.h> into shared directory. 2001-01-13 17:02:36 +00:00
bjh21 78c0ba909e Separate out sigcode into its own file, since it's shared by arm26 and arm32. 2001-01-13 00:06:50 +00:00
bjh21 a5ef6e1f81 Move db_disasm.c into sys/arch/arm/arm. Use arm26 version, since it should
generate smaller compiled code.
2001-01-12 21:31:51 +00:00
bjh21 a4047bf10c Move the generic ARM disassembler from arm32/arm32 to arm/arm. 2001-01-12 13:43:11 +00:00
bjh21 6fa98146d5 Start merging actual code in arm32 and arm26:
arm32/arm32/in_cksum_arm32.c -> arm/arm/in_cksum_arm.c

Also move specification of other checksum stuff to files.arm, even though we
use the MI code for that.
2001-01-11 23:27:26 +00:00
bjh21 5159a10d97 Share <machine/elf_machdep.h> between arm26 and arm32. 2001-01-11 22:28:06 +00:00
bjh21 a2dacbe06d Switch over to using the generic arm header files for everything that arm26
and arm32 agree on.
2001-01-11 22:07:53 +00:00
bjh21 5a91dd00b9 Add "arm" to the "machine" line, so we get files.arm pulled in, and more
importantly, the arm->arch/arm/include symlink.
2001-01-10 18:38:37 +00:00
martin 5d0c67c603 When adding isdn devices I forgot to check chrtoblktbl.
Fix this know for the affected archs.
2001-01-09 20:51:04 +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
takemura c5fd828440 replace 'long long' with int64_t to compile stand alone program with
compiler other than GCC.
2001-01-03 10:08:55 +00:00
sommerfeld 851de295eb Change pci_intr_map to get interrupt source information from a "struct
pci_attach_args *" instead of from four separate parameters which in
all cases were extracted from the same "struct pci_attach_args".

This both simplifies the driver api, and allows for alternate PCI
interrupt mapping schemes, such as one using the tables described in
the Intel Multiprocessor Spec which describe interrupt wirings for
devices behind pci-pci bridges based on the device's location rather
the bridge's location.

Tested on alpha and i386; welcome to 1.5Q
2000-12-28 22:59:06 +00:00
matt 1ea4047532 Add __ELF__ case for RCSID. Now identical to arm26 version. 2000-12-28 03:53:31 +00:00
itojun efa2b7073c make mbstate_t bigger (32 -> 128 bytes).
XXX if you have libc after citrus locale import, please recompile libc,
and your applications that use mbstate_t (rather rare).  really sorry
for the mess.
2000-12-26 10:35:28 +00:00
jdolecek e9e91a0fb5 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.
2000-12-22 22:58:52 +00:00
itojun 823498203f populate _BSD_MBSTATE_T_. add warning regarding to rune_t. 2000-12-21 06:03:47 +00:00
bouyer c71f40d166 Add pseudo-device vlan 2000-12-19 10:42:02 +00:00
bjh21 689b0d9238 Regen 2000-12-19 00:36:54 +00:00
bjh21 6d2a9cf566 Correct i-cubed podule list from their CardType utility. 2000-12-19 00:36:26 +00:00
jdolecek cacec11253 delete obsolete comment 2000-12-17 15:52:39 +00:00
mycroft f25d5fc601 Fix another obvious linesw problem. 2000-12-16 21:16:22 +00:00
mycroft 8a6c4ba10b Fix an obvious braino in the line discipline change. 2000-12-16 21:09:18 +00:00
mycroft e06ad67fa5 Remove ALTENTRY(). It's dangerous and should not be used. 2000-12-14 20:15:26 +00:00
mycroft a34a3ecb5e Slight tweak. 2000-12-12 20:49:16 +00:00
mycroft a8ac146577 Adjust for userret() interface change. 2000-12-12 19:45:47 +00:00
mycroft ea3353ea19 Clean up some DEBUG stuff, move want_resched check from userret() to ast(). 2000-12-12 19:41:50 +00:00
mycroft 4944313b38 GC a little more cruft, and use __HAVE_MINIMAL_EMUL. 2000-12-12 18:26:43 +00:00
mycroft d90febaada More cleanup. 2000-12-12 18:13:29 +00:00
mycroft 9e9c8e676b Adjust some profiling stuff for the kernel. 2000-12-12 17:38:45 +00:00
mycroft 5e6430ffd8 Clean this up and add profiling stuff. 2000-12-12 07:35:25 +00:00
mycroft 9fc58d6908 Whoops, lay off the crack. 2000-12-12 06:36:19 +00:00
mycroft 446f34fb60 suswintr() and fuswintr() return -1 on error, not 0. 2000-12-12 06:32:39 +00:00
mycroft 7057d01bbc Inline need_resched() and need_proftick(). Make need_proftick() actually *do*
something!
2000-12-12 06:06:05 +00:00
mycroft 6a719db6e7 Still more cleanup. 2000-12-12 05:35:48 +00:00
mycroft c656add165 More cleanup. 2000-12-12 05:26:38 +00:00
mycroft e58eb48f25 Begin cleaning up the syscall path, a la i386. 2000-12-12 05:21:02 +00:00
bjh21 2d96994642 It seems that i-cubed used the "A" suffix on card types (along with "Lk" and
probably some others) to indicate the software mix on the card, while we
were using it to indicate Acorn-branded variants.  Change over to using "AEH"
for the latter.
2000-12-07 21:24:33 +00:00
bjh21 bd3f8674a0 Regen 2000-12-07 21:23:54 +00:00
bjh21 65cdac60a6 It seems that i-cubed used the "A" suffix on card types (along with "Lk" and
probably some others) to indicate the software mix on the card, while we
were using it to indicate Acorn-branded variants.  Change over to using "AEH"
for the latter, and while we're at it clean up the descrptions and add some
that were missing.
2000-12-07 21:23:32 +00:00
bjh21 2caf09a602 regen 2000-12-05 00:44:21 +00:00
bjh21 1bdf317d96 Add the 16bit podules I got from abs (ColourCard, Centronics, sampler, MIDI). 2000-12-05 00:43:55 +00:00
chs c29a1b4461 allow ports to override PAGER_MAP_SIZE in machine/vmparam.h.
some ports (such as arm32) don't have enough KVA for the
increased default size once the UBC mapping is also present.
2000-11-27 08:19:50 +00:00
chs 63d8906bac const poisoning. 2000-11-26 15:13:50 +00:00
bjh21 2906c5057a Regen. 2000-11-26 15:04:22 +00:00
bjh21 22b88b3d3e Add HCCS IDE interface, from Kjetil B. Thomassen <kjetil@thomassen.priv.no>. 2000-11-26 15:03:25 +00:00
chs 0ac52aaf1d remove MD functions for printing vnodes and buffers since there are
MI versions now.
2000-11-21 16:34:52 +00:00
chs 7af6378fca two changes to arm32 fault handling:
- when pcb_onfault is set, allow UVM to attempt to resolve permission faults
   as well as translation faults (rather than immediately invoking the
   onfault handler for permission faults).  this is needed for UBC since
   it will be normal for uiomove() to fault on read-only mappings which
   will be made writable by the pager.
 - clear pcb_onfault before calling uvm_fault() and restore it afterward.
   if the fault handler generates a pagefault, we'd like to panic rather
   than invoking the onfault handler.
2000-11-21 06:30:05 +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
lukem 9f10280ff3 OF_nextprop(): change 'char *nextprop' -> 'void *nextprop', in line with
pk's change to sys/dev/ofw/openfirm.h rev 1.15.
2000-11-18 12:15:50 +00:00
thorpej b84f740be0 Move bpfattach()/bpfdetach() calls into ether_ifattach()/ether_ifdetach(). 2000-11-15 01:02:11 +00:00
matt 39dc5fc58b Add openfirm pseudo-device. 2000-11-14 23:42:35 +00:00
matt edc0af8cd3 Add OF_nextprop and required conf-glue for /dev/openfirm. 2000-11-14 07:13:02 +00:00
abs d72a269feb If we only ever have a strongarm CPU, use
makeoptions    COPTS="-O2 -march=armv4 -mtune=strongarm"
some files previously had
	makeoptions    COPTS="-O2 -march=strongarm -mtune=strongarm"
some had no option at all
2000-11-13 18:40:34 +00:00
ad e6be92ad99 Pull in dev/i2o/files.i2o. 2000-11-08 19:48:51 +00:00
tsutsui 87ebc281b2 Print which IRQ is used for compatibility interrupts. (from i386) 2000-11-04 14:05:55 +00:00
abs cee0acd601 Add
options         INET6           # IPV6
#options        IPSEC           # IP security
#options        IPSEC_ESP       # IP security (encryption part; define w/ IPSEC)
#options        IPSEC_DEBUG     # debug for IP security
In the case of VOYAGER, comment out INET6 also
2000-11-03 10:18:55 +00:00
eeh bc7363329c Adapt to new line discipline scheme. 2000-11-02 00:26:35 +00:00
abs 0b8ff41f41 Recalculate NVRAM checksum when updating the NVRAM. Avoids 'reboot'
and 'halt' corruptring the NVRAM contents under RISC OS 4.
Taken from patch by Dave Daniels for PR/8759
2000-11-01 12:28:50 +00:00
abs e997060c61 Fix hanging problem with acorn scsi card on RiscPC and A7000 machines
PR port-arm32/10539 from Mike Pumford
2000-11-01 12:18:55 +00:00
tsutsui 5013e5d7f2 Enable options SOFTDEP. 2000-10-28 22:42:08 +00:00
abs 1ee75cc4e0 Add:
makeoptions        COPTS="-O2 -march=strongarm -mtune=strongarm"
2000-10-26 18:33:02 +00:00
abs 1bb1a44a90 Add (for StrongARM CPUs) commented out
makeoptions     COPTS="-O2 -march=armv3m -mtune=strongarm"
2000-10-26 14:15:33 +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
is 643b30ef1d Admit that we count wired pages. 2000-09-27 21:34:29 +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
augustss e9a2baa2ff Grab a major # for USB scanners. 2000-09-23 04:30:08 +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 0a7489b1e8 Enlarge RAMDISK to make it fit the installation fs again.
By Mike Pumford per port-arm32 mailing list..
2000-08-30 21:29:16 +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
nathanw 5127aa189d In fdioctl(), allocate fd_formb dynamically when needed, rather than on
the stack, and remove the no-longer-necessary PHOLD()/PRELE() calls
in fdformat().

(This eliminates 1/3 of the instances of PHOLD()/PRELE() in the kernel code.)

XXX We still have too many mostly-redundant floppy drivers.
2000-08-24 20:04:28 +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
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