[SerialICE] SerialICE_memory_read_filter problem

Stefan Reinauer stefan.reinauer at coreboot.org
Tue May 10 23:57:18 CEST 2011


* Nils <njacobs8 at hetnet.nl> [110510 23:10]:
> Hi Stefan,
> Thanks for your reply and the hint!
> After some googling i came up with the following patch:
> 
> >function SerialICE_register_manipulation(data)
> >	-- **********************************************************
> >	--
> >	-- Wyse S50 skip TSC calibration loop
> >	if ( SerialICE_mainboard == "WYSE S50" and
> >		regs.cs == 0xf000 and regs.eip == 0x8978 ) then
> >		-- f000:8978
> >		printf("Skipping TSC calibration loop...\n")
> >		regs.eip = 0xa1c0	
> >	end
> >end
> 
> Unfortunately it doesn't work either.
> 
> I encountered something that might be a bug in SerialICE.
> I enabled "log_rom_access = true" and "ip_logging = true" in serialice.lua .
> 
> It seems to me that the eip is not updated frequently enough before printing
> See for instance f000:8960 in the following snippet of output:
>  
> [f000:a1f1] -- MEM:  readb 000fa1f1 => 8b
> [f000:a1f1] -- MEM:  readw 000fa1ff => 7654
> [f000:a1a4] -- MEM:  readw 000fa1af => a1b4
> [f000:8960] -- MEM:  readw 000f896d => 01f4
> [f000:8960] -- IO: outb 0043 <= 56
> [f000:8960] -- IO: outb 0041 <= ee
> [f000:8960] -- IO:  inb 0061 => 10
> [f000:8971] -- IO:  inb 0061 => 10
> [f000:8974] -- IO:  inb 0061 => 00


eip 8971, 8974, 897f, 897c but it is never 8978, which you are checking
for above.


> [f000:897f] -- IO:  inb 0061 => 00
> [f000:897c] -- IO:  inb 0061 => 10
> [f000:8971] -- IO:  inb 0061 => 10
> [f000:8974] -- IO:  inb 0061 => 00
> [f000:897f] -- IO:  inb 0061 => 00
> [f000:897c] -- IO:  inb 0061 => 10
> [f000:8971] -- IO:  inb 0061 => 10
> [f000:8974] -- IO:  inb 0061 => 00
> [f000:897f] -- IO:  inb 0061 => 00
> [f000:897c] -- IO:  inb 0061 => 00
> [f000:8974] -- IO:  inb 0061 => 10
> 
> I think that the instruction "MEM:  readw 000f896d => 01f4" should come after 
> the "IO: outb 0043 <= 56" and "IO: outb 0041 <= ee" on f000:896c .
> And the inb 0061 is according to GDB on f000:8974 not on the other addresses.
> 
> I'l sent you the corresponding snippet of assembler in private.
> 
> I'm not an experienced programmer so excuse me if i'm totally wrong here.
> 
> Thanks, Nils.
> 
> _______________________________________________
> SerialICE mailing list
> SerialICE at serialice.com
> http://serialice.com/mailman/listinfo/serialice
> 



More information about the SerialICE mailing list