mei: bus: change remove callback to return void
The driver core ignores the return value of mei_cl_device_remove() so passing an error value doesn't solve any problem. As most mei drivers' remove callbacks return 0 unconditionally and returning a different value doesn't have any effect, change this prototype to return void and return 0 unconditionally in mei_cl_device_remove(). The only driver that could return an error value is modified to emit an explicit warning in the error case. Acked-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org> Link: https://lore.kernel.org/r/20210208073705.428185-3-uwe@kleine-koenig.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
f320ff0387
commit
bf5c9cc8ad
|
@ -881,17 +881,16 @@ static int mei_cl_device_remove(struct device *dev)
|
|||
{
|
||||
struct mei_cl_device *cldev = to_mei_cl_device(dev);
|
||||
struct mei_cl_driver *cldrv = to_mei_cl_driver(dev->driver);
|
||||
int ret = 0;
|
||||
|
||||
if (cldrv->remove)
|
||||
ret = cldrv->remove(cldev);
|
||||
cldrv->remove(cldev);
|
||||
|
||||
mei_cldev_unregister_callbacks(cldev);
|
||||
|
||||
mei_cl_bus_module_put(cldev);
|
||||
module_put(THIS_MODULE);
|
||||
|
||||
return ret;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static ssize_t name_show(struct device *dev, struct device_attribute *a,
|
||||
|
|
|
@ -845,16 +845,19 @@ enable_err_exit:
|
|||
return ret;
|
||||
}
|
||||
|
||||
static int mei_hdcp_remove(struct mei_cl_device *cldev)
|
||||
static void mei_hdcp_remove(struct mei_cl_device *cldev)
|
||||
{
|
||||
struct i915_hdcp_comp_master *comp_master =
|
||||
mei_cldev_get_drvdata(cldev);
|
||||
int ret;
|
||||
|
||||
component_master_del(&cldev->dev, &mei_component_master_ops);
|
||||
kfree(comp_master);
|
||||
mei_cldev_set_drvdata(cldev, NULL);
|
||||
|
||||
return mei_cldev_disable(cldev);
|
||||
ret = mei_cldev_disable(cldev);
|
||||
if (ret)
|
||||
dev_warn(&cldev->dev, "mei_cldev_disable() failed\n");
|
||||
}
|
||||
|
||||
#define MEI_UUID_HDCP GUID_INIT(0xB638AB7E, 0x94E2, 0x4EA2, 0xA5, \
|
||||
|
|
|
@ -44,15 +44,13 @@ static int microread_mei_probe(struct mei_cl_device *cldev,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int microread_mei_remove(struct mei_cl_device *cldev)
|
||||
static void microread_mei_remove(struct mei_cl_device *cldev)
|
||||
{
|
||||
struct nfc_mei_phy *phy = mei_cldev_get_drvdata(cldev);
|
||||
|
||||
microread_remove(phy->hdev);
|
||||
|
||||
nfc_mei_phy_free(phy);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct mei_cl_device_id microread_mei_tbl[] = {
|
||||
|
|
|
@ -42,7 +42,7 @@ static int pn544_mei_probe(struct mei_cl_device *cldev,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static int pn544_mei_remove(struct mei_cl_device *cldev)
|
||||
static void pn544_mei_remove(struct mei_cl_device *cldev)
|
||||
{
|
||||
struct nfc_mei_phy *phy = mei_cldev_get_drvdata(cldev);
|
||||
|
||||
|
@ -51,8 +51,6 @@ static int pn544_mei_remove(struct mei_cl_device *cldev)
|
|||
pn544_hci_remove(phy->hdev);
|
||||
|
||||
nfc_mei_phy_free(phy);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct mei_cl_device_id pn544_mei_tbl[] = {
|
||||
|
|
|
@ -619,7 +619,7 @@ err_out:
|
|||
return ret;
|
||||
}
|
||||
|
||||
static int mei_wdt_remove(struct mei_cl_device *cldev)
|
||||
static void mei_wdt_remove(struct mei_cl_device *cldev)
|
||||
{
|
||||
struct mei_wdt *wdt = mei_cldev_get_drvdata(cldev);
|
||||
|
||||
|
@ -636,8 +636,6 @@ static int mei_wdt_remove(struct mei_cl_device *cldev)
|
|||
dbgfs_unregister(wdt);
|
||||
|
||||
kfree(wdt);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#define MEI_UUID_WD UUID_LE(0x05B79A6F, 0x4628, 0x4D7F, \
|
||||
|
|
|
@ -68,7 +68,7 @@ struct mei_cl_driver {
|
|||
|
||||
int (*probe)(struct mei_cl_device *cldev,
|
||||
const struct mei_cl_device_id *id);
|
||||
int (*remove)(struct mei_cl_device *cldev);
|
||||
void (*remove)(struct mei_cl_device *cldev);
|
||||
};
|
||||
|
||||
int __mei_cldev_driver_register(struct mei_cl_driver *cldrv,
|
||||
|
|
Loading…
Reference in New Issue