Loading drivers/media/video/Kconfig +9 −7 Original line number Diff line number Diff line Loading @@ -7,6 +7,15 @@ menu "Video For Linux" comment "Video Adapters" config VIDEO_ADV_DEBUG bool "Enable advanced debug functionality" depends on VIDEO_DEV default n ---help--- Say Y here to enable advanced debugging functionality on some V4L devices. In doubt, say N. config VIDEO_BT848 tristate "BT848 Video For Linux" depends on VIDEO_DEV && PCI && I2C Loading Loading @@ -344,11 +353,4 @@ config VIDEO_DECODER Say Y here to compile drivers for SAA7115, SAA7127 and CX25840 video decoders. config VIDEO_ADV_DEBUG bool "Enable advanced debug functionality" depends on VIDEO_DEV && VIDEO_DECODER && EXPERIMENTAL ---help--- Say Y here to enable advanced debugging functionality in the SAA7115, SAA7127 and CX25840 video decoders. endmenu drivers/media/video/tvp5150.c +24 −0 Original line number Diff line number Diff line Loading @@ -850,6 +850,30 @@ static int tvp5150_command(struct i2c_client *c, *(v4l2_std_id *)arg = decoder->norm; break; #ifdef CONFIG_VIDEO_ADV_DEBUG case VIDIOC_INT_G_REGISTER: { struct v4l2_register *reg = arg; if (reg->i2c_id != I2C_DRIVERID_TVP5150) return -EINVAL; reg->val = tvp5150_read(c, reg->reg & 0xff); break; } case VIDIOC_INT_S_REGISTER: { struct v4l2_register *reg = arg; if (reg->i2c_id != I2C_DRIVERID_TVP5150) return -EINVAL; if (!capable(CAP_SYS_ADMIN)) return -EPERM; tvp5150_write(c, reg->reg & 0xff, reg->val & 0xff); break; } #endif case DECODER_DUMP: dump_reg(c); break; Loading include/linux/i2c-id.h +1 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,7 @@ #define I2C_DRIVERID_SAA711X 73 /* saa711x video encoders */ #define I2C_DRIVERID_AKITAIOEXP 74 /* IO Expander on Sharp SL-C1000 */ #define I2C_DRIVERID_INFRARED 75 /* I2C InfraRed on Video boards */ #define I2C_DRIVERID_TVP5150 76 /* TVP5150 video decoder */ #define I2C_DRIVERID_I2CDEV 900 #define I2C_DRIVERID_ARP 902 /* SMBus ARP Client */ Loading Loading
drivers/media/video/Kconfig +9 −7 Original line number Diff line number Diff line Loading @@ -7,6 +7,15 @@ menu "Video For Linux" comment "Video Adapters" config VIDEO_ADV_DEBUG bool "Enable advanced debug functionality" depends on VIDEO_DEV default n ---help--- Say Y here to enable advanced debugging functionality on some V4L devices. In doubt, say N. config VIDEO_BT848 tristate "BT848 Video For Linux" depends on VIDEO_DEV && PCI && I2C Loading Loading @@ -344,11 +353,4 @@ config VIDEO_DECODER Say Y here to compile drivers for SAA7115, SAA7127 and CX25840 video decoders. config VIDEO_ADV_DEBUG bool "Enable advanced debug functionality" depends on VIDEO_DEV && VIDEO_DECODER && EXPERIMENTAL ---help--- Say Y here to enable advanced debugging functionality in the SAA7115, SAA7127 and CX25840 video decoders. endmenu
drivers/media/video/tvp5150.c +24 −0 Original line number Diff line number Diff line Loading @@ -850,6 +850,30 @@ static int tvp5150_command(struct i2c_client *c, *(v4l2_std_id *)arg = decoder->norm; break; #ifdef CONFIG_VIDEO_ADV_DEBUG case VIDIOC_INT_G_REGISTER: { struct v4l2_register *reg = arg; if (reg->i2c_id != I2C_DRIVERID_TVP5150) return -EINVAL; reg->val = tvp5150_read(c, reg->reg & 0xff); break; } case VIDIOC_INT_S_REGISTER: { struct v4l2_register *reg = arg; if (reg->i2c_id != I2C_DRIVERID_TVP5150) return -EINVAL; if (!capable(CAP_SYS_ADMIN)) return -EPERM; tvp5150_write(c, reg->reg & 0xff, reg->val & 0xff); break; } #endif case DECODER_DUMP: dump_reg(c); break; Loading
include/linux/i2c-id.h +1 −0 Original line number Diff line number Diff line Loading @@ -103,6 +103,7 @@ #define I2C_DRIVERID_SAA711X 73 /* saa711x video encoders */ #define I2C_DRIVERID_AKITAIOEXP 74 /* IO Expander on Sharp SL-C1000 */ #define I2C_DRIVERID_INFRARED 75 /* I2C InfraRed on Video boards */ #define I2C_DRIVERID_TVP5150 76 /* TVP5150 video decoder */ #define I2C_DRIVERID_I2CDEV 900 #define I2C_DRIVERID_ARP 902 /* SMBus ARP Client */ Loading