mpc8248 SEC -- interrupt handler 'is' invoked

Kim Phillips kim.phillips at freescale.com
Thu Aug 4 06:35:40 EST 2005


On Wed, 3 Aug 2005 14:33:26 -0400 (EDT)
"Vikas Aggarwal" <va824363 at albany.edu> wrote:

> I will try the new BSP but meanwhile like to debug my ported driver.
> 
> Is there a way , like kernel level single-stepping to know why the
> "interrupt status register"  gets a value of "0x0000000000000040" which
> means TEA , transfer error acknowledge.

afaik, TEA usually means memory was unable to be accessed by the sec (somewhat along the same lines as a SIGBUS or SIGSEGV).

It's a long shot, but you may want to increase the 4-byte alignment of the rng buffer (0x009ffc5c in your trace?) to at least 8-byte.

as for debugging, you can printk sec status registers every time you write one, e.g. in a sec register write wrapper fn.  Be sure to check the RNG interrupt status register, and the RNG status register, and the RNG interrupt control register.

and if all else fails, you can bypass the channel infrastructure altogether, and use the RNG EU in slave mode.  Reset the SEC, write the RNG Reset Control Register SR bit, write <anyvalue> to the RNG Data size register, and pull data off the RNG FIFO at will.

Kim



More information about the Linuxppc-embedded mailing list