[uClinux-dev] I2C Hanging in 8xx platform

Steven Veigas sveigas at velankani.com
Thu Jan 4 22:13:30 EST 2007


Hi,

        I am using MPC870 processor platform. Compiling I2C as modules.
While inserting it is probing for I2C devices. The system is hanging while
putting the data on the I2C bus. I have applied microcode patch also to the
communication processor module(cp). It is hanging at the same place in all
the cases. I think it is due to configuration of dual port memory(dpmem) and
parameter ram. But I am not getting any solution on this. If anybody faced
such problems, please help me to solve the issue. Here u can find some
info(log) about the configurations.

Thanks in advance

Hanging while setting the start transmission bit of I2C register
With microcode patch
----------------------------
VEL: cpmp = 0xff0009c0
VEL: immap = 0xff000000
VEL: First IIPinit = 0xff003c80
VEL: Second IIPinit = 0xff002400
VEL: first data->i2c = 0xff000860
VEL: data->cp = 0xff0009c0
VEL: data->dp_addr = 0x858
i2c-algo-8xx.o: hw routines for m8xx registered.
i2c-core.o: adapter m8xx registered as adapter 0.
cpm_iic_init[155] Install ISR for IRQ 16
 i2c-algo-8xx.o: scanning bus m8xx...
cpm_iic_tryaddress(cpm=c61c85b0,addr=0)
iip ff002400, dp_addr 0x858
iic_tbase 2136, r_tbase 2136
VEL: tbdf = 0xff002858, rbdf = 0xff002868
VEL: tb = 0xc61c85c4
VEL: tb = 0xc61c85d0
VEL: tb[0] = 0x1
VEL: tb[1] = 0x0
VEL: tbdf->cbd_bufaddr = 0x61c85d0
VEL: tbdf->cbd_datlen = 0x2
VEL: tbdf->cbd_sc = 0xac00
VEL: rbdf->cbd_bufaddr = 0x61c85d2
VEL: rbdf->cbd_datlen = 0x0
VEL: rbdf->cbd_sc = 0xb000

[0xc61c85b0] = 0x858, 2136      dpaddr
[0xc61c85b4] = 0x400, 1024      reloc

[0xff000860] = 0x1, 1           mod
[0xff000864] = 0x3, 3           add
[0xff000868] = 0xa, 10          brg
[0xff00086c] = 0x1, 1           com
[0xff000870] = 0x0, 0           cer
[0xff000874] = 0x13, 19         cmr

[0xff002400] = 0x868, 2152      rbase
[0xff002402] = 0x858, 2136      tbase
[0xff002404] = 0x10, 16         rfcr
[0xff002405] = 0x10, 16         tfcr
[0xff002406] = 0x201, 513       mrblr
[0xff002408] = 0x0, 0
[0xff00240c] = 0x0, 0
[0xff002410] = 0x868, 2152      rbptr
[0xff002412] = 0x0, 0
[0xff002414] = 0x0, 0
[0xff002418] = 0x0, 0
[0xff00241c] = 0x0, 0
[0xff002420] = 0x858, 2136      tbptr
[0xff002422] = 0x0, 0
[0xff002424] = 0x0, 0
[0xff002428] = 0x0, 0
[0xff00242c] = 0x0, 0           rpbase
[0xff00242e] = 0x0, 0
----------------------------------------------------------

----------------------------------------------------------
Without microcode patch
----------------------------------------------------------
VEL: cpmp = 0xff0009c0
VEL: immap = 0xff000000
cp->dpram = 0xff003c00
PROFF_IIC = 0x80
VEL: First IIPinit = 0xff003c80
VEL: first data->i2c = 0xff000860
VEL: data->cp = 0xff0009c0
VEL: data->dp_addr = 0x858
VEL: second data->i2c = 0xff000860
i2c-algo-8xx.o: hw routines for m8xx registered.
i2c-core.o: adapter m8xx registered as adapter 0.
cpm_iic_init() - iip=ff003c80
cpm_iic_init[156] Install ISR for IRQ 16
cpm_iic_init() - iip=ff003c80
 i2c-algo-8xx.o: scanning bus m8xx...
cpm_iic_tryaddress(cpm=c61c85d0,addr=0)
iip ff003c80, dp_addr 0x858
iic_tbase 2136, r_tbase 2136
VEL: tbdf = 0xff002858, rbdf = 0xff002868
VEL: tb = 0xc61c85e4
VEL: tb = 0xc61c85f0
VEL: tb[0] = 0x1
VEL: tb[1] = 0x0
VEL: tbdf->cbd_bufaddr = 0x61c85f0
VEL: tbdf->cbd_datlen = 0x2
VEL: tbdf->cbd_sc = 0xac00
VEL: rbdf->cbd_bufaddr = 0x61c85f2
VEL: rbdf->cbd_datlen = 0x0
VEL: rbdf->cbd_sc = 0xb000

[0xc61c85d0] = 0x858, 2136      dpaddr
[0xc61c85d4] = 0x0, 0           reloc

[0xff000860] = 0x1, 1           mod    
[0xff000864] = 0x3, 3           add
[0xff000868] = 0xa, 10          brg
[0xff00086c] = 0x1, 1           com
[0xff000870] = 0x0, 0           cer
[0xff000874] = 0x13, 19         cmr

[0xff003c80] = 0x868, 2152      rbase
[0xff003c82] = 0x858, 2136      tbase
[0xff003c84] = 0x10, 16         rfcr
[0xff003c85] = 0x10, 16         tfcr
[0xff003c86] = 0x201, 513       mrblr
[0xff003c88] = 0x0, 0
[0xff003c8c] = 0x0, 0
[0xff003c90] = 0x868, 2152      rbptr
[0xff003c92] = 0x0, 0
[0xff003c94] = 0x0, 0
[0xff003c98] = 0x0, 0
[0xff003c9c] = 0x0, 0
[0xff003ca0] = 0x858, 2136      tbptr
[0xff003ca2] = 0x0, 0
[0xff003ca4] = 0x0, 0
[0xff003ca8] = 0x33bf9118, 868192536
[0xff003cac] = 0x400, 1024      rpbase
[0xff003cae] = 0x49a0, 18848



Thanks and Regards
Steven Veigas
Velankani Software Pvt. Ltd.,
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.uclinux.org/pipermail/uclinux-dev/attachments/20070105/88a6cc70/attachment.html


More information about the uClinux-dev mailing list