linux-next: build failure after merge of the hwmon-staging tree

From: Stephen Rothwell
Date: Tue Aug 30 2022 - 19:30:20 EST


Hi all,

After merging the hwmon-staging tree, today's linux-next build (x86_64
allmodconfig) failed like this:

drivers/hwmon/emc2305.c:615:21: error: initialization of 'void (*)(struct i2c_client *)' from incompatible pointer type 'int (*)(struct i2c_client *)' [-Werror=incompatible-pointer-types]
615 | .remove = emc2305_remove,
| ^~~~~~~~~~~~~~
drivers/hwmon/emc2305.c:615:21: note: (near initialization for 'emc2305_driver.remove')

Caused by commit

324745b64626 ("hwmon: (emc2305) add support for EMC2301/2/3/5 RPM-based PWM Fan Speed Controller.")

interacting with commit

ed5c2f5fd10d ("i2c: Make remove callback return void")

from the i2c tree.

From Uwe:

> There is an immutable tag that can be merged into your tree to
> resolve the conflict before you send your changes to Linux at
>
> https://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux.git i2c/make_remove_callback_void-immutable

I have applied the following merge fix patch for today.

From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Date: Wed, 31 Aug 2022 09:22:50 +1000
Subject: [PATCH] hwmon: (emc2305) fix up for "i2c: Make remove callback return void"

Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
---
drivers/hwmon/emc2305.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/hwmon/emc2305.c b/drivers/hwmon/emc2305.c
index 9f6546ea3d69..df4c5816f661 100644
--- a/drivers/hwmon/emc2305.c
+++ b/drivers/hwmon/emc2305.c
@@ -597,13 +597,12 @@ static int emc2305_probe(struct i2c_client *client, const struct i2c_device_id *
return 0;
}

-static int emc2305_remove(struct i2c_client *client)
+static void emc2305_remove(struct i2c_client *client)
{
struct device *dev = &client->dev;

if (IS_REACHABLE(CONFIG_THERMAL))
emc2305_unset_tz(dev);
- return 0;
}

static struct i2c_driver emc2305_driver = {
--
2.35.1

--
Cheers,
Stephen Rothwell

Attachment: pgpS6RkMM6CTw.pgp
Description: OpenPGP digital signature