[PATCH] soc_camera: Add soc_camera_match function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



${LINUX}/drivers/base/dd.c :: __device_attach
use driver_match_device function.
It needs bus->match function.

Signed-off-by: Kuninori Morimoto <morimoto.kuninori@xxxxxxxxxxx>
---

> Guennadi

I tried latest Linux 2.6.29 from Paul's git
 git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.git

Then, soc_camera doesn't works.
please check 49b420a13ff95b449947181190b08367348e3e1b
But I'm not sure is this patch correct fix ? 

 drivers/media/video/soc_camera.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)

diff --git a/drivers/media/video/soc_camera.c b/drivers/media/video/soc_camera.c
index 6d8bfd4..a10828b 100644
--- a/drivers/media/video/soc_camera.c
+++ b/drivers/media/video/soc_camera.c
@@ -929,12 +929,21 @@ static int soc_camera_resume(struct device *dev)
 	return ret;
 }
 
+int soc_camera_match(struct device *dev, struct device_driver *drv)
+{
+	struct soc_camera_device *icd = to_soc_camera_dev(dev);
+	struct soc_camera_host *ici = to_soc_camera_host(icd->dev.parent);
+
+	return ici->nr == icd->iface;
+}
+
 static struct bus_type soc_camera_bus_type = {
 	.name		= "soc-camera",
 	.probe		= soc_camera_probe,
 	.remove		= soc_camera_remove,
 	.suspend	= soc_camera_suspend,
 	.resume		= soc_camera_resume,
+	.match		= soc_camera_match,
 };
 
 static struct device_driver ic_drv = {
-- 
1.5.6.3

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux