diff options
Diffstat (limited to 'drivers/media/video/bttv-gpio.c')
-rw-r--r-- | drivers/media/video/bttv-gpio.c | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/drivers/media/video/bttv-gpio.c b/drivers/media/video/bttv-gpio.c index d64accc17b0e..c4d5e2b70c28 100644 --- a/drivers/media/video/bttv-gpio.c +++ b/drivers/media/video/bttv-gpio.c | |||
@@ -47,9 +47,29 @@ static int bttv_sub_bus_match(struct device *dev, struct device_driver *drv) | |||
47 | return 0; | 47 | return 0; |
48 | } | 48 | } |
49 | 49 | ||
50 | static int bttv_sub_probe(struct device *dev) | ||
51 | { | ||
52 | struct bttv_sub_device *sdev = to_bttv_sub_dev(dev); | ||
53 | struct bttv_sub_driver *sub = to_bttv_sub_drv(dev->driver); | ||
54 | |||
55 | return sub->probe ? sub->probe(sdev) : -ENODEV; | ||
56 | } | ||
57 | |||
58 | static int bttv_sub_remove(struct device *dev) | ||
59 | { | ||
60 | struct bttv_sub_device *sdev = to_bttv_sub_dev(dev); | ||
61 | struct bttv_sub_driver *sub = to_bttv_sub_drv(dev->driver); | ||
62 | |||
63 | if (sub->remove) | ||
64 | sub->remove(sdev); | ||
65 | return 0; | ||
66 | } | ||
67 | |||
50 | struct bus_type bttv_sub_bus_type = { | 68 | struct bus_type bttv_sub_bus_type = { |
51 | .name = "bttv-sub", | 69 | .name = "bttv-sub", |
52 | .match = &bttv_sub_bus_match, | 70 | .match = &bttv_sub_bus_match, |
71 | .probe = bttv_sub_probe, | ||
72 | .remove = bttv_sub_remove, | ||
53 | }; | 73 | }; |
54 | EXPORT_SYMBOL(bttv_sub_bus_type); | 74 | EXPORT_SYMBOL(bttv_sub_bus_type); |
55 | 75 | ||