spmi: Add driver shutdown support
Add new shutdown() method. Use it in the standard driver model style. Link: https://lore.kernel.org/r/1603187810-30481-2-git-send-email-hsin-hsiung.wang@mediatek.com Signed-off-by: Hsin-Hsiung Wang <hsin-hsiung.wang@mediatek.com> Signed-off-by: Stephen Boyd <sboyd@kernel.org> Link: https://lore.kernel.org/r/20201210023344.2838141-4-sboyd@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
0be0a733c9
commit
d40c2d4ed6
|
@ -359,6 +359,14 @@ static int spmi_drv_remove(struct device *dev)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void spmi_drv_shutdown(struct device *dev)
|
||||
{
|
||||
const struct spmi_driver *sdrv = to_spmi_driver(dev->driver);
|
||||
|
||||
if (sdrv && sdrv->shutdown)
|
||||
sdrv->shutdown(to_spmi_device(dev));
|
||||
}
|
||||
|
||||
static int spmi_drv_uevent(struct device *dev, struct kobj_uevent_env *env)
|
||||
{
|
||||
int ret;
|
||||
|
@ -375,6 +383,7 @@ static struct bus_type spmi_bus_type = {
|
|||
.match = spmi_device_match,
|
||||
.probe = spmi_drv_probe,
|
||||
.remove = spmi_drv_remove,
|
||||
.shutdown = spmi_drv_shutdown,
|
||||
.uevent = spmi_drv_uevent,
|
||||
};
|
||||
|
||||
|
|
|
@ -138,6 +138,7 @@ struct spmi_driver {
|
|||
struct device_driver driver;
|
||||
int (*probe)(struct spmi_device *sdev);
|
||||
void (*remove)(struct spmi_device *sdev);
|
||||
void (*shutdown)(struct spmi_device *sdev);
|
||||
};
|
||||
|
||||
static inline struct spmi_driver *to_spmi_driver(struct device_driver *d)
|
||||
|
|
Loading…
Reference in New Issue