qemu-palcode.git
22 months agoReinstate do_console if kernel not provided master github/master
Richard Henderson [Sun, 13 Nov 2016 18:08:24 +0000 (19:08 +0100)] 
Reinstate do_console if kernel not provided

Signed-off-by: Richard Henderson <rth@twiddle.net>
22 months agoTidy clipper Sys_Setup
Richard Henderson [Sun, 13 Nov 2016 11:21:45 +0000 (12:21 +0100)] 
Tidy clipper Sys_Setup

Signed-off-by: Richard Henderson <rth@twiddle.net>
22 months agoAdd smp support
Richard Henderson [Sun, 13 Nov 2016 11:04:29 +0000 (12:04 +0100)] 
Add smp support

Signed-off-by: Richard Henderson <rth@twiddle.net>
5 years agoAdd Cserve_Get_VM_Time
Richard Henderson [Tue, 16 Jul 2013 13:46:36 +0000 (06:46 -0700)] 
Add Cserve_Get_VM_Time

Signed-off-by: Richard Henderson <rth@twiddle.net>
5 years agoBuild with -O2 and -g1.
Richard Henderson [Mon, 8 Jul 2013 19:13:01 +0000 (12:13 -0700)] 
Build with -O2 and -g1.

5 years agoDon't initialize COM2.
Richard Henderson [Mon, 8 Jul 2013 18:49:21 +0000 (11:49 -0700)] 
Don't initialize COM2.

At least not until we implement MCHK handling.  The current QEMU will
(properly) MCHK when accessing a non-existant device.

5 years agoOptimize memory layout.
Richard Henderson [Mon, 8 Jul 2013 18:48:03 +0000 (11:48 -0700)] 
Optimize memory layout.

Minimizing the amount of padding between page-aligned data structures.

5 years agoDeclare vgahw_init where init.c can find it.
Richard Henderson [Mon, 8 Jul 2013 18:46:21 +0000 (11:46 -0700)] 
Declare vgahw_init where init.c can find it.

5 years agoOmit video_save_pointer_table as unused.
Richard Henderson [Mon, 8 Jul 2013 18:45:58 +0000 (11:45 -0700)] 
Omit video_save_pointer_table as unused.

5 years agoFix use of undefined PACKED macro.
Richard Henderson [Mon, 8 Jul 2013 18:45:34 +0000 (11:45 -0700)] 
Fix use of undefined PACKED macro.

5 years agoMake vga fonts const
Richard Henderson [Mon, 8 Jul 2013 18:34:57 +0000 (11:34 -0700)] 
Make vga fonts const

7 years agoProperly detect the presence of a vga device.
Richard Henderson [Fri, 3 Jun 2011 22:12:52 +0000 (17:12 -0500)] 
Properly detect the presence of a vga device.

7 years agoInitialize a VGA controler.
Richard Henderson [Fri, 3 Jun 2011 04:15:49 +0000 (23:15 -0500)] 
Initialize a VGA controler.

Doesn't actually check to see that one exists yet...

7 years agoBegin initiallizing the VGA card.
Richard Henderson [Mon, 9 May 2011 17:59:50 +0000 (10:59 -0700)] 
Begin initiallizing the VGA card.

7 years agoAdd in/out functions for 16 and 32-bit quantities.
Richard Henderson [Mon, 9 May 2011 17:59:22 +0000 (10:59 -0700)] 
Add in/out functions for 16 and 32-bit quantities.

7 years agoHack: Move pci BAR ranges.
Richard Henderson [Mon, 9 May 2011 17:58:45 +0000 (10:58 -0700)] 
Hack: Move pci BAR ranges.

The Linux kernel will re-allocate all of these, tickling what appears
to be a bug in QEMU.  Work around this by moving the ranges allocated
by the console so that the new ranges don't overlap.

7 years agoDon't use alarms for ndelay.
Richard Henderson [Sat, 7 May 2011 01:05:46 +0000 (18:05 -0700)] 
Don't use alarms for ndelay.

7 years agoInitial PCI setup.
Richard Henderson [Sat, 7 May 2011 01:05:13 +0000 (18:05 -0700)] 
Initial PCI setup.

