Re: [PATCH] rtc: rv3028: configure backup switch mode from device tree
kernel test robot <[email protected]>
| Newsgroups | dev.linux.lists.oe-kbuild-all,dev.linux.lists.llvm,org.kernel.vger.linux-kernel,org.kernel.vger.linux-rtc |
|---|---|
| Message-ID | <[email protected]> |
Hi Dhaval, kernel test robot noticed the following build warnings: [auto build test WARNING on abelloni/rtc-next] [also build test WARNING on linus/master v7.2 next-20260821] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Dhaval-Shiroya/rtc-rv3028-configure-backup-switch-mode-from-device-tree/20260822-145911 base: https://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux.git rtc-next patch link: https://lore.kernel.org/r/20260822092911.318342-1-dhaval.shiroya%40siliconsignals.io patch subject: [PATCH] rtc: rv3028: configure backup switch mode from device tree config: arm64-randconfig-002-20260825 (https://download.01.org/0day-ci/archive/20260825/[email protected]/config) compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 935bfc708590c60147a79c7df145bb6e68b1d388) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260825/[email protected]/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 <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ All warnings (new ones prefixed by >>): >> drivers/rtc/rtc-rv3028.c:908:4: warning: format specifies type 'unsigned int' but the argument has type 'unsigned long' [-Wformat] 906 | "setting backup switch mode to %u (reg 0x37: 0x%02x -> 0x%02x)\n", | ~~~~ | %02lx 907 | bsm_dt, val_old, 908 | (val_old & ~(RV3028_BACKUP_BSM | RV3028_BACKUP_FEDE)) | | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 909 | bsm_bits | RV3028_BACKUP_FEDE); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/dev_printk.h:160:67: note: expanded from macro 'dev_info' 160 | dev_printk_index_wrap(_dev_info, KERN_INFO, dev, dev_fmt(fmt), ##__VA_ARGS__) | ~~~ ^~~~~~~~~~~ include/linux/dev_printk.h:110:23: note: expanded from macro 'dev_printk_index_wrap' 110 | _p_func(dev, fmt, ##__VA_ARGS__); \ | ~~~ ^~~~~~~~~~~ 1 warning generated. vim +908 drivers/rtc/rtc-rv3028.c 857 858 /* 859 * Configure backup switchover mode from device tree. 860 * 0 = disabled 861 * 1 = DSM (Direct Switching Mode) - switch when VDD < VBACKUP 862 * 3 = LSM (Level Switching Mode) - switch when VDD < 2.0V 863 */ 864 static int rv3028_set_bsm_from_dt(struct rv3028_data *rv3028, 865 struct i2c_client *client) 866 { 867 u32 val_old, bsm_dt, bsm_bits; 868 int ret; 869 870 if (device_property_read_u32(&client->dev, "backup-switch-mode", 871 &bsm_dt)) 872 return 0; 873 874 /* Validate and convert DT value to register bits */ 875 switch (bsm_dt) { 876 case 0: 877 bsm_bits = 0; 878 break; 879 case 1: 880 bsm_bits = FIELD_PREP(RV3028_BACKUP_BSM, RV3028_BACKUP_BSM_DSM); 881 break; 882 case 3: 883 bsm_bits = FIELD_PREP(RV3028_BACKUP_BSM, RV3028_BACKUP_BSM_LSM); 884 break; 885 default: 886 dev_warn(&client->dev, 887 "invalid backup-switch-mode %u (use 0, 1, or 3)\n", 888 bsm_dt); 889 return 0; 890 } 891 892 /* Read current BACKUP register */ 893 ret = regmap_read(rv3028->regmap, RV3028_BACKUP, &val_old); 894 if (ret < 0) 895 return ret; 896 897 /* Check if BSM and FEDE already match desired values */ 898 if ((val_old & (RV3028_BACKUP_BSM | RV3028_BACKUP_FEDE)) == 899 (bsm_bits | RV3028_BACKUP_FEDE)) { 900 dev_dbg(&client->dev, 901 "backup switch mode already set to %u\n", bsm_dt); 902 return 0; 903 } 904 905 dev_info(&client->dev, 906 "setting backup switch mode to %u (reg 0x37: 0x%02x -> 0x%02x)\n", 907 bsm_dt, val_old, > 908 (val_old & ~(RV3028_BACKUP_BSM | RV3028_BACKUP_FEDE)) | 909 bsm_bits | RV3028_BACKUP_FEDE); 910 911 /* Set BSM and always enable FEDE as recommended by datasheet */ 912 return rv3028_update_cfg(rv3028, RV3028_BACKUP, 913 RV3028_BACKUP_BSM | RV3028_BACKUP_FEDE, 914 bsm_bits | RV3028_BACKUP_FEDE); 915 } 916 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki