* [groeck-staging:hwmon-next 33/45] drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *'
@ 2021-10-08 22:00 ` kernel test robot
0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2021-10-08 22:00 UTC (permalink / raw)
To: Zev Weiss; +Cc: llvm, kbuild-all, linux-hwmon, Guenter Roeck
[-- Attachment #1: Type: text/plain, Size: 5045 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
head: 574d7bfb7324c9a11cf6c0e58960022da6eca2f1
commit: c49bc1bcda2408ec16601b98d981f1d38f947f29 [33/45] hwmon: (pmbus/lm25066) Add OF device ID table
config: x86_64-randconfig-r001-20211008 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 8ed2e8e04ff42eb4d8009999ae1fd341a30bf6c0)
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://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git/commit/?id=c49bc1bcda2408ec16601b98d981f1d38f947f29
git remote add groeck-staging https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git
git fetch --no-tags groeck-staging hwmon-next
git checkout c49bc1bcda2408ec16601b98d981f1d38f947f29
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *' [-Wvoid-pointer-to-enum-cast]
if (of_id && (enum chips)of_id->data != i2c_id->driver_data)
^~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
vim +483 drivers/hwmon/pmbus/lm25066.c
457
458 static int lm25066_probe(struct i2c_client *client)
459 {
460 int config;
461 struct lm25066_data *data;
462 struct pmbus_driver_info *info;
463 const struct __coeff *coeff;
464 const struct of_device_id *of_id;
465 const struct i2c_device_id *i2c_id;
466
467 if (!i2c_check_functionality(client->adapter,
468 I2C_FUNC_SMBUS_READ_BYTE_DATA))
469 return -ENODEV;
470
471 data = devm_kzalloc(&client->dev, sizeof(struct lm25066_data),
472 GFP_KERNEL);
473 if (!data)
474 return -ENOMEM;
475
476 config = i2c_smbus_read_byte_data(client, LM25066_DEVICE_SETUP);
477 if (config < 0)
478 return config;
479
480 i2c_id = i2c_match_id(lm25066_id, client);
481
482 of_id = of_match_device(lm25066_of_match, &client->dev);
> 483 if (of_id && (enum chips)of_id->data != i2c_id->driver_data)
484 dev_notice(&client->dev, "Device mismatch: %s in device tree, %s detected\n",
485 of_id->name, i2c_id->name);
486
487 data->id = i2c_id->driver_data;
488 info = &data->info;
489
490 info->pages = 1;
491 info->format[PSC_VOLTAGE_IN] = direct;
492 info->format[PSC_VOLTAGE_OUT] = direct;
493 info->format[PSC_CURRENT_IN] = direct;
494 info->format[PSC_TEMPERATURE] = direct;
495 info->format[PSC_POWER] = direct;
496
497 info->func[0] = PMBUS_HAVE_VIN | PMBUS_HAVE_VMON
498 | PMBUS_HAVE_PIN | PMBUS_HAVE_IIN | PMBUS_HAVE_STATUS_INPUT
499 | PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP | PMBUS_HAVE_SAMPLES;
500
501 if (data->id == lm25056) {
502 info->func[0] |= PMBUS_HAVE_STATUS_VMON;
503 info->read_word_data = lm25056_read_word_data;
504 info->read_byte_data = lm25056_read_byte_data;
505 data->rlimit = 0x0fff;
506 } else {
507 info->func[0] |= PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
508 info->read_word_data = lm25066_read_word_data;
509 data->rlimit = 0x0fff;
510 }
511 info->write_word_data = lm25066_write_word_data;
512
513 coeff = &lm25066_coeff[data->id][0];
514 info->m[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].m;
515 info->b[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].b;
516 info->R[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].R;
517 info->m[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].m;
518 info->b[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].b;
519 info->R[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].R;
520 info->m[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].m;
521 info->b[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].b;
522 info->R[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].R;
523 info->R[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].R;
524 info->R[PSC_POWER] = coeff[PSC_POWER].R;
525 if (config & LM25066_DEV_SETUP_CL) {
526 info->m[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN_L].m;
527 info->b[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN_L].b;
528 info->m[PSC_POWER] = coeff[PSC_POWER_L].m;
529 info->b[PSC_POWER] = coeff[PSC_POWER_L].b;
530 } else {
531 info->m[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].m;
532 info->b[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].b;
533 info->m[PSC_POWER] = coeff[PSC_POWER].m;
534 info->b[PSC_POWER] = coeff[PSC_POWER].b;
535 }
536
537 return pmbus_do_probe(client, info);
538 }
539
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 33970 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* [groeck-staging:hwmon-next 33/45] drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *'
@ 2021-10-08 22:00 ` kernel test robot
0 siblings, 0 replies; 4+ messages in thread
From: kernel test robot @ 2021-10-08 22:00 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 5162 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
head: 574d7bfb7324c9a11cf6c0e58960022da6eca2f1
commit: c49bc1bcda2408ec16601b98d981f1d38f947f29 [33/45] hwmon: (pmbus/lm25066) Add OF device ID table
config: x86_64-randconfig-r001-20211008 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 8ed2e8e04ff42eb4d8009999ae1fd341a30bf6c0)
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://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git/commit/?id=c49bc1bcda2408ec16601b98d981f1d38f947f29
git remote add groeck-staging https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git
git fetch --no-tags groeck-staging hwmon-next
git checkout c49bc1bcda2408ec16601b98d981f1d38f947f29
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
>> drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *' [-Wvoid-pointer-to-enum-cast]
if (of_id && (enum chips)of_id->data != i2c_id->driver_data)
^~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
vim +483 drivers/hwmon/pmbus/lm25066.c
457
458 static int lm25066_probe(struct i2c_client *client)
459 {
460 int config;
461 struct lm25066_data *data;
462 struct pmbus_driver_info *info;
463 const struct __coeff *coeff;
464 const struct of_device_id *of_id;
465 const struct i2c_device_id *i2c_id;
466
467 if (!i2c_check_functionality(client->adapter,
468 I2C_FUNC_SMBUS_READ_BYTE_DATA))
469 return -ENODEV;
470
471 data = devm_kzalloc(&client->dev, sizeof(struct lm25066_data),
472 GFP_KERNEL);
473 if (!data)
474 return -ENOMEM;
475
476 config = i2c_smbus_read_byte_data(client, LM25066_DEVICE_SETUP);
477 if (config < 0)
478 return config;
479
480 i2c_id = i2c_match_id(lm25066_id, client);
481
482 of_id = of_match_device(lm25066_of_match, &client->dev);
> 483 if (of_id && (enum chips)of_id->data != i2c_id->driver_data)
484 dev_notice(&client->dev, "Device mismatch: %s in device tree, %s detected\n",
485 of_id->name, i2c_id->name);
486
487 data->id = i2c_id->driver_data;
488 info = &data->info;
489
490 info->pages = 1;
491 info->format[PSC_VOLTAGE_IN] = direct;
492 info->format[PSC_VOLTAGE_OUT] = direct;
493 info->format[PSC_CURRENT_IN] = direct;
494 info->format[PSC_TEMPERATURE] = direct;
495 info->format[PSC_POWER] = direct;
496
497 info->func[0] = PMBUS_HAVE_VIN | PMBUS_HAVE_VMON
498 | PMBUS_HAVE_PIN | PMBUS_HAVE_IIN | PMBUS_HAVE_STATUS_INPUT
499 | PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP | PMBUS_HAVE_SAMPLES;
500
501 if (data->id == lm25056) {
502 info->func[0] |= PMBUS_HAVE_STATUS_VMON;
503 info->read_word_data = lm25056_read_word_data;
504 info->read_byte_data = lm25056_read_byte_data;
505 data->rlimit = 0x0fff;
506 } else {
507 info->func[0] |= PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
508 info->read_word_data = lm25066_read_word_data;
509 data->rlimit = 0x0fff;
510 }
511 info->write_word_data = lm25066_write_word_data;
512
513 coeff = &lm25066_coeff[data->id][0];
514 info->m[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].m;
515 info->b[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].b;
516 info->R[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].R;
517 info->m[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].m;
518 info->b[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].b;
519 info->R[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].R;
520 info->m[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].m;
521 info->b[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].b;
522 info->R[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].R;
523 info->R[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].R;
524 info->R[PSC_POWER] = coeff[PSC_POWER].R;
525 if (config & LM25066_DEV_SETUP_CL) {
526 info->m[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN_L].m;
527 info->b[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN_L].b;
528 info->m[PSC_POWER] = coeff[PSC_POWER_L].m;
529 info->b[PSC_POWER] = coeff[PSC_POWER_L].b;
530 } else {
531 info->m[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].m;
532 info->b[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].b;
533 info->m[PSC_POWER] = coeff[PSC_POWER].m;
534 info->b[PSC_POWER] = coeff[PSC_POWER].b;
535 }
536
537 return pmbus_do_probe(client, info);
538 }
539
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 33970 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [groeck-staging:hwmon-next 33/45] drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *'
2021-10-08 22:00 ` kernel test robot
@ 2021-10-08 23:20 ` Guenter Roeck
-1 siblings, 0 replies; 4+ messages in thread
From: Guenter Roeck @ 2021-10-08 23:20 UTC (permalink / raw)
To: kernel test robot, Zev Weiss; +Cc: llvm, kbuild-all, linux-hwmon
On 10/8/21 3:00 PM, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
> head: 574d7bfb7324c9a11cf6c0e58960022da6eca2f1
> commit: c49bc1bcda2408ec16601b98d981f1d38f947f29 [33/45] hwmon: (pmbus/lm25066) Add OF device ID table
> config: x86_64-randconfig-r001-20211008 (attached as .config)
> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 8ed2e8e04ff42eb4d8009999ae1fd341a30bf6c0)
> 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://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git/commit/?id=c49bc1bcda2408ec16601b98d981f1d38f947f29
> git remote add groeck-staging https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git
> git fetch --no-tags groeck-staging hwmon-next
> git checkout c49bc1bcda2408ec16601b98d981f1d38f947f29
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
>
> All warnings (new ones prefixed by >>):
>
>>> drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *' [-Wvoid-pointer-to-enum-cast]
> if (of_id && (enum chips)of_id->data != i2c_id->driver_data)
> ^~~~~~~~~~~~~~~~~~~~~~~
> 1 warning generated.
>
>
> vim +483 drivers/hwmon/pmbus/lm25066.c
>
> 457
> 458 static int lm25066_probe(struct i2c_client *client)
> 459 {
> 460 int config;
> 461 struct lm25066_data *data;
> 462 struct pmbus_driver_info *info;
> 463 const struct __coeff *coeff;
> 464 const struct of_device_id *of_id;
> 465 const struct i2c_device_id *i2c_id;
> 466
> 467 if (!i2c_check_functionality(client->adapter,
> 468 I2C_FUNC_SMBUS_READ_BYTE_DATA))
> 469 return -ENODEV;
> 470
> 471 data = devm_kzalloc(&client->dev, sizeof(struct lm25066_data),
> 472 GFP_KERNEL);
> 473 if (!data)
> 474 return -ENOMEM;
> 475
> 476 config = i2c_smbus_read_byte_data(client, LM25066_DEVICE_SETUP);
> 477 if (config < 0)
> 478 return config;
> 479
> 480 i2c_id = i2c_match_id(lm25066_id, client);
> 481
> 482 of_id = of_match_device(lm25066_of_match, &client->dev);
> > 483 if (of_id && (enum chips)of_id->data != i2c_id->driver_data)
Fixed up by replacing typecast with unsigned long.
Guenter
> 484 dev_notice(&client->dev, "Device mismatch: %s in device tree, %s detected\n",
> 485 of_id->name, i2c_id->name);
> 486
> 487 data->id = i2c_id->driver_data;
> 488 info = &data->info;
> 489
> 490 info->pages = 1;
> 491 info->format[PSC_VOLTAGE_IN] = direct;
> 492 info->format[PSC_VOLTAGE_OUT] = direct;
> 493 info->format[PSC_CURRENT_IN] = direct;
> 494 info->format[PSC_TEMPERATURE] = direct;
> 495 info->format[PSC_POWER] = direct;
> 496
> 497 info->func[0] = PMBUS_HAVE_VIN | PMBUS_HAVE_VMON
> 498 | PMBUS_HAVE_PIN | PMBUS_HAVE_IIN | PMBUS_HAVE_STATUS_INPUT
> 499 | PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP | PMBUS_HAVE_SAMPLES;
> 500
> 501 if (data->id == lm25056) {
> 502 info->func[0] |= PMBUS_HAVE_STATUS_VMON;
> 503 info->read_word_data = lm25056_read_word_data;
> 504 info->read_byte_data = lm25056_read_byte_data;
> 505 data->rlimit = 0x0fff;
> 506 } else {
> 507 info->func[0] |= PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
> 508 info->read_word_data = lm25066_read_word_data;
> 509 data->rlimit = 0x0fff;
> 510 }
> 511 info->write_word_data = lm25066_write_word_data;
> 512
> 513 coeff = &lm25066_coeff[data->id][0];
> 514 info->m[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].m;
> 515 info->b[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].b;
> 516 info->R[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].R;
> 517 info->m[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].m;
> 518 info->b[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].b;
> 519 info->R[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].R;
> 520 info->m[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].m;
> 521 info->b[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].b;
> 522 info->R[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].R;
> 523 info->R[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].R;
> 524 info->R[PSC_POWER] = coeff[PSC_POWER].R;
> 525 if (config & LM25066_DEV_SETUP_CL) {
> 526 info->m[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN_L].m;
> 527 info->b[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN_L].b;
> 528 info->m[PSC_POWER] = coeff[PSC_POWER_L].m;
> 529 info->b[PSC_POWER] = coeff[PSC_POWER_L].b;
> 530 } else {
> 531 info->m[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].m;
> 532 info->b[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].b;
> 533 info->m[PSC_POWER] = coeff[PSC_POWER].m;
> 534 info->b[PSC_POWER] = coeff[PSC_POWER].b;
> 535 }
> 536
> 537 return pmbus_do_probe(client, info);
> 538 }
> 539
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [groeck-staging:hwmon-next 33/45] drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *'
@ 2021-10-08 23:20 ` Guenter Roeck
0 siblings, 0 replies; 4+ messages in thread
From: Guenter Roeck @ 2021-10-08 23:20 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 5601 bytes --]
On 10/8/21 3:00 PM, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git hwmon-next
> head: 574d7bfb7324c9a11cf6c0e58960022da6eca2f1
> commit: c49bc1bcda2408ec16601b98d981f1d38f947f29 [33/45] hwmon: (pmbus/lm25066) Add OF device ID table
> config: x86_64-randconfig-r001-20211008 (attached as .config)
> compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 8ed2e8e04ff42eb4d8009999ae1fd341a30bf6c0)
> 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://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git/commit/?id=c49bc1bcda2408ec16601b98d981f1d38f947f29
> git remote add groeck-staging https://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git
> git fetch --no-tags groeck-staging hwmon-next
> git checkout c49bc1bcda2408ec16601b98d981f1d38f947f29
> # save the attached .config to linux build tree
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@intel.com>
>
> All warnings (new ones prefixed by >>):
>
>>> drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *' [-Wvoid-pointer-to-enum-cast]
> if (of_id && (enum chips)of_id->data != i2c_id->driver_data)
> ^~~~~~~~~~~~~~~~~~~~~~~
> 1 warning generated.
>
>
> vim +483 drivers/hwmon/pmbus/lm25066.c
>
> 457
> 458 static int lm25066_probe(struct i2c_client *client)
> 459 {
> 460 int config;
> 461 struct lm25066_data *data;
> 462 struct pmbus_driver_info *info;
> 463 const struct __coeff *coeff;
> 464 const struct of_device_id *of_id;
> 465 const struct i2c_device_id *i2c_id;
> 466
> 467 if (!i2c_check_functionality(client->adapter,
> 468 I2C_FUNC_SMBUS_READ_BYTE_DATA))
> 469 return -ENODEV;
> 470
> 471 data = devm_kzalloc(&client->dev, sizeof(struct lm25066_data),
> 472 GFP_KERNEL);
> 473 if (!data)
> 474 return -ENOMEM;
> 475
> 476 config = i2c_smbus_read_byte_data(client, LM25066_DEVICE_SETUP);
> 477 if (config < 0)
> 478 return config;
> 479
> 480 i2c_id = i2c_match_id(lm25066_id, client);
> 481
> 482 of_id = of_match_device(lm25066_of_match, &client->dev);
> > 483 if (of_id && (enum chips)of_id->data != i2c_id->driver_data)
Fixed up by replacing typecast with unsigned long.
Guenter
> 484 dev_notice(&client->dev, "Device mismatch: %s in device tree, %s detected\n",
> 485 of_id->name, i2c_id->name);
> 486
> 487 data->id = i2c_id->driver_data;
> 488 info = &data->info;
> 489
> 490 info->pages = 1;
> 491 info->format[PSC_VOLTAGE_IN] = direct;
> 492 info->format[PSC_VOLTAGE_OUT] = direct;
> 493 info->format[PSC_CURRENT_IN] = direct;
> 494 info->format[PSC_TEMPERATURE] = direct;
> 495 info->format[PSC_POWER] = direct;
> 496
> 497 info->func[0] = PMBUS_HAVE_VIN | PMBUS_HAVE_VMON
> 498 | PMBUS_HAVE_PIN | PMBUS_HAVE_IIN | PMBUS_HAVE_STATUS_INPUT
> 499 | PMBUS_HAVE_TEMP | PMBUS_HAVE_STATUS_TEMP | PMBUS_HAVE_SAMPLES;
> 500
> 501 if (data->id == lm25056) {
> 502 info->func[0] |= PMBUS_HAVE_STATUS_VMON;
> 503 info->read_word_data = lm25056_read_word_data;
> 504 info->read_byte_data = lm25056_read_byte_data;
> 505 data->rlimit = 0x0fff;
> 506 } else {
> 507 info->func[0] |= PMBUS_HAVE_VOUT | PMBUS_HAVE_STATUS_VOUT;
> 508 info->read_word_data = lm25066_read_word_data;
> 509 data->rlimit = 0x0fff;
> 510 }
> 511 info->write_word_data = lm25066_write_word_data;
> 512
> 513 coeff = &lm25066_coeff[data->id][0];
> 514 info->m[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].m;
> 515 info->b[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].b;
> 516 info->R[PSC_TEMPERATURE] = coeff[PSC_TEMPERATURE].R;
> 517 info->m[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].m;
> 518 info->b[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].b;
> 519 info->R[PSC_VOLTAGE_IN] = coeff[PSC_VOLTAGE_IN].R;
> 520 info->m[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].m;
> 521 info->b[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].b;
> 522 info->R[PSC_VOLTAGE_OUT] = coeff[PSC_VOLTAGE_OUT].R;
> 523 info->R[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].R;
> 524 info->R[PSC_POWER] = coeff[PSC_POWER].R;
> 525 if (config & LM25066_DEV_SETUP_CL) {
> 526 info->m[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN_L].m;
> 527 info->b[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN_L].b;
> 528 info->m[PSC_POWER] = coeff[PSC_POWER_L].m;
> 529 info->b[PSC_POWER] = coeff[PSC_POWER_L].b;
> 530 } else {
> 531 info->m[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].m;
> 532 info->b[PSC_CURRENT_IN] = coeff[PSC_CURRENT_IN].b;
> 533 info->m[PSC_POWER] = coeff[PSC_POWER].m;
> 534 info->b[PSC_POWER] = coeff[PSC_POWER].b;
> 535 }
> 536
> 537 return pmbus_do_probe(client, info);
> 538 }
> 539
>
> ---
> 0-DAY CI Kernel Test Service, Intel Corporation
> https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-10-08 23:20 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-08 22:00 [groeck-staging:hwmon-next 33/45] drivers/hwmon/pmbus/lm25066.c:483:15: warning: cast to smaller integer type 'enum chips' from 'const void *' kernel test robot
2021-10-08 22:00 ` kernel test robot
2021-10-08 23:20 ` Guenter Roeck
2021-10-08 23:20 ` Guenter Roeck
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.