Problem with i2c-algo-ibm_ocp driver on ppc405 board

Matteo Bortolin matteo.bortolin at
Wed Jan 28 19:25:40 EST 2004

Hi all,

I've developed an RTC driver that uses i2c core and for a PPC405-based
board (PPChameleonEVB).
The i2c-Algorithm driver is the i2c-algo-ibm_ocp.c and the i2c-adapter is
the i2c-adap-ibm_ocp.c
The problem is in timer_interrupt() function (/arch/ppc/kernel/time.c) with
Into this function there is a call to a ppc_md.set_rtc_time  that is a
pointer to a my set_rtc_device function that in turn
calls the i2c_master_send().
The problem is that kernel crashes (kenrel panic) when ppc_md.set_rtc_time
is called.
Debugging the coed,  I've seen that kernel crashes into iic_sendbytes()
function (i2c-algo-ibm_opc.c) .

After debugging inside of  iic_sendbytes() function I asked to me:

As in the time_interrupt() function, interrupt are disabled,
i2c-algo-ibm_ocp.c cannot work properly.

This would mean that a kernel that use  i2c-algo-ibm_ocp.c and a i2c
RTC-driver cannot work properly

Is this correct?

If yes, how can I solve my problem?

Matteo Bortolin


** Sent via the linuxppc-embedded mail list. See

More information about the Linuxppc-embedded mailing list