[LinuxBIOS] AMD Geode Lx/CS5536 crash after do_vsmbios.

Marc Jones marc.jones at amd.com
Mon Oct 8 18:41:06 CEST 2007



joeasy Chou wrote:
> Hi,
>  
> my platfrom:
> AMD Geode lx/cs5536
> superio: w83627hf
> cat vsa.bin  payload  linuxbios.rom > mybios.rom
>  
> The vsa.bin(36KB) download from AMD web site, payload is filo.elf.
> total flash rom size is 512KB, message out as fellowings, can anyone
> tell me what's happened!
>  
> 
> LinuxBIOS-2.0.0.0Fallback Mon Oct  8 02:50:13 PDT 2007 starting...
> _MSR GLCP_SYS_RSTPLL (4c000014) value is: 00000392:0000180c
> Configuring PLL
> LinuxBIOS-2.0.0.0Fallback Mon Oct  8 02:50:13 PDT 2007 starting...
> _MSR GLCP_SYS_RSTPLL (4c000014) value is: 00000392:07de000c
> Done cpuRegInit
> SMBUS READ ERROR:03 device:a2
> Ram1.00
> Ram2.00
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> SMBUS READ ERROR:03 device:a2
> Ram3
> DRAM controller init done.
>                           RAM DLL lock
>                                       Ram4
> Copying LinuxBIOS to ram.
> Jumping to LinuxBIOS.
> LinuxBIOS-2.0.0.0Fallback Mon Oct  8 02:50:13 PDT 2007 booting...
> clocks_per_usec: 334
> Enumerating buses...
> scan_static_bus for Root Device
>  >> Entering northbridge.c: enable_dev with path 6
>  >> Entering northbridge.c: pci_domain_enable
> Enter northbridge_init_early
> writeglmsr: MSR 0x10000020, val 0x20000000:0x000fff80
> writeglmsr: MSR 0x10000021, val 0x20000000:0x080fffe0
> writeglmsr: MSR 0x1000002c, val 0x20000000:0x00000003
> sizeram: _MSR MC_CF07_DATA: 10076013:00003a40
> sizeram: sizem 0x100MB
> SysmemInit: enable for 256MBytes
> usable RAM: 268304383 bytes
> SysmemInit: MSR 0x10000028, val 0x2000000f:0xfdf00100
> sizeram: _MSR MC_CF07_DATA: 10076013:00003a40
> sizeram: sizem 0x100MB
> SMMGL0Init: 268304384 bytes
> SMMGL0Init: offset is 0x80400000
> SMMGL0Init: MSR 0x10000026, val 0x28fbe080:0x400fffe0
> writeglmsr: MSR 0x10000080, val 0x00000000:0x00000003
> writeglmsr: MSR 0x40000020, val 0x20000000:0x000fff80
> writeglmsr: MSR 0x40000021, val 0x20000000:0x080fffe0
> writeglmsr: MSR 0x4000002e, val 0x20000000:0x00000003
> sizeram: _MSR MC_CF07_DATA: 10076013:00003a40
> sizeram: sizem 0x100MB
> SysmemInit: enable for 256MBytes
> usable RAM: 268304383 bytes
> SysmemInit: MSR 0x4000002a, val 0x2000000f:0xfdf00100
> SMMGL1Init:
> SMMGL1Init: MSR 0x40000023, val 0x20000080:0x400fffe0
> writeglmsr: MSR 0x40000080, val 0x00000000:0x00000001
> writeglmsr: MSR 0x400000e3, val 0x60000000:0x033000f0
> CPU_RCONF_DEFAULT (1808): 0x25FFFC02:0x10FFDF00
> CPU_RCONF_BYPASS (180A): 0x00000000 : 0x00000000
> L2 cache enabled
> Enabling cache
> GLPCI R1: system msr.lo 0x00100130 msr.hi 0x0ffdf000
> GLPCI R2: system msr.lo 0x80400120 msr.hi 0x8041f000
> Exit northbridge_init_early
> Done cpubug fixes
> Not Doing ChipsetFlashSetup()
> Before VSA:
> do_vsmbios
> buf ilen 35441 olen60466
> buf 00060000 *buf 186 buf[256k] 80
> buf[0x20] signature is b0:10:e6:80
> Call real_mode_switch_call_vsm
>  into real_mode_switch_call_vsm
> Unexpected Exception: 13 @ 10:00016765 - Halting
> Code: 0 eflags: 00010006
> eax: 00000020 ebx: 00000001 ecx: 10000026 edx: 10000028
> edi: 0001a5e8 esi: 00000003 ebp: 00025ed4 esp: 00025ed4
> 
> Easy
> 

Looks like the jump to VSA didn't go to VSA. Did the mybios.rom come out 
to the correct size? You shouldn't have to cat the payload on. The LB 
build should do that.

The best way to build Geode LX platforms is to use buildrom. It will 
build linuxbios and the payload and appened the VSA. Try a db800 or 
msm800sev as an example.

http://linuxbios.org/index.php/Buildrom

Marc


-- 
Marc Jones
Senior Firmware Engineer
(970) 226-9684 Office
mailto:Marc.Jones at amd.com
http://www.amd.com/embeddedprocessors






More information about the coreboot mailing list