Hi Matti,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on a38fd8748464831584a19438cbb3082b5a2dab15]
url:
https://github.com/0day-ci/linux/commits/Matti-Vaittinen/Extend-regulator...
base: a38fd8748464831584a19438cbb3082b5a2dab15
config: nds32-randconfig-r004-20210309 (attached as .config)
compiler: nds32le-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
#
https://github.com/0day-ci/linux/commit/a14d17e4af6d54f4808dff28bf4e8b947...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Matti-Vaittinen/Extend-regulator-notification-support/20210310-211246
git checkout a14d17e4af6d54f4808dff28bf4e8b9471fdf81e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=nds32
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
> drivers/regulator/stpmic1_regulator.c:139:33: error:
initialization of 'int (*)(struct regulator_dev *, int, int, bool)' {aka
'int (*)(struct regulator_dev *, int, int, _Bool)'} from incompatible pointer
type 'int (*)(struct regulator_dev *)' [-Werror=incompatible-pointer-types]
139 | .set_over_current_protection = stpmic1_set_icc,
| ^~~~~~~~~~~~~~~
drivers/regulator/stpmic1_regulator.c:139:33: note: (near initialization for
'stpmic1_ldo_ops.set_over_current_protection')
drivers/regulator/stpmic1_regulator.c:152:33: error: initialization of 'int
(*)(struct regulator_dev *, int, int, bool)' {aka 'int (*)(struct regulator_dev
*, int, int, _Bool)'} from incompatible pointer type 'int (*)(struct
regulator_dev *)' [-Werror=incompatible-pointer-types]
152 | .set_over_current_protection = stpmic1_set_icc,
| ^~~~~~~~~~~~~~~
drivers/regulator/stpmic1_regulator.c:152:33: note: (near initialization for
'stpmic1_ldo3_ops.set_over_current_protection')
drivers/regulator/stpmic1_regulator.c:159:33: error: initialization of 'int
(*)(struct regulator_dev *, int, int, bool)' {aka 'int (*)(struct regulator_dev
*, int, int, _Bool)'} from incompatible pointer type 'int (*)(struct
regulator_dev *)' [-Werror=incompatible-pointer-types]
159 | .set_over_current_protection = stpmic1_set_icc,
| ^~~~~~~~~~~~~~~
drivers/regulator/stpmic1_regulator.c:159:33: note: (near initialization for
'stpmic1_ldo4_fixed_regul_ops.set_over_current_protection')
drivers/regulator/stpmic1_regulator.c:173:33: error: initialization of 'int
(*)(struct regulator_dev *, int, int, bool)' {aka 'int (*)(struct regulator_dev
*, int, int, _Bool)'} from incompatible pointer type 'int (*)(struct
regulator_dev *)' [-Werror=incompatible-pointer-types]
173 | .set_over_current_protection = stpmic1_set_icc,
| ^~~~~~~~~~~~~~~
drivers/regulator/stpmic1_regulator.c:173:33: note: (near initialization for
'stpmic1_buck_ops.set_over_current_protection')
drivers/regulator/stpmic1_regulator.c:186:33: error: initialization of 'int
(*)(struct regulator_dev *, int, int, bool)' {aka 'int (*)(struct regulator_dev
*, int, int, _Bool)'} from incompatible pointer type 'int (*)(struct
regulator_dev *)' [-Werror=incompatible-pointer-types]
186 | .set_over_current_protection = stpmic1_set_icc,
| ^~~~~~~~~~~~~~~
drivers/regulator/stpmic1_regulator.c:186:33: note: (near initialization for
'stpmic1_boost_regul_ops.set_over_current_protection')
drivers/regulator/stpmic1_regulator.c:193:33: error: initialization of 'int
(*)(struct regulator_dev *, int, int, bool)' {aka 'int (*)(struct regulator_dev
*, int, int, _Bool)'} from incompatible pointer type 'int (*)(struct
regulator_dev *)' [-Werror=incompatible-pointer-types]
193 | .set_over_current_protection = stpmic1_set_icc,
| ^~~~~~~~~~~~~~~
drivers/regulator/stpmic1_regulator.c:193:33: note: (near initialization for
'stpmic1_switch_regul_ops.set_over_current_protection')
> drivers/regulator/stpmic1_regulator.c:494:12: error: conflicting
types for 'stpmic1_set_icc'
494 | static int stpmic1_set_icc(struct
regulator_dev *rdev, int lim, int severity,
| ^~~~~~~~~~~~~~~
drivers/regulator/stpmic1_regulator.c:35:12: note: previous declaration of
'stpmic1_set_icc' was here
35 | static int stpmic1_set_icc(struct regulator_dev *rdev);
| ^~~~~~~~~~~~~~~
> drivers/regulator/stpmic1_regulator.c:35:12: warning:
'stpmic1_set_icc' used but never defined
drivers/regulator/stpmic1_regulator.c:494:12: warning: 'stpmic1_set_icc' defined
but not used [-Wunused-function]
494 | static int stpmic1_set_icc(struct regulator_dev *rdev, int lim, int severity,
| ^~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +139 drivers/regulator/stpmic1_regulator.c
ca55b7185b74e7 pascal paillet 2018-10-08 32
ca55b7185b74e7 pascal paillet 2018-10-08 33 static int stpmic1_set_mode(struct
regulator_dev *rdev, unsigned int mode);
ca55b7185b74e7 pascal paillet 2018-10-08 34 static unsigned int
stpmic1_get_mode(struct regulator_dev *rdev);
ca55b7185b74e7 pascal paillet 2018-10-08 @35 static int stpmic1_set_icc(struct
regulator_dev *rdev);
ca55b7185b74e7 pascal paillet 2018-10-08 36 static unsigned int
stpmic1_map_mode(unsigned int mode);
ca55b7185b74e7 pascal paillet 2018-10-08 37
ca55b7185b74e7 pascal paillet 2018-10-08 38 enum {
ca55b7185b74e7 pascal paillet 2018-10-08 39 STPMIC1_BUCK1 = 0,
ca55b7185b74e7 pascal paillet 2018-10-08 40 STPMIC1_BUCK2 = 1,
ca55b7185b74e7 pascal paillet 2018-10-08 41 STPMIC1_BUCK3 = 2,
ca55b7185b74e7 pascal paillet 2018-10-08 42 STPMIC1_BUCK4 = 3,
ca55b7185b74e7 pascal paillet 2018-10-08 43 STPMIC1_LDO1 = 4,
ca55b7185b74e7 pascal paillet 2018-10-08 44 STPMIC1_LDO2 = 5,
ca55b7185b74e7 pascal paillet 2018-10-08 45 STPMIC1_LDO3 = 6,
ca55b7185b74e7 pascal paillet 2018-10-08 46 STPMIC1_LDO4 = 7,
ca55b7185b74e7 pascal paillet 2018-10-08 47 STPMIC1_LDO5 = 8,
ca55b7185b74e7 pascal paillet 2018-10-08 48 STPMIC1_LDO6 = 9,
ca55b7185b74e7 pascal paillet 2018-10-08 49 STPMIC1_VREF_DDR = 10,
ca55b7185b74e7 pascal paillet 2018-10-08 50 STPMIC1_BOOST = 11,
ca55b7185b74e7 pascal paillet 2018-10-08 51 STPMIC1_VBUS_OTG = 12,
ca55b7185b74e7 pascal paillet 2018-10-08 52 STPMIC1_SW_OUT = 13,
ca55b7185b74e7 pascal paillet 2018-10-08 53 };
ca55b7185b74e7 pascal paillet 2018-10-08 54
ca55b7185b74e7 pascal paillet 2018-10-08 55 /* Enable time worst case is
5000mV/(2250uV/uS) */
ca55b7185b74e7 pascal paillet 2018-10-08 56 #define PMIC_ENABLE_TIME_US 2200
9ebde17c5d0387 Pascal Paillet 2019-11-13 57 /* Ramp delay worst case is (2250uV/uS)
*/
9ebde17c5d0387 Pascal Paillet 2019-11-13 58 #define PMIC_RAMP_DELAY 2200
ca55b7185b74e7 pascal paillet 2018-10-08 59
60ab7f4153b6af Matti Vaittinen 2020-05-08 60 static const struct linear_range
buck1_ranges[] = {
48593a99a1f624 Pascal PAILLET-LME 2019-02-19 61 REGULATOR_LINEAR_RANGE(725000, 0, 4,
0),
48593a99a1f624 Pascal PAILLET-LME 2019-02-19 62 REGULATOR_LINEAR_RANGE(725000, 5, 36,
25000),
48593a99a1f624 Pascal PAILLET-LME 2019-02-19 63 REGULATOR_LINEAR_RANGE(1500000, 37,
63, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 64 };
ca55b7185b74e7 pascal paillet 2018-10-08 65
60ab7f4153b6af Matti Vaittinen 2020-05-08 66 static const struct linear_range
buck2_ranges[] = {
ca55b7185b74e7 pascal paillet 2018-10-08 67 REGULATOR_LINEAR_RANGE(1000000, 0, 17,
0),
ca55b7185b74e7 pascal paillet 2018-10-08 68 REGULATOR_LINEAR_RANGE(1050000, 18,
19, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 69 REGULATOR_LINEAR_RANGE(1100000, 20,
21, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 70 REGULATOR_LINEAR_RANGE(1150000, 22,
23, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 71 REGULATOR_LINEAR_RANGE(1200000, 24,
25, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 72 REGULATOR_LINEAR_RANGE(1250000, 26,
27, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 73 REGULATOR_LINEAR_RANGE(1300000, 28,
29, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 74 REGULATOR_LINEAR_RANGE(1350000, 30,
31, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 75 REGULATOR_LINEAR_RANGE(1400000, 32,
33, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 76 REGULATOR_LINEAR_RANGE(1450000, 34,
35, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 77 REGULATOR_LINEAR_RANGE(1500000, 36,
63, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 78 };
ca55b7185b74e7 pascal paillet 2018-10-08 79
60ab7f4153b6af Matti Vaittinen 2020-05-08 80 static const struct linear_range
buck3_ranges[] = {
ca55b7185b74e7 pascal paillet 2018-10-08 81 REGULATOR_LINEAR_RANGE(1000000, 0, 19,
0),
ca55b7185b74e7 pascal paillet 2018-10-08 82 REGULATOR_LINEAR_RANGE(1100000, 20,
23, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 83 REGULATOR_LINEAR_RANGE(1200000, 24,
27, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 84 REGULATOR_LINEAR_RANGE(1300000, 28,
31, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 85 REGULATOR_LINEAR_RANGE(1400000, 32,
35, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 86 REGULATOR_LINEAR_RANGE(1500000, 36,
55, 100000),
ca55b7185b74e7 pascal paillet 2018-10-08 87 REGULATOR_LINEAR_RANGE(3400000, 56,
63, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 88 };
ca55b7185b74e7 pascal paillet 2018-10-08 89
60ab7f4153b6af Matti Vaittinen 2020-05-08 90 static const struct linear_range
buck4_ranges[] = {
ca55b7185b74e7 pascal paillet 2018-10-08 91 REGULATOR_LINEAR_RANGE(600000, 0, 27,
25000),
ca55b7185b74e7 pascal paillet 2018-10-08 92 REGULATOR_LINEAR_RANGE(1300000, 28,
29, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 93 REGULATOR_LINEAR_RANGE(1350000, 30,
31, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 94 REGULATOR_LINEAR_RANGE(1400000, 32,
33, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 95 REGULATOR_LINEAR_RANGE(1450000, 34,
35, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 96 REGULATOR_LINEAR_RANGE(1500000, 36,
60, 100000),
ca55b7185b74e7 pascal paillet 2018-10-08 97 REGULATOR_LINEAR_RANGE(3900000, 61,
63, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 98 };
ca55b7185b74e7 pascal paillet 2018-10-08 99
60ab7f4153b6af Matti Vaittinen 2020-05-08 100 static const struct linear_range
ldo1_ranges[] = {
ca55b7185b74e7 pascal paillet 2018-10-08 101 REGULATOR_LINEAR_RANGE(1700000, 0, 7,
0),
ca55b7185b74e7 pascal paillet 2018-10-08 102 REGULATOR_LINEAR_RANGE(1700000, 8, 24,
100000),
ca55b7185b74e7 pascal paillet 2018-10-08 103 REGULATOR_LINEAR_RANGE(3300000, 25,
31, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 104 };
ca55b7185b74e7 pascal paillet 2018-10-08 105
60ab7f4153b6af Matti Vaittinen 2020-05-08 106 static const struct linear_range
ldo2_ranges[] = {
ca55b7185b74e7 pascal paillet 2018-10-08 107 REGULATOR_LINEAR_RANGE(1700000, 0, 7,
0),
ca55b7185b74e7 pascal paillet 2018-10-08 108 REGULATOR_LINEAR_RANGE(1700000, 8, 24,
100000),
ca55b7185b74e7 pascal paillet 2018-10-08 109 REGULATOR_LINEAR_RANGE(3300000, 25,
30, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 110 };
ca55b7185b74e7 pascal paillet 2018-10-08 111
60ab7f4153b6af Matti Vaittinen 2020-05-08 112 static const struct linear_range
ldo3_ranges[] = {
ca55b7185b74e7 pascal paillet 2018-10-08 113 REGULATOR_LINEAR_RANGE(1700000, 0, 7,
0),
ca55b7185b74e7 pascal paillet 2018-10-08 114 REGULATOR_LINEAR_RANGE(1700000, 8, 24,
100000),
ca55b7185b74e7 pascal paillet 2018-10-08 115 REGULATOR_LINEAR_RANGE(3300000, 25,
30, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 116 /* with index 31 LDO3 is in DDR mode
*/
ca55b7185b74e7 pascal paillet 2018-10-08 117 REGULATOR_LINEAR_RANGE(500000, 31, 31,
0),
ca55b7185b74e7 pascal paillet 2018-10-08 118 };
ca55b7185b74e7 pascal paillet 2018-10-08 119
60ab7f4153b6af Matti Vaittinen 2020-05-08 120 static const struct linear_range
ldo5_ranges[] = {
ca55b7185b74e7 pascal paillet 2018-10-08 121 REGULATOR_LINEAR_RANGE(1700000, 0, 7,
0),
ca55b7185b74e7 pascal paillet 2018-10-08 122 REGULATOR_LINEAR_RANGE(1700000, 8, 30,
100000),
ca55b7185b74e7 pascal paillet 2018-10-08 123 REGULATOR_LINEAR_RANGE(3900000, 31,
31, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 124 };
ca55b7185b74e7 pascal paillet 2018-10-08 125
60ab7f4153b6af Matti Vaittinen 2020-05-08 126 static const struct linear_range
ldo6_ranges[] = {
ca55b7185b74e7 pascal paillet 2018-10-08 127 REGULATOR_LINEAR_RANGE(900000, 0, 24,
100000),
ca55b7185b74e7 pascal paillet 2018-10-08 128 REGULATOR_LINEAR_RANGE(3300000, 25,
31, 0),
ca55b7185b74e7 pascal paillet 2018-10-08 129 };
ca55b7185b74e7 pascal paillet 2018-10-08 130
7c027c66f2b529 Axel Lin 2019-01-23 131 static const struct regulator_ops
stpmic1_ldo_ops = {
ca55b7185b74e7 pascal paillet 2018-10-08 132 .list_voltage =
regulator_list_voltage_linear_range,
ca55b7185b74e7 pascal paillet 2018-10-08 133 .map_voltage =
regulator_map_voltage_linear_range,
ca55b7185b74e7 pascal paillet 2018-10-08 134 .is_enabled =
regulator_is_enabled_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 135 .enable = regulator_enable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 136 .disable = regulator_disable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 137 .get_voltage_sel =
regulator_get_voltage_sel_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 138 .set_voltage_sel =
regulator_set_voltage_sel_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 @139 .set_over_current_protection =
stpmic1_set_icc,
ca55b7185b74e7 pascal paillet 2018-10-08 140 };
ca55b7185b74e7 pascal paillet 2018-10-08 141
7c027c66f2b529 Axel Lin 2019-01-23 142 static const struct regulator_ops
stpmic1_ldo3_ops = {
ca55b7185b74e7 pascal paillet 2018-10-08 143 .list_voltage =
regulator_list_voltage_linear_range,
ca55b7185b74e7 pascal paillet 2018-10-08 144 .map_voltage =
regulator_map_voltage_iterate,
ca55b7185b74e7 pascal paillet 2018-10-08 145 .is_enabled =
regulator_is_enabled_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 146 .enable = regulator_enable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 147 .disable = regulator_disable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 148 .get_voltage_sel =
regulator_get_voltage_sel_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 149 .set_voltage_sel =
regulator_set_voltage_sel_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 150 .get_bypass =
regulator_get_bypass_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 151 .set_bypass =
regulator_set_bypass_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 152 .set_over_current_protection =
stpmic1_set_icc,
ca55b7185b74e7 pascal paillet 2018-10-08 153 };
ca55b7185b74e7 pascal paillet 2018-10-08 154
7c027c66f2b529 Axel Lin 2019-01-23 155 static const struct regulator_ops
stpmic1_ldo4_fixed_regul_ops = {
ca55b7185b74e7 pascal paillet 2018-10-08 156 .is_enabled =
regulator_is_enabled_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 157 .enable = regulator_enable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 158 .disable = regulator_disable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 159 .set_over_current_protection =
stpmic1_set_icc,
ca55b7185b74e7 pascal paillet 2018-10-08 160 };
ca55b7185b74e7 pascal paillet 2018-10-08 161
7c027c66f2b529 Axel Lin 2019-01-23 162 static const struct regulator_ops
stpmic1_buck_ops = {
ca55b7185b74e7 pascal paillet 2018-10-08 163 .list_voltage =
regulator_list_voltage_linear_range,
ca55b7185b74e7 pascal paillet 2018-10-08 164 .map_voltage =
regulator_map_voltage_linear_range,
ca55b7185b74e7 pascal paillet 2018-10-08 165 .is_enabled =
regulator_is_enabled_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 166 .enable = regulator_enable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 167 .disable = regulator_disable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 168 .get_voltage_sel =
regulator_get_voltage_sel_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 169 .set_voltage_sel =
regulator_set_voltage_sel_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 170 .set_pull_down =
regulator_set_pull_down_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 171 .set_mode = stpmic1_set_mode,
ca55b7185b74e7 pascal paillet 2018-10-08 172 .get_mode = stpmic1_get_mode,
ca55b7185b74e7 pascal paillet 2018-10-08 @173 .set_over_current_protection =
stpmic1_set_icc,
ca55b7185b74e7 pascal paillet 2018-10-08 174 };
ca55b7185b74e7 pascal paillet 2018-10-08 175
7c027c66f2b529 Axel Lin 2019-01-23 176 static const struct regulator_ops
stpmic1_vref_ddr_ops = {
ca55b7185b74e7 pascal paillet 2018-10-08 177 .is_enabled =
regulator_is_enabled_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 178 .enable = regulator_enable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 179 .disable = regulator_disable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 180 };
ca55b7185b74e7 pascal paillet 2018-10-08 181
e6fff62ab8ac81 Pascal PAILLET-LME 2019-02-19 182 static const struct regulator_ops
stpmic1_boost_regul_ops = {
e6fff62ab8ac81 Pascal PAILLET-LME 2019-02-19 183 .is_enabled =
regulator_is_enabled_regmap,
e6fff62ab8ac81 Pascal PAILLET-LME 2019-02-19 184 .enable = regulator_enable_regmap,
e6fff62ab8ac81 Pascal PAILLET-LME 2019-02-19 185 .disable = regulator_disable_regmap,
e6fff62ab8ac81 Pascal PAILLET-LME 2019-02-19 186 .set_over_current_protection =
stpmic1_set_icc,
e6fff62ab8ac81 Pascal PAILLET-LME 2019-02-19 187 };
e6fff62ab8ac81 Pascal PAILLET-LME 2019-02-19 188
7c027c66f2b529 Axel Lin 2019-01-23 189 static const struct regulator_ops
stpmic1_switch_regul_ops = {
ca55b7185b74e7 pascal paillet 2018-10-08 190 .is_enabled =
regulator_is_enabled_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 191 .enable = regulator_enable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 192 .disable = regulator_disable_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 @193 .set_over_current_protection =
stpmic1_set_icc,
e6fff62ab8ac81 Pascal PAILLET-LME 2019-02-19 194 .set_active_discharge =
regulator_set_active_discharge_regmap,
ca55b7185b74e7 pascal paillet 2018-10-08 195 };
ca55b7185b74e7 pascal paillet 2018-10-08 196
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org