public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Heiko Schocher <hs@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] i2c_set_bus_num freeze
Date: Fri, 27 Jan 2017 08:24:03 +0100	[thread overview]
Message-ID: <588AF593.3050204@denx.de> (raw)
In-Reply-To: <CAJ2oMhKPSuOw6mLcQErue_AfUJ1vi1ZLjajs44Me2uHygzSX+w@mail.gmail.com>

Hello Ran,

Am 27.01.2017 um 08:08 schrieb Ran Shalit:
>
>
> On Fri, Jan 27, 2017 at 8:46 AM, Heiko Schocher <hs at denx.de <mailto:hs@denx.de>> wrote:
>
>     Hello Ran,
>
>     Am 26.01.2017 um 18:42 schrieb Ran Shalit:
>
>         Hello,
>
>         I have some issue in u-boot trying to access bus #1.
>
>
>     On which hardware? Is the board in mainline?
>
>
> Yes, it's TI's dm8148 (ti81xx, ti814x)

Which defconfig do you use?

>         I can access bus #0, #2 with i2c dev 0/2
>
>         I can also access bus #0,1,2 from linux.
>
>         But on trying to access i2c #1 in u-boot in hangs:
>
>         The function i2c_set_bus_num get stuck .
>
>
>         ret = i2c_set_bus_num(1);
>
>         <<------- never gets here .........
>            if (ret)
>                printf("Failure changing bus number (%d)\n", ret);
>
>         It hangs in i2c_set_bus_num->i2c_init->
>
>         ......
>
>               printf("i2c_init 8\n");
>
>
>     You see this printf?
>
> Yes, it seems to get stuck here:
>
> if (readw (I2C_CON) & I2C_CON_EN) {
> <<--------- we never gets here !!!!!!!!!!!!!!!!!!!!!!!!!!!
> writew (0, I2C_CON);
>
>
>
>         bus_initialized[current_bus] = 1;
>         if (readw (I2C_CON) & I2C_CON_EN) {

Hmm... if I search for "bus_initialized" in mainline code:

$ grep -lr bus_initialized drivers/i2c/
drivers/i2c/mv_i2c.c

I only find the mv_i2c driver ... do you use current mainline code?

>         writew (0, I2C_CON);
>         udelay (50000);
>         }
>
>         writew(psc, I2C_PSC);
>         writew(scll, I2C_SCLL);
>         writew(sclh, I2C_SCLH);
>
>         /* own address */
>         writew (slaveadd, I2C_OA);
>         writew (I2C_CON_EN, I2C_CON);
>
>               printf("i2c_init 9\n");  <<------ never get printed ..................
>
>         I have seen a similar question, yet I am doing this access after u-boot
>         complete, and command prompt.
>
>         Is anyone familiar with this ?
>
>
>     Hmm.. no reason, why the last printf should not come ...
>
>     As I do not know, on which hw ... I just can speculate ...
>
>     Is the clock for the i2c subsystem 1 in the SoC enabled?
>
>
> TI's DM8148.
> I remember that I once used that code and it works, so I quite amazed that it stopped working now.
> The board had some changes from that time when I tried the code, and the sw too some minor changes
> (i2c eerom added in bus #0),  but I really don't understand why it doesn't work any more :(
>
> It might be clock issue, I'll check.

Thanks!

bye,
Heiko
>
>
>     bye,
>     Heiko
>
>
>         Regards,
>
>         Ran
>         _______________________________________________
>         U-Boot mailing list
>         U-Boot at lists.denx.de <mailto:U-Boot@lists.denx.de>
>         http://lists.denx.de/mailman/listinfo/u-boot <http://lists.denx.de/mailman/listinfo/u-boot>
>
>
>     --
>     DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
>     HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
>
>

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany

      parent reply	other threads:[~2017-01-27  7:24 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-26 17:42 [U-Boot] i2c_set_bus_num freeze Ran Shalit
2017-01-26 23:20 ` Adam Ford
2017-01-27  5:30   ` Ran Shalit
2017-01-27  6:46 ` Heiko Schocher
2017-01-27  7:08   ` Ran Shalit
2017-01-27  7:12     ` Ran Shalit
2017-01-27  7:16       ` Michael Nazzareno Trimarchi
2017-01-27  7:24     ` Heiko Schocher [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=588AF593.3050204@denx.de \
    --to=hs@denx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox