Hi Matti, [FYI, it's a private test report for your RFC patch.]
url: https://github.com/0day-ci/linux/commits/Matti-Vaittinen/support-ROHM-BD70528-PMIC/20190205-114747 base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next smatch warnings: drivers/power/supply/bd70528-charger.c:603 set_charge_current() error: uninitialized symbol 'reg'. drivers/power/supply/bd70528-charger.c:659 set_current_limit() error: uninitialized symbol 'reg'. # https://github.com/0day-ci/linux/commit/86fff7c9f03653553d84747e63ba2cc71f564a64 git remote add linux-review https://github.com/0day-ci/linux git remote update linux-review git checkout 86fff7c9f03653553d84747e63ba2cc71f564a64 vim +/reg +603 drivers/power/supply/bd70528-charger.c 86fff7c9f Matti Vaittinen 2019-02-04 567 86fff7c9f Matti Vaittinen 2019-02-04 568 86fff7c9f Matti Vaittinen 2019-02-04 569 86fff7c9f Matti Vaittinen 2019-02-04 570 static int set_charge_current(struct bd70528_psy *bdpsy, int ma) 86fff7c9f Matti Vaittinen 2019-02-04 571 { 86fff7c9f Matti Vaittinen 2019-02-04 572 unsigned int reg; 86fff7c9f Matti Vaittinen 2019-02-04 573 int ret = 0, tmpret; 86fff7c9f Matti Vaittinen 2019-02-04 574 bool found; 86fff7c9f Matti Vaittinen 2019-02-04 575 86fff7c9f Matti Vaittinen 2019-02-04 576 if (ma > 500) { 86fff7c9f Matti Vaittinen 2019-02-04 577 dev_warn(bdpsy->chip.dev, 86fff7c9f Matti Vaittinen 2019-02-04 578 "Requested charge current %u exceed maximum (500mA)\n", 86fff7c9f Matti Vaittinen 2019-02-04 579 ma); 86fff7c9f Matti Vaittinen 2019-02-04 580 reg = MAX_WARM_CHG_CURR_SEL; 86fff7c9f Matti Vaittinen 2019-02-04 581 goto set; 86fff7c9f Matti Vaittinen 2019-02-04 582 } 86fff7c9f Matti Vaittinen 2019-02-04 583 if (ma < 10) { 86fff7c9f Matti Vaittinen 2019-02-04 584 dev_err(bdpsy->chip.dev, 86fff7c9f Matti Vaittinen 2019-02-04 585 "Requested charge current %u smaller than min (10mA)\n", 86fff7c9f Matti Vaittinen 2019-02-04 586 ma); 86fff7c9f Matti Vaittinen 2019-02-04 587 reg = MIN_CHG_CURR_SEL; 86fff7c9f Matti Vaittinen 2019-02-04 588 ret = -EINVAL; 86fff7c9f Matti Vaittinen 2019-02-04 589 goto set; 86fff7c9f Matti Vaittinen 2019-02-04 590 } 86fff7c9f Matti Vaittinen 2019-02-04 591 86fff7c9f Matti Vaittinen 2019-02-04 592 ret = find_selector_for_value_low(&warm_charge_curr[0], 86fff7c9f Matti Vaittinen 2019-02-04 593 ARRAY_SIZE(warm_charge_curr), ma, 86fff7c9f Matti Vaittinen 2019-02-04 594 ®, &found); 86fff7c9f Matti Vaittinen 2019-02-04 595 86fff7c9f Matti Vaittinen 2019-02-04 596 if (!found) { 86fff7c9f Matti Vaittinen 2019-02-04 597 /* There was a gap in supported values and we hit it */ 86fff7c9f Matti Vaittinen 2019-02-04 598 dev_warn(bdpsy->chip.dev, 86fff7c9f Matti Vaittinen 2019-02-04 599 "Unsupported charge current %u mA\n", ma); We could probably set "reg = something;" on this error path. 86fff7c9f Matti Vaittinen 2019-02-04 600 } 86fff7c9f Matti Vaittinen 2019-02-04 601 set: 86fff7c9f Matti Vaittinen 2019-02-04 602 86fff7c9f Matti Vaittinen 2019-02-04 @603 tmpret = regmap_update_bits(bdpsy->chip.regmap, 86fff7c9f Matti Vaittinen 2019-02-04 604 BD70528_REG_CHG_CHG_CURR_WARM, 86fff7c9f Matti Vaittinen 2019-02-04 605 BD70528_MASK_CHG_CHG_CURR, reg); 86fff7c9f Matti Vaittinen 2019-02-04 606 if (tmpret) 86fff7c9f Matti Vaittinen 2019-02-04 607 dev_err(bdpsy->chip.dev, 86fff7c9f Matti Vaittinen 2019-02-04 608 "Charge current write failure (%d)\n", tmpret); 86fff7c9f Matti Vaittinen 2019-02-04 609 86fff7c9f Matti Vaittinen 2019-02-04 610 if (reg > MAX_COLD_CHG_CURR_SEL) 86fff7c9f Matti Vaittinen 2019-02-04 611 reg = MAX_COLD_CHG_CURR_SEL; 86fff7c9f Matti Vaittinen 2019-02-04 612 86fff7c9f Matti Vaittinen 2019-02-04 613 if (!tmpret) 86fff7c9f Matti Vaittinen 2019-02-04 614 tmpret = regmap_update_bits(bdpsy->chip.regmap, 86fff7c9f Matti Vaittinen 2019-02-04 615 BD70528_REG_CHG_CHG_CURR_COLD, 86fff7c9f Matti Vaittinen 2019-02-04 616 BD70528_MASK_CHG_CHG_CURR, reg); 86fff7c9f Matti Vaittinen 2019-02-04 617 86fff7c9f Matti Vaittinen 2019-02-04 618 if (!ret) 86fff7c9f Matti Vaittinen 2019-02-04 619 ret = tmpret; 86fff7c9f Matti Vaittinen 2019-02-04 620 86fff7c9f Matti Vaittinen 2019-02-04 621 return ret; 86fff7c9f Matti Vaittinen 2019-02-04 622 } 86fff7c9f Matti Vaittinen 2019-02-04 623 86fff7c9f Matti Vaittinen 2019-02-04 624 #define MAX_CURR_LIMIT_SEL 0x34 86fff7c9f Matti Vaittinen 2019-02-04 625 #define MIN_CURR_LIMIT_SEL 0x0 86fff7c9f Matti Vaittinen 2019-02-04 626 86fff7c9f Matti Vaittinen 2019-02-04 627 static int set_current_limit(struct bd70528_psy *bdpsy, int ma) 86fff7c9f Matti Vaittinen 2019-02-04 628 { 86fff7c9f Matti Vaittinen 2019-02-04 629 unsigned int reg; 86fff7c9f Matti Vaittinen 2019-02-04 630 int ret = 0, tmpret; 86fff7c9f Matti Vaittinen 2019-02-04 631 bool found; 86fff7c9f Matti Vaittinen 2019-02-04 632 86fff7c9f Matti Vaittinen 2019-02-04 633 if (ma > 500) { 86fff7c9f Matti Vaittinen 2019-02-04 634 dev_warn(bdpsy->chip.dev, 86fff7c9f Matti Vaittinen 2019-02-04 635 "Requested current limit %u exceed maximum (500mA)\n", 86fff7c9f Matti Vaittinen 2019-02-04 636 ma); 86fff7c9f Matti Vaittinen 2019-02-04 637 reg = MAX_CURR_LIMIT_SEL; 86fff7c9f Matti Vaittinen 2019-02-04 638 goto set; 86fff7c9f Matti Vaittinen 2019-02-04 639 } 86fff7c9f Matti Vaittinen 2019-02-04 640 if (ma < 5) { 86fff7c9f Matti Vaittinen 2019-02-04 641 dev_err(bdpsy->chip.dev, 86fff7c9f Matti Vaittinen 2019-02-04 642 "Requested current limit %u smaller than min (5mA)\n", 86fff7c9f Matti Vaittinen 2019-02-04 643 ma); 86fff7c9f Matti Vaittinen 2019-02-04 644 reg = MIN_CURR_LIMIT_SEL; 86fff7c9f Matti Vaittinen 2019-02-04 645 ret = -EINVAL; 86fff7c9f Matti Vaittinen 2019-02-04 646 goto set; 86fff7c9f Matti Vaittinen 2019-02-04 647 } 86fff7c9f Matti Vaittinen 2019-02-04 648 86fff7c9f Matti Vaittinen 2019-02-04 649 ret = find_selector_for_value_low(¤t_limit_ranges[0], 86fff7c9f Matti Vaittinen 2019-02-04 650 ARRAY_SIZE(current_limit_ranges), ma, 86fff7c9f Matti Vaittinen 2019-02-04 651 ®, &found); 86fff7c9f Matti Vaittinen 2019-02-04 652 if (!found) { 86fff7c9f Matti Vaittinen 2019-02-04 653 /* There was a gap in supported values and we hit it ?*/ 86fff7c9f Matti Vaittinen 2019-02-04 654 dev_warn(bdpsy->chip.dev, "Unsupported current limit %umA\n", 86fff7c9f Matti Vaittinen 2019-02-04 655 ma); 86fff7c9f Matti Vaittinen 2019-02-04 656 } 86fff7c9f Matti Vaittinen 2019-02-04 657 86fff7c9f Matti Vaittinen 2019-02-04 658 set: 86fff7c9f Matti Vaittinen 2019-02-04 @659 tmpret = regmap_update_bits(bdpsy->chip.regmap, 86fff7c9f Matti Vaittinen 2019-02-04 660 BD70528_REG_CHG_DCIN_ILIM, 86fff7c9f Matti Vaittinen 2019-02-04 661 BD70528_MASK_CHG_DCIN_ILIM, reg); 86fff7c9f Matti Vaittinen 2019-02-04 662 86fff7c9f Matti Vaittinen 2019-02-04 663 if (!ret) 86fff7c9f Matti Vaittinen 2019-02-04 664 ret = tmpret; 86fff7c9f Matti Vaittinen 2019-02-04 665 86fff7c9f Matti Vaittinen 2019-02-04 666 return ret; 86fff7c9f Matti Vaittinen 2019-02-04 667 } 86fff7c9f Matti Vaittinen 2019-02-04 668 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation _______________________________________________ kbuild mailing list kbuild@lists.01.org https://lists.01.org/mailman/listinfo/kbuild