8 #include <linux/kernel.h>
11 #include <linux/module.h>
13 #include <linux/pci.h>
15 static int umc_bus_pre_reset_helper(
struct device *
dev,
void *
data)
31 static int umc_bus_post_reset_helper(
struct device *dev,
void *data)
66 if (device_trylock(parent))
71 device_unlock(parent);
96 static int umc_bus_rescan_helper(
struct device *dev,
void *data)
106 static void umc_bus_rescan(
struct device *parent)
117 KBUILD_MODNAME, err);
126 if (umc_driver->
match)
127 return umc_driver->
match(umc_driver, umc);
134 static int umc_device_probe(
struct device *dev)
137 struct umc_driver *umc_driver;
144 err = umc_driver->
probe(umc);
148 umc_bus_rescan(dev->
parent);
153 static int umc_device_remove(
struct device *dev)
156 struct umc_driver *umc_driver;
169 struct umc_driver *umc_driver;
177 err = umc_driver->
suspend(umc, state);
182 static int umc_device_resume(
struct device *dev)
185 struct umc_driver *umc_driver;
193 err = umc_driver->
resume(umc);
220 .match = umc_bus_match,
221 .probe = umc_device_probe,
222 .remove = umc_device_remove,
223 .suspend = umc_device_suspend,
224 .resume = umc_device_resume,
225 .dev_attrs = umc_dev_attrs,
229 static int __init umc_bus_init(
void)
235 static void __exit umc_bus_exit(
void)