[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <eef98df0-5beb-40c1-a4e6-722012635812@suswa.mountain>
Date: Wed, 18 Jun 2025 20:40:28 +0300
From: Dan Carpenter <dan.carpenter@...aro.org>
To: oe-kbuild@...ts.linux.dev,
Tomáš Juřena <jurenatomas@...il.com>,
dmitry.torokhov@...il.com
Cc: lkp@...el.com, oe-kbuild-all@...ts.linux.dev, robh@...nel.org,
krzk+dt@...nel.org, conor+dt@...nel.org,
linux-input@...r.kernel.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, Tomas Jurena <jurenatomas@...il.com>
Subject: Re: [PATCH] Input: tca6416-keypad - Add OF support for driver
instantiation
Hi Tomáš,
kernel test robot noticed the following build warnings:
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Tom-Ju-ena/Input-tca6416-keypad-Add-OF-support-for-driver-instantiation/20250611-094643
base: https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
patch link: https://lore.kernel.org/r/20250610154609.1382818-1-jurenatomas%40gmail.com
patch subject: [PATCH] Input: tca6416-keypad - Add OF support for driver instantiation
config: csky-randconfig-r073-20250612 (https://download.01.org/0day-ci/archive/20250614/202506140034.iXbhyNCx-lkp@intel.com/config)
compiler: csky-linux-gcc (GCC) 14.3.0
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@...el.com>
| Reported-by: Dan Carpenter <dan.carpenter@...aro.org>
| Closes: https://lore.kernel.org/r/202506140034.iXbhyNCx-lkp@intel.com/
smatch warnings:
drivers/input/keyboard/tca6416-keypad.c:263 tca6416_keypad_probe() error: we previously assumed 'pdata' could be null (see line 253)
vim +/pdata +263 drivers/input/keyboard/tca6416-keypad.c
3da11976b80c663 Uwe Kleine-König 2022-11-18 236 static int tca6416_keypad_probe(struct i2c_client *client)
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 237 {
c4c4a926acb6b1c Tomas Jurena 2025-06-10 238 uint8_t io_size = (uintptr_t)i2c_get_match_data(client);
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 239 struct tca6416_keys_platform_data *pdata;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 240 struct tca6416_keypad_chip *chip;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 241 struct input_dev *input;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 242 int error;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 243 int i;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 244
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 245 /* Check functionality */
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 246 if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_BYTE)) {
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 247 dev_err(&client->dev, "%s adapter not supported\n",
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 248 dev_driver_string(&client->adapter->dev));
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 249 return -ENODEV;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 250 }
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 251
c838cb3d477f797 Jingoo Han 2013-12-05 252 pdata = dev_get_platdata(&client->dev);
c4c4a926acb6b1c Tomas Jurena 2025-06-10 @253 if (!pdata && dev_fwnode(&client->dev)) {
Imagine pdata is NULL and so is dev_fwnode()
c4c4a926acb6b1c Tomas Jurena 2025-06-10 254 pdata = tca6416_parse_properties(&client->dev, io_size);
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 255 if (!pdata) {
c4c4a926acb6b1c Tomas Jurena 2025-06-10 256 dev_err(&client->dev,
c4c4a926acb6b1c Tomas Jurena 2025-06-10 257 "Failed to parse device configuration from properties\n");
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 258 return -EINVAL;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 259 }
c4c4a926acb6b1c Tomas Jurena 2025-06-10 260 }
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 261
91a4c69052bb660 Yangtao Li 2023-07-23 262 chip = devm_kzalloc(&client->dev,
91a4c69052bb660 Yangtao Li 2023-07-23 @263 struct_size(chip, buttons, pdata->nbuttons),
^^^^^^^^^^^^^^^
Then it will crash
91a4c69052bb660 Yangtao Li 2023-07-23 264 GFP_KERNEL);
91a4c69052bb660 Yangtao Li 2023-07-23 265 if (!chip)
91a4c69052bb660 Yangtao Li 2023-07-23 266 return -ENOMEM;
91a4c69052bb660 Yangtao Li 2023-07-23 267
91a4c69052bb660 Yangtao Li 2023-07-23 268 input = devm_input_allocate_device(&client->dev);
91a4c69052bb660 Yangtao Li 2023-07-23 269 if (!input)
91a4c69052bb660 Yangtao Li 2023-07-23 270 return -ENOMEM;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 271
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 272 chip->client = client;
30ba3ead05763b1 Sriramakrishnan Govindarajan 2010-05-03 273 chip->input = input;
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists