[PATCH] Fix level 14 and level 10 timers under Solaris 8 on SPARC32.

From: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> During boot, if the level 14 timer limit is not set then the Solaris kernel panics with a division by zero error. Fix this by setting it to the default value as documented in obio.h. Also if the level 10 timer is not set with a limit of 0, the Solaris kernel constantly outputs "spurious interrupt at processor level 10" messages during boot. Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk> --- openbios-devel/drivers/obio.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/openbios-devel/drivers/obio.c b/openbios-devel/drivers/obio.c index 2153c44..3adf9ac 100644 --- a/openbios-devel/drivers/obio.c +++ b/openbios-devel/drivers/obio.c @@ -296,8 +296,8 @@ ob_counter_init(uint64_t base, unsigned long offset) counter_regs = (struct sun4m_timer_regs *)ofmem_map_io(base + (uint64_t)offset, sizeof(*counter_regs)); counter_regs->cfg = 0xffffffff; - counter_regs->l10_timer_limit = (((1000000/100) + 1) << 10); - counter_regs->cpu_timers[0].l14_timer_limit = 0; + counter_regs->l10_timer_limit = 0; + counter_regs->cpu_timers[0].l14_timer_limit = 0x9c4000; /* see comment in obio.h */ counter_regs->cpu_timers[0].cntrl = 1; for (i = 0; i < SUN4M_NCPU; i++) { -- 1.7.2.3

On Thu, Feb 17, 2011 at 5:02 PM, <mark.cave-ayland@siriusit.co.uk> wrote:
From: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk>
During boot, if the level 14 timer limit is not set then the Solaris kernel panics with a division by zero error. Fix this by setting it to the default value as documented in obio.h. Also if the level 10 timer is not set with a limit of 0, the Solaris kernel constantly outputs "spurious interrupt at processor level 10" messages during boot.
Passes my quick random tests.

On 17/02/11 20:45, Blue Swirl wrote:
Passes my quick random tests.
Okay great - looks fine with my test images too, so will commit shortly. ATB, Mark. -- Mark Cave-Ayland - Senior Technical Architect PostgreSQL - PostGIS Sirius Corporation plc - control through freedom http://www.siriusit.co.uk t: +44 870 608 0063 Sirius Labs: http://www.siriusit.co.uk/labs
participants (3)
-
Blue Swirl
-
Mark Cave-Ayland
-
mark.cave-ayland@siriusit.co.uk