[+seabios, coreboot --> bcc]

On Mon, Mar 23, 2015 at 7:27 PM, Bao, Zheng <Zheng.Bao@amd.com> wrote:
I am porting the coreboot to a platform with a new AMD APU, which is close to Kabini and Mullins.
Now the board can boot Ubuntu and Windows 7. But it failed to boot Windows 8.
It crashes at a very early stage, which seems to be Windows bootloader. The debug message of SeaBIOS is attached.

The interrupt routine installed by SeaBIOS still work. We can see handle_13, handle_08, handle_1a are called once in a while.
There is no BSOD. There is only a windows logo on the monitor, without progress ring of Windows 8.
Even the debug version of windows 8 doesn't help, because it crashes before the image is loaded.

Is there any more way to debug windows 8 bootloader?

Zheng


serial output
---------------------
.......
.......
handle_08
enter handle_15:
   a=0000e820  b=00000006  c=00000018  d=534d4150 ds=0000 es=3004 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a25  f=0256 enter handle_13:
   a=00004200  b=00000000  c=00000000  d=00000080 ds=3024 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a1d  f=0256 disk_op d=0x000f98e0 lba=0 buf=0x00030000 count=1 cmd=2
AHCI/0: send cmd ...
handle_08
AHCI/0: ... intbits 0x1, status 0x50 ...
AHCI/0: ... finished, status 0x50, OK
ahci disk read, lba      0, count   1, buf 0x00030000, rc 0
enter handle_13:
   a=00004200  b=00000000  c=00000000  d=00000080 ds=3204 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a1d  f=0256 disk_op d=0x000f98e0 lba=2048 buf=0x00030000 count=16 cmd=2
AHCI/0: send cmd ...
AHCI/0: ... intbits 0x1, status 0x50 ...
AHCI/0: ... finished, status 0x50, OK
ahci disk read, lba    800, count  10, buf 0x00030000, rc 0
enter handle_1a:
   a=00000000  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256
handle_08
enter handle_1a:
   a=00000000  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256 enter handle_13:
   a=00004200  b=00000000  c=00000000  d=00000080 ds=3804 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a1d  f=0256 disk_op d=0x000f98e0 lba=7166912 buf=0x00030000 count=64 cmd=2
AHCI/0: send cmd ...
handle_08
AHCI/0: ... intbits 0x1, status 0x50 ...
AHCI/0: ... finished, status 0x50, OK
ahci disk read, lba 6d5bc0, count  40, buf 0x00030000, rc 0 enter handle_1a:
   a=00000000  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256 enter handle_13:
   a=00004200  b=00000000  c=00000000  d=00000080 ds=3204 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a1d  f=0256 disk_op d=0x000f98e0 lba=31249832 buf=0x00030000 count=16 cmd=2
AHCI/0: send cmd ...
handle_08
AHCI/0: ... intbits 0x1, status 0x50 ...
AHCI/0: ... finished, status 0x50, OK
ahci disk read, lba 1dcd5a8, count  10, buf 0x00030000, rc 0 enter handle_1a:
   a=00000000  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256 enter handle_1a:
   a=00000000  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256 enter handle_1a:
   a=00000000  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256
handle_08
enter handle_1a:
   a=00000000  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256 enter handle_1a:
   a=00000200  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256 enter handle_1a:
   a=00000400  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256 enter handle_1a:
   a=00000000  b=00000000  c=00000000  d=00000000 ds=0000 es=0000 ss=9000
  si=00000000 di=00000000 bp=00000000 sp=0000ffd6 cs=2000 ip=0a39  f=0256
handle_08
agesawrapper_amdinitmmio() entry
agesawrapper_amdinitmmio() returned AGESA_SUCCESS


coreboot-4.0-6798-gdd6d81f-dirty Thu Mar 19 20:02:01 CST 2015 starting...
BSP Family_Model:
cpu_init_detectedx = 00000000
agesawrapper_amdinitreset() entry
AmdCreateStruct, 188, InterfaceParams->StdHeader.HeapBasePtr=400000
Fch OEM config in INIT RESET Done
agesawrapper_amdinitreset() returned AGESA_SUCCESS Got past agesawrapper_amdinitreset
agesawrapper_amdinitearly() entry
AmdCreateStruct, 188, InterfaceParams->StdHeader.HeapBasePtr=400000
AmdInitEarly, 239, &EarlyParams->StdHeader=400290 AmdInitEarly, 247, EarlyParams->StdHeader=0 AmdInitEarly, 273, EarlyParams->StdHeader=0 AmdInitEarly, 283, EarlyParams->StdHeader=0 AmdInitEarly, 297, EarlyParams->StdHeader=0 GnbGetScsDataCZ, 183:PspDir=ff860000

--
coreboot mailing list: coreboot@coreboot.org
http://www.coreboot.org/mailman/listinfo/coreboot



--
David Hendricks (dhendrix)
Systems Software Engineer, Google Inc.