On Wed, 03 Apr 2013 00:35:09 +0200 Rudolf Marek r.marek@assembler.cz wrote:
So... This is going to be complicated. Can you please send me in private both images? Or paste URL where i can get ami bios image.
I will check if IMC firmware is there or not (I guess none in coreboot). What we could possibly do is to re-add a firmware to coreboot image. But we would have to override the straps and activate the imc. There is also BuildParameters.ImcEnableOverWrite in SB800 CIMX.
What is your goal here anyway? To have smooth transition to coreboot? Or you just reported this issue?
I guess we need to implement some safety checks that if IMC strap is always enabled then IMC firmware must exist and ideally be same as in flash.
But first we need to know what CIMX is doing.
if
- EC is disabled and it is re-enabled by soft strap
This seems not to be the case, because
if (validateImcFirmware (pConfig)) { softwareToggleImcStrapping (pConfig);
It will enable the IMC only if valid firmware is found. And for CIMX800 we are not doing this, only hudson has AMD firmware.
- if it is enabled by some hardware strap
This could be detected most likely by getChipSysMode() in this case we need to disallow write of firmware which has no IMC code. Here are couple of problems, what to do if firmware is there, but different for example... Or with coreboot may happen it is on different location. Franly I don't know how to deal with that because for this I would need detailed knowledge of the firmware itself. I only disassembled that and I can see it just spins in memory when 0xb4 is invoked and waits for 0xb5 (and I have seen sometimes for 0xb6)
And this gets worse because Hudson has USB firmware and Gigabit ethernet firmware. Which are are same PITA.
I am not completely sure if I understood everything you wrote, but all of that is only relevant for "wrong" images, right? So the current patch* does improve the overall usability of flashrom on AMD boards and only users that try to move from an image with active IMC to an image w/o or improper IMC firmware will run into problems?
http://patchwork.coreboot.org/patch/3894/