* [soc:board-remove 114/217] drivers/regulator/da9055-regulator.c:417:33: warning: parameter 'id' set but not used
@ 2026-08-15 20:55 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-08-15 20:55 UTC (permalink / raw)
To: Arnd Bergmann; +Cc: oe-kbuild-all, linux-arm-kernel, arm
tree: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git board-remove
head: 057394422bc04420585b2790b230d8a1f350ace8
commit: 158b19afd623da6a93d8ac59dd4aeefe48fa2085 [114/217] mfd: da9055: remove pdata based probing
config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20260816/202608160430.mij1LduH-lkp@intel.com/config)
compiler: alpha-linux-gcc (GCC) 16.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260816/202608160430.mij1LduH-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202608160430.mij1LduH-lkp@intel.com/
All warnings (new ones prefixed by >>):
drivers/regulator/da9055-regulator.c:77:26: error: field 'reg_rselect' has incomplete type
77 | enum gpio_select reg_rselect;
| ^~~~~~~~~~~
drivers/regulator/da9055-regulator.c: In function 'da9055_regulator_set_voltage_sel':
drivers/regulator/da9055-regulator.c:208:39: error: 'NO_GPIO' undeclared (first use in this function)
208 | if (regulator->reg_rselect == NO_GPIO) {
| ^~~~~~~
drivers/regulator/da9055-regulator.c:208:39: note: each undeclared identifier is reported only once for each function it appears in
drivers/regulator/da9055-regulator.c: In function 'da9055_regulator_set_suspend_voltage':
drivers/regulator/da9055-regulator.c:248:39: error: 'NO_GPIO' undeclared (first use in this function)
248 | if (regulator->reg_rselect == NO_GPIO) {
| ^~~~~~~
drivers/regulator/da9055-regulator.c: In function 'da9055_suspend_enable':
drivers/regulator/da9055-regulator.c:269:39: error: 'NO_GPIO' undeclared (first use in this function)
269 | if (regulator->reg_rselect == NO_GPIO)
| ^~~~~~~
drivers/regulator/da9055-regulator.c: In function 'da9055_suspend_disable':
drivers/regulator/da9055-regulator.c:282:39: error: 'NO_GPIO' undeclared (first use in this function)
282 | if (regulator->reg_rselect == NO_GPIO)
| ^~~~~~~
drivers/regulator/da9055-regulator.c: In function 'da9055_gpio_init':
drivers/regulator/da9055-regulator.c:466:42: error: 'pdata' undeclared (first use in this function); did you mean '_data'?
466 | regulator->reg_rselect = pdata->reg_rsel[id];
| ^~~~~
| _data
>> drivers/regulator/da9055-regulator.c:417:33: warning: parameter 'id' set but not used [-Wunused-but-set-parameter=]
417 | int id)
| ~~~~^~
In file included from include/uapi/linux/posix_types.h:5,
from include/uapi/linux/types.h:14,
from include/linux/types.h:5,
from include/linux/kcsan-checks.h:14,
from include/asm-generic/barrier.h:17,
from arch/alpha/include/asm/barrier.h:21,
from arch/alpha/include/asm/rwonce.h:10,
from include/linux/compiler.h:369,
from include/linux/build_bug.h:5,
from include/linux/container_of.h:5,
from include/linux/list.h:5,
from include/linux/module.h:12,
from drivers/regulator/da9055-regulator.c:9:
drivers/regulator/da9055-regulator.c: In function 'da9055_regulator_probe':
include/linux/stddef.h:8:14: error: passing argument 4 of 'da9055_gpio_init' makes integer from pointer without a cast [-Wint-conversion]
8 | #define NULL ((void *)0)
| ^~~~~~~~~~~
| |
| void *
drivers/regulator/da9055-regulator.c:534:64: note: in expansion of macro 'NULL'
534 | ret = da9055_gpio_init(&pdev->dev, regulator, &config, NULL, pdev->id);
| ^~~~
drivers/regulator/da9055-regulator.c:417:33: note: expected 'int' but argument is of type 'void *'
417 | int id)
| ~~~~^~
drivers/regulator/da9055-regulator.c:534:15: error: too many arguments to function 'da9055_gpio_init'; expected 4, have 5
534 | ret = da9055_gpio_init(&pdev->dev, regulator, &config, NULL, pdev->id);
| ^~~~~~~~~~~~~~~~ ~~~~~~~~
drivers/regulator/da9055-regulator.c:414:12: note: declared here
414 | static int da9055_gpio_init(struct device *dev,
| ^~~~~~~~~~~~~~~~
drivers/regulator/da9055-regulator.c: In function 'da9055_suspend_disable':
>> drivers/regulator/da9055-regulator.c:287:1: warning: control reaches end of non-void function [-Wreturn-type]
287 | }
| ^
drivers/regulator/da9055-regulator.c: In function 'da9055_suspend_enable':
drivers/regulator/da9055-regulator.c:274:1: warning: control reaches end of non-void function [-Wreturn-type]
274 | }
| ^
vim +/id +417 drivers/regulator/da9055-regulator.c
275
276 static int da9055_suspend_disable(struct regulator_dev *rdev)
277 {
278 struct da9055_regulator *regulator = rdev_get_drvdata(rdev);
279 const struct da9055_regulator_info *info = regulator->info;
280
281 /* Diselect register set B. */
282 if (regulator->reg_rselect == NO_GPIO)
283 return da9055_reg_update(regulator->da9055, info->conf.reg,
284 info->conf.sel_mask, DA9055_SEL_REG_A);
285 else
286 return 0;
> 287 }
288
289 static const struct regulator_ops da9055_buck_ops = {
290 .get_mode = da9055_buck_get_mode,
291 .set_mode = da9055_buck_set_mode,
292
293 .get_current_limit = regulator_get_current_limit_regmap,
294 .set_current_limit = regulator_set_current_limit_regmap,
295
296 .get_voltage_sel = da9055_regulator_get_voltage_sel,
297 .set_voltage_sel = da9055_regulator_set_voltage_sel,
298 .list_voltage = regulator_list_voltage_linear,
299 .map_voltage = regulator_map_voltage_linear,
300 .is_enabled = regulator_is_enabled_regmap,
301 .enable = regulator_enable_regmap,
302 .disable = regulator_disable_regmap,
303
304 .set_suspend_voltage = da9055_regulator_set_suspend_voltage,
305 .set_suspend_enable = da9055_suspend_enable,
306 .set_suspend_disable = da9055_suspend_disable,
307 .set_suspend_mode = da9055_buck_set_mode,
308 };
309
310 static const struct regulator_ops da9055_ldo_ops = {
311 .get_mode = da9055_ldo_get_mode,
312 .set_mode = da9055_ldo_set_mode,
313
314 .get_voltage_sel = da9055_regulator_get_voltage_sel,
315 .set_voltage_sel = da9055_regulator_set_voltage_sel,
316 .list_voltage = regulator_list_voltage_linear,
317 .map_voltage = regulator_map_voltage_linear,
318 .is_enabled = regulator_is_enabled_regmap,
319 .enable = regulator_enable_regmap,
320 .disable = regulator_disable_regmap,
321
322 .set_suspend_voltage = da9055_regulator_set_suspend_voltage,
323 .set_suspend_enable = da9055_suspend_enable,
324 .set_suspend_disable = da9055_suspend_disable,
325 .set_suspend_mode = da9055_ldo_set_mode,
326
327 };
328
329 #define DA9055_LDO(_id, step, min, max, vbits, voffset) \
330 {\
331 .reg_desc = {\
332 .name = #_id,\
333 .of_match = of_match_ptr(#_id),\
334 .regulators_node = of_match_ptr("regulators"),\
335 .ops = &da9055_ldo_ops,\
336 .type = REGULATOR_VOLTAGE,\
337 .id = DA9055_ID_##_id,\
338 .n_voltages = (max - min) / step + 1 + (voffset), \
339 .enable_reg = DA9055_REG_BCORE_CONT + DA9055_ID_##_id, \
340 .enable_mask = 1, \
341 .min_uV = (min) * 1000,\
342 .uV_step = (step) * 1000,\
343 .linear_min_sel = (voffset),\
344 .owner = THIS_MODULE,\
345 },\
346 .conf = {\
347 .reg = DA9055_REG_BCORE_CONT + DA9055_ID_##_id, \
348 .sel_mask = (1 << 4),\
349 .en_mask = 1,\
350 },\
351 .volt = {\
352 .reg_a = DA9055_REG_VBCORE_A + DA9055_ID_##_id, \
353 .reg_b = DA9055_REG_VBCORE_B + DA9055_ID_##_id, \
354 .sl_shift = 7,\
355 .v_mask = (1 << (vbits)) - 1,\
356 },\
357 }
358
359 #define DA9055_BUCK(_id, step, min, max, vbits, voffset, mbits, sbits) \
360 {\
361 .reg_desc = {\
362 .name = #_id,\
363 .of_match = of_match_ptr(#_id),\
364 .regulators_node = of_match_ptr("regulators"),\
365 .ops = &da9055_buck_ops,\
366 .type = REGULATOR_VOLTAGE,\
367 .id = DA9055_ID_##_id,\
368 .n_voltages = (max - min) / step + 1 + (voffset), \
369 .enable_reg = DA9055_REG_BCORE_CONT + DA9055_ID_##_id, \
370 .enable_mask = 1,\
371 .min_uV = (min) * 1000,\
372 .uV_step = (step) * 1000,\
373 .linear_min_sel = (voffset),\
374 .owner = THIS_MODULE,\
375 .curr_table = da9055_current_limits,\
376 .n_current_limits = ARRAY_SIZE(da9055_current_limits),\
377 .csel_reg = DA9055_REG_BUCK_LIM,\
378 .csel_mask = (mbits),\
379 },\
380 .conf = {\
381 .reg = DA9055_REG_BCORE_CONT + DA9055_ID_##_id, \
382 .sel_mask = (1 << 4),\
383 .en_mask = 1,\
384 },\
385 .volt = {\
386 .reg_a = DA9055_REG_VBCORE_A + DA9055_ID_##_id, \
387 .reg_b = DA9055_REG_VBCORE_B + DA9055_ID_##_id, \
388 .sl_shift = 7,\
389 .v_mask = (1 << (vbits)) - 1,\
390 },\
391 .mode = {\
392 .reg = DA9055_REG_BCORE_MODE,\
393 .mask = (mbits),\
394 .shift = (sbits),\
395 },\
396 }
397
398 static const struct da9055_regulator_info da9055_regulator_info[] = {
399 DA9055_BUCK(BUCK1, 25, 725, 2075, 6, 9, 0xc, 2),
400 DA9055_BUCK(BUCK2, 25, 925, 2500, 6, 0, 3, 0),
401 DA9055_LDO(LDO1, 50, 900, 3300, 6, 2),
402 DA9055_LDO(LDO2, 50, 900, 3300, 6, 3),
403 DA9055_LDO(LDO3, 50, 900, 3300, 6, 2),
404 DA9055_LDO(LDO4, 50, 900, 3300, 6, 2),
405 DA9055_LDO(LDO5, 50, 900, 2750, 6, 2),
406 DA9055_LDO(LDO6, 20, 900, 3300, 7, 0),
407 };
408
409 /*
410 * Configures regulator to be controlled either through GPIO 1 or 2.
411 * GPIO can control regulator state and/or select the regulator register
412 * set A/B for voltage ramping.
413 */
414 static int da9055_gpio_init(struct device *dev,
415 struct da9055_regulator *regulator,
416 struct regulator_config *config,
> 417 int id)
418 {
419 const struct da9055_regulator_info *info = regulator->info;
420 struct gpio_desc *ren;
421 struct gpio_desc *ena;
422 struct gpio_desc *rsel;
423 int ret = 0;
424
425 /* Look for "regulator-enable-gpios" GPIOs in the regulator node */
426 ren = devm_gpiod_get_optional(dev, "regulator-enable", GPIOD_IN);
427 if (IS_ERR(ren))
428 return PTR_ERR(ren);
429
430 if (ren) {
431 /* This GPIO is not optional at this point */
432 ena = devm_gpiod_get(dev, "enable", GPIOD_OUT_HIGH);
433 if (IS_ERR(ena))
434 return PTR_ERR(ena);
435
436 config->ena_gpiod = ena;
437
438 /*
439 * GPI pin is muxed with regulator to control the
440 * regulator state.
441 */
442 gpiod_set_consumer_name(ren, "DA9055 ren GPI");
443
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-15 20:55 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-15 20:55 [soc:board-remove 114/217] drivers/regulator/da9055-regulator.c:417:33: warning: parameter 'id' set but not used kernel test robot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox