mpc8xx, i2c read DB busy issue

From: Ankur Maheshwari <hidden>
Date: 2007-10-26 09:42:39

Hi all,

I am trying to use mpc860 as i2c-SLAVE. Kernel, I am using is Linux-2.4.4, which I can't change due to some reasons.

I am able to do I2C read/write operations on mpc8xx-i2c slave only after re-insmoding my driver module (i2c-algo-8xx.c, and adapter layer drive, code I took form i2c-rpx/r360.c ).

The issue I am facing is when I insmod i2c-driver on fresh Linux boot, any i2c-mpc860 as slave read/write operation gives me busy status (which is for Rx BD not available) in Controller's i2c Event Registers. When I get busy status I have to do force_close() and re-init of bd, then only busy status goes off.

I tried calling cpm_iic_init(); twice while __init but with no change in busy status.

After some initial try, i2c slave write works but i2c read gives no data to the master. After re-insmoding driver, read/write works with some times (1 out of 15 times) i2c-read failing.

But still I can't understand why busy is coming....

Any help or suggestions are highly appreciated.

thanks,
Ankur Maheshwari

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help