Hi Conn,

> I forgot to mention my kernel source tree was directly from kernel.org

Fell free to correct me, but I believe the ppc patched kernel is
identical to the one at source.mvista.com. Still, I'll try with the
latest patch (2.4.18) available on kernel.org.

> When using my idle loop, does it crash right away or only when you try to
> use the PIT?

It crashes before I get a chance to load my module. I dont get to the
shell. It's got nothing to do with the PIT. Here's what my console
gives me:

        i2c-algo-8xx.o: i2c mpc8xx algorithm module version 2.6.5 (20020915)
        i2c-rpx.o: i2c MPC8xx module version 2.6.5 (20020915)
        i2c-algo-8xx.o: scanning bus m8xx...
        Machine check in kernel mode.
        Caused by (from SRR1=1000): Transfer error ack signal
        Oops: machine check, sig: 7
        NIP: 00004038 XER: 20000000 LR: 0002B91C SP: C0143F30 REGS: c0143e80 
TRAP: 0200    Not tainted
        MSR: 00001000 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00
        TASK = c0141fa0[0] 'swapper' Last syscall: 120
        last math 00000000 last altivec 00000000
        GPR00: 00000000 C0143F30 C0141FA0 00000000 00048000 00000000 00000001 
FFFFFC18
        GPR08: 00000100 C015F00C C014DBFF C014DCEE 0000000D FA202210 00000000 
00000000
        GPR16: 00000000 00000000 00000000 00000000 42004022 00EA5F40 00000000 
C0004654
        GPR24: 00000000 00000000 FA200000 743D2F62 00000000 C0160000 C014DC01 
55CCAA32
        Call backtrace:
        C0005C94 C0005CA8 C0002268 C0152544 C0002138
        Kernel panic: Attempted to kill the idle task!
        In idle task - not syncing
        <0>Rebooting in 180 seconds..

... and it normally fives me...


        i2c-core.o: i2c core module version 2.6.5 (20020915)
        i2c-dev.o: i2c /dev entries driver module version 2.6.5 (20020915)
        i2c-algo-8xx.o: i2c mpc8xx algorithm module version 2.6.5 (20020915)
        i2c-rpx.o: i2c MPC8xx module version 2.6.5 (20020915)
         i2c-algo-8xx.o: scanning bus m8xx...
        (90)(a8)(aa)
        i2c-proc.o version 2.6.5 (20020915)
        CPM UART driver version 0.03
        ttyS00 at 0x0280 is a SMC
        eth0: CPM ENET Version 0.2 on SCC2, 00:10:ec:00:33:ce


Hmmm... It seems to oops in the i2c initialisation...

<recompiling...>

Ok. I took out the i2c stuff. It doesn't oops anymore... In fact, in
enters the power saving mode (doze?) you put in the idle.c file before
reaching the console! :))

Could be stuck waiting for a never-coming-interrupt? I gave the
parameter "init=/bin/sash" to the kernel... Any logical explanation to this?


>       Well if you put the power saving code in the idle loop, when there
> isn't anything to do the processor sleeps. When an interrupt happens it
> wakes up to service the interrupt then checks to see if it is needed for
> other things and if not it goes back to bed (much like me ;-)). If you need
> to do something 5 seconds later a sleep call should do the trick unless
> you need more precision.

It's not a precision thing. It's not so important. It would be neat,
thats all.  :)


Thanks again for your help.
Best regards,



Pat Mahoney

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/



Reply via email to