On Sun, Jun 06, 2021 at 12:37:43PM +0800, kernel test robot wrote: > Hi Jeff, > > FYI, the error/warning still remains. I have no idea how it happens... > > 1645 static int iqs626_probe(struct i2c_client *client) > 1646 { > 1647 struct iqs626_ver_info ver_info; This is 4 bytes. > 1648 struct iqs626_private *iqs626; This is 4 or 8. > 1649 int error; And another 4. And that is it. The bloat must be coming from elsewhere. > 1650 > 1651 iqs626 = devm_kzalloc(&client->dev, sizeof(*iqs626), GFP_KERNEL); > 1652 if (!iqs626) > 1653 return -ENOMEM; > 1654 > 1655 i2c_set_clientdata(client, iqs626); > 1656 iqs626->client = client; > 1657 > 1658 iqs626->regmap = devm_regmap_init_i2c(client, &iqs626_regmap_config); > 1659 if (IS_ERR(iqs626->regmap)) { > 1660 error = PTR_ERR(iqs626->regmap); > 1661 dev_err(&client->dev, "Failed to initialize register map: %d\n", > 1662 error); > 1663 return error; > 1664 } > 1665 > 1666 init_completion(&iqs626->ati_done); > 1667 > 1668 error = regmap_raw_read(iqs626->regmap, IQS626_VER_INFO, &ver_info, > 1669 sizeof(ver_info)); > 1670 if (error) > 1671 return error; > 1672 > 1673 if (ver_info.prod_num != IQS626_VER_INFO_PROD_NUM) { > 1674 dev_err(&client->dev, "Unrecognized product number: 0x%02X\n", > 1675 ver_info.prod_num); > 1676 return -EINVAL; > 1677 } > 1678 > 1679 error = iqs626_parse_prop(iqs626); > 1680 if (error) > 1681 return error; > 1682 > 1683 error = iqs626_input_init(iqs626); > 1684 if (error) > 1685 return error; > 1686 > 1687 error = devm_request_threaded_irq(&client->dev, client->irq, > 1688 NULL, iqs626_irq, IRQF_ONESHOT, > 1689 client->name, iqs626); > 1690 if (error) { > 1691 dev_err(&client->dev, "Failed to request IRQ: %d\n", error); > 1692 return error; > 1693 } > 1694 > 1695 if (!wait_for_completion_timeout(&iqs626->ati_done, > 1696 msecs_to_jiffies(2000))) { > 1697 dev_err(&client->dev, "Failed to complete ATI\n"); > 1698 return -ETIMEDOUT; > 1699 } > 1700 > 1701 /* > 1702 * The keypad may include one or more switches and is not registered > 1703 * until ATI is complete and the initial switch states are read. > 1704 */ > 1705 error = input_register_device(iqs626->keypad); > 1706 if (error) > 1707 dev_err(&client->dev, "Failed to register keypad: %d\n", error); > 1708 > 1709 return error; > 1710 } > 1711 Thanks. -- Dmitry