Added the documentation section of arch/arm32 to not let it dissapear.
Can't say for sure ig the interrupts/majors+minors files are still valid though.
This commit is contained in:
parent
e8a24b6100
commit
492b11d134
|
@ -0,0 +1,12 @@
|
|||
# $NetBSD: bootloader,v 1.1 2001/10/18 00:05:00 reinoud Exp $
|
||||
|
||||
|
||||
The current bootloader (since 2001) is written in BASIC and is RISC OS
|
||||
version independent; it even runs on NC's.
|
||||
|
||||
In contrast to the old bootloader, the (new) bootloader is relocating the
|
||||
kernel itself at 0xf0000000. This address is fixed to support OFW
|
||||
machines which feature this start address.
|
||||
|
||||
The development of a 2nd stage bootloader is a possible extension.
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
/* $NetBSD: bootoptions,v 1.1 2001/10/18 00:05:01 reinoud Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1996 Mark Brinicombe.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* This product includes software developed by Mark Brinicombe.
|
||||
* 4. The name of the company nor the name of the author may be used to
|
||||
* endorse or promote products derived from this software without specific
|
||||
* prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
||||
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* RiscBSD kernel project
|
||||
*
|
||||
* bootoptions
|
||||
*
|
||||
* Description of all available boot options
|
||||
*
|
||||
* Created : 02/10/96
|
||||
* Updated : 20/02/01
|
||||
*/
|
||||
|
||||
This file describes all the boot options available.
|
||||
|
||||
RiscPC Boot options
|
||||
|
||||
Options for all kernels
|
||||
|
||||
nocache Disable all processor caches
|
||||
nowritebuf Disable processor write buffer
|
||||
fpaclk2 Clock FPA at half processor clock speed
|
||||
single Single user mode
|
||||
kdb KDB
|
||||
maxproc= Specify the maximum in-core processes (L1 page tables)
|
||||
ramdisc= Specify ramdisc size in KB
|
||||
nbuf= Specify the number of buffers
|
||||
nowdreset Skip the wd driver drive reset command
|
||||
ascpoll Use polling mode rather than interrupt mode for the asc
|
||||
driver
|
||||
nbuf= Specify the number of buffers to use.
|
||||
|
||||
Options for StrongARM kernels
|
||||
|
||||
icache Enable instruction cache
|
||||
dcache Enable data cache
|
||||
|
||||
Special debugging options not for normal use
|
||||
|
||||
pmapdebug= Specify pmap debug level
|
||||
termdebug Enable console debugging
|
||||
notermcls Console debugging option
|
||||
|
||||
RC7500 Boot options
|
||||
|
||||
-s Single user mode
|
||||
-a Prompt for root device
|
||||
-k KDB
|
||||
-m video memory size
|
||||
|
|
@ -0,0 +1,463 @@
|
|||
# $NetBSD: history,v 1.1 2001/10/18 00:05:01 reinoud Exp $
|
||||
---------------------------------------------------------------------------
|
||||
This document is more included as a historical reference and nostalgia :)
|
||||
rather than a still worked on list.
|
||||
---------------------------------------------------------------------------
|
||||
(stuff before this time is aparently lost)
|
||||
|
||||
3135 - fixed mode selection on boot
|
||||
- page up/down, insert and delete now generate the correct codes in
|
||||
the console
|
||||
- the configured modesare now compiled in a separate file rather
|
||||
than in vidcconsole.c
|
||||
- The eb timeout reduced to 30 secs
|
||||
|
||||
- clreos problems fixed
|
||||
- / on the keypad generated the correct code
|
||||
- the block cursor hove down 2 scan lines to align with characters
|
||||
- extended irq renamed netslot
|
||||
- extra double mapping of kstack removed
|
||||
- kstack located at efbfe000
|
||||
- implementation of cpu_swapin() to remap the kstack
|
||||
- patch to vm_glue to use kmem_alloc for the kstack
|
||||
- extra pmap debugging code added with DEBUG669
|
||||
- the pventry tables can not be dumped from the kshell
|
||||
or from a running system.
|
||||
|
||||
- merged console code v133 into kernel
|
||||
- the disklabel code no longer prints a warning if a HD is found
|
||||
without a adfs partition
|
||||
- the kbd driver now is capable of setting the keyboard leds.
|
||||
- added ioctl to set the keyboard leds.
|
||||
- added a routine to read the keyboard state.
|
||||
- added a routine to set the keyboard state.
|
||||
- added some prototypes to kbd.h
|
||||
- implmented irq_setmasks() as an assembly function.
|
||||
- added an extra disable irq mask
|
||||
- the irq bits from IOMD reg A are cleared as soon as req A is read
|
||||
- Debugged the plip driver. The ip packet is now word aligned when
|
||||
passed to the upper network levels
|
||||
|
||||
20/09/95
|
||||
- the cpu_switch routine checks the amount of stack space used when
|
||||
swapping in a task and prints a warning when 6K has been used
|
||||
- removed the remnants of the old kstack double mapping
|
||||
- a separate message is printed for umounts during a halt.
|
||||
- added extra validation in copyin() copyout() copyinstr() and
|
||||
copyoutstr()
|
||||
- podule irq handler no longer panics
|
||||
- Lark A16 podule now recognised
|
||||
- section permission faults now cause bus errors
|
||||
- the syscall handler now correctly uses bcopy to copy the register
|
||||
passed parameters
|
||||
- the copyin() function now validates the uaddrs argumant
|
||||
- the kstack is filled with a know pattern on a fork()
|
||||
- the postmortem code will check the size of the kstack fill pattern
|
||||
- the assembly bcopyinout() now returns EFAULT on error
|
||||
- the copyin() copyout() copyinstr() copyoutstr() now return EFAULT
|
||||
if the validation checks fail.
|
||||
23/09/95
|
||||
- the fault handler will report faults from (fu/su)iwintr()
|
||||
- added new pmap function to return the address of the next physical
|
||||
page (pmap_next_phys_page).
|
||||
- added code to machdep.c to compare the page number against
|
||||
pmap_next_phys_page() to try and locate source to kernel size
|
||||
limit
|
||||
- added option to syscall_special (32) to return the address of the
|
||||
next physical page.
|
||||
- fixed the primary bootstrap to map more memory for the secondary
|
||||
bootstrap to use.
|
||||
- The 936K kernel size limit has been removed.
|
||||
- Added support for KTRACE in syscall.c
|
||||
- Seondary bootstrap now zeros down its memory
|
||||
- cpu_switch now zeros curpcb while there is no valid process
|
||||
-
|
||||
1/10/95
|
||||
- cpuswitch now detects trahsed stacks.
|
||||
- new compile option for generation of enhanced postmortem debugging
|
||||
- merged console code 183b
|
||||
- implemented a memcpy routine
|
||||
- removed remnants of the kstackpte's
|
||||
- cleaned old commented debugging code out of cpu_switch
|
||||
- Added new comments in exception.S
|
||||
- userret() check for a non-zero proc pointer
|
||||
- extended postmortem debug for cpu_switch bug
|
||||
- updated prototype declarations in machdep.c
|
||||
- fixed passing of proc0 pointer into cpu_switch from switch_exit
|
||||
- podulebus now recognised Lingenuity podules
|
||||
- Lingenuity 16bit SCSI card recognised
|
||||
|
||||
3/10/95
|
||||
- new compile option ROTTEN_INARDS to dump full debugging info on
|
||||
postmortem
|
||||
- Rewritten postmortem debug information printout
|
||||
- Postmortem will now examine the IRQ stack for traceback info
|
||||
- Fix cpu_exit() bug thus could result in the idle being entered at
|
||||
splhigh()
|
||||
- Added function prototypes for functions called in vm_machdep.c
|
||||
- boot0() now makes sure IRQ's and FIQ's have been disabled
|
||||
- The ARM700 FPA is now correctly turned off during boot
|
||||
- A major has been allocated for the vidcaudio device (36)
|
||||
- vidcaudio.c added to mainbus/ and associated support added in
|
||||
conf/ and conf.c
|
||||
- Patch to the console code to report the version number
|
||||
- Latest version of dev/isa/com.c merged into mainbus/com.c
|
||||
- Latest version of dev/isa/lpt.c merged into mainbus/lpt.c
|
||||
- Latest version of dev/isa/wd.c merged into mainbus/wd.c
|
||||
- new assembly version of copystr added
|
||||
- buffer address for beep0 removed from attach message
|
||||
- unrecognised undefined instructions are now logged as errors to
|
||||
syslog
|
||||
- fpe now attaches a coproc2 handler to stap coproc2 FP instructions
|
||||
and report an error
|
||||
- New compile option FPE_INLINE added to fpe.c to inline some of the
|
||||
conversion functions
|
||||
- Added new compile option FPE_PROF to fpe.c to compile in FP profiling
|
||||
code
|
||||
-
|
||||
|
||||
14/10/95
|
||||
- added podule id for laser direct card
|
||||
- added podule id for morley SCSI card
|
||||
- added podule id for AXRE SCSI card
|
||||
- added podule id for CC midi max card
|
||||
- modified primary/secondary bootstraps to reserve special boot
|
||||
- memory for hydra board
|
||||
- added hydra device
|
||||
- Added cpu identification for all hydra processors
|
||||
- Private stacks are allocated to all slave processors
|
||||
- All hydra processors are halted on reboot
|
||||
- podule code checks for chunk directories but does not try to read
|
||||
them yet.
|
||||
- polling, immediate execution asc driver written for Acorn SCSI
|
||||
card
|
||||
- new special syscalls added to aid development of hydra software
|
||||
|
||||
01/11/95
|
||||
- kernel built with new netbsd-current source tree
|
||||
- arm32 source updated to conform to latest netbsd-current source
|
||||
tree
|
||||
|
||||
03/11/95
|
||||
- ALT-Cursor Left/Right now work the correct way round
|
||||
- ALT-F6 now gernerates the correct code
|
||||
- alpha version of the cumana SCSI II driver added
|
||||
- alpha version of the ether1 driver added
|
||||
- console code upgraded to V191
|
||||
- driver directory structure changed.
|
||||
- ./src/patch directory updated
|
||||
- alpha version of ATAPI CDROM driver added
|
||||
- mainbus and podulebus directories split in to public and private
|
||||
directories.
|
||||
- warnings from validate_trapframe() are prefixed with "VTF"
|
||||
- old rpc console stuff removed from files.arm32 and source moved to
|
||||
arch/arm32/old/
|
||||
- the arch/arm32/pmap_stuff dir has been moved to arch/arm32/old/
|
||||
- the _mcount.S and belgium.S files have been moved to old and
|
||||
removed from files.arm32
|
||||
- the device name to major code in autoconf.c now recognised /dev/cd
|
||||
and /dev/wcd
|
||||
- the mountroot code in stubs.c will call cd9660_mountroot() instead
|
||||
of ffs_mountroot() is the root dev is a CDROM major.
|
||||
- major 36 allocated to audio device
|
||||
- major 37 allocated to vidcvideo device
|
||||
- major 38 allocated to hydra device
|
||||
|
||||
|
||||
07/11/95
|
||||
- cpu_fork() now maps in a page table for each process covering the
|
||||
0M-4M block of memory.
|
||||
- VM_MIN_ADDRESS lowered to 0x1000
|
||||
- cpu_swapout() unmaps the system page at 0x00000000 from its page
|
||||
table
|
||||
- cpu_swapin() wires down the pagetable covering 0x00000000 and
|
||||
maps in the system page at 0x00000000
|
||||
- cpu_swapin() and cpu_swapout() moved to vm_machdep.c
|
||||
- pmap_enter_pv() no longer panics on duplicate mapping, it just
|
||||
prints an warning.
|
||||
- alpha version of the powertec SCSI driver
|
||||
|
||||
15/11/95
|
||||
- switch_exit now unmaps the system page.
|
||||
- added newline to printf in disksubr.c
|
||||
- the console code has been moved to the dev directory
|
||||
- cumana SCSI II driver upgraded to support interrupts
|
||||
- powertec SCSI II driver upgraded to support interrupts
|
||||
- the mount root code in stubs.c will attempt to mount
|
||||
a hd partition as cd9660 if the ffs_mountroot() fails.
|
||||
- added missing copyright notices
|
||||
- updated some declarations in header files
|
||||
- removed DEBUG669 code from pmap.c
|
||||
- new syncing routine written for boot()
|
||||
- syncing no longer requires kshell support
|
||||
- Added extra comments to the boot() function
|
||||
- Implemented cpu_sysctl() function (just returns not supported
|
||||
error)
|
||||
- The nosync kernel interrupt now correctly uses RB_NOSYNC
|
||||
-
|
||||
|
||||
20/11/95
|
||||
- restructure of directories contains device files
|
||||
- fixed bug in pmap_pte() that could result in non-word
|
||||
aligned pointers being returned in a off page boundry virtual
|
||||
address was specified.
|
||||
-
|
||||
|
||||
24/11/95
|
||||
- merged in new netbsd-current source tree
|
||||
- removed all the validate_trapframe() calls
|
||||
- the ioctl CONSOLE_BLANKTIME now reloads the blank timer
|
||||
- the ioctl CONSOLE_BLANKTIME uses the default blank time if a
|
||||
negative time is specified.
|
||||
- the machine id is now passed in the bootconfig structure
|
||||
- the eb0 driver will set the MAC address from the machine id
|
||||
if the address has not already been set.
|
||||
|
||||
26/11/95
|
||||
- Fixed the definition of va_dcl in arm32/include/varargs.h
|
||||
-
|
||||
|
||||
02/12/95
|
||||
- Fixed the WriteShort() macro
|
||||
- Removed some redundant code from machdep.c
|
||||
- cpu_sysctl is now declared to return an int
|
||||
- stubs.c now has prototypes for the floppy driver functions it
|
||||
calls when loading the ramdisc.
|
||||
- further debugging work on the ether3 driver
|
||||
|
||||
10/12/95
|
||||
- Added uk device for unknown scsi devices to configuration files
|
||||
and conf.c
|
||||
- Alpha version of the ether3 ea device driver
|
||||
|
||||
14/12/95
|
||||
- Merged in beta version of the ether1 (ie) device driver
|
||||
- added ifdefs to stubs.c so the cd9660_mountroot() is only called
|
||||
when the kernel is compiled with CD9660
|
||||
- created new text file to track all major and minor numbers
|
||||
|
||||
16/12/95
|
||||
- define __FORK_BRAINDAMAGE for compilation with the latest NetBSD
|
||||
sources
|
||||
- boot() now calls doshutdownhooks()
|
||||
- merged in frank's new debugger code (process_machdep.c, ptrace.h,
|
||||
regs.h)
|
||||
- patches stub.c to take account of frank's new code
|
||||
- patch cpu.h to give more detail on the PSR bits
|
||||
- fixed the setting of p->p_mdregs to point to the trapframe in
|
||||
the kernel mapping of kstack rather than the current mapping.
|
||||
- removed some redundant code from mem.c
|
||||
- commented out all the trace_debug code
|
||||
- cpu_coredump moved from stubs.c to vm_machdep.c
|
||||
- implemented ptrace.S in libc
|
||||
- boot() no longer sets the curproc to proc0 if it was zero.
|
||||
- spl's added to the console locking code
|
||||
-
|
||||
|
||||
19/12/95
|
||||
- merged in new console code (V203) from Nut
|
||||
- dosoftints() now calls pppintr()
|
||||
|
||||
21/12/95
|
||||
- sys_sysarch() no longer panics but returns EINVAL instead.
|
||||
- added 3 new debugging syscalls for tracing the vnode bug
|
||||
- identified what goes wrong with vnodes resulting in a lockup
|
||||
- fixed a number of source file headers
|
||||
- Added new comments to a number of routines.
|
||||
- readdisklabel() now sets the B_AGE flag on its buffer
|
||||
- ether3 drive now reports the controller chip type
|
||||
- removed all stand and glue code from kshell
|
||||
- added a new debugging syscall to all wakeup() to be called
|
||||
|
||||
24/12/95
|
||||
- removed redundant physconinit() call in initarm().
|
||||
- updated comments in machdep.c
|
||||
- added support for mulitple swap devices to be specified at boot
|
||||
time
|
||||
- changed debugging output in userret()
|
||||
- added extra debugging
|
||||
- added new debugging syscalls for tracubg the vnode bug
|
||||
- added new debugging commands to the kshell
|
||||
- added a new insw16() function for faster block transfers
|
||||
- created a patch to fix p_nice
|
||||
- the wd driver now supports multisector transfers
|
||||
- added a new outsw16() function for faster block transfers but is
|
||||
currently untested
|
||||
- the existing arm32/fpe directory has been renamed to
|
||||
arm32/fpe-sp
|
||||
- started work on integrating the ARM FPE
|
||||
- a new fpe directory arm32/fpe-arm has been created for the new FPE
|
||||
- file arm32/cpu.S renamed to arm32/cpuswitch.S
|
||||
- created new mainbus device 'cpu' (mainbus/cpu.c)
|
||||
- created new header file include/cpus.h to hold macros and
|
||||
structure definitions for cpus.
|
||||
- all identify functions for the processor and FPA have been moved
|
||||
to mainbus/cpu.c
|
||||
- FPE is now attached during the cpu attachment during
|
||||
autoconfiguration
|
||||
- Identification of CPU and FPU split into separate functions in
|
||||
mainbus/cpu.c
|
||||
- Added new function initialise_fpe() to fpe-sp/fpe.c This is the
|
||||
new initialisation point for the FPE. All vector claiming is done
|
||||
in this routine. Routine is also responsible for IDing the FPE.
|
||||
- ramdisc memory allocation now only ever done in the ramdisc driver
|
||||
- cpu_model now declared in mainbus/cpu.c
|
||||
- rpc_configure() renamed to configure()
|
||||
- added function need_proftick() to clock.c
|
||||
- further development work ARM FPE driver
|
||||
- glue code for ARM FPE written and tested.
|
||||
- ARM FPE now gets first chance as being installed with
|
||||
the existing FPE installed as a fallback if the ARM FPE
|
||||
installation failed.
|
||||
- Hooks for the ARM FPE added in cpu_fork() cpu_exit() and
|
||||
cpu_switch()
|
||||
- Recoding of ether3 driver started.
|
||||
- More debugging code added to trace vnode bug
|
||||
- macro added to syscall.c to handle exit from the syscall handler
|
||||
for special development syscalls.
|
||||
- Vnode bug idenitfied as a corruption of the first word (v_flag)
|
||||
of certain vnodes.
|
||||
- Ether3 driver rewritten and debugged. Now a beta stage driver
|
||||
- Vnode corruption traced to console code.
|
||||
- Ether3 drive now has interface buffer memory tests
|
||||
- vnode corruption traced to do_scrolldown() routine in the
|
||||
console driver.
|
||||
- vnode corruption bug located and fixed. Incorrect loop start and
|
||||
end points when scrolling the character map down (writing beyond
|
||||
allocated memory).
|
||||
- Started work on rewriting the etherB driver
|
||||
- cleaned up various header files
|
||||
- removed stub.c as it was no longer needed
|
||||
- updated strstr.c
|
||||
- hydra code hooks now only compiled in if hydra device is
|
||||
configured
|
||||
- EtherB driver rewritten to match recoding of ether3 driver
|
||||
- EtherB driver now a beta stage driver
|
||||
- Work started on generic driver code for SEEQ EDLC's
|
||||
- vidcvideo device now supports multiple openings
|
||||
- EtherB driver now puts the controller to sleep when not active
|
||||
- strstr() replaced with version borrowed from libc/string/strstr.c
|
||||
|
||||
05/01/96
|
||||
- Further development of ARM FPE
|
||||
- generic fas216 code no longer experimental/NDA
|
||||
- powertec scsi driver no longer experimental/NDA
|
||||
- entry to undefined instruction handlers is now indirected in
|
||||
exception.s
|
||||
- entry to the undefined instruction handlers is made a trapframe
|
||||
on the stack and r0-r12 preserved from exception.
|
||||
- bounce code added so the existing undefined instuction handler
|
||||
can be called with r0 pointing to the trapframe.
|
||||
- new function arm_fpe_copycontext created
|
||||
- fixed the use of FP instructions in sfas.c
|
||||
- fixed errors in the softint code
|
||||
- netns support can be be compiled in the kernel
|
||||
- fixed warnings in fpe-sp/fpe.c and mainbus/cpu.c
|
||||
|
||||
10/01/96
|
||||
- exception.S updated pending new undefined instruction handling
|
||||
code
|
||||
- merged in new wd driver from NetBSD-current
|
||||
- merged in new com driver from NetBSD-current
|
||||
- merged in new fd driver from NetBSD-current
|
||||
- created new file sys_machdep.c for machine dependant syscall stuff
|
||||
- moved sys_sysctl from machdep.c to sys_machdep.c
|
||||
- fixed nested comments in iic.S
|
||||
- removed old bug tracing code from cpuswitch.S
|
||||
- debugged new fd driver
|
||||
|
||||
13/01/96
|
||||
- undefined mode r13 added to the pcb structure
|
||||
- new version of the ARM fpe built
|
||||
- ARM FPE now has core deactivate routine accessible
|
||||
- Call back from ARM FPE added on instruction completion
|
||||
- cpu_switch() now switches UND32 mode r13
|
||||
- cpu_fork() now sets up UND32 mode r13 in pcb
|
||||
- undefined vector now calls stub routine that indirects
|
||||
via address held in data area.
|
||||
- data abort handler address now held in data area rather
|
||||
than text area.
|
||||
- prefetch abort handler address now held in data area rather
|
||||
than text area.
|
||||
- disabled warnings about soft errors from the fd driver
|
||||
|
||||
17/01/96
|
||||
- implemented pmap_resident_count()
|
||||
- fixed the kernel avail_start and avail_end variable. This
|
||||
fixes the divide by zero bug in /bin/ps
|
||||
- ps now reports the correct resident size
|
||||
|
||||
19/01/96
|
||||
- kernel now supports permission faults in UND32 mode.
|
||||
- kernel shell now has kshell> prompt instead of #
|
||||
- ramdisc loading code has been moved from stubs.c to fd.c
|
||||
- ramdisc loading code now uses a rd_conf structure to
|
||||
describe the ramdisc.
|
||||
- rd_hooks.c file added to the arm32/dev directory in
|
||||
order to support the generic ramdisk.
|
||||
- patch to generic ramdisc driver to allow a device match hook
|
||||
- mainbus/ramdisc.c removed.
|
||||
- generic ramdisc has now replaces to mainbus/ramdisc.
|
||||
- fault.c reformatted
|
||||
- new compile symbols introduced to comile in debug code for
|
||||
fault correction.
|
||||
- all remnants of the trace_debug code removed.
|
||||
- armfpe code moved from arm32/fpe-arm/arm32 to arm32/fpe-arm/
|
||||
- fu*() su*() functions moved from libkern into arm32/fusu.c
|
||||
- added code to locore.S to traceback frames on the user process
|
||||
stack
|
||||
- added variable to enable / disable tracing back of user process
|
||||
stacks
|
||||
- added syscall to control user stack trackbacks.
|
||||
- optimised ARM FPE exception delivery code
|
||||
- implemented ARM FPE post processing callback glue
|
||||
- ARM FPE post processor now calls user
|
||||
- ARM FPE post processor optimised to recover some of the
|
||||
performance lost by calling userret()
|
||||
- integrated alpha version of the etherH driver
|
||||
- updated ramdisc hooks to removed the need for a rd_match_hook()
|
||||
function
|
||||
- added Oak to the list of podule manufacturers
|
||||
- kernel now reconised Oak SCSI I cards.
|
||||
- Added generic NCR5380 SCSI driver code
|
||||
- integrating in alpha version of the oak SCSI driver
|
||||
|
||||
26/01/96
|
||||
- merged in latest updates from the NetBSD-current source tree
|
||||
|
||||
29/01/96
|
||||
- code updated for merging into NetBSD source tree
|
||||
|
||||
02/02/96
|
||||
- assembly symbol file now names assym.h instead of assym.s
|
||||
- The symbol LOCORE has been replaced with _LOCORE
|
||||
- ramdisc loading code in now compiled in conditionally on
|
||||
RAMDISK_HOOKS
|
||||
- Further development of hydrabus device.
|
||||
- cpus can noe be attached to both the mainbus and the hydrabus
|
||||
- hooks for hydrabus device updated in pmap.c syscall.c and
|
||||
machdep.c
|
||||
- Extra comments added in exception.S
|
||||
- sizeof(struct trapframe) now defined in assym.h
|
||||
- register fixup for data transfer instruction aborts now handles
|
||||
LDC/STC instructions i.e. hardware executed LDF/STF
|
||||
- configuration files updated for latest devices
|
||||
- fixed use of mkdepend in makefile
|
||||
- fixed the bug that caused panics when issuing the mode change
|
||||
ioctl to the vidcvideo device
|
||||
- console code version number updated
|
||||
- Updated armfpe_post_proc() to take a trapframe pointer as the
|
||||
second argument
|
||||
- updated the armfpe_post_proc_glue() code to fake a trapframe
|
||||
structure from the FPE frame before calling the post proc handler
|
||||
so that sendsig has a valid trapframe in p->p_md.md_regs
|
||||
- updated the armfpe_post_proc_glue() code to patch the FPE frame
|
||||
with data from the trapframe on return from the post proc handler.
|
||||
- signal delivery is now working during FP instructions.
|
||||
- mondef code resurrected and renamed to setdisplay and moved to the
|
||||
stand directory.
|
||||
|
||||
|
||||
NetBSD/arm32 source code is now merged in to the NetBSD source tree.
|
||||
All code changes are now logged via CVS and are available from the
|
||||
NetBSD source-changes mailing list.
|
|
@ -0,0 +1,81 @@
|
|||
/* $NetBSD: interrupts,v 1.1 2001/10/18 00:05:01 reinoud Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 1996 Mark Brinicombe.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* This product includes software developed by Mark Brinicombe.
|
||||
* 4. The name of the company nor the name of the author may be used to
|
||||
* endorse or promote products derived from this software without specific
|
||||
* prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
||||
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
Notes on interrupts.
|
||||
|
||||
Ok since interrupts can be chained the return value from an interrupt
|
||||
handler is important.
|
||||
|
||||
The following return values are defined :
|
||||
|
||||
-1 - interrupt may have been for us but not sure so pass it on
|
||||
0 - interrupt no serviced (not ours)
|
||||
interrupt serviced but pass on down the chain
|
||||
1 - interrupt serviced do not pass on down the chain
|
||||
|
||||
The important bit is whether the interrupt should be passed on down
|
||||
the chain of attached interrupt handlers.
|
||||
|
||||
For some interrupts and drivers where only a single device is
|
||||
ever expected, the interrupt should be claimed if it has been serviced.
|
||||
Passing it on down the chain may result in the stray interrupt handler
|
||||
being called.
|
||||
There are however some interrupt that should *always* be passed on down
|
||||
the chain. These are interrupt which may commonly have multiple drivers
|
||||
attached.
|
||||
|
||||
The following interrupts should always be passed on (return value of 0)
|
||||
|
||||
IRQ_TIMER0
|
||||
IRQ_TIMER1
|
||||
IRQ_VSYNC
|
||||
IRQ_FLYBACK
|
||||
IRQ_PODULE
|
||||
|
||||
IRQ_CLOCK (RC7500)
|
||||
|
||||
The following interrupts are recommended to be passed on
|
||||
|
||||
IRQ_DMACH0
|
||||
IRQ_DMACH1
|
||||
IRQ_DMACH2
|
||||
IRQ_DMACH3
|
||||
IRQ_DMASCH0
|
||||
IRQ_DMASCH1
|
||||
|
||||
IRQ_SDMA (RC7500)
|
||||
|
||||
All other interrupts are not expected to be shared and may be claimed
|
||||
when serviced. Stray IRQ handlers may or may not be attached to the end
|
||||
of these irq chains.
|
|
@ -0,0 +1,298 @@
|
|||
/* $NetBSD: majors+minors,v 1.1 2001/10/18 00:05:01 reinoud Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 19941198 Mark Brinicombe.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* 3. All advertising materials mentioning features or use of this software
|
||||
* must display the following acknowledgement:
|
||||
* This product includes software developed by Mark Brinicombe
|
||||
* for the NetBSD Project.
|
||||
* 4. The name of the company nor the name of the author may be used to
|
||||
* endorse or promote products derived from this software without specific
|
||||
* prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
* IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
|
||||
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* list of all allocated major numbers
|
||||
*
|
||||
* Created : 17/09/94
|
||||
*/
|
||||
|
||||
List of allocated and reserved major and minor numbers
|
||||
|
||||
The block and character major numbers are ALWAYS allocated together to the
|
||||
same device driver even if the driver does not require both.
|
||||
|
||||
0 B - reserved
|
||||
0 C - memory device
|
||||
minor = 0 - /dev/mem
|
||||
minor = 1 - /dev/kmem
|
||||
minor = 2 - /dev/null
|
||||
minor = 3 - /dev/zero
|
||||
1 B - swap device
|
||||
1 C - psuedo swap device
|
||||
minor = 0 - /dev/drum
|
||||
2 B - reserved
|
||||
2 C - console device
|
||||
minor = 0 - /dev/console
|
||||
3 B - reserved
|
||||
3 C - controlling terminal
|
||||
minor = 0 - /dev/tty
|
||||
4 B - reserved
|
||||
4 C - virtual console
|
||||
/dev/ttyv{unit}
|
||||
unit = minor
|
||||
5 B - reserved
|
||||
5 C - kernel log device
|
||||
minor = 0 - /dev/klog
|
||||
6 B - reserved
|
||||
6 C - psuedo tty master
|
||||
/dev/pty{class}{unit}
|
||||
unit = minor % 16
|
||||
minor / 16 = 0 - class = p
|
||||
minor / 16 = 1 - class = q
|
||||
minor / 16 = 2 - class = r
|
||||
minor / 16 = 3 - class = s
|
||||
minor / 16 = 4 - class = t
|
||||
7 B - reserved
|
||||
7 C - psuedo tty slave
|
||||
/dev/tty{class}{unit}
|
||||
unit = minor % 16
|
||||
minor / 16 = 0 - class = p
|
||||
minor / 16 = 1 - class = q
|
||||
minor / 16 = 2 - class = r
|
||||
minor / 16 = 3 - class = s
|
||||
minor / 16 = 4 - class = t
|
||||
8 B - reserved
|
||||
8 C - parallel printer
|
||||
/dev/lp{class}{unit}
|
||||
unit = minor & 0x1f
|
||||
minor & 0x80 = 0x00 - class = t - interrupt driver
|
||||
minor & 0x80 = 0x80 - class = a - polling driver
|
||||
e.g.
|
||||
0 - /dev/lpt0
|
||||
128 - /dev/lpa0
|
||||
9 B - reserved
|
||||
9 C - quadrature mouse
|
||||
minor = 0 - /dev/quadmouse
|
||||
10 B - reserved
|
||||
10 C - beep device
|
||||
minor = 0 - /dev/beep
|
||||
11 B - reserved
|
||||
11 C - keyboard device
|
||||
minor = 0 - /dev/kbd
|
||||
12 B - reserved
|
||||
12 C - serial port
|
||||
/dev/tty0{unit}
|
||||
unit = minor
|
||||
13 B - reserver
|
||||
13 C - reserved
|
||||
14 B - reserved
|
||||
14 C - reserved
|
||||
15 B - reserved
|
||||
15 C - reserved
|
||||
16 B - ST506/ESDI/IDE disk
|
||||
/dev/wd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
16 C - ST506/ESDI/IDE disk
|
||||
/dev/rwd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
17 B - floppy disk
|
||||
/dev/fd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
17 C - floppy disk
|
||||
/dev/rfd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
18 B - ram disk
|
||||
/dev/rd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
18 C - ram disk
|
||||
/dev/rrd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
19 B - vnode disk driver
|
||||
/dev/vnd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
19 C - vnode disk driver
|
||||
/dev/rvnd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
20 B - reserved (ATAPI CDROM)
|
||||
/dev/acd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
20 C - reserved (ATAPI CDROM)
|
||||
/dev/racd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
21 B - concatenated disk driver
|
||||
/dev/ccd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
21 C - concatenated disk driver
|
||||
/dev/rccd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
22 B - reserved
|
||||
22 C - reserved
|
||||
23 B - reserved
|
||||
23 C - reserved
|
||||
24 B - SCSI disk
|
||||
/dev/sd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
24 C - SCSI disk
|
||||
/dev/rsd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
25 B - SCSI tape
|
||||
25 C - SCSI tape
|
||||
26 B - SCSI cdrom
|
||||
/dev/cd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
26 C - SCSI cdrom
|
||||
/dev/rcd{unit}{partition}
|
||||
partition = minor % 8
|
||||
unit = minor / 8
|
||||
27 B - reserved
|
||||
27 C - SCSI autochanger
|
||||
/dev/ch{unit}
|
||||
unit = minor
|
||||
28 B - reserved
|
||||
28 C - SCSI unknown device
|
||||
/dev/uk{unit}
|
||||
unit = minor
|
||||
29 B - reserved
|
||||
29 C - SCSI scanner device
|
||||
/dev/ss{unit}
|
||||
unit = minor
|
||||
30 B - reserved
|
||||
30 C - reserved
|
||||
31 B - reserved
|
||||
31 C - reserved
|
||||
32 B - reserved
|
||||
32 C - Berkeley packet filter
|
||||
/dev/bpf{unit}
|
||||
unit = minor
|
||||
minor = 0 - /dev/bpf0
|
||||
minor = 1 - /dev/bpf1
|
||||
minor = 2 - /dev/bpf2
|
||||
minor = 3 - /dev/bpf3
|
||||
33 B - reserved
|
||||
33 C - network tunnel
|
||||
/dev/tun{unit}
|
||||
unit = minor
|
||||
minor = 0 - /dev/tun0
|
||||
minor = 1 - /dev/tun1
|
||||
minor = 2 - /dev/tun2
|
||||
34 B - reserved
|
||||
34 C - file descriptor pseudo-device
|
||||
minor = 0 - /dev/stdin
|
||||
minor = 1 - /dev/stdout
|
||||
minor = 2 - /dev/stderr
|
||||
35 B - reserved
|
||||
35 C - loadable module driver
|
||||
minor = 0 - /dev/lkm
|
||||
36 B - reserved
|
||||
36 C - generic audio device
|
||||
37 B - reserved
|
||||
37 C - vidcconsole device
|
||||
minor = 0 - /dev/vidcconsole
|
||||
38 B - reserved
|
||||
38 C - cpu/hydra
|
||||
minor = 0 - /dev/cpu0
|
||||
39 B - reserved
|
||||
39 C - reserved
|
||||
40 B - reserved
|
||||
40 C - PS2 mouse
|
||||
minor = 0 - /dev/pms
|
||||
41 B - reserved
|
||||
41 C - reserved
|
||||
42 B - reserved
|
||||
42 C - IIC device
|
||||
43 B - reserved
|
||||
43 C - RTC device
|
||||
44 B - reserved
|
||||
44 C - reserved (generic video)
|
||||
(/dev/gfx{unit})
|
||||
(unit = minor)
|
||||
45 B - reserved
|
||||
45 C - reserved (virtual console)
|
||||
(/dev/ttyg{unit})
|
||||
(unit = minor)
|
||||
46 B - reserved
|
||||
46 C - ip-filter
|
||||
47 - reserved
|
||||
48 B - reserved
|
||||
48 C - S/PDIF
|
||||
49 B - reserved
|
||||
49 C - ofrom
|
||||
50 B - reserved
|
||||
50 C - smart card (/dev/scr)
|
||||
51 B - reserved
|
||||
51 C - reserved
|
||||
52 B - reserved
|
||||
52 C - random device
|
||||
53 B - reserved
|
||||
53 C - FIQ profiler
|
||||
54 B - reserved
|
||||
54 C - Footbridge diag serial
|
||||
minor = 0 - /dev/fcom
|
||||
55 B - reserved
|
||||
55 C - reserved for bypass device
|
||||
56 B - reserved
|
||||
56 C - ISA jostick
|
||||
57 B - reserved
|
||||
57 C - MIDI I/O
|
||||
58 B - reserved
|
||||
58 C - Sequencer I/O
|
||||
59 B - reserved
|
||||
59 C - reserved for CODA
|
||||
60 B - reserved
|
||||
60 C - wsdisplay device
|
||||
61 B - reserved
|
||||
61 C - wskbd device
|
||||
62 B - reserved
|
||||
62 C - wsmouse device
|
||||
63 B - reserved
|
||||
63 C - reserved
|
||||
64 B - reserved
|
||||
64 C - USB controller
|
||||
65 B - reserved
|
||||
65 C - USB HID
|
||||
66 B - reserved
|
||||
66 C - USB printer
|
||||
67 B - reserved
|
||||
67 C - reserved
|
||||
68 B - reserved
|
||||
68 C - reserved
|
||||
69 B - reserved
|
||||
69 C - reserved
|
||||
|
||||
70+ free for allocation
|
Loading…
Reference in New Issue