Commit Graph

374 Commits

Author SHA1 Message Date
mark f5ee3d4ce6 Make sure all routes through vt_curadr() range check the x and y coordinates.
This fixes a nasty bug that could kill the kernel without ever reporting
a panic.
1996-07-05 19:07:55 +00:00
cgd af576d8a9f no need for a local implementation of SIOCGIFMTU; delete it.
s/ifr_metric/ifr_mtu/ where appropriate (in SIOCSIFMTU code), since
MTU data no longer (loggically) stored in ifr_metric.
1996-06-13 21:51:53 +00:00
mark 103a43ae29 Get the interrupt flags address from sc->sc_specific.sc_podule rather
than sc->sc_podule.
1996-06-13 18:29:45 +00:00
mark 31c4f7d574 Only read beyond the first byte of the podule header if we know that
an extended header is present i.e. don't assume an extended header as
however unlikely there could be a podule that doesn't have one.
Calculate an absolute address for the podule's interrupt mask rather
than leaving it relative to the base address of the podule.
If the interrupt status pointers are not present or are zero then
used the default bits as specified in the podule specification to
determine if the podule is interrupting.
1996-06-12 21:09:55 +00:00
mark 857439698b Claim the interrupt when leaving the interrupt handler as there can
only ever be a owner of the netslot interrupt.
Don't declare ebintr() as static.
1996-06-12 21:01:56 +00:00
mark 27ab616466 Don't claim the podule interrupts but pass them on in case of
chained podule interrupt handlers.
Fill out the ih_maskaddr and ih_maskbits fields in the interrupt handler
structure so that interrupt dispatcher knows where to look to determine
if the handler should be called.
General code tidy up and source code formatting.
1996-06-12 20:59:10 +00:00
mark 4dd0dabfca Don't claim the podule interrupts but pass them on in case of
chained podule interrupt handlers.
Fill out the ih_maskaddr and ih_maskbits fields in the interrupt handler
structure so that interrupt dispatcher knows where to look to determine
if the handler should be called.
1996-06-12 20:46:58 +00:00
mark e5aad86168 Allow the mouse interrupt to be specified in the config file. Fall
back on timer 1 interrupts if none is specified.
Only set up timer 1 is the driver is using timer 1 interrupts.
Don't claim the interrupt but allow them to be passed on to other
handlers.
1996-06-12 20:30:59 +00:00
mark 7d688793a8 Claim the interrupt if it has been dealt with otherwise pass it on. 1996-06-12 20:28:29 +00:00
mark 08ec43427f Added some sanity checks to irq_claim().
Fixed the handling of IPL_NONE.
Debugged support for interrupt chaining.
Fill out the intrnames array with the name of the interrupt handler
currently at the head of the chain.
Guarded several sanity checks with #ifdef DIAGNOSTIC.
1996-06-12 20:23:58 +00:00
mark 459cefbe67 Added support for the RC7500 interrupt registers
Added interrupt chaining.
Removed some dead debugging code.
Guarded several sanity checks with #ifdef DIAGNOSTIC
Make sure interrupts are disable while updating the IOMD interrupt
masks.
1996-06-12 20:19:35 +00:00
mark 1fd9b6f37c Removed some dead code that could never get executed (followed a panic).
Updated several panic messages to indicate what part of the fault code
they came from.
1996-06-12 20:15:28 +00:00
mark 977f90bd3b Removed copyin()/copyout() stub code.
Removed several old debugging functions that are no longer needed.
Block interrupts while updating the soft interrupt masks.
Fixed softclock interrupts and added IRQ_SOFTPLIP to the SPL_SOFT mask.
1996-06-12 20:12:04 +00:00
mark 47c523fff0 Spilt the copyinout() function into two separate functions copyin()
and copyout() so that the address space checks are done here rather than
in a bit of stub code.
1996-06-12 20:06:00 +00:00
mark 7b05ce2841 Updated to match changes in the irq handler structure.
Define symbols for the address space limits that copyin() and copyout()
compare against.
1996-06-12 20:02:42 +00:00
mark 13ff05d513 Don't claim the interrupts in hardclock() and statclock() but allow
them to be passed on to other interrupt handlers attached to the
timer interrupts.
1996-06-12 20:00:21 +00:00
mark b8dfbd8fe6 Don't use signed compares when determining the copy direction. 1996-06-12 19:58:43 +00:00
mark 120210258e Added a new machine command intrchain to dump the interupt handler
chains.
1996-06-12 19:57:06 +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 4d280731dd Updated comments.
Print the irq masks for IPL_NONE.
1996-06-12 19:42:23 +00:00
mark 1f81e394d6 Only check the proc pointer in userret() if DIAGNOSTIC is defined. 1996-06-12 19:40:48 +00:00
mark d4a21812c0 Updated the arm_fpe_boot() prototype. 1996-06-12 19:37:37 +00:00
mark bbf3f35a4c Pass the cpu structure to the FPE boot function so that the FPU class
and type can be updated if a FPA is detected.
1996-06-12 19:37:03 +00:00
mark d9d6f7f246 RCS Id police. 1996-06-12 19:24:19 +00:00
mark 3ed835cae8 Only attach 1 VSYNC interrupt handler instead of a interrupt handler per
virtual console.
1996-06-12 19:12:57 +00:00
mark b58401e04e Not needed. This was identical to the VOYAGER config. 1996-06-03 22:50:07 +00:00
mark 8477987501 Fixed lots and lots and lots of -Wall compiler warnings. 1996-06-03 22:44:53 +00:00
mark f2a8347cc4 Fixed -Wall compiler warnings.
Implemented a setsoftintr() function.
1996-06-03 22:44:36 +00:00
mark bfe01da7b5 Tidied up the prototype declarations. 1996-06-03 22:41:14 +00:00
mark 4732cc6c39 Make sure that the ethernet address has been set correctly before
attaching the interface to the network code.
1996-06-03 22:39:12 +00:00
mark 45842a3af6 Merged in the latest changes that have been mode to the isa lpt driver.
Merged in the latest plip code from the pc532 port.
1996-06-03 22:36:23 +00:00
mark 0217e55278 Fixed the softnet interrupt code to properly use netisr. 1996-06-03 22:33:51 +00:00
mark e2391b47fd Merged in the latest changes that have been made to the isa com driver. 1996-06-03 22:30:36 +00:00
mark f941f8cdb9 Fixed -Wall compiler warnings. 1996-06-03 22:20:32 +00:00
mark 1c9f0501fc Don't complain about a drive type of zero, just treat it as no drive
present.
1996-06-03 22:19:21 +00:00
mark 59e4127d96 Use the sync information in the mode definition to set the VIDC sync
polarity.
1996-06-03 22:14:56 +00:00
mark 2f6e37b679 Fixed -Wall compiler warnings. 1996-06-03 22:11:34 +00:00
mark d4b96c659d Fixed -Wall compiler warnings introduced when fixing the vt220 printing
bug.
1996-06-03 22:08:37 +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 10d9fbd5fe RCS Id police. 1996-06-03 21:55:46 +00:00
mark 89711a59f0 Fixed -Wall compiler warnings. 1996-06-03 21:53:33 +00:00
mark 17582aa655 Removed some dead code from cpu_exit().
Fixed -Wall compiler warnings.
1996-06-03 21:46:15 +00:00
mark 7d3a5033a5 Use special versions of the IRQdisable and IRQenable macros that
keep FIQ's active.
1996-06-03 21:43:06 +00:00
mark 2d9f11e999 Add visibale debugging info for the RC7500 board. 1996-06-03 21:41:09 +00:00
mark 2a56b05b3d Implemented cache and tlb flush functions for the StrongARM.
RCS Id police.
1996-06-03 21:38:05 +00:00
mark 8251f6e1f7 Fixed copyright message. 1996-06-03 21:36:14 +00:00
mark 6da55f03ee RCS Id police. 1996-06-03 21:35:10 +00:00
mark 6ecba1cbe0 Added extra diagnostic information that can be printed when the ARM700
prefetch abort bug occurs.
Fixed -Wall compiler warnings.
1996-06-03 21:32:11 +00:00
mark ff542922fa getdevice() now defaults to returning the a partition if no partition
is specified in the string.
Fixed -Wall compiler warnings.
1996-06-03 21:28:59 +00:00
mark bd72d43fdc Major code clean up. Now satisfies the source code style guide. 1996-06-03 21:27:21 +00:00
mark 5a66df3d3d RCS Id police. 1996-06-03 21:21:29 +00:00
mrg 1af2be6068 document PORTAL 1996-05-20 18:15:11 +00:00
mark 08dfd04e76 Fixed the NetBSD Id string. 1996-05-20 17:09:24 +00:00
mark a7f4c7929f Don't need -fno-builtin anymore. 1996-05-20 14:37:24 +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 d7ef096470 Probe for both Atomwide and ANT ether3 podules. 1996-05-17 16:24:03 +00:00
mark 8a9255ea4b Recognise ANT ether3 podules. 1996-05-17 16:17:21 +00:00
mark c2af4f7f17 add 'kernel_text' symbol, for use by kvm_mkdb 1996-05-17 11:00:45 +00:00
mark 4a03434386 Increased delay time while waiting for acknowledgement following the
sending of a keyboard reset code. This fixes a problem on some machine
where the reset code ends is a long loop continually trying to reset the
keyboard.
1996-05-16 19:32:25 +00:00
mark 525cc1eebc Fixed the printing of the podule description from the chunk directory
for unrecognised podules.
1996-05-16 19:05:35 +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 cf31abcc16 Minor changes to the configuration of some devices. 1996-05-12 21:54:37 +00:00
mark b7105daa51 Updated boot0() to leave the processor in 32 bit data/address space mode
when jumping back into the ROM at 0x00000000.
1996-05-12 21:54:05 +00:00
mark db208e96e3 Addition of configuration file for RC7500 development board. 1996-05-12 21:49:01 +00:00
mark 169f7f2a06 Fixed the vt220 printing bug.
Fixed the 'loss of console output while X is switched in' bug.
1996-05-12 21:42:44 +00:00
mark 8a3097c984 Fixed panic strings with %i in them where it should have been %s. 1996-05-12 21:40:21 +00:00
mark 6ad1b0f567 Added the es ethernet driver. 1996-05-12 21:37:47 +00:00
mark 95ee0f849a Initial commit of the SMC91C9X ethernet driver found on RC7500
motherboards.
1996-05-12 21:35:07 +00:00
mark 05ae98d7ed Fixed the order of the machine includes. 1996-05-12 21:33:18 +00:00
mark 0efacab0e1 Removed some lurking experimental code that does not work relating
to CDROM devices.
1996-05-12 21:30:15 +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
mycroft 540f9550c0 Make `make depend' work for libraries. 1996-05-11 16:11:30 +00:00
mark 8eddcbfbd2 Added needs-flag to the podulebus driver.
Tidied up the file a bit and added some extra comments.
1996-05-09 14:03:18 +00:00
mark 779d7709c5 Separated mouse initialisation code out into a separate function.
Added a watchdog timer to reset to reinitialise the mouse if it dies.
1996-05-07 21:04:08 +00:00
mark 09aabb30f7 Merged in changes from the isa wd driver. 1996-05-07 21:00:09 +00:00
thorpej 748810b06d Changed struct ifnet to have a pointer to the softc of the underlying
device and a printable "external name" (name + unit number), thus eliminating
if_name and if_unit.  Updated interface to (*if_watchdog)() and (*if_start)()
to take a struct ifnet *, rather than a unit number.
1996-05-07 00:46:37 +00:00
mark f194862b11 Updated declaration of dk_establish() to match prototype. 1996-05-06 00:57:10 +00:00
mark 928d9a1842 Fixed compiler warnings generated with -Wall. 1996-05-06 00:52:35 +00:00
mark dbf4689e65 Fixed -Wall compiler warnings.
Implemented ESC [g sequence.
1996-05-06 00:47:20 +00:00
mark 2dd637939f Fixed VIDC register setup for RC7500 boards. 1996-05-06 00:45:09 +00:00
mark 3f91443b0b Added __noreturn__ attribute to boot0(). 1996-05-06 00:41:55 +00:00
mark 5b6948449b Commented out the vm_map_remove from cpu_exit() as this appears to be
done in the exit1() function in kern_exit.c
1996-05-06 00:41:32 +00:00
mark 6417430844 Fixed -Wall compiler warnings. 1996-05-06 00:37:13 +00:00
mark d0e2e6de12 Don't try and idle a ARM7500 if targeting a RC7500 board as power
down is not yet supported.
1996-05-06 00:36:05 +00:00
mark c41bdbf690 Added a new routine kbdcmd() to send commands to the keyboard.
Added a new routine kbdreset() to conduct a full keyboard reset.
Added definitions of all keyboard command codes and responces.
Replaced kbd_set_leds() with new function that used kbdcmd().
The keyboard attach function now detects whether a keyboard is
attached or not.
1996-05-06 00:35:05 +00:00
mark f5b3a4ddc7 Only call config_rootfound() for the podulebus is NPODULEBUS > 0. 1996-05-06 00:32:19 +00:00
mark 938954d516 Mark interrupt handlers attached to the irq chain as active in
irq_claim().
Clear the active flag in the irq handler when it is removed from the irq
chain in irq_release().
Checks for podule IRQ's in irq_claim() are now guarded with
#if NPODULEBUS > 0
fiq_release() now retrieves the FIQ more registers and places them
back in the fiq handler structure.
1996-05-06 00:30:39 +00:00
mark 181c7ad5cd Added a new function fiq_getregs() to transfer the FIQ mode register
into a fiqhandler structure.
Updated fiq_setregs to use symbols in assym.h for offsets into
fiqhandler structures.
1996-05-06 00:25:43 +00:00
mark 60b2501141 Updated FIQ handler registers to match changes to the floppy
fiq routines.
1996-05-06 00:23:57 +00:00
mark 08003631cc Rewritten floppy_read_fiq() and floppy_write_fiq() routines.
Register usage changed to free fiq mode r13.
Added loop to keep reading bytes while the floppy FIQ is asserted.
1996-05-06 00:21:05 +00:00