[OpenBIOS] r177 - in openbios-devel: arch/sparc32 drivers

svn at openbios.org svn at openbios.org
Sat Nov 17 19:56:43 CET 2007


Author: blueswirl
Date: 2007-11-17 19:56:43 +0100 (Sat, 17 Nov 2007)
New Revision: 177

Modified:
   openbios-devel/arch/sparc32/entry.S
   openbios-devel/drivers/obio.c
Log:
Reset fixes:
 * recalculate CRC to avoid error message and halt after reset
 * fix bug that crashed SS10/SMP when reset


Modified: openbios-devel/arch/sparc32/entry.S
===================================================================
--- openbios-devel/arch/sparc32/entry.S	2007-11-14 19:25:43 UTC (rev 176)
+++ openbios-devel/arch/sparc32/entry.S	2007-11-17 18:56:43 UTC (rev 177)
@@ -129,7 +129,7 @@
         ! Check if this not the first SMP CPU, if so, bypass PROM entirely
         add     %g3, SPARC_SMP_VALID, %g1
         lduba   [%g1] ASI_M_CTL, %g2
-        stba    %g0, [%g2] ASI_M_CTL
+        stba    %g0, [%g1] ASI_M_CTL
         set     PHYS_SS10_EEPROM + OHW_RAM_SIZE, %g1
         ldda	[%g1] ASI_M_CTL, %g0
         tst     %g2

Modified: openbios-devel/drivers/obio.c
===================================================================
--- openbios-devel/drivers/obio.c	2007-11-14 19:25:43 UTC (rev 176)
+++ openbios-devel/drivers/obio.c	2007-11-17 18:56:43 UTC (rev 177)
@@ -687,6 +687,7 @@
     unsigned int machine_id;
     struct cpudef *cpu;
     ohwcfg_v3_t *header;
+    uint16_t crc;
 
     ob_new_obio_device("eeprom", NULL);
 
@@ -721,6 +722,7 @@
     header->kernel_image = 0;
     header->kernel_size = 0;
     header->cmdline_size = 0;
+    header->crc = OHW_compute_crc(header, 0x00, 0xF8);
 
     boot_device = nv_info.boot_devices[0];
     nographic = nv_info.graphic_flags & OHW_GF_NOGRAPHICS;




More information about the OpenBIOS mailing list