Commit Graph

96 Commits

Author SHA1 Message Date
reinoud df2b9ae2bd Initial commit of wscons for the RiscPC/A7000 arm32 family. There is still lots
to do notably the mouse, some issues about 4 bpp modes and most of all Xwscons !

This code will still allow usage of the old vidcconsole complete with X etc.
Note that the wscons code can now only be booted with the new bootloader but
kernels compiled with vidcconsole can still be booted the old way.
2001-03-20 18:20:53 +00:00
reinoud 5cc6423696 Fixed the bug that crept into giving support for moving IOMDs during startup.
Initially I gave it the type `int *iomd_base' but some macro's defined in
iomdreg.h calculated with the value asuming it to be an int ... thus all the
registers offsets were multiplied by four and that can only mean trouble !
The kernel boots again ever happily. Sorry for the inconvenience... it was
a good bug hunt though!
2001-03-02 01:46:57 +00:00
reinoud 3500dc208f Centralise declaration of memc_base 2001-02-27 20:23:11 +00:00
reinoud 5cd12d1f9e Make it compile again 2001-02-27 18:33:26 +00:00
reinoud d4eb8fb142 Also forgot to declare the iomd_base. 2001-02-27 18:30:46 +00:00
reinoud d35a86c1a6 Forgot to declare iomd_base since it isnt in iomdreg.h anymore due to the
inclusion of this file in assembler.
2001-02-27 18:29:36 +00:00
reinoud e4e4d358a0 Fixed IOMD remapping during boottime 2001-02-25 23:59:48 +00:00
bjh21 3fb058011a Move arm32 ports over to using <arm/armreg.h>, so <cpu.h> mostly contains
NetBSD-specific definitions.

This also entails some changes to the way CPU identification is done.  I hope
I've got it right.
2001-02-25 21:31:13 +00:00
reinoud 7535275b7c Fixed the `slow printing' bug that occured with debugged kernels on RiscPC's.
When the IOMD isnt mapped and all is mapped 1:1 a read gives garbage and thus
the obscure feature that slows down printing (or halts it!) when the mouse
button is pressed during output to the vidcconsole gets allways activated.

