HID: mcp-2221: cancel delayed_work only when CONFIG_IIO is enabled

If the device is unplugged and CONFIG_IIO is not supported, this will
result in a warning message at kernel/workqueue.

Only cancel delayed work in mcp2221_remove(), when CONFIG_IIO is enabled.

Signed-off-by: Abdelrahman Morsy <abdelrahmanhesham94@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.com>
This commit is contained in:
Abdelrahman Morsy 2024-04-02 14:14:06 +02:00 committed by Jiri Kosina
parent 21f28a7eb7
commit 3cba9cfcc1
1 changed files with 2 additions and 0 deletions

View File

@ -944,9 +944,11 @@ static void mcp2221_hid_unregister(void *ptr)
/* This is needed to be sure hid_hw_stop() isn't called twice by the subsystem */ /* This is needed to be sure hid_hw_stop() isn't called twice by the subsystem */
static void mcp2221_remove(struct hid_device *hdev) static void mcp2221_remove(struct hid_device *hdev)
{ {
#if IS_REACHABLE(CONFIG_IIO)
struct mcp2221 *mcp = hid_get_drvdata(hdev); struct mcp2221 *mcp = hid_get_drvdata(hdev);
cancel_delayed_work_sync(&mcp->init_work); cancel_delayed_work_sync(&mcp->init_work);
#endif
} }
#if IS_REACHABLE(CONFIG_IIO) #if IS_REACHABLE(CONFIG_IIO)