[U-Boot] No I2C connection with different pins/pads when initializing
P Kor
pk.uboot at gmail.com
Thu Apr 11 19:58:21 UTC 2019
Hello there,
I'm developing a product which uses Karo TX6S-8135 chip, which based on
i.MX6sol cpu More info here (https://www.karo-electronics.de/856.html?&L=1).
Karo company has it's own fork of U-Boot, but as far I knows sources are
basing on U-Boot 2015-10 (quite old) and it's still being developed. I'm
using latest sources that are placed on Github (
https://github.com/karo-electronics/karo-tx-uboot).
Sources for our board is here:
https://github.com/karo-electronics/karo-tx-uboot/tree/master/board/karo/tx6
and particular file dedicated for TX6S is:
https://github.com/karo-electronics/karo-tx-uboot/blob/master/board/karo/tx6/tx6qdl.c
I have request to do an U-Boot modification. I need to detect at U-Boot
init time if button was pressed, which is controlled by I2C1. The problem
here is our product uses different pins (CSI0_DAT9, CSI0_DAT8) than default
ones (EIM_D21, EIM_D28), but from chip specification they can be also used
for I2C1.
[image: obraz.png]
First I wanted to check if I have any connection with the slave module
(TCA9539 in my case). Here is what happens. When I2C Probe is executed
while initializing it fails. When I execute I2C probe after initilization
from U-Boot command line, then it's OK and whole communication is working
correctly. I tried different approaches, but nothing helps for me here.
Currently I placed my code (changing PADs and executing I2C probe) in "
board_late_init", and from side from registers states it looks like it
should work.
I appreciate any help with this topic as I'm out of ideas now :(
Kind regards,
Piotr K.
More information about the U-Boot
mailing list