[U-Boot-Users] Wind River SBC8560 saga continues

Jerry Van Baren
2007-05-04T15:01:39Z

Mark Pilant wrote:
> Hi Jerry.

[snip]

>> Does the TLB have the "G" (Guarded) bit set? That prevents out-of-order
>> loading (probably not an issue, but something to check).
>
> Yes, the guarded bit is set in .../board/sbc8560/init.S.
>
>> How about hitting it with da big hammer: put a sync;isync pair in the
>> loop. If that makes it better, remove the isync (should not be
>> necessary). If that still works, try using a eieio instead of the sync
>> (I'm not sure if eieio is useful for the 85xx, on the 603e core, it is a
>> NOP).
>
> I thought I had tried this earlier, but couldn't remember. So I tried
> it again. No Luck. (The generated code does the sync/isync before the
> register fetch. If the FLG bit is still set, the sync/isync is done
> again and the fetch repeated.)
>
> According to the RM, the e500 replaces eieio with mbar. Since I had not
> tried that one, I just did. You guessed it... no luck.
>
> I'm probably doing something really stupid; and probably really simple
> which is why I haven't spotted *my* problem.
>
> It is also possible the WR SBC8560 we have is broken. Although I think
> that is not a really likely because it runs the VxWorks bootloader fine.

VERY unlikely since this is just dealing with the scc which is all
internal to the 85xx.

> - Mark

OK at the risk of insulting you, create the sync;isync version and load
it into flash. Now figure out the start address of the the routine and
disassemble it with the visionICE. Is the right stuff loaded? Set a
hardware breakpoint: is it being executed?

Trivia: the visionICE is using the fsl background debug mode which, I am
sure, is not exactly the same method and path as the execution of code
in the processor. Having it work for the vICE doesn't say much other
than the actual scc bit is working. Somebody is feeding you stale data
in the path the vICE /isn't/ using.

Grasping at straws (been burned before),
gvb