Hi Pengyu,

kernel test robot noticed the following build errors:

[auto build test ERROR on lee-backlight/for-backlight-next]
[also build test ERROR on lee-leds/for-leds-next 
lee-backlight/for-backlight-fixes linus/master v6.15-rc1 next-20250407]
[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/Pengyu-Luo/dt-bindings-backlight-kinetic-ktz8866-add-ktz8866-slave-compatible/20250407-175635
base:   https://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight.git 
for-backlight-next
patch link:    
https://lore.kernel.org/r/20250407095119.588920-4-mitltlatltl%40gmail.com
patch subject: [PATCH 3/4] backlight: ktz8866: improve current sinks setting
config: riscv-randconfig-002-20250408 
(https://download.01.org/0day-ci/archive/20250408/[email protected]/config)
compiler: clang version 21.0.0git (https://github.com/llvm/llvm-project 
92c93f5286b9ff33f27ff694d2dc33da1c07afdd)
reproduce (this is a W=1 build): 
(https://download.01.org/0day-ci/archive/20250408/[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 error/warnings (new ones prefixed by >>):

>> drivers/video/backlight/ktz8866.c:73:32: error: incompatible pointer types 
>> passing 'unsigned int **' to parameter of type 'unsigned int *'; remove & 
>> [-Werror,-Wincompatible-pointer-types]
      73 |         regmap_read(ktz->regmap, reg, &val);
         |                                       ^~~~
   include/linux/regmap.h:1297:69: note: passing argument to parameter 'val' 
here
    1297 | int regmap_read(struct regmap *map, unsigned int reg, unsigned int 
*val);
         |                                                                     ^
>> drivers/video/backlight/ktz8866.c:132:13: warning: use of logical '&&' with 
>> constant operand [-Wconstant-logical-operand]
     132 |                 if (!(val && CURRENT_SINKS_MASK))
         |                           ^  ~~~~~~~~~~~~~~~~~~
   drivers/video/backlight/ktz8866.c:132:13: note: use '&' for a bitwise 
operation
     132 |                 if (!(val && CURRENT_SINKS_MASK))
         |                           ^~
         |                           &
   drivers/video/backlight/ktz8866.c:132:13: note: remove constant to silence 
this warning
     132 |                 if (!(val && CURRENT_SINKS_MASK))
         |                           ^~~~~~~~~~~~~~~~~~~~~
   1 warning and 1 error generated.


vim +73 drivers/video/backlight/ktz8866.c

    69  
    70  static inline void ktz8866_read(struct ktz8866 *ktz, unsigned int reg,
    71                                  unsigned int *val)
    72  {
  > 73          regmap_read(ktz->regmap, reg, &val);
    74  }
    75  
    76  static void ktz8866_write(struct ktz8866 *ktz, unsigned int reg,
    77                            unsigned int val)
    78  {
    79          regmap_write(ktz->regmap, reg, val);
    80  
    81          if (ktz->slave)
    82                  regmap_write(ktz->slave->regmap, reg, val);
    83  }
    84  
    85  static void ktz8866_update_bits(struct ktz8866 *ktz, unsigned int reg,
    86                                  unsigned int mask, unsigned int val)
    87  {
    88          regmap_update_bits(ktz->regmap, reg, mask, val);
    89  
    90          if (ktz->slave)
    91                  regmap_update_bits(ktz->slave->regmap, reg, mask, val);
    92  }
    93  
    94  static int ktz8866_backlight_update_status(struct backlight_device 
*backlight_dev)
    95  {
    96          struct ktz8866 *ktz = bl_get_data(backlight_dev);
    97          unsigned int brightness = 
backlight_get_brightness(backlight_dev);
    98  
    99          if (!ktz->led_on && brightness > 0) {
   100                  ktz8866_update_bits(ktz, BL_EN, BL_EN_BIT, BL_EN_BIT);
   101                  ktz->led_on = true;
   102          } else if (brightness == 0) {
   103                  ktz8866_update_bits(ktz, BL_EN, BL_EN_BIT, 0);
   104                  ktz->led_on = false;
   105          }
   106  
   107          /* Set brightness */
   108          ktz8866_write(ktz, BL_BRT_LSB, brightness & 0x7);
   109          ktz8866_write(ktz, BL_BRT_MSB, (brightness >> 3) & 0xFF);
   110  
   111          return 0;
   112  }
   113  
   114  static const struct backlight_ops ktz8866_backlight_ops = {
   115          .options = BL_CORE_SUSPENDRESUME,
   116          .update_status = ktz8866_backlight_update_status,
   117  };
   118  
   119  static void ktz8866_init(struct ktz8866 *ktz)
   120  {
   121          unsigned int val = 0;
   122  
   123          if (!of_property_read_u32(ktz->client->dev.of_node, 
"current-num-sinks", &val)) {
   124                  ktz8866_write(ktz, BL_EN, BIT(val) - 1);
   125          } else {
   126                  /*
   127                   * Enable all 6 current sinks if the number of current
   128                   * sinks isn't specified and the bootloader didn't set
   129                   * the value.
   130                   */
   131                  ktz8866_read(ktz, BL_EN, &val);
 > 132                  if (!(val && CURRENT_SINKS_MASK))
   133                          ktz8866_write(ktz, BL_EN, CURRENT_SINKS_MASK);
   134          }
   135  
   136          if (!of_property_read_u32(ktz->client->dev.of_node, 
"kinetic,current-ramp-delay-ms", &val)) {
   137                  if (val <= 128)
   138                          ktz8866_write(ktz, BL_CFG2, BIT(7) | 
(ilog2(val) << 3) | PWM_HYST);
   139                  else
   140                          ktz8866_write(ktz, BL_CFG2, BIT(7) | ((5 + val 
/ 64) << 3) | PWM_HYST);
   141          }
   142  
   143          if (!of_property_read_u32(ktz->client->dev.of_node, 
"kinetic,led-enable-ramp-delay-ms", &val)) {
   144                  if (val == 0)
   145                          ktz8866_write(ktz, BL_DIMMING, 0);
   146                  else {
   147                          unsigned int ramp_off_time = ilog2(val) + 1;
   148                          unsigned int ramp_on_time = ramp_off_time << 4;
   149                          ktz8866_write(ktz, BL_DIMMING, ramp_on_time | 
ramp_off_time);
   150                  }
   151          }
   152  
   153          if (of_property_read_bool(ktz->client->dev.of_node, 
"kinetic,enable-lcd-bias"))
   154                  ktz8866_write(ktz, LCD_BIAS_CFG1, LCD_BIAS_EN);
   155  }
   156  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Reply via email to