Re: [PATCH][RESEND] input: adp5589: Make keypad support optional

From: kbuild test robot
Date: Thu Oct 24 2019 - 16:31:11 EST


Hi Alexandru,

I love your patch! Perhaps something to improve:

[auto build test WARNING on input/next]
[cannot apply to v5.4-rc4 next-20191024]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url: https://github.com/0day-ci/linux/commits/Alexandru-Ardelean/input-adp5589-Make-keypad-support-optional/20191025-034654
base: https://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git next
config: mips-allmodconfig (attached as .config)
compiler: mips-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=mips

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All warnings (new ones prefixed by >>):

drivers/input/keyboard/adp5589-keys.c: In function 'adp5589_probe':
>> drivers/input/keyboard/adp5589-keys.c:1019:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
kpad->support_row5 = true;
~~~~~~~~~~~~~~~~~~~^~~~~~
drivers/input/keyboard/adp5589-keys.c:1020:2: note: here
case ADP5585_01:
^~~~

vim +1019 drivers/input/keyboard/adp5589-keys.c

994
995 static int adp5589_probe(struct i2c_client *client,
996 const struct i2c_device_id *id)
997 {
998 struct adp5589_kpad *kpad;
999 const struct adp5589_kpad_platform_data *pdata =
1000 dev_get_platdata(&client->dev);
1001 unsigned int revid;
1002 int error, ret;
1003
1004 if (!i2c_check_functionality(client->adapter,
1005 I2C_FUNC_SMBUS_BYTE_DATA)) {
1006 dev_err(&client->dev, "SMBUS Byte Data not Supported\n");
1007 return -EIO;
1008 }
1009
1010
1011 kpad = kzalloc(sizeof(*kpad), GFP_KERNEL);
1012 if (!kpad)
1013 return -ENOMEM;
1014
1015 kpad->client = client;
1016
1017 switch (id->driver_data) {
1018 case ADP5585_02:
> 1019 kpad->support_row5 = true;
1020 case ADP5585_01:
1021 kpad->is_adp5585 = true;
1022 kpad->var = &const_adp5585;
1023 break;
1024 case ADP5589:
1025 kpad->support_row5 = true;
1026 kpad->var = &const_adp5589;
1027 break;
1028 }
1029
1030 ret = adp5589_read(client, ADP5589_5_ID);
1031 if (ret < 0) {
1032 error = ret;
1033 goto err_free_mem;
1034 }
1035
1036 revid = (u8) ret & ADP5589_5_DEVICE_ID_MASK;
1037
1038 error = adp5589_keypad_add(kpad, revid, pdata);
1039 if (error)
1040 goto err_free_mem;
1041
1042 error = adp5589_setup(kpad, pdata);
1043 if (error)
1044 goto err_keypad_remove;
1045
1046 if (kpad->gpimapsize)
1047 adp5589_report_switch_state(kpad);
1048
1049 error = adp5589_gpio_add(kpad, pdata);
1050 if (error)
1051 goto err_keypad_remove;
1052
1053 i2c_set_clientdata(client, kpad);
1054
1055 dev_info(&client->dev, "Rev.%d keypad, irq %d\n", revid, client->irq);
1056 return 0;
1057
1058 err_keypad_remove:
1059 adp5589_keypad_remove(kpad, pdata);
1060 err_free_mem:
1061 kfree(kpad);
1062
1063 return error;
1064 }
1065

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip