Re: [PATCH v8 02/22] platform/x86/dell: dell-pc: Create platform device

From: kernel test robot
Date: Sat Nov 30 2024 - 21:56:15 EST


Hi Mario,

kernel test robot noticed the following build warnings:

[auto build test WARNING on 2ba9f676d0a2e408aef14d679984c26373bf37b7]

url: https://github.com/intel-lab-lkp/linux/commits/Mario-Limonciello/ACPI-platform-profile-Add-a-name-member-to-handlers/20241130-221102
base: 2ba9f676d0a2e408aef14d679984c26373bf37b7
patch link: https://lore.kernel.org/r/20241130140454.455-3-mario.limonciello%40amd.com
patch subject: [PATCH v8 02/22] platform/x86/dell: dell-pc: Create platform device
config: x86_64-randconfig-121-20241201 (https://download.01.org/0day-ci/archive/20241201/202412011002.Hb0aRIsM-lkp@xxxxxxxxx/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241201/202412011002.Hb0aRIsM-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202412011002.Hb0aRIsM-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
>> drivers/platform/x86/dell/dell-pc.c:252:32: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected long error @@ got struct platform_device *static [assigned] [toplevel] platform_device @@
drivers/platform/x86/dell/dell-pc.c:252:32: sparse: expected long error
drivers/platform/x86/dell/dell-pc.c:252:32: sparse: got struct platform_device *static [assigned] [toplevel] platform_device
>> drivers/platform/x86/dell/dell-pc.c:252:31: sparse: sparse: incorrect type in return expression (different base types) @@ expected int @@ got void * @@
drivers/platform/x86/dell/dell-pc.c:252:31: sparse: expected int
drivers/platform/x86/dell/dell-pc.c:252:31: sparse: got void *

vim +252 drivers/platform/x86/dell/dell-pc.c

233
234 static int thermal_init(void)
235 {
236 int ret;
237 int supported_modes;
238
239 /* If thermal commands are not supported, exit without error */
240 if (!dell_smbios_class_is_supported(CLASS_INFO))
241 return 0;
242
243 /* If thermal modes are not supported, exit without error */
244 ret = thermal_get_supported_modes(&supported_modes);
245 if (ret < 0)
246 return ret;
247 if (!supported_modes)
248 return 0;
249
250 platform_device = platform_device_register_simple("dell-pc", PLATFORM_DEVID_NONE, NULL, 0);
251 if (IS_ERR(platform_device))
> 252 return ERR_PTR(platform_device);
253
254 thermal_handler = devm_kzalloc(&platform_device->dev, sizeof(*thermal_handler), GFP_KERNEL);
255 if (!thermal_handler) {
256 ret = -ENOMEM;
257 goto cleanup_platform_device;
258 }
259 thermal_handler->name = "dell-pc";
260 thermal_handler->profile_get = thermal_platform_profile_get;
261 thermal_handler->profile_set = thermal_platform_profile_set;
262
263 if (supported_modes & DELL_QUIET)
264 set_bit(PLATFORM_PROFILE_QUIET, thermal_handler->choices);
265 if (supported_modes & DELL_COOL_BOTTOM)
266 set_bit(PLATFORM_PROFILE_COOL, thermal_handler->choices);
267 if (supported_modes & DELL_BALANCED)
268 set_bit(PLATFORM_PROFILE_BALANCED, thermal_handler->choices);
269 if (supported_modes & DELL_PERFORMANCE)
270 set_bit(PLATFORM_PROFILE_PERFORMANCE, thermal_handler->choices);
271
272 /* Clean up if failed */
273 ret = platform_profile_register(thermal_handler);
274 if (ret)
275 goto cleanup_thermal_handler;
276
277 return 0;
278
279 cleanup_thermal_handler:
280 thermal_handler = NULL;
281
282 cleanup_platform_device:
283 platform_device_unregister(platform_device);
284
285 return ret;
286 }
287

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