All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Carpenter <dan.carpenter@oracle.com>
To: samuel@sholland.org
Cc: linux-i2c@vger.kernel.org
Subject: [bug report] i2c: mv64xxx: Add runtime PM support
Date: Wed, 3 Feb 2021 06:41:25 -0800 (PST)	[thread overview]
Message-ID: <YBq2Fa+crJUXGIU4@mwanda> (raw)

Hello Samuel Holland,

The patch e5c02cf54154: "i2c: mv64xxx: Add runtime PM support" from
Jan 3, 2021, leads to the following static checker warning:

	drivers/i2c/busses/i2c-mv64xxx.c:816 mv64xxx_of_config()
	warn: 'drv_data->clk' isn't an ERR_PTR

drivers/i2c/busses/i2c-mv64xxx.c
   803  static int
   804  mv64xxx_of_config(struct mv64xxx_i2c_data *drv_data,
   805                    struct device *dev)
   806  {
   807          const struct of_device_id *device;
   808          struct device_node *np = dev->of_node;
   809          u32 bus_freq, tclk;
   810          int rc = 0;
   811  
   812          /* CLK is mandatory when using DT to describe the i2c bus. We
   813           * need to know tclk in order to calculate bus clock
   814           * factors.
   815           */
   816          if (IS_ERR(drv_data->clk)) {

This check used to be correct, but now if it's an error pointer in probe
then we set it to NULL.

   817                  rc = -ENODEV;
   818                  goto out;
   819          }
   820          tclk = clk_get_rate(drv_data->clk);

The result is that "tclk" is zero.  So probably the correct fix is to
change the IS_ERR() check to a NULL check?  zero rate seems useless.

   821  
   822          if (of_property_read_u32(np, "clock-frequency", &bus_freq))
   823                  bus_freq = I2C_MAX_STANDARD_MODE_FREQ; /* 100kHz by default */
   824  
   825          if (of_device_is_compatible(np, "allwinner,sun4i-a10-i2c") ||
   826              of_device_is_compatible(np, "allwinner,sun6i-a31-i2c"))
   827                  drv_data->clk_n_base_0 = true;
   828  
   829          if (!mv64xxx_find_baud_factors(drv_data, bus_freq, tclk)) {
   830                  rc = -EINVAL;
   831                  goto out;
   832          }
   833  

regards,
dan carpenter

             reply	other threads:[~2021-02-03 15:15 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-03 14:41 Dan Carpenter [this message]
2021-02-08  6:34 ` [bug report] i2c: mv64xxx: Add runtime PM support Samuel Holland

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=YBq2Fa+crJUXGIU4@mwanda \
    --to=dan.carpenter@oracle.com \
    --cc=linux-i2c@vger.kernel.org \
    --cc=samuel@sholland.org \
    /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.