I have had problems with I2C slave devices keeping the data line low if
the communications to them is interrupted, say by a missing clock when
they are outputting a 0 on the data line.  Then the Davinci chip thinks
there is a bus conflict and does not re-try.  I added code at the start
of the driver to change the CLK line to a GPIO and toggle it 10 times
and then convert it back to I2C Clk.  This clocks all devices on the bus
and forces the stuck I2C slave to finish clocking out the rest of the
data.  My code does this only after some number of failed tries.

 

Attached is my patch.  I am still using kernel version 2.6.10.  There
are a number of other changes to the file that I had to do to make it
work reliably with our system  Also note that I changed the speed from
40 KHZ (required to talk to the eMSP430) to 100 KHZ..  The speed can be
changed to 400 but we have a device that limited us to 100.

 

 

Mike Rondeau

 

  _____  

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On
Behalf Of Prabhaharan R-TLS,Chennai
Sent: Thursday, December 04, 2008 11:43 AM
To: davinci-linux-open-source
Cc: Balaji Raj R-TLS, Chennai.; Madhavan Vivekanandan; Manohar S-TLS,
Chennai.
Subject: Davinci DMS355 - I2C communication issue
Importance: High

 

Hello All,

 

I am facing an issue in the I2C communication in the Davinci Dm355
processor. We have taken the Montavista TI Davinci code as the base. In
that, we have MSP430 device. But, in our case, we have made a custom
based board that don't have MSP430 device. 

 

Processor will always acts as a master and the other devices connected
to the processor will work as the slave. As per our board design, we
need the I2C data line to be high always for successful communication.
But, the Montavista TI Davinci Linux code reset this line to zero as
till the kernel gets booted the I2C data line is high. Hence we don't
know, what makes the I2C data line to low! 

 

Does anyone face the similar issue? 

 

Please reply.

 

Thanks a lot in advance.

 

Regards,

Prabhaharan.R

DISCLAIMER:
------------------------------------------------------------------------
-----------------------------------------------

The contents of this e-mail and any attachment(s) are confidential and
intended for the named recipient(s) only.
It shall not attach any liability on the originator or HCL or its
affiliates. Any views or opinions presented in 
this email are solely those of the author and may not necessarily
reflect the opinions of HCL or its affiliates.
Any form of reproduction, dissemination, copying, disclosure,
modification, distribution and / or publication of 
this message without the prior written consent of the author of this
e-mail is strictly prohibited. If you have 
received this email in error please delete it and notify the sender
immediately. Before opening any mail and 
attachments please check them for viruses and defect.

------------------------------------------------------------------------
-----------------------------------------------
        
------------------------------------------------------------------------------------------------
This message is for the designated recipient only and may
contain privileged, proprietary, or otherwise private information.  
If you have received it in error, please notify the sender
immediately and delete the original.  Any unauthorized use of
this email is prohibited.
------------------------------------------------------------------------------------------------
[mf2]
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to