All of lore.kernel.org
 help / color / mirror / Atom feed
From: Maxim Sloyko <maxims@google.com>
To: Simon Glass <sjg@chromium.org>
Cc: U-Boot Mailing List <u-boot@lists.denx.de>,
	OpenBMC Maillist <openbmc@lists.ozlabs.org>,
	Heiko Schocher <hs@denx.de>
Subject: Re: [PATCH v1 11/15] aspeed: Add I2C Driver
Date: Fri, 5 May 2017 12:18:42 -0700	[thread overview]
Message-ID: <CAFR_W8qFnLfxkaF3pZhfZcq=eRbfjJLkgN7P7hc9B4QBPWc4og@mail.gmail.com> (raw)
In-Reply-To: <CAPnjgZ3qis_kVdQpr2X7D2ReRev80Ce0Bfe6w5_9MEB8G3GaWg@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1686 bytes --]

On Tue, Apr 18, 2017 at 5:12 PM, Simon Glass <sjg@chromium.org> wrote:

> On 17 April 2017 at 13:00, Maxim Sloyko <maxims@google.com> wrote:
> > Add Device Model based I2C driver for ast2500/ast2400 SoCs.
> > The driver is very limited, it only supports master mode and
> > synchronous byte-by-byte reads/writes, no DMA or Pool Buffers.
> >
> > Signed-off-by: Maxim Sloyko <maxims@google.com>
> >
> > ---
> >
> > Changes in v1:
> > - Style fixes
> >
> >
> > ---
> >  drivers/i2c/Kconfig   |   9 ++
> >  drivers/i2c/Makefile  |   1 +
> >  drivers/i2c/ast_i2c.c | 357 ++++++++++++++++++++++++++++++
> ++++++++++++++++++++
> >  drivers/i2c/ast_i2c.h | 132 +++++++++++++++++++
> >  4 files changed, 499 insertions(+)
> >  create mode 100644 drivers/i2c/ast_i2c.c
> >  create mode 100644 drivers/i2c/ast_i2c.h
>
> Reviewed-by: Simon Glass <sjg@chromium.org>
>
> nit below
>
> [..]
> > +static int ast_i2c_ofdata_to_platdata(struct udevice *dev)
> > +{
> > +       struct ast_i2c_priv *priv = dev_get_priv(dev);
> > +       int ret;
> > +
> > +       priv->regs = dev_get_addr_ptr(dev);
> > +       if (IS_ERR(priv->regs))
> > +               return PTR_ERR(priv->regs);
>
> Should be
>
>  if (!priv->regs)
>
> I think
>

Looks like dev_get_addr_ptr returns FDT_ADDR_T_NONE (cast to void*) in case
of error. FDT_ADDR_T_NONE is -1, so simple !priv->regs check would be
incorrect, as far as I understand.


>
> > +
> > +       ret = clk_get_by_index(dev, 0, &priv->clk);
> > +       if (ret < 0) {
> > +               debug("%s: Can't get clock for %s: %d\n", __func__,
> dev->name,
> > +                     ret);
> > +               return ret;
>
> Regards,
> Simon
>



-- 
*M*axim *S*loyko

[-- Attachment #2: Type: text/html, Size: 2834 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: Maxim Sloyko <maxims@google.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v1 11/15] aspeed: Add I2C Driver
Date: Fri, 5 May 2017 12:18:42 -0700	[thread overview]
Message-ID: <CAFR_W8qFnLfxkaF3pZhfZcq=eRbfjJLkgN7P7hc9B4QBPWc4og@mail.gmail.com> (raw)
In-Reply-To: <CAPnjgZ3qis_kVdQpr2X7D2ReRev80Ce0Bfe6w5_9MEB8G3GaWg@mail.gmail.com>

On Tue, Apr 18, 2017 at 5:12 PM, Simon Glass <sjg@chromium.org> wrote:

> On 17 April 2017 at 13:00, Maxim Sloyko <maxims@google.com> wrote:
> > Add Device Model based I2C driver for ast2500/ast2400 SoCs.
> > The driver is very limited, it only supports master mode and
> > synchronous byte-by-byte reads/writes, no DMA or Pool Buffers.
> >
> > Signed-off-by: Maxim Sloyko <maxims@google.com>
> >
> > ---
> >
> > Changes in v1:
> > - Style fixes
> >
> >
> > ---
> >  drivers/i2c/Kconfig   |   9 ++
> >  drivers/i2c/Makefile  |   1 +
> >  drivers/i2c/ast_i2c.c | 357 ++++++++++++++++++++++++++++++
> ++++++++++++++++++++
> >  drivers/i2c/ast_i2c.h | 132 +++++++++++++++++++
> >  4 files changed, 499 insertions(+)
> >  create mode 100644 drivers/i2c/ast_i2c.c
> >  create mode 100644 drivers/i2c/ast_i2c.h
>
> Reviewed-by: Simon Glass <sjg@chromium.org>
>
> nit below
>
> [..]
> > +static int ast_i2c_ofdata_to_platdata(struct udevice *dev)
> > +{
> > +       struct ast_i2c_priv *priv = dev_get_priv(dev);
> > +       int ret;
> > +
> > +       priv->regs = dev_get_addr_ptr(dev);
> > +       if (IS_ERR(priv->regs))
> > +               return PTR_ERR(priv->regs);
>
> Should be
>
>  if (!priv->regs)
>
> I think
>

Looks like dev_get_addr_ptr returns FDT_ADDR_T_NONE (cast to void*) in case
of error. FDT_ADDR_T_NONE is -1, so simple !priv->regs check would be
incorrect, as far as I understand.


>
> > +
> > +       ret = clk_get_by_index(dev, 0, &priv->clk);
> > +       if (ret < 0) {
> > +               debug("%s: Can't get clock for %s: %d\n", __func__,
> dev->name,
> > +                     ret);
> > +               return ret;
>
> Regards,
> Simon
>



-- 
*M*axim *S*loyko

  reply	other threads:[~2017-05-05 19:18 UTC|newest]

Thread overview: 132+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-17 19:00 [PATCH v1 00/15] Expand Aspeed AST2500 Support Maxim Sloyko
2017-04-17 19:00 ` [U-Boot] " Maxim Sloyko
2017-04-17 19:00 ` [PATCH v1 01/15] aspeed: Update ast2500 Device Tree Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot,v1,01/15] " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 02/15] dm: Simple Watchdog uclass Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot,v1,02/15] " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 03/15] aspeed: Watchdog Timer Driver Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot,v1,03/15] " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 04/15] aspeed: Make SCU lock/unlock functions part of SCU API Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot, v1, " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 05/15] aspeed: Reset Driver Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot,v1,05/15] " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 06/15] aspeed: Device Tree configuration for " Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot,v1,06/15] " Tom Rini
2017-05-08 19:42     ` [U-Boot] [U-Boot, v1, 06/15] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 07/15] aspeed: Refactor AST2500 RAM Driver and Sysreset Driver Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot, v1, " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 08/15] aspeed: AST2500 Pinctrl Driver Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot,v1,08/15] " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 09/15] aspeed: Enable Pinctrl Driver in AST2500 EVB Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot,v1,09/15] " Tom Rini
2017-05-08 19:42     ` [U-Boot] [U-Boot, v1, 09/15] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 10/15] aspeed: Add P-Bus clock in ast2500 clock driver Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:11   ` Simon Glass
2017-04-19  0:11     ` [U-Boot] " Simon Glass
2017-05-08 19:42   ` [U-Boot, v1, " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 11/15] aspeed: Add I2C Driver Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:12   ` Simon Glass
2017-04-19  0:12     ` [U-Boot] " Simon Glass
2017-05-05 19:18     ` Maxim Sloyko [this message]
2017-05-05 19:18       ` Maxim Sloyko
2017-04-19 11:58   ` Heiko Schocher
2017-04-19 11:58     ` [U-Boot] " Heiko Schocher
2017-04-19 16:02     ` Maxim Sloyko
2017-04-19 16:02       ` [U-Boot] " Maxim Sloyko
2017-04-20  4:03       ` Heiko Schocher
2017-04-20  4:03         ` [U-Boot] " Heiko Schocher
2017-05-08 19:42   ` [U-Boot,v1,11/15] " Tom Rini
2017-05-08 19:42     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 12/15] aspeed: Enable I2C in EVB defconfig Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:12   ` Simon Glass
2017-04-19  0:12     ` [U-Boot] " Simon Glass
2017-05-08 19:43   ` [U-Boot,v1,12/15] " Tom Rini
2017-05-08 19:43     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 13/15] aspeed: Add support for Clocks needed by MACs Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:12   ` Simon Glass
2017-04-19  0:12     ` [U-Boot] " Simon Glass
2017-05-08 19:43   ` [U-Boot,v1,13/15] " Tom Rini
2017-05-08 19:43     ` [U-Boot] [U-Boot, v1, 13/15] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 14/15] aspeed: Refactor SCU to use consistent mask & shift Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:12   ` Simon Glass
2017-04-19  0:12     ` [U-Boot] " Simon Glass
2017-05-08 19:43   ` [U-Boot, v1, " Tom Rini
2017-05-08 19:43     ` [U-Boot] " Tom Rini
2017-04-17 19:00 ` [PATCH v1 15/15] aspeed: Cleanup ast2500-u-boot.dtsi Device Tree Maxim Sloyko
2017-04-17 19:00   ` [U-Boot] " Maxim Sloyko
2017-04-19  0:12   ` Simon Glass
2017-04-19  0:12     ` [U-Boot] " Simon Glass
2017-05-08 19:43   ` [U-Boot, v1, " Tom Rini
2017-05-08 19:43     ` [U-Boot] " Tom Rini
2017-05-05 22:01 ` [PATCH v2 00/15] Expand Aspeed AST2500 Support Maxim Sloyko
2017-05-05 22:01   ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 01/15] aspeed: Update ast2500 Device Tree Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 02/15] dm: Simple Watchdog uclass Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 03/15] aspeed: Watchdog Timer Driver Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 04/15] aspeed: Make SCU lock/unlock functions part of SCU API Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 05/15] aspeed: Reset Driver Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 06/15] aspeed: Device Tree configuration for " Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 07/15] aspeed: Refactor AST2500 RAM Driver and Sysreset Driver Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 08/15] aspeed: AST2500 Pinctrl Driver Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 09/15] aspeed: Enable Pinctrl Driver in AST2500 EVB Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 10/15] aspeed: Add P-Bus clock in ast2500 clock driver Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 11/15] aspeed: Add I2C Driver Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 12/15] aspeed: Enable I2C in EVB defconfig Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 13/15] aspeed: Add support for Clocks needed by MACs Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 14/15] aspeed: Refactor SCU to use consistent mask & shift Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko
2017-05-05 22:01   ` [PATCH v2 15/15] aspeed: Cleanup ast2500-u-boot.dtsi Device Tree Maxim Sloyko
2017-05-05 22:01     ` [U-Boot] " Maxim Sloyko

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='CAFR_W8qFnLfxkaF3pZhfZcq=eRbfjJLkgN7P7hc9B4QBPWc4og@mail.gmail.com' \
    --to=maxims@google.com \
    --cc=hs@denx.de \
    --cc=openbmc@lists.ozlabs.org \
    --cc=sjg@chromium.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.