Included a simple flag that signals if the IOMD is mapped; the delay routine
won't check the mouse if this flag is still clear.
2001-02-24 21:29:38 +00:00
mycroft 7057d01bbc Inline need_resched() and need_proftick(). Make need_proftick() actually *do*
something!
2000-12-12 06:06:05 +00:00
mrg b564830503 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:44:03 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
drochner 5e990a7f7c implement bus_space_vaddr() 2000-04-17 17:39:17 +00:00
mark 7ef62e2b59 Remove unncessary cf_unit usage.
Make sure we only attach 1 of these devices.
2000-02-13 05:00:57 +00:00
mark 9316cea99d Remove unnecessary cf_unit usage. 2000-02-13 04:59:57 +00:00
tsutsui b236cf48c3 check whether tv_usec >= 1000000 2000-01-22 05:21:24 +00:00
cgd c9c2181ed9 provide an __ELF__ version of _C_FUNC and _C_LABEL, convert the assembly
#defines in asm.h to use them, and convert code which needs to use C labels
to use _C_LABEL as well.  (I can't see any reason why the label vs. function
differentiation shouldn't be GC'd; i only added uses of _C_LABEL.)  This
should help if this port is converted to use ELF, and was checked by
compiling all kernels in arm32/conf (with some driver removals and some
MI header fixups re: common blocks) with an arm-linux ELF toolchain.
1999-10-26 06:53:41 +00:00
thorpej 3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
mark 902004cefc Don't try and calculate the time in microtime() unless cpu_initclocks()
has already been called and thus we know the values the timers are using.
This also ensures that clock_sc will always be valid when we try and use
it to read the timer registers.
Fixes PR7357.
1999-04-20 09:14:32 +00:00
mrg d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
mark 1b8eea513f _intrnames is only used in irq_release() if IRQ_STATS is defined so add an
appropriate guard.
1999-03-16 10:53:50 +00:00
sommerfe 83940dae72 Finish the rest of the pms->opms rename for non-wscons PS/2 mice. 1999-01-23 22:18:41 +00:00
mark f6f7ac980d Fix bug in the initialization of the interrupt masks for shared
interrupts as described in PR6421. Fix from Richard Earnshaw.
1999-01-22 06:59:26 +00:00
mark 4285910912 Implement faster method of blocking all lower priority interrupts.
Modify current_spl_level to reflect the temporary change in interrupt
priority level which dispatching.
Don't increment the interrupt stats for every handler in the interrupt chain.
Cleaned up a number of comments.
Define soft interrupt names.
A few miscellaneous tidy ups.
1998-09-05 04:05:31 +00:00
mark de5eac54ea Simplified initialisation of irqmasks.
Removed any remnants of soft interrupt dispatching.
Cleaned up a number of comments.
Removed a number of blank lines.
Nuked register keywords.
Made sure code is in sync with interrupt handling for other ARM hardware.
1998-09-05 04:04:24 +00:00
mark af91a82f1e Remove pv_addr_t and systempage declarations. 1998-08-27 03:58:10 +00:00
mycroft 6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
mycroft d5eb56b2c2 Move splclock and splaudio outside splimp. 1998-08-08 23:39:38 +00:00
mark 4a463e49fe defopt CPU_* options in opt_cputypes.h 1998-07-07 03:05:15 +00:00
mark c73c7674d7 defopt IRQSTATS. 1998-07-06 00:53:07 +00:00
mark 36af051383 Update functions that missed the previous name space change. 1998-07-05 23:31:16 +00:00
thorpej 46320bb017 Clean up the bus space function namespace somewhat; make sure they don't
collide with function names used in other parts of the kernel.
1998-06-28 07:27:51 +00:00
mark 2c1cbdae75 Moved delay() from machdep.c to iomd_clock.c as delay will be dependant
on the system timers being used.
1998-06-02 21:57:58 +00:00
mark bdfeab3714 Merge in UVM support from Neil Carson <neil@causality.com>. 1998-06-02 20:41:46 +00:00
mark f9042ff05b Guard the PS/2 mouse attachment and ARM7500 IOC check with the
CPU_ARM7500 macro.
1998-04-17 18:44:09 +00:00
mark af29a19dd0 Fix the interrupt number for the PS/2 mouse port on the ARM7500
(from David Forbes).
1998-04-10 06:54:30 +00:00
mark 447623df53 Correct the values of IOMD_MSDATA and IOMD_MSCR as they are 4 times too
big. Spotted by David Forbes.
1998-04-10 06:53:08 +00:00
mark b2286e384a Include machine/asm.h and use the macros from there for declaring
the function entry points.
Removed some redundant .req statements.
1998-04-01 23:09:06 +00:00
mark 268d889d0d Make the floppy_read_fiq and floppy_write_fiq entry points non-profiling. 1998-04-01 22:53:32 +00:00
mark 7f98e08105 Remove some redundant .req statements. 1998-04-01 22:52:24 +00:00
mark 653457f11b Remove the variable oldtm from diagnostic printf() statement as this
variable no longer exists.
1998-03-26 21:27:12 +00:00
mark cd0f9898b5 Fix problems with microsecond timestamping in microtime().
Remove some old dead code.
1998-03-26 20:07:18 +00:00
mark 26634e5f83 Cleaned up the IOMD access macros. 1998-03-26 20:05:49 +00:00
mark 6fa49296d7 Include machine/asm.h. Removed un-necessary .req directives. Use the
ENTRY() macro for declaring function entry points.
1998-03-26 20:05:13 +00:00
mark 854d928a14 Fix typo in a DMA dummy stub function. 1998-02-21 23:09:37 +00:00
mark 56fc27b288 Removed unused variables for the benefit of -Wall -Werror. 1998-01-18 03:39:23 +00:00
thorpej 687449a900 Update for changes to config. 1998-01-13 02:09:58 +00:00
mark ae0af9300a Fix a bug in irq_release() when searching interrupt list for the handler
to remove. The address of the pointer rather than the address of what
is pointed to was use to track the previous handler resulting in problems
when releasing a chained irq. (from John Ballance)
1997-11-07 01:04:51 +00:00
mark 9065e731d6 arm32 kernel source retructure
- New versions of the drivers for the devices that really are IOMD
    specific. The old arm32/mainbus drivers have either been rewritten
    and are now child devices of the IOMD or they have been restructured
    and split into generic drivers will IOMD specific attachments.
1997-10-14 11:16:35 +00:00
mark 480bd07ef8 arm32 kernel source restructure
- IOMD specific clock support. This used to the the generic ARM clock
    support but is now specific to the IOMD device.
  - Updated to support new IOMD device etc.
1997-10-14 11:09:56 +00:00