mark
c025aad597
Implement __indr_reference macro.
1997-07-22 14:35:22 +00:00
mark
917e4bdd0b
Implement inst_unconditional_flow_transfer as a macro.
1997-07-17 02:28:39 +00:00
thorpej
0404c01c46
#define DB_AOUT_SYMBOLS
1997-06-26 01:26:56 +00:00
mrg
dc6a98e92c
bring mrg-vm-swap2 onto mainilne.
1997-06-12 15:09:23 +00:00
mark
323b20590a
Remove some nasty casts in macros. This fixes problems accessing raw
...
partitions > 4GB in size.
1997-06-03 23:48:36 +00:00
gwr
e2a58b69f7
Add #define __VM_PMAP_HACK as a temporary measure.
1997-05-16 21:35:30 +00:00
fvdl
115b6d92fa
Define ALIGNED_POINTER
1997-02-24 23:16:53 +00:00
mark
60cab4af5d
Centralise the definition of the ASM macros used to push and pull and
...
trapframe and irqframe structures defined here top and from the stack.
1997-02-10 03:26:28 +00:00
mark
5f3ba778ab
Define parameters for the arm32_sync_icache() function.
1997-02-10 03:14:22 +00:00
mark
51495d4bf1
Updated to work with the recent changes to the MI DDB code.
1997-02-04 07:15:46 +00:00
mark
663277e00c
Simplify cpu option checks now that multiple CPU types are supported in a
...
single kernel.
1997-02-04 06:10:48 +00:00
mark
ee02ce0401
Major overhaul of handling of CPU/MMU/TLB specific functions. This allows
...
different ARM CPUS with different cache architectures for example to be
supported in a single kernel.
- All CPU/MMU/TLB specific functions are now held as function
pointers in a cpu_functions structure defined in machine/cpufunc.h
All coproc 15 accesses, TLB flushing, cache cleaning/flushing
and abort correction functions are now defined in this structure.
- cpufuncs is a global structure that is setup during initarm()
that holds all the function pointers for the booted CPU.
- A global variable 'cputype' now defines the probed cputype.
- All the existing functions for manipulating CPU specific features
have been replaced with macros defined in machine/cpufunc.h
that will call the appropriate function in the cpu_functions
structure.
- CPU functions are provided for selected CPU types (config options)
and the appropriate cpu_functions structure is chosen during
booting, based on the probed CPU type.
- All the required functions for existing CPU types (ARM6, ARM7 and
SA110) have been implemented.
1997-02-04 05:50:19 +00:00
mark
6c06479d1c
__P(()) -> __P((void)) on several prototypes to fix compiler warnings.
1997-01-26 01:56:20 +00:00
mark
de7c5e2195
Implement the bus space interfaces for set multiple, set region and copy.
1997-01-26 01:49:01 +00:00
mark
f36384ee92
Removed the cpu specific functions and include <machine/cpufunc.h> instead.
1997-01-26 01:42:48 +00:00
mark
780de160e8
Create a file for all the prototypes for the MD device drivers.
1997-01-26 01:36:56 +00:00
mark
2d1d9a0dcb
Include <machine/cpufunc.h> for cpu specific prototypes e.g. tlbflush().
1997-01-26 01:34:45 +00:00
mark
b2abc423cd
Create a separate header file with the prototypes for the functions that
...
manipulate the cpu and mmu registers.
1997-01-26 01:31:20 +00:00
mark
0449845fb5
Declare the arguments to the function pointers in the interrupt
...
handler structures.
1997-01-26 01:30:51 +00:00
mark
bf4360262c
__P(()) -> __P((void)) on several prototypes to fix some gcc warnings.
1997-01-26 01:25:42 +00:00
mark
0bebac783d
Update for new bus space interface. This implementation is based on
...
cgd's alpha implementation. Bus tags now point to a structure of
function pointers to bus space routines rather than being an index to
one of several I/O methods making it simpler and more efficient in
handling many different busses and mapping schemes.
1997-01-13 00:33:36 +00:00
mark
b34fcd542a
Added prototypes for intr_clain() and intr_release().
...
Added const to the ih_name member of the irqhandler structure.
1997-01-06 02:19:06 +00:00
mark
763f5034bd
ib_addr in the iicbus attach args should be an int not a u_int as -1
...
is an acceptable address.
1997-01-03 23:13:05 +00:00
mark
77f7e266f1
Added a definition for the maximum amount of kernel VM space buffers can
...
occupy.
1996-12-27 01:55:48 +00:00
cgd
96acdadef7
First step inn removing config_scan() and the hacks that gave devices
...
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:
Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
1996-12-05 00:13:47 +00:00
jtc
9da5f60715
PROF -> GPROF
1996-11-30 02:48:57 +00:00
mark
5debc61be1
Added IOMD_ID macro to return the 16bit IOMD ID code.
1996-11-23 03:21:43 +00:00
mark
f14bcbdac4
Added prototype for branch_taken().
1996-11-23 03:20:18 +00:00
mark
b38644ed8d
Check for CPU_ARM8 when testing for comflicting CPU options.
1996-11-23 03:18:20 +00:00
jtc
16b48272c4
Define _BSD_CLOCKID_T_ and _BSD_TIMER_T_
1996-11-15 22:38:45 +00:00
mark
7824cc4e83
Added definitions of the IOMD DMA registers.
1996-10-29 23:14:34 +00:00
mark
6ed8e72d96
Fix the pcb_fpstate field.
1996-10-17 02:37:48 +00:00
ws
31bdb14ed5
Rename recently checked in KGDB to IPKDB to resolve conflicts with older KGDB
1996-10-16 19:32:08 +00:00
mark
ed4a15bc3d
Added prototypes for tlb_flush(), cache_clean(), sync_caches() and
...
sync_icache().
Removed prototype for memset().
Added prototypes for atomic_set_bit() and atomic_clear_bit().
1996-10-15 00:44:58 +00:00
mark
fcc485e573
Define a separate set of irq numbers for ARM7500 machines if RC7500 is
...
not defined as the ARM7500 in A7000 machines has different interrupt
numbers than the ARM7500 in RC7500 machines.
1996-10-15 00:39:23 +00:00
mark
4d21960d40
Added checks for illegal combinations of CPU_ARM6, CPU_ARM7, CPU_ARM7500,
...
CPU_SA110 and CPU_LATE_ABORT.
Updated the CLKF_INTR() macro for changes made to the interrupt system.
Updated some of the CPU ID codes.
Added the CPU ID for the ARM8.
1996-10-15 00:33:03 +00:00
mark
7e836e3676
splsoftclock() is now a macro rather than a function.
1996-10-15 00:26:46 +00:00
mark
b352e3549b
Updated fpreg_t to match changes made to fp.h
1996-10-15 00:21:36 +00:00
mark
7e6df6c20e
Added a typedef for fp_extended_precision_t.
...
Make fp_reg_t a typedef of fp_extended_precision_t.
Rename the fp_state structure to fpe_sp_state as it describes
the single precision FPE state held in the pcb and is internal to the
kernel.
Define a new fp_state structure that is for user access to the fp
state (e.g. via ptrace()).
1996-10-15 00:15:37 +00:00
mark
a7c2e7f767
Use tlb_flush() rather than tlbflush() in the pmap_update() macro.
1996-10-15 00:09:09 +00:00
mark
b4c38ce254
Define the FP exeception types.
...
Use these types to create the bit values used for fp_except values.
1996-10-15 00:06:47 +00:00
mark
c5246aee6a
Updated the typedef for undef_handler_t to have a 4th argument. This
...
argument is a fault code integer.
1996-10-15 00:00:44 +00:00
mark
159f169ad4
Added support for the ARM7500.
...
Added comments to relate #ifdef and #endif
1996-10-14 23:05:34 +00:00
mark
9ddac81db7
Added definitions for evaluating the signal code argument.
...
Currently the code field is only valid for SIGFPE, SIGBUS and SIGSEGV.
1996-10-14 23:02:53 +00:00
mark
06083cc7b9
Updated #ifdef to reflect filename change.
1996-10-14 22:57:37 +00:00
mark
f0137e2cc0
At last, a version of profile.h that works properly and allows kernel
...
profiling.
Define an all assembly mcount stub routine and make sure r0-r3 and lr
are preserved.
1996-10-14 22:52:49 +00:00
mark
cae31931a9
Initial commit of header file defining various traps.
...
Define a user breakpoint trap.
1996-10-14 22:49:23 +00:00
mark
f24b0a3f91
Initial commit of the header file defining the architecture specific
...
syscalls.
Declare ARM32_SYNC_ICACHE call that ensures that main memory and any
instruction cache are in sync.
1996-10-14 22:47:31 +00:00
mark
135f110149
Added an ioctl acknowledgement bit to the buffer record flags field.
...
Added a new ioctl to select either relative or absolution mouse position
reports.
1996-10-14 22:41:59 +00:00
mark
44faa9154f
Added a blanktime field to the vconsole structure so the blanktime time
...
is managed per virtual console rather than globally.
1996-10-14 22:35:03 +00:00
mark
c4d76a3f02
Added a field for cpu specific data in the cpu_t structure.
1996-10-14 22:32:45 +00:00
mark
60c2014d86
Added magic number of bootconfig structure passed from the bootloader.
...
Added a field for the physical address of the display memory used
by the bootloader if VRAM is not fitted.
Declare the boot_args variable extern here.
1996-10-14 22:30:19 +00:00
christos
e43661dda6
use in_addr_t and in_port_t
1996-10-13 02:57:47 +00:00
mark
5b9a5a91b2
Added a macro for un-cacheable un-bufferable ptes.
1996-10-12 18:31:10 +00:00
mark
8759f643d5
Don't need to include machine/reg.h here.
1996-10-12 18:29:32 +00:00
cgd
472889f8e4
moved to aout_machdep.h (via repository copy)
1996-10-08 12:57:37 +00:00
mark
66d9ef4edb
Updated with more info on the ARM7500 IOC/IOMD.
1996-08-21 20:00:50 +00:00
mark
8f541bdd1d
Added a couple of comments.
...
Defined VM_MAXKERN_ADDRESS as the maximum address for the kernel address
argument to copyin() and copyout().
1996-06-12 19:55:04 +00:00
mark
78d05630aa
Define insl() and outsl() as macros that currently just panic for the
...
moment.
1996-06-12 19:50:14 +00:00
mark
167d543662
Define several new macros for testing the processor mode.
1996-06-12 19:48:48 +00:00
mark
544631c0be
Guard structures and prototypes with #ifndef _LOCORE
...
Rename the currently unused irq handler structure fields for podule
interrupts so they make more sense.
Define IPL_NONE as a positive value instead of -1 and increase the
number of IPL levels.
1996-06-12 19:47:11 +00:00
mark
a2a08dd859
Removed the old QUADMOUSE_* ioctl names. Everything now uses the
...
generic mouse ones.
1996-06-03 22:07:39 +00:00
mark
aa4be90f73
General code format tidy up.
...
Added missing function prototypes.
1996-06-03 22:04:40 +00:00
mark
0ba929925d
Added proper definitions of quadrature mouse button register.
1996-06-03 22:03:36 +00:00
mark
258f83367c
Added setsoftintr() prototype.
1996-06-03 22:00:50 +00:00
mark
0b265889c6
RCS Id police.
1996-06-03 21:58:25 +00:00
mark
515759c222
Added PLIP soft interrupt.
1996-06-03 21:57:52 +00:00
mark
a1ac79c69f
Added r_neg bit and removed r_copy bit from relocation_info_arm6 structure.
...
General tidy up of the code style in file.
1996-05-17 21:58:07 +00:00
mark
0d476cb7d0
bus memory and I/O space access functions/macros, to be used by
...
machine-independent code for more sane access to bus resources.
Defines:
bus_{io,mem}_{map,unmap}
bus_{io,mem}_{read,write}_{1,2,4,8}
bus_io_{read,write}_multi_{1,2,4,8}
functions, and several types to go with them.
Note: The bus_io_*_8 functions are not supported.
1996-05-16 18:08:40 +00:00
mark
f38ec079c3
Removed definitions of mouse buttons. These should be obtained from
...
iomd.h and do not need to be duplicated here.
1996-05-16 17:45:10 +00:00
mark
267415c841
Define FLT_ROUNDS properly. Guard #defines with #ifndef / #endif
1996-05-12 21:27:52 +00:00
mark
62b52adc0e
Definitions of various contants and types for arm32 IEEE float point.
1996-05-12 21:26:20 +00:00
mark
3f91443b0b
Added __noreturn__ attribute to boot0().
1996-05-06 00:41:55 +00:00
mark
10ec66cba0
No longer needed as this file has been replaced with the generic mouse
...
interface described in mouse.h
1996-04-27 02:09:16 +00:00
mark
0b44bb02a0
Removed prototypes for cpu_set_kpc(), cpu_swapin() and cpu_swapout() as
...
these are now defined in other header files.
1996-04-27 02:04:39 +00:00
mark
504699a05d
Added prototypes for cpu_swapin(), cpu_swapout(), tlbflush()
...
cpu_set_kpc() and need_resched().
1996-04-26 21:12:36 +00:00
mark
38b0e06483
Added prototypes for setsoftnet() setsoftast() and setsoftclock().
1996-04-26 21:10:21 +00:00
mark
a65bd66705
Header file for IIC structures, prototypes and ioctls.
1996-04-19 19:52:46 +00:00
mark
e51f620a83
Added IIC information for the PCF8583 RTC chip.
...
Added #ifdef guard on rtc prototypes.
1996-04-19 19:51:48 +00:00
mark
234547bf5e
Add CPU ID's for the DEC StrongARM-110 processor.
...
Update control register bit definitions as the SA-110 has
separate instruction and data caches.
1996-04-02 21:45:25 +00:00
mark
9d048bd529
Define macros for inb() outb() inw() outw() inl() outl().
1996-03-28 21:35:51 +00:00
mark
93602531a6
Added definitions for RC7500 motherboard interrupt numbers.
1996-03-28 21:29:32 +00:00
mark
044c783484
Added definitions for RC7500 motherboard IO addresses.
1996-03-28 21:28:21 +00:00
mark
7d06b49a23
Added definitions of ARM7500 IOMD.
1996-03-28 21:26:05 +00:00
mark
0ff466e21a
Add VIDC20 phase lock loop frequency information for RC7500
...
motherboards.
1996-03-28 21:22:24 +00:00
mark
cf15dd8123
New description of the generic mouse interface structures and ioctls.
...
This will replace qmouse.h now that we have multiple mouse drivers to
support and want a common interface.
1996-03-27 20:57:18 +00:00
mark
2f5136afa9
Added ih_name field to the irq handler structure to point to an ascii
...
name for the interrupt. Used to build the intrnames table for vmstat -i
1996-03-27 19:42:03 +00:00
jtc
2ce5f1478b
Add _BSD_WINT_T_ definition so we can handle wint_t type added in NA1.
1996-03-16 01:31:45 +00:00
mark
6cb2a43b5e
RCS Id police.
1996-03-14 23:10:59 +00:00
mark
043ef25c23
Remove cpu_set_init_frame macro. This is no longer needed now
...
cpu_set_kpc() has been implemented.
1996-03-13 21:18:06 +00:00
mark
ffa6eab259
Removed the kstack pte fields. These are no longer needed as the kernel
...
stack is no longer double mapped.
1996-03-13 21:08:36 +00:00
mark
f96ae702d7
Added switchframe structure to describe the stack frame pushed on the
...
stack at the beginning of cpuswitch().
1996-03-13 21:06:34 +00:00
mark
c353f32f10
_mcount() can now be declared inline.
1996-03-13 21:04:55 +00:00
mark
7a9dc6a41a
Inclusion of machine/psl.h is no longer dependant on _LOCORE being not
...
defined.
1996-03-08 19:08:28 +00:00
mark
57fbb17f0e
Replaced the splxxx() functions prototypes with macros.
...
Added prototypes for two new functions raisespl() and lowerspl().
Added definititions of the various spl levels.
1996-03-08 16:35:17 +00:00
mark
7b3a5bb292
Fixed prototype declaration of shell().
1996-03-08 16:25:07 +00:00
mark
7f57d7bda6
Commented out macros for IRQ bits that are now set in the config file.
...
Added definition of the IRQ_SOFTCLOCK bit.
1996-03-06 23:22:56 +00:00
mark
a88b7466b9
Added structures to describe RISCiX partition tables.
1996-03-06 23:17:51 +00:00
mark
4da86891fc
Add support for software single stepping.
...
Define SOFTWARE_SSTEP for the ddb code.
1996-03-06 23:16:54 +00:00
mark
bcfc2f794a
Fixed the typedef of label_t to be 11 words as required by setjmp and
...
longjmp in locore.S
1996-03-06 23:04:04 +00:00
mark
e6e9c2985e
Added stack frame structure for debugger tracebacks.
1996-03-06 22:53:50 +00:00
cgd
18ec26aa21
add _MACHINE and _MACHINE_ARCH, which are like MACHINE and MACHINE_ARCH,
...
execpt without quotes. meant to be __CONCAT()ted for easy #includes
of machine-dependent headers for MI code (e.g. for the MI ISA/EISA/PCI/TC
bus code).
1996-03-04 05:04:10 +00:00
cgd
1c5d7babe5
Clean up tabbing/spacing in defns of MACHINE, MACHINE_ARCH, and MID_MACHINE.
1996-03-01 23:30:08 +00:00
mark
6a3087958a
Add #ifdef _LOCORE round delay() prototype and move DELAY macro
...
to param.h as well.
1996-02-22 22:21:55 +00:00
mark
bfad88d38d
Added prototype declaration of delay().
1996-02-16 23:29:45 +00:00
mark
f69e31fcc1
Initial commit of the machine specific header for the in-kernel
...
debugger.
1996-02-15 21:54:30 +00:00
christos
3306495d82
delete pmap_page_index declaration; now in <vm/pmap.h>
1996-02-12 21:25:18 +00:00
mycroft
88e512b693
LOCORE -> _LOCORE
1996-02-01 22:28:24 +00:00
mark
386ad2ff0f
Initial commit of the NetBSD/arm32 port.
1996-01-31 23:14:53 +00:00