tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   0072a0c14d5b7cb72c611d396f143f5dcd73ebe2
commit: b04e68d16605dcde1c21b5df5f86a5372e53ae97 mfd: madera: Don't use 
regmap_read_poll_timeout to poll for BOOT_DONE
date:   6 weeks ago


coccinelle warnings: (new ones prefixed by >>)

>> drivers/mfd/madera-core.c:158:2-3: Unneeded semicolon

vim +158 drivers/mfd/madera-core.c

   137  
   138  static int madera_wait_for_boot(struct madera *madera)
   139  {
   140          ktime_t timeout;
   141          unsigned int val;
   142          int ret = 0;
   143  
   144          /*
   145           * We can't use an interrupt as we need to runtime resume to do 
so,
   146           * so we poll the status bit. This won't race with the interrupt
   147           * handler because it will be blocked on runtime resume.
   148           * The chip could NAK a read request while it is booting so 
ignore
   149           * errors from regmap_read.
   150           */
   151          timeout = ktime_add_us(ktime_get(), 
MADERA_BOOT_POLL_TIMEOUT_USEC);
   152          regmap_read(madera->regmap, MADERA_IRQ1_RAW_STATUS_1, &val);
   153          while (!(val & MADERA_BOOT_DONE_STS1) &&
   154                 !ktime_after(ktime_get(), timeout)) {
   155                  usleep_range(MADERA_BOOT_POLL_INTERVAL_USEC / 2,
   156                               MADERA_BOOT_POLL_INTERVAL_USEC);
   157                  regmap_read(madera->regmap, MADERA_IRQ1_RAW_STATUS_1, 
&val);
 > 158          };
   159  
   160          if (!(val & MADERA_BOOT_DONE_STS1)) {
   161                  dev_err(madera->dev, "Polling BOOT_DONE_STS timed 
out\n");
   162                  ret = -ETIMEDOUT;
   163          }
   164  
   165          /*
   166           * BOOT_DONE defaults to unmasked on boot so we must ack it.
   167           * Do this even after a timeout to avoid interrupt storms.
   168           */
   169          regmap_write(madera->regmap, MADERA_IRQ1_STATUS_1,
   170                       MADERA_BOOT_DONE_EINT1);
   171  
   172          pm_runtime_mark_last_busy(madera->dev);
   173  
   174          return ret;
   175  }
   176  

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Reply via email to