V4L/DVB: cx23885: Add a v4l2_subdev group id for the CX2388[578] integrated AV core
authorAndy Walls <awalls@md.metrocast.net>
Mon, 19 Jul 2010 02:26:29 +0000 (23:26 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 9 Aug 2010 02:42:55 +0000 (23:42 -0300)
Signed-off-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/cx23885/cx23885-cards.c
drivers/media/video/cx23885/cx23885.h

index e958674..b083e5d 100644 (file)
@@ -1192,7 +1192,10 @@ void cx23885_card_setup(struct cx23885_dev *dev)
                dev->sd_cx25840 = v4l2_i2c_new_subdev(&dev->v4l2_dev,
                                &dev->i2c_bus[2].i2c_adap,
                                "cx25840", "cx25840", 0x88 >> 1, NULL);
-               v4l2_subdev_call(dev->sd_cx25840, core, load_fw);
+               if (dev->sd_cx25840) {
+                       dev->sd_cx25840->grp_id = CX23885_HW_AV_CORE;
+                       v4l2_subdev_call(dev->sd_cx25840, core, load_fw);
+               }
                break;
        }
 
index a33f2b7..460f430 100644 (file)
@@ -403,7 +403,8 @@ static inline struct cx23885_dev *to_cx23885(struct v4l2_device *v4l2_dev)
 #define call_all(dev, o, f, args...) \
        v4l2_device_call_all(&dev->v4l2_dev, 0, o, f, ##args)
 
-#define CX23885_HW_888_IR (1 << 0)
+#define CX23885_HW_888_IR  (1 << 0)
+#define CX23885_HW_AV_CORE (1 << 1)
 
 #define call_hw(dev, grpid, o, f, args...) \
        v4l2_device_call_all(&dev->v4l2_dev, grpid, o, f, ##args)