Commit Graph

810 Commits

Author SHA1 Message Date
thorpej
cb24b0200a Don't allocate mclrefcnt[]; it's dead and gone. 1997-03-27 21:01:20 +00:00
gwr
37b247edde Renames: /dumpconf/cpu_dumpconf/, /boot/cpu_reboot/ 1997-03-26 22:42:13 +00:00
gwr
71e43d14ab Move findroot/setroot stuff from configure() to cpu_rootconf(). 1997-03-26 22:38:40 +00:00
mark
b28684079f Fix broken vidcaudio_set_format() prototype. 1997-03-25 05:09:01 +00:00
mycroft
7a55cafeeb Implement set_format. 1997-03-20 16:51:38 +00:00
mark
82de5bb16d Add missing ifp variable in eaintr() following new ARP merge. 1997-03-19 02:45:06 +00:00
mark
e8e11b85c0 Fix missing bracket introduced in new ARP system merge. 1997-03-19 02:43:03 +00:00
is
07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
mycroft
ac3b8b13b7 Don't share the silence block between devices. Make silence filling work for
more encodings, and make it device-independent.  From Lennart Augustsson, in
PR kern/3305.
1997-03-13 02:19:32 +00:00
mark
682f911197 Updated for latest major number allocations. 1997-03-07 03:30:46 +00:00
fvdl
115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
mark
e5c684f608 Added lots more items. 1997-02-23 04:21:28 +00:00
mark
c812c6e43d Do profiling if GPROF and PROFILE_ASM are defined. 1997-02-23 04:20:29 +00:00
mark
9675b132fa Updated to reflect the addition of the icside and rapide drivers. 1997-02-23 04:15:20 +00:00
mark
13f13977eb Since the setroot changes set_swap_device() is has been a dead function
so remove it.
1997-02-23 04:09:53 +00:00
mark
a61dea1a59 Added files for the icside and rapide device drivers. 1997-02-23 04:08:49 +00:00
mark
4fbf5c86aa Clean and flush the instruction and data caches prior to turning of the
MMU in boot0().
This solves the problem of cache hits after the kernel has rebooted the
machine as even with the cache off hits will occur for data/instructions
already in the cache.
1997-02-23 04:05:19 +00:00
mark
045ff1df99 Initial commit of the rapide driver. This driver provides support for the
RapIDE32 EIDE interface podules.
This driver currently only support issue 2 podules.
1997-02-23 04:00:31 +00:00
mark
a47555862b Initial commit of the icside driver. This driver provides support for
the ICS IDEA IDE interface podules.
1997-02-23 03:57:45 +00:00
mark
66f1f203e3 Synchronise with podules files. 1997-02-23 03:52:29 +00:00
mark
6c7cc537c9 Add ID for ANT EtherM network slot interfaces. 1997-02-23 03:51:19 +00:00
mrg
175166de6a comment PFIL_HOOKS as it is redundant (as an option) when used with ipfilter. 1997-02-18 21:10:19 +00:00
mark
6e638fd4fb Call mount() on function entry if both GPROF and PROFILE_ASM are defined. 1997-02-18 03:15:06 +00:00
mark
ad178d5138 Limit valid numeric digits to between 0 and min(base, 9) inclusive so that
puntuation characters are not evaluated.
1997-02-18 03:12:15 +00:00
mark
e4316a91d0 Rebuilt from podules file. 1997-02-18 03:08:59 +00:00
mark
c569d5e23f Added new podule ID's for ICubed etherlan interfaces.
Fixed typo in A448 title string.
1997-02-18 03:08:04 +00:00
mark
83697fa8b9 Added a field sc_ixfer to the sfas_softc structure to allow the standard
sfas ixfer() routine to be overridden with a card specific one.
1997-02-11 03:33:46 +00:00
mark
faec60a06c Add a define for the cpu_functions structure member cf_sleep. 1997-02-10 04:01:08 +00:00
mark
700a2e2041 Remove the code force the processor into a sleep mode during idle() and
instead call the sleep function defined in the cpufunctions structure.
1997-02-10 03:57:42 +00:00
mark
187f8c7c3d Remove local definitions of macros to push and pull trapframes and instead
include machine/frame.h to get these definitions.
1997-02-10 03:50: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
28203348d8 Process the parameters passed in the SYNC_ICACHE sysarch() call and just
sync the caches for the specified virtual address range.
1997-02-10 03:19:36 +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
6ec73b6227 Removed all the CPU_SA110 conditional compilation. All the cache
cleaning calls will now be indirected throught the cpu_functions
that will have the correct function pointers for the CPU in use.
All register fixup code following aborts has been removed and
instead a call to the cpu_*abt_fixup() routine is called instead
to provide the correct fixed based on the CPU type and abort mode.
1997-02-04 07:12:30 +00:00
mark
06f80904ec Set the sc_ixfer function pointer to the default sfas_ixfer() function
during initialisation if the pointer is NULL.
Use the sc_ixfer function pointer in the sfas softc when doing
immediate polled transfers.
1997-02-04 06:57:47 +00:00
mark
1715a217cf Removed the SA110 condition compilation and instead test the cputype
variable to determine what adjustment is required for the trace back PC.
1997-02-04 06:53:41 +00:00
mark
403608bdbb Add defines for the cpu_functions structure members cf_cache_purgeID and
cf_context_switch.
1997-02-04 06:51:34 +00:00
mark
e626201c12 Adopt as standard, the instruction sequence for storing the trapframe that
includes the workaround from the SA110 STM^ bug. This allows one piece of
code to be used to store the trapframe on all CPU types.
1997-02-04 06:49:08 +00:00
mark
f6570e9a78 Update for recent changes. Added options to support ARM6, ARM7 and SA110
CPUs in a single kernel.
1997-02-04 06:37:06 +00:00
mark
c2a184bc45 Fix SA110 CPU ID. 1997-02-04 06:30:57 +00:00
mark
64c714c82c This configuration file is dead now that all ARM6/7 & SA110 CPUs are
supported in the one kernel.
1997-02-04 06:29:57 +00:00
mark
2f04af3ab0 This file is no longer needed as the functionally it provided is now
provided within cpufunc_asm.S
1997-02-04 06:24:27 +00:00
mark
c2a2cba5dd Add Makefile as a dependancy cpufunc.o and cpufunc_asm.o 1997-02-04 06:19:08 +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
f53ea9b979 Only include md_hooks.c if md AND memory_disk_hooks are defined.
Updated for changes in the cpu specific functions (addition of
cpufunc.c and cpufunc_asm.S and removal of coproc15.S).
1997-02-04 05:58:55 +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
fd6725ae88 Remove all the old do_mountroot() junk that was built into GENERIC kernels.
This code has been replaced with the more flexible MI setroot() code.
1997-02-04 05:47:56 +00:00
perry
19d153fc48 Nuke some options GENERIC residue. 1997-02-04 04:57:10 +00:00
perry
0b3a46d6b3 Nuke some GENERIC residue. 1997-02-04 04:31:55 +00:00
mark
7ef8e3bcd9 Fix declaration of the interrupt handler to match new prototype for IRQ
function pointers.
1997-02-04 02:23:35 +00:00
mark
aab5efa574 Updated to use the new bus space interface code. Use a number of bus
space handles to describe the task file registers, aux register, 16 bit
data register and 32 bit data register.
The wdc softc structure has been moved to a separate file.
Added support for multiple attachments by separating the core of the
probe and attach functions from the mainbus probe and attach routines.
Added a new wdc flags 32_BIT so that the wd can determine 32 bit xfer
support from the wdc device.
1997-02-04 02:04:51 +00:00
mark
649a90497e No need to check for CPU_ARM7500 being defined as this option implies
CPU_ARM7 which has to be checked anyway.
1997-02-03 03:12:09 +00:00
thorpej
2ca27c5550 Garbage-collect "argdev". 1997-01-31 19:10:27 +00:00
thorpej
6ce149b26e Oops, missed an NFSCLIENT -> NFS. (grep is your friend) 1997-01-31 06:12:07 +00:00
thorpej
41a9e723e3 Adopt for new file system and root spec grammar. 1997-01-31 05:46:09 +00:00
thorpej
739f23a219 This file is obsolete; this information is now generated by config(8). 1997-01-31 05:12:49 +00:00
thorpej
24c607fc32 NFSCLIENT -> NFS 1997-01-31 01:46:49 +00:00
thorpej
1c705f35fd Use new machine-independent setroot(). 1997-01-31 01:46:23 +00:00
mark
b371b8a271 Prototype main(). 1997-01-28 05:02:30 +00:00
mark
01b365e7a5 Use <machine/conf.h> for prototypes of the block and character device
functions.
1997-01-28 05:00:03 +00:00
mark
a497e39048 Fix the declarations of the interrupt handlers to accept void * pointers
as the only argument and cast this as appropriate now that the function
pointers to the interrupt registration functions are fully prototyped.
Use <machine/conf.h> for the declarations of the device driver entry
points.
1997-01-28 04:55:15 +00:00
mark
844495ceb6 Use machine/conf.h for prototypes for device entry points.
Declare the cpuioctl() cmd argument as u_long rather than int.
1997-01-28 04:36:14 +00:00
mark
ed854d0d12 Fix the declarations of the interrupt handlers to accept void * pointers
as the only argument and cast this as appropriate now that the function
pointers to the interrupt registration functions are fully prototyped.
1997-01-28 04:20:58 +00:00
mark
ad1a9d7854 Now that the generic sfas code works fine under interrupts, disable polling
behaviour of the driver.
1997-01-28 04:10:47 +00:00
mark
e1460d785b Add prototypes for match and attach functions. 1997-01-28 04:08:21 +00:00
mark
ec6a28b4c7 Updated for new kernel library Makefile.inc changes. 1997-01-26 02:36:02 +00:00
mark
52ee4f3259 Updated to use the bus space interface. Pullup all the recent changes
to the ISA fd driver including the floppy formatting code.
1997-01-26 02:32:04 +00:00
mark
dfb0662f21 Remove unused variables. 1997-01-26 02:16:44 +00:00
mark
7c2829335f Added prototype for md_match_hook(). 1997-01-26 02:02:09 +00:00
mark
6c06479d1c __P(()) -> __P((void)) on several prototypes to fix compiler warnings. 1997-01-26 01:56:20 +00:00
mark
77ecaec2ca Implement bus space interfaces for set multiple, set region and copy 1997-01-26 01:55:02 +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
8f52c7afd4 Added prototypes for mainbusprint() and mainbusscan(). 1997-01-26 01:41:01 +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
thorpej
7b40f5228e "md" is declared in sys/conf/files, now. 1997-01-21 09:39:20 +00:00
mark
58cc410820 Remove strchr.c file now strchr() is in libkern. 1997-01-20 02:43:30 +00:00
mark
4aceed0d51 No longer needed as strchr() is now in sys/libkern. 1997-01-20 02:42:45 +00:00
mark
4c5fff219e Added a new nexus flag ESC_NF_RETRY_SELECT. This flag is used to indicate
that a unit select did not complete and needs to be retried. Selection will
be retried following a disconnection if this flag is set. The function
esc_select_unit() will set/clear this flag depending on when a selection
completed or not.
1997-01-18 01:57:18 +00:00
mark
c5cc357f5d Added a new nexus flag SFAS_NF_RETRY_SELECT. This flag is used to indicate
that a unit select did not complete and needs to be retried. Selection will
be retried following a disconnection if this flag is set. The function
sfas_select_unit() will set/clear this flag depending on when a selection
completed or not.
1997-01-18 01:38:05 +00:00
mark
12af47bc6a The powertec card uses a 40MHz clock frequency.
Report the driver as polling at attach time is so configured.
1997-01-17 01:12:26 +00:00
mark
6df208b349 Added files for podulebus mapping and read/write routines. 1997-01-17 01:08:42 +00:00
mark
cf799895fc Pass a podule bus space tag in the pa_iot field of the podule
attach args.
1997-01-17 01:07:58 +00:00
mark
5c03890971 Updated for the new bus space implementation.
Added a pa_iot field to the podule attach args structure.
1997-01-17 01:04:02 +00:00
mark
6caa7a0b4b Implement a set of functions that provide bus space mapping and
read/write routines for the podulebus.
1997-01-17 01:00:47 +00:00
mark
012b3502f7 Implemented the functions inswm8() and outswm8() that are optimised
tranfer routines for use where the I/O register is multiply mapped into
a block of 8 consecutive word. This allows LDM/STM instructions to be
used to improve the read write performance.
1997-01-17 00:56:24 +00:00
perry
b89a3425b7 Eliminate obsolete TIMEZONE and DST options.
Eliminate obsolete global kernel variable "struct timezone tz"
Add RTC_OFFSET option
Add global kernel variable rtc_offset, which is initialized by
RTC_OFFSET at kernel compile time.
on i386, x68k, mac68k, pc532 and arm32, RTC_OFFSET indicates how many
minutes west (east) of GMT the hardware RTC runs. Defaults to 0.
Places where tz variable was used to indicate this in the past have
been replaced with rtc_offset.
Add sysctl interface to rtc_offset.
Kill obsolete DST_* macros in sys/time.h
gettimeofday now always returns zeroed timezone if zone is requested.
settimeofday now ignores and logs attempts to set non-existant kernel
timezone.
1997-01-15 01:28:28 +00:00
mark
02e575f690 Replace the fix for the bugged revisions of the 37GT665 I/O controller
that was lost during the last upgrade of the driver.
1997-01-14 22:59:40 +00:00
mark
151fa15841 Use -x rather than -S for the linkflags as we are not using the NetBSD
linker.
1997-01-13 00:51:42 +00:00
mark
98ecd0ea70 Updated for the new bus space implementation.
Merge in the latest changes from the ISA lpt device.
1997-01-13 00:46:51 +00:00
mark
f0192d1f6c Removed duplicate PROFILE_ASM option. 1997-01-13 00:42:18 +00:00
mark
7384f7a76d Update for the new bus space implementation.
Merge in the latest changes from the ISA com device.
1997-01-13 00:40:54 +00:00
mark
110691d0cc Added files for the mainbus mapping and read/write routines. 1997-01-13 00:38:45 +00:00
mark
4812012263 Implement a set of functions that provide the bus space mapping and
read/write routines for the mainbus.
1997-01-13 00:37:51 +00:00
mark
52a7f33ad1 Updated for the new bus space implementation in bus.h
The mainbus bus space tag is passed in the mainbus_attach_args structure.
1997-01-13 00:35:47 +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
aef8299490 Document the packet filter major number. 1997-01-12 20:39:51 +00:00
mark
00e9f2af37 inline -> __inline 1997-01-12 20:28:04 +00:00
mark
23254f1c9e Added commented PFIL_HOOKS option. 1997-01-12 20:24:08 +00:00
mark
672f9bc8a2 Added token 'Y' to print stack orientated nmemonics for {sl}dm r13, ... 1997-01-12 14:21:44 +00:00
mrg
c71a371532 use pseudo-device ipfilter, not ipl. 1997-01-07 11:35:01 +00:00
mark
fd643704d1 Minor changes (inline -> __inline)) 1997-01-06 04:47:53 +00:00
mark
fe764c2415 Added the ipl pseudo device.
Cleaned up the options and sync with reality.
1997-01-06 03:39:13 +00:00
mark
5aad105fd0 Added character ipl device on major 46. 1997-01-06 02:44:10 +00:00
mark
bc3f67bb21 Use the irqblock array to provide the information about which interrupts
should be blocked for each irq currently asserted.
1997-01-06 02:35:46 +00:00
mark
c87f4e3785 Added the functions intr_claim() and intr_release(). These are front
ends for irq_claim() and irq_release() that will allocate and free
memory for the irqhandler structure.
Added an irqblock array that provides a quick reference to all the
interrupts that should be blocked when a particular interrupt is
received. The irq_claim() and irq_release() functions now update the
irqblock array.
1997-01-06 02:30:21 +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
9f1c9fe28e Symbol kernel_text -> _kernel_text 1997-01-06 02:15:17 +00:00
mark
c65504baea Lowered the FIFO trigger threshold to 4 for rather than 8.
Impelemented a fix for kernel locks when opening the serial post :
Revisions A->D of the SMC FDC37GT665 Peripherial controller have
a bug in the serial port that is triggered if the FIFO is enabled
while there is a byte in the rx data register resulting in the
rx ready bit being permenantly set.
1997-01-05 19:19:57 +00:00
mark
17d2a69941 Updated for latest major allocations. 1997-01-05 19:01:18 +00:00
mark
cd9c6d9853 Change rd references to md that escaped the previous change.
Reformatted a few over-long source lines.
1997-01-05 18:57:04 +00:00
mark
2bb8f07910 Added a probe for a podule is EASI space if it is not found in normal
podule space.
Fixed a bug in the reading of bytes from network slot cards that prevented
the correct reading of the network slot ROM description.
config code now allows duplicable devices to be attached.
1997-01-03 23:30:30 +00:00
mark
4065dc201f Increased the podule description length from 47 to 63 characters.
Commented some structure members.
1997-01-03 23:27:31 +00:00
mark
dc9795f6e8 Removed a lurking ; from a #define line. 1997-01-03 23:26:22 +00:00
mark
e1395f3c17 Updated credits. 1997-01-03 23:24:48 +00:00
mark
0b49070ad5 Rebuild from latest podules list. 1997-01-03 23:22:03 +00:00
mark
180ca73617 Added new manufacturer and podule ID's. 1997-01-03 23:21:28 +00:00
mark
04d5907be9 Clean up the code formatting. 1997-01-03 23:19:02 +00:00
mark
de84ec92b1 Fixed several lurking function calls (printf -> db_printf). 1997-01-03 23:17:40 +00:00
mark
d60f65e8bc Guard all functions that are only used by kshell with #ifdef KSHELL. 1997-01-03 23:15:44 +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
ff84194c2f Sync with reality. 1997-01-03 23:10:31 +00:00
pk
fbfb9e1144 Device rename: rd' => md' 1997-01-01 23:32:41 +00:00
pk
fe71b17fca Device rename: rd' => md' 1997-01-01 23:21:54 +00:00
pk
114271a083 rename: ramdisk => md 1996-12-28 23:10:44 +00:00
mark
adfe1faa81 Removed bogus devices. 1996-12-27 02:04:45 +00:00
mark
ad3eed8ce3 Fixed PPP soft interrupts.
Make sure soft interrupts are only every delivered when the interrupt
depth is 1.
1996-12-27 02:01:02 +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
mark
2cfb4cba1e Added temporary fix for excessive VM memory allocation for buffers. 1996-12-27 01:53:41 +00:00
mark
cc3383de63 Fixed a couple of STM^ instructions lurking in the FPE core. 1996-12-27 01:46:07 +00:00
mark
02d0fd2ea5 Added function fpe_set_execption_mask() to allow the FP exception mask
to be manipulated.
During initialisation the exception mask is set to allow divide by zero
and overflow exceptions to be signaled.
1996-12-27 01:39:14 +00:00
thorpej
d502e68402 Fill in sc_link.max_target 1996-12-10 21:27:16 +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
jonathan
4c1d96de78 * Replace explicit -O2 in CFLAGS with COPTS macro. Default COPTS?= -O2.
Lets users over-ride with makeoptions COPTS="..." in kernel config files.

  Leave `mandatory' flags (like  -msoft-float which  on m68k enforces no
  FP in kernel) in CFLAGS.
1996-12-01 06:12:25 +00:00
jtc
9da5f60715 PROF -> GPROF 1996-11-30 02:48:57 +00:00
mark
1728fa466c Removed duplicate LKM option. 1996-11-23 21:15:46 +00:00
mark
f4b69eb14d Removed a load of [cb]dev_decl() lines that are provided by sys/conf.h 1996-11-23 21:15:31 +00:00
mark
e2b7ebae9d Now we have a fix for the StrongARM STM^ bug we can recache the SVC32 stack
pages.
Cleaned up several prototypes.
1996-11-23 04:09:01 +00:00
mark
9c855e4d1b Provide alternative trapframe push and pull macros from the StrongARM.
These alternative macros have a workaround for the STM^ bug in revision < 3
StrongARM CPU's that causes incorrect register saving if a cache line fill
is in progress during the STM.
1996-11-23 04:02:40 +00:00
mark
199fcfe651 Recognise the name Empty: as a possible valid partition in a RISCiX
partition table.
1996-11-23 03:56:44 +00:00
mark
12b8038548 Fixed the IPL level of the interrupt handler. 1996-11-23 03:56:02 +00:00
mark
4c515d528e Pass the device name to identify_master_cpu().
Identify StrongARM CPU's with bugged STM^ instructions.
1996-11-23 03:53:48 +00:00
mark
3c05da919c Use the IOMD_ID macro to check the IOMD ID number rather than direct reads
from the IOMD.
1996-11-23 03:45:52 +00:00
mark
2883a694fa Check the IOMD ID in the podulebus probe to make sure the IOMD supports
a podulebus.
Make sure the podulebus driver conforms to the Acorn expansion card
specification:
  - Probe the podule bus using sync access cycles rather than slow access
    cycles.
  - Read the podulebus header/ROM using sync access cycles rather than slow
    access cycles
1996-11-23 03:42:39 +00:00
mark
37f3875ce4 Use the IOMD_ID macro to check the IOMD ID number rather than direct reads
from the IOMD.
1996-11-23 03:37:35 +00:00
mark
374d51c858 Rebuild from latest podules list. 1996-11-23 03:27:15 +00:00
mark
ecdf4c14bd Added a number of new manufacturer ID's and some new podule ID's. 1996-11-23 03:23:49 +00:00
mark
5debc61be1 Added IOMD_ID macro to return the 16bit IOMD ID code. 1996-11-23 03:21:43 +00:00
mark
f74d5f023d Fixed typos. 1996-11-23 03:20:20 +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
mark
776f1e24d6 List the nbuf= bootloader option. 1996-11-23 03:16:51 +00:00
mark
3474eb69a0 Yet more items added to the list. 1996-11-23 03:13:19 +00:00
jtc
16b48272c4 Define _BSD_CLOCKID_T_ and _BSD_TIMER_T_ 1996-11-15 22:38:45 +00:00
thorpej
5bbb546d40 Add missing bitmask buffer declaration. (*sigh*) 1996-11-13 06:46:12 +00:00
thorpej
f3d0bd2b74 Slight stylistic tweak, to match the same changes I made in the SPARC
version of the fd driver.
1996-11-13 06:41:21 +00:00
thorpej
ae63cbffa1 Use bitmask_snprintf(). 1996-11-13 06:36:56 +00:00
cgd
8a3333b2a9 Fix an inconsistency that came in with Lite: setrq() was renamed to
setrunqueue(), but remrq() was never renamed.  Rename remrq() to
remrunqueue().
1996-11-06 20:19:19 +00:00
mark
092bb4bd47 Fixed type its NPPP not PPP. 1996-11-06 18:18:41 +00:00
mark
de6db9f206 Added fix from Jasper Wallace th=at solves the bus hang ups caused when
DMA to the card going wrong.
1996-10-30 01:50:01 +00:00
mark
84d36b5c2f Brought right up to date and cleaned up. 1996-10-30 00:12:40 +00:00
mark
0bec347c79 Allocate a DMA channel number when setting up the podule descriptors.
The DMA channel is determined by the IOMD present in the machine and the
podule slot number.
1996-10-30 00:07:42 +00:00
mark
c11a34daff Added a dma_channel field to the podulebus structure so that the
podulebus driver can allocate the DMA channels for the podules located.
1996-10-30 00:01:05 +00:00
mark
29465fe28a Updated the acknowledgement comments. 1996-10-29 23:52:59 +00:00
mark
f5a1f76622 Remove the bufferable bit from the pte for the DMA buffer. 1996-10-29 23:37:39 +00:00
mark
68ecde0706 Added support for switch mouse reports between absolute and relative
positions.
1996-10-29 23:28:12 +00:00
mark
8666e8f843 Treat MOUSEMODE_REL as an absolute value rather than as a bit flag.
Use sc_mode rather than mode.
1996-10-29 23:25:29 +00:00
mark
8d9b74e953 Make sure that DMA channels 2 and 3 are setup as external for the podulebus
on RiscPC machines.
1996-10-29 23:22:57 +00:00
mark
7824cc4e83 Added definitions of the IOMD DMA registers. 1996-10-29 23:14:34 +00:00
mark
9785e7cd61 Added support for all variations of the msr instruction.
Added support the new instructions defined in the ARM V4 Architecture
Reference manual (long multiplies, half word load and stores,
half word/byte signed loads).
Added support for the ARM810 IMB architecture defined SWIs.
Fixed bug in calculating some immediate constants.
Added support for the wfs, rfs, wfc, rfc instructions
Added support for the floating point compare instructions
Added ldf, stf, ldc and stc instructions.
Fixed mis-disassembly of some msr/mrs instructions.
The ldm and stm instructions will modify the direction identifier to
use the stack variations if the base register is r13.
1996-10-29 23:12:26 +00:00
mark
1f388af5cf Fixed 4 compiler warnings about casts on insw() and outsw() calls. 1996-10-18 00:48:29 +00:00
mark
ac0fd0fce1 Added a few more patches for SA100 support. This is just several
extra cache clean operations during pte manipulation.
1996-10-17 02:55:29 +00:00
mark
6b1666ce52 Don't generate an error if FFS is not compiled in. 1996-10-17 02:52:26 +00:00
mark
c252b86536 Couple of fixes for SA100 support.
Added comments to match up #ifdef / #endif pairs.
1996-10-17 02:50:14 +00:00
mark
1dd91a8515 Updated vmemcachectl() to allow control of write buffer and cache enable
bits on the video memory ptes.
1996-10-17 02:48:39 +00:00
mark
f5c1850ab4 Tweaked several db_printf() calls. 1996-10-17 02:46:49 +00:00
mark
65b01531b9 Reality check. 1996-10-17 02:44:17 +00:00
mark
36cd31048b Removed references to the debug function checkinodes(). 1996-10-17 02:43:38 +00:00
mark
abb703fc1b Add files for cosc SCSI driver
Add file for RC7500 prom code.
1996-10-17 02:41:26 +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
fdf25ce9ce Added generic ARM7500 support. This mainly effects the kernel bootstrapping
code as video memory must be reserved from main memory for the display.
In addition this adds generic support for using DRAM for video memory
on all machines. All video memory accessing should use the video_memory_t
structure.
Added support for the RC7500 motherboard. The RC7500 support includes a
replacement init_arm() function. This also supports the RC7500 prom debug
monitor for debugging the kernel boot.
dumps now work so call dumpsys() following a panic.
Added support for the SA110. This mainly consists of making sure the data
cache is cleaned when appropriate and that the instruction cache is
kept in sync during the bootstrap and when signal handlers are built on
the stack.
Use a larger UND32 mode stack if we are configured for KGDB.
Remove KERNEL_PT_KSTACK references as these should have died with the
removal of double mapped kstacks eons ago.
Make sure we call doshutdownhooks() if boot is called while we are still
cold.
Cleaned up prototypes declarations.
Sorted out comment indentation.
1996-10-16 00:35:45 +00:00
mark
1beb8a9aad Added support for the SA110. This primarily consists of extra cache
clean and tlb flush code along with write buffer drains that are
dependant on the definition of  CPU_SA110.
The memory reserved for the L1 pagetables is now wired into the memory map
during the pmap_init rather than at L1 pagetable allocation time.
The L1 pages tables are zeroed during initialisation and when they are
released rather than when they are allocated.
When searching for a free L1 page table start search at the page table
after the last one allocated rather than always starting from the first one.
Added some extra DIAGNOSTIC checks for invalidate page index numbers.
Removed some old debugging code that escaped the last clean up.
Idented comments in line with code.
1996-10-15 23:52:52 +00:00
mark
daec9c54ff Use atomic_{set,clear}_bit() for manipulating the soft interrupt mask.
splsoftclock() is now a macro so the function is dead.
Cleaned up and debugged dumpsys(), kernel core dumps now work.
1996-10-15 23:39:30 +00:00
mark
81f6df323e *Major* rewrite, long overdue.
The irq delivery code has been rewritten. On entry to the irq vector the
processor is switched to SVC32 mode so all interrupt routines now run
in SVC32 mode rather than IRQ32 mode. This fixes lots of irq re-enabling
problems.
Interrupt latency times are now vastly improved for high priority interrupts.
Cleaned up calling ast() before returning to USR32 mode (don't need to
mess about with trapframe copying.
Cleaned up all the comments and sorted out their indentation.
Rewritten the soft interrupt delivery code.
Added generic ARM7500 support rather than just RC7500 support.
1996-10-15 23:20:40 +00:00
mark
b37e8debe6 Added a generic exit routine. This loops round calling ast() if the
astpending flag is set until it is clear at which point to exits to
user land.
Merged in latest kgdb support from Wolfgang.
1996-10-15 22:56:27 +00:00
mark
32549532dc Major comment and code clean up to suit KNF.
Added support for the SA110. This cpu does not need any register fix-ups
following a data abort.
Return valid signal code values on SEGV's. See machine/signal.h for
decoding SEGV signal codes.
1996-10-15 22:22:22 +00:00
mark
f015b1bac6 Added support for the SA110. Additional cache clean operations are
required during pagemove() and vmapbuf() and vunmapbuf().
The kernel and undefined mode stack checks are now guarded with
#ifdef STACKCHECKS.
Tidied up comments.
1996-10-15 22:07:41 +00:00
mark
af9c048e19 Added support for the SA110. If CPU_SA110 is defined then the data
cache needs to be cleans and the instruction and data caches need to
be invalidate along with the instruction and data tlbs when
the TTB is reloaded during a context switch.
1996-10-15 22:04:19 +00:00
mark
5a79d9e2a1 Add the lmcaudio device and files. 1996-10-15 21:53:21 +00:00
mark
e41dd7d935 Provide a completely new set of cache clean and tlb flush functions
if CPU_SA110 is defined. Cache cleaning is different on the SA110 as
the cache is a write back virtual cache and is split for data and instruction.
Also the cache and tlb control instructions use different coprocessor #15
registers.
1996-10-15 21:47:51 +00:00
mark
c77f36a38a Idented comments correctly.
Fixed bug in microtime() that could result in incorrect microsecond
adjustments.
1996-10-15 21:35:23 +00:00
mark
535518ceed Added support for the A7000 and more generally for ARM7500 based machines
that are not RC7500 boards.
Fixed vidcaudio_sw_encode() and vidcaudio_sw_decode() functions.
1996-10-15 21:33:51 +00:00
mark
0d4a130939 Added support for NFS root and swap.
Added comments to #ifdef / #endif pairs
Tidied up comments.
1996-10-15 21:32:10 +00:00
mark
c2a3d7ad3c Cleaned up comments.
Removed suspect FPA probing code, instead use the ARM FPE to probe the FPA.
Neatened up the FPE attachment code.
Recognise StrongARM class of cpu.
Updated the fpa instruction bounce handler to expect a 4th argument
when called on an undefined trap to match recent changes made to
undefined handlers.
1996-10-15 21:26:25 +00:00