Hi Marijn,

kernel test robot noticed the following build warnings:

[auto build test WARNING on cc3aa43b44bdb43dfbac0fcb51c56594a11338a8]

url:    
https://github.com/intel-lab-lkp/linux/commits/Marijn-Suijten/drm-panel-Clean-up-SOFEF00-config-dependencies/20251222-073548
base:   cc3aa43b44bdb43dfbac0fcb51c56594a11338a8
patch link:    
https://lore.kernel.org/r/20251222-drm-panels-sony-v2-9-82a87465d163%40somainline.org
patch subject: [PATCH v2 09/11] drm/panel: Add panel driver for Samsung 
SOUXP00-A DDIC
config: loongarch-allmodconfig 
(https://download.01.org/0day-ci/archive/20251225/[email protected]/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project 
cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): 
(https://download.01.org/0day-ci/archive/20251225/[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/gpu/drm/panel/panel-samsung-souxp00.c:304:20: warning: cast to 
>> smaller integer type 'enum panel_type' from 'const void *' 
>> [-Wvoid-pointer-to-enum-cast]
     304 |         ctx->panel_type = (enum 
panel_type)of_device_get_match_data(dev);
         |                           
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   1 warning generated.


vim +304 drivers/gpu/drm/panel/panel-samsung-souxp00.c

   285  
   286  static int samsung_souxp00_a_probe(struct mipi_dsi_device *dsi)
   287  {
   288          const struct backlight_properties props = {
   289                  .type = BACKLIGHT_RAW,
   290                  .brightness = 400,
   291                  .max_brightness = 4095,
   292          };
   293          const u16 hdisplay = enable_4k ? 1644 : 1096;
   294          struct device *dev = &dsi->dev;
   295          struct samsung_souxp00_a *ctx;
   296          int ret;
   297  
   298          ctx = devm_drm_panel_alloc(dev, struct samsung_souxp00_a, panel,
   299                                     &samsung_souxp00_a_panel_funcs,
   300                                     DRM_MODE_CONNECTOR_DSI);
   301          if (IS_ERR(ctx))
   302                  return PTR_ERR(ctx);
   303  
 > 304          ctx->panel_type = (enum 
 > panel_type)of_device_get_match_data(dev);
   305  
   306          ret = devm_regulator_bulk_get_const(
   307                  dev,
   308                  ARRAY_SIZE(samsung_souxp00_a_supplies),
   309                  samsung_souxp00_a_supplies,
   310                  &ctx->supplies);
   311          if (ret < 0)
   312                  return dev_err_probe(dev, ret, "Failed to get 
regulators\n");
   313  
   314          ctx->reset_gpio = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
   315          if (IS_ERR(ctx->reset_gpio))
   316                  return dev_err_probe(dev, PTR_ERR(ctx->reset_gpio),
   317                                       "Failed to get reset-gpios\n");
   318  
   319          ctx->dsi = dsi;
   320          mipi_dsi_set_drvdata(dsi, ctx);
   321  
   322          dsi->lanes = 4;
   323          dsi->format = MIPI_DSI_FMT_RGB888;
   324          dsi->mode_flags = MIPI_DSI_CLOCK_NON_CONTINUOUS;
   325  
   326          ctx->panel.prepare_prev_first = true;
   327  
   328          ctx->panel.backlight = devm_backlight_device_register(
   329                  dev, dev_name(dev), dev, dsi,
   330                  &samsung_souxp00_a_bl_ops,
   331                  &props);
   332          if (IS_ERR(ctx->panel.backlight))
   333                  return dev_err_probe(dev, PTR_ERR(ctx->panel.backlight),
   334                                       "Failed to create backlight\n");
   335  
   336          drm_panel_add(&ctx->panel);
   337  
   338          /* This panel only supports DSC; unconditionally enable it */
   339          dsi->dsc = &ctx->dsc;
   340  
   341          ctx->dsc.dsc_version_major = 1;
   342          ctx->dsc.dsc_version_minor = 1;
   343  
   344          ctx->dsc.slice_height = 32;
   345          ctx->dsc.slice_count = 2;
   346          /*
   347           * hdisplay should be read from the selected mode once
   348           * it is passed back to drm_panel (in prepare?)
   349           */
   350          WARN_ON(hdisplay % ctx->dsc.slice_count);
   351          ctx->dsc.slice_width = hdisplay / ctx->dsc.slice_count;
   352          ctx->dsc.bits_per_component = 8;
   353          ctx->dsc.bits_per_pixel = 8 << 4; /* 4 fractional bits */
   354          ctx->dsc.block_pred_enable = true;
   355  
   356          ret = mipi_dsi_attach(dsi);
   357          if (ret < 0) {
   358                  dev_err(dev, "Failed to attach to DSI host: %d\n", ret);
   359                  drm_panel_remove(&ctx->panel);
   360                  return ret;
   361          }
   362  
   363          return 0;
   364  }
   365  

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

Reply via email to