7 years agoInline i/o routines.
Richard Henderson [Sat, 7 May 2011 01:04:44 +0000 (18:04 -0700)] 
Inline i/o routines.

7 years agoHandle padding in printf numerical output.
Richard Henderson [Fri, 6 May 2011 22:50:07 +0000 (15:50 -0700)] 
Handle padding in printf numerical output.

7 years agoUse level-triggered ISA interrupts.
Richard Henderson [Fri, 6 May 2011 18:52:02 +0000 (11:52 -0700)] 
Use level-triggered ISA interrupts.

7 years agoAdd ps2 keyboard initialization.
Richard Henderson [Fri, 6 May 2011 18:07:37 +0000 (11:07 -0700)] 
Add ps2 keyboard initialization.

Which also requires that we properly initialize the i8259 (ISA)
interrupt controller.

7 years agoBeginnings of the SRM console prompt.
Richard Henderson [Thu, 5 May 2011 20:06:24 +0000 (13:06 -0700)] 
Beginnings of the SRM console prompt.

7 years agoRead the correct register for typhoon device interrupt ready.
Richard Henderson [Tue, 3 May 2011 14:49:58 +0000 (07:49 -0700)] 
Read the correct register for typhoon device interrupt ready.

7 years agoImplement the console callback interface.
Richard Henderson [Mon, 2 May 2011 17:46:14 +0000 (10:46 -0700)] 
Implement the console callback interface.

At least enough for GETC and PUTS.

7 years agoclipper: Report ISA interrupts properly.
Richard Henderson [Mon, 2 May 2011 15:48:14 +0000 (08:48 -0700)] 
clipper: Report ISA interrupts properly.

7 years agoFix SMP stack initialization.
Richard Henderson [Mon, 2 May 2011 03:17:07 +0000 (20:17 -0700)] 
Fix SMP stack initialization.

7 years agoAdd copyright information.
Richard Henderson [Sun, 1 May 2011 16:11:52 +0000 (09:11 -0700)] 
Add copyright information.

7 years agoRearrange Cserve. Add QMU clock/alarm related entry points.
Richard Henderson [Thu, 28 Apr 2011 15:45:05 +0000 (08:45 -0700)] 
Rearrange Cserve.  Add QMU clock/alarm related entry points.

7 years agoSet max_asn properly for the cpu.
Richard Henderson [Wed, 27 Apr 2011 21:46:50 +0000 (14:46 -0700)] 
Set max_asn properly for the cpu.

7 years agoRe-org for Clipper system.
Richard Henderson [Wed, 27 Apr 2011 16:43:00 +0000 (09:43 -0700)] 
Re-org for Clipper system.

7 years agoFix error in SWPCTX code.
Richard Henderson [Mon, 25 Apr 2011 21:09:29 +0000 (14:09 -0700)] 
Fix error in SWPCTX code.

7 years agoUse fixed frequency for rpcc.
Richard Henderson [Sun, 24 Apr 2011 20:40:23 +0000 (13:40 -0700)] 
Use fixed frequency for rpcc.

7 years agoImplement CallPal_Cserve.
Richard Henderson [Wed, 20 Apr 2011 22:20:43 +0000 (15:20 -0700)] 
Implement CallPal_Cserve.

This is just good enough to handle the cserve_ena/dis used by
the Linux kernel for managing interrupts.

7 years agoImplement WTINT.
Richard Henderson [Fri, 22 Apr 2011 13:48:21 +0000 (06:48 -0700)] 
Implement WTINT.

7 years agoUse qemu_sysval and qemu_usp, newly exported from QEMU.
Richard Henderson [Mon, 18 Apr 2011 22:20:38 +0000 (15:20 -0700)] 
Use qemu_sysval and qemu_usp, newly exported from QEMU.

7 years agoBuild palcode-sx164 instead of palcode.
Richard Henderson [Mon, 18 Apr 2011 22:17:40 +0000 (15:17 -0700)] 
Build palcode-sx164 instead of palcode.

7 years agoOptimize for size, and pca56.
Richard Henderson [Sat, 16 Apr 2011 15:24:30 +0000 (08:24 -0700)] 
Optimize for size, and pca56.

