mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 20:51:03 +02:00
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:
committed by
Greg Kroah-Hartman
parent
0be0a733c9
commit
d40c2d4ed6
@@ -359,6 +359,14 @@ static int spmi_drv_remove(struct device *dev)
|
|||||||
return 0;
|
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)
|
static int spmi_drv_uevent(struct device *dev, struct kobj_uevent_env *env)
|
||||||
{
|
{
|
||||||
int ret;
|
int ret;
|
||||||
@@ -375,6 +383,7 @@ static struct bus_type spmi_bus_type = {
|
|||||||
.match = spmi_device_match,
|
.match = spmi_device_match,
|
||||||
.probe = spmi_drv_probe,
|
.probe = spmi_drv_probe,
|
||||||
.remove = spmi_drv_remove,
|
.remove = spmi_drv_remove,
|
||||||
|
.shutdown = spmi_drv_shutdown,
|
||||||
.uevent = spmi_drv_uevent,
|
.uevent = spmi_drv_uevent,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -138,6 +138,7 @@ struct spmi_driver {
|
|||||||
struct device_driver driver;
|
struct device_driver driver;
|
||||||
int (*probe)(struct spmi_device *sdev);
|
int (*probe)(struct spmi_device *sdev);
|
||||||
void (*remove)(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)
|
static inline struct spmi_driver *to_spmi_driver(struct device_driver *d)
|
||||||
|
Reference in New Issue
Block a user