7 years agoUse explicit division avoidance in print_decimal.
Richard Henderson [Sat, 16 Apr 2011 15:24:15 +0000 (08:24 -0700)] 
Use explicit division avoidance in print_decimal.

7 years agoFix return value for early return in memset.
Richard Henderson [Sat, 16 Apr 2011 14:59:53 +0000 (07:59 -0700)] 
Fix return value for early return in memset.

7 years agoFix typos in rti implementation.
Richard Henderson [Fri, 15 Apr 2011 01:37:56 +0000 (18:37 -0700)] 
Fix typos in rti implementation.

7 years agoHandle timer interrupts specially.
Richard Henderson [Thu, 14 Apr 2011 23:49:28 +0000 (16:49 -0700)] 
Handle timer interrupts specially.

7 years agoRaise the interrupt level for entInt
Richard Henderson [Thu, 14 Apr 2011 03:07:56 +0000 (20:07 -0700)] 
Raise the interrupt level for entInt

7 years agoPCBB.PTBR contains a page frame number, not a physical address.
Richard Henderson [Wed, 13 Apr 2011 23:57:22 +0000 (16:57 -0700)] 
PCBB.PTBR contains a page frame number, not a physical address.

7 years agoUse -Wall.
Richard Henderson [Wed, 13 Apr 2011 19:57:57 +0000 (12:57 -0700)] 
Use -Wall.

7 years agoRely less on initialized data.
Richard Henderson [Wed, 13 Apr 2011 19:57:44 +0000 (12:57 -0700)] 
Rely less on initialized data.

(1) Don't statically initialize HWRPB and PCBB.
(2) Use SwpPal at the end of do_start to install the PCBB and PTBR,
    rather than setting those up in __start in PALmode.
(3) Use -mbuild-constants to prevent the compiler using static data.

7 years agoDon't hard-code paths to the cross-compiler.
Richard Henderson [Wed, 13 Apr 2011 00:07:34 +0000 (17:07 -0700)] 
Don't hard-code paths to the cross-compiler.

7 years agoFix WrEnt bounds checking.
Richard Henderson [Tue, 12 Apr 2011 06:04:50 +0000 (23:04 -0700)] 
Fix WrEnt bounds checking.

7 years agoMisc enhancements
Richard Henderson [Tue, 12 Apr 2011 03:59:02 +0000 (20:59 -0700)] 
Misc enhancements

(1) Mark symbols as functions,
(2) Fix STACK_FRAME in-kernel test
(3) Zero newly allocated memory

7 years agoDon't allow MMFault in PALmode.
Richard Henderson [Tue, 12 Apr 2011 00:08:18 +0000 (17:08 -0700)] 
Don't allow MMFault in PALmode.

7 years agoSignal halt properly.
Richard Henderson [Tue, 12 Apr 2011 00:07:58 +0000 (17:07 -0700)] 
Signal halt properly.

7 years agoDynamically allocate page tables; setup as per MILO.
Richard Henderson [Tue, 12 Apr 2011 00:07:22 +0000 (17:07 -0700)] 
Dynamically allocate page tables; setup as per MILO.

7 years agoAdd simplistic printf.
Richard Henderson [Mon, 11 Apr 2011 17:47:43 +0000 (10:47 -0700)] 
Add simplistic printf.

7 years agoAdd rudimentary printf.
Richard Henderson [Mon, 11 Apr 2011 05:58:07 +0000 (22:58 -0700)] 
Add rudimentary printf.

7 years agoMove stack to sbss section for easy access.
Richard Henderson [Mon, 11 Apr 2011 05:57:42 +0000 (22:57 -0700)] 
Move stack to sbss section for easy access.

7 years agoAdd uart printing support.
Richard Henderson [Mon, 11 Apr 2011 02:20:18 +0000 (19:20 -0700)] 
Add uart printing support.

7 years agoTEMP: finished through init_page_tables
Richard Henderson [Wed, 6 Apr 2011 23:02:23 +0000 (16:02 -0700)] 
TEMP: finished through init_page_tables

7 years agoTEMP
Richard Henderson [Wed, 6 Apr 2011 23:02:02 +0000 (16:02 -0700)] 
TEMP