From f42bba1bc814311cdd5852cec964d6ac5e59ec3b Mon Sep 17 00:00:00 2001 From: Patrick Boettcher Date: Mon, 3 Aug 2009 19:39:15 +0200 Subject: DVB-API: add support for ISDB-T and ISDB-Tsb (version 5.1) From: Patrick Boettcher This patch increments the DVB-API to version 5.1 in order to reflect the addition of ISDB-T and ISDB-Tsb on Linux' DVB-API. Changes in detail: - added a small document to describe how to use the API to tune to an ISDB-T or ISDB-Tsb channel - added necessary fields to dtv_frontend_cache - added a smarter clear-cache function which resets all fields of the dtv_frontend_cache - added a TRANSMISSION_MODE_4K to fe_transmit_mode_t Priority: normal Signed-off-by: Olivier Grenie Signed-off-by: Patrick Boettcher --- linux/include/linux/dvb/frontend.h | 77 ++++++++++++++++++-------------------- linux/include/linux/dvb/version.h | 2 +- 2 files changed, 37 insertions(+), 42 deletions(-) (limited to 'linux/include') diff --git a/linux/include/linux/dvb/frontend.h b/linux/include/linux/dvb/frontend.h index 6a0405f65..25b01c147 100644 --- a/linux/include/linux/dvb/frontend.h +++ b/linux/include/linux/dvb/frontend.h @@ -173,7 +173,8 @@ typedef enum fe_modulation { typedef enum fe_transmit_mode { TRANSMISSION_MODE_2K, TRANSMISSION_MODE_8K, - TRANSMISSION_MODE_AUTO + TRANSMISSION_MODE_AUTO, + TRANSMISSION_MODE_4K } fe_transmit_mode_t; typedef enum fe_bandwidth { @@ -268,46 +269,40 @@ struct dvb_frontend_event { #define DTV_FE_CAPABILITY 16 #define DTV_DELIVERY_SYSTEM 17 -#if 0 -/* ISDB */ -/* maybe a dup of DTV_ISDB_SOUND_BROADCASTING_SUBCHANNEL_ID ??? */ -#define DTV_ISDB_SEGMENT_IDX 18 -/* 1, 3 or 13 ??? */ -#define DTV_ISDB_SEGMENT_WIDTH 19 - -/* the central segment can be received independently or 1/3 seg in SB-mode */ -#define DTV_ISDB_PARTIAL_RECEPTION 20 -/* sound broadcasting is used 0 = 13segment, 1 = 1 or 3 see DTV_ISDB_PARTIAL_RECEPTION */ -#define DTV_ISDB_SOUND_BROADCASTING 21 - -/* only used in SB */ -/* determines the initial PRBS of the segment (to match with 13seg channel) */ -#define DTV_ISDB_SOUND_BROADCASTING_SUBCHANNEL_ID 22 - -#define DTV_ISDB_LAYERA_FEC 23 -#define DTV_ISDB_LAYERA_MODULATION 24 -#define DTV_ISDB_LAYERA_SEGMENT_WIDTH 25 -#define DTV_ISDB_LAYERA_TIME_INTERLEAVER 26 - -#define DTV_ISDB_LAYERB_FEC 27 -#define DTV_ISDB_LAYERB_MODULATION 28 -#define DTV_ISDB_LAYERB_SEGMENT_WIDTH 29 -#define DTV_ISDB_LAYERB_TIME_INTERLEAVING 30 - -#define DTV_ISDB_LAYERC_FEC 31 -#define DTV_ISDB_LAYERC_MODULATION 32 -#define DTV_ISDB_LAYERC_SEGMENT_WIDTH 33 -#define DTV_ISDB_LAYERC_TIME_INTERLEAVING 34 -#endif -#define DTV_API_VERSION 35 -#define DTV_API_VERSION 35 -#define DTV_CODE_RATE_HP 36 -#define DTV_CODE_RATE_LP 37 -#define DTV_GUARD_INTERVAL 38 -#define DTV_TRANSMISSION_MODE 39 -#define DTV_HIERARCHY 40 - -#define DTV_MAX_COMMAND DTV_HIERARCHY +/* ISDB-T and ISDB-Tsb */ +#define DTV_ISDBT_PARTIAL_RECEPTION 18 +#define DTV_ISDBT_SOUND_BROADCASTING 19 + +#define DTV_ISDBT_SB_SUBCHANNEL_ID 20 +#define DTV_ISDBT_SB_SEGMENT_IDX 21 +#define DTV_ISDBT_SB_SEGMENT_COUNT 22 + +#define DTV_ISDBT_LAYERA_FEC 23 +#define DTV_ISDBT_LAYERA_MODULATION 24 +#define DTV_ISDBT_LAYERA_SEGMENT_COUNT 25 +#define DTV_ISDBT_LAYERA_TIME_INTERLEAVING 26 + +#define DTV_ISDBT_LAYERB_FEC 27 +#define DTV_ISDBT_LAYERB_MODULATION 28 +#define DTV_ISDBT_LAYERB_SEGMENT_COUNT 29 +#define DTV_ISDBT_LAYERB_TIME_INTERLEAVING 30 + +#define DTV_ISDBT_LAYERC_FEC 31 +#define DTV_ISDBT_LAYERC_MODULATION 32 +#define DTV_ISDBT_LAYERC_SEGMENT_COUNT 33 +#define DTV_ISDBT_LAYERC_TIME_INTERLEAVING 34 + +#define DTV_API_VERSION 35 + +#define DTV_CODE_RATE_HP 36 +#define DTV_CODE_RATE_LP 37 +#define DTV_GUARD_INTERVAL 38 +#define DTV_TRANSMISSION_MODE 39 +#define DTV_HIERARCHY 40 + +#define DTV_ISDBT_LAYER_ENABLED 41 + +#define DTV_MAX_COMMAND DTV_ISDBT_LAYER_ENABLED typedef enum fe_pilot { PILOT_ON, diff --git a/linux/include/linux/dvb/version.h b/linux/include/linux/dvb/version.h index 25b823b81..540b0583d 100644 --- a/linux/include/linux/dvb/version.h +++ b/linux/include/linux/dvb/version.h @@ -24,6 +24,6 @@ #define _DVBVERSION_H_ #define DVB_API_VERSION 5 -#define DVB_API_VERSION_MINOR 0 +#define DVB_API_VERSION_MINOR 1 #endif /*_DVBVERSION_H_*/ -- cgit v1.2.3 From 856378592a1b9be61e28092caf5e87446bae4694 Mon Sep 17 00:00:00 2001 From: Hans Verkuil Date: Sun, 6 Sep 2009 13:54:00 +0300 Subject: v4l: warn when desired devnodenr is in use & add _no_warn function From: Hans Verkuil Warn when the desired device node number is already in use, except when the new video_register_device_no_warn function is called since in some use-cases that warning is not relevant. Priority: normal Signed-off-by: Hans Verkuil --- linux/include/media/v4l2-dev.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'linux/include') diff --git a/linux/include/media/v4l2-dev.h b/linux/include/media/v4l2-dev.h index 1cae97561..f813ae9c0 100644 --- a/linux/include/media/v4l2-dev.h +++ b/linux/include/media/v4l2-dev.h @@ -105,6 +105,10 @@ struct video_device Also note that vdev->minor is set to -1 if the registration failed. */ int __must_check video_register_device(struct video_device *vdev, int type, int nr); +/* Same as video_register_device, but no warning is issued if the desired + device node number was already in use. */ +int __must_check video_register_device_no_warn(struct video_device *vdev, int type, int nr); + /* Unregister video devices. Will do nothing if vdev == NULL or vdev->minor < 0. */ void video_unregister_device(struct video_device *vdev); -- cgit v1.2.3 From fe1b63559744f62262a57748763586b4a97bed3b Mon Sep 17 00:00:00 2001 From: Mauro Carvalho Chehab Date: Mon, 14 Sep 2009 09:42:41 -0300 Subject: Add tm6000 and tuner-xc2028 drivers From: Mauro Carvalho Chehab Adds a V4L driver for Trident TV Master TM5600/TM6000 chips. Those USB devices are usually found with a Xceive XC2028/XC3028 tuner, although the firmware seems to be modified to work with those chips. Priority: normal Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Mauro Carvalho Chehab --- linux/include/linux/videodev2.h | 1 + 1 file changed, 1 insertion(+) (limited to 'linux/include') diff --git a/linux/include/linux/videodev2.h b/linux/include/linux/videodev2.h index 9d61bae27..b8fb6c206 100644 --- a/linux/include/linux/videodev2.h +++ b/linux/include/linux/videodev2.h @@ -361,6 +361,7 @@ struct v4l2_pix_format { #define V4L2_PIX_FMT_PJPG v4l2_fourcc('P', 'J', 'P', 'G') /* Pixart 73xx JPEG */ #define V4L2_PIX_FMT_OV511 v4l2_fourcc('O', '5', '1', '1') /* ov511 JPEG */ #define V4L2_PIX_FMT_OV518 v4l2_fourcc('O', '5', '1', '8') /* ov518 JPEG */ +#define V4L2_PIX_FMT_TM6000 v4l2_fourcc('T', 'M', '6', '0') /* tm5600/tm60x0 */ /* * F O R M A T E N U M E R A T I O N -- cgit v1.2.3 From 36dfe1e93c14212a6fd2939344018445f132789e Mon Sep 17 00:00:00 2001 From: "hans@rhel5-devel.localdomain" Date: Mon, 31 Aug 2009 16:32:46 +0200 Subject: Add new V4L2_FMT_FLAG_EMULATED flag to videodev2.h From: Hans de Goede V4L2_FMT_FLAG_EMULATED 0x0002 This format is not native to the device but emulated through software (usually libv4l2), where possible try to use a native format instead for better performance. Priority: normal Signed-off-by: Hans de Goede --- linux/include/linux/videodev2.h | 1 + 1 file changed, 1 insertion(+) (limited to 'linux/include') diff --git a/linux/include/linux/videodev2.h b/linux/include/linux/videodev2.h index b61c3b61c..d6f8edb3d 100644 --- a/linux/include/linux/videodev2.h +++ b/linux/include/linux/videodev2.h @@ -374,6 +374,7 @@ struct v4l2_fmtdesc { }; #define V4L2_FMT_FLAG_COMPRESSED 0x0001 +#define V4L2_FMT_FLAG_EMULATED 0x0002 #if 1 /*KEEP*/ /* Experimental Frame Size and frame rate enumeration */ -- cgit v1.2.3 From d891cb0f7c2697f187df5301547d38d791cce2b0 Mon Sep 17 00:00:00 2001 From: Antti Palosaari Date: Tue, 15 Sep 2009 20:37:20 +0300 Subject: tuner-simple: add Philips CU1216L From: Antti Palosaari add Philips CU1216L NIM Priority: normal Signed-off-by: Antti Palosaari --- linux/include/media/tuner.h | 1 + 1 file changed, 1 insertion(+) (limited to 'linux/include') diff --git a/linux/include/media/tuner.h b/linux/include/media/tuner.h index c146f2f53..b1f57e175 100644 --- a/linux/include/media/tuner.h +++ b/linux/include/media/tuner.h @@ -127,6 +127,7 @@ #define TUNER_PHILIPS_FM1216MK5 79 #define TUNER_PHILIPS_FQ1216LME_MK3 80 /* Active loopthrough, no FM */ #define TUNER_PARTSNIC_PTI_5NF05 81 +#define TUNER_PHILIPS_CU1216L 82 /* tv card specific */ #define TDA9887_PRESENT (1<<0) -- cgit v1.2.3 From b929890a4ee11bb0135de26a8eab873a3e1e5323 Mon Sep 17 00:00:00 2001 From: Michael Krufky Date: Tue, 15 Sep 2009 22:04:18 -0400 Subject: tuner-core: add support for NXP TDA18271 without TDA829X demod From: Michael Krufky Add support for NXP TDA18271 as a standalone tuner, allowing the use of analog demodulators other than the Philips/NXP TDA829x. Priority: normal Signed-off-by: Michael Krufky --- linux/include/media/tuner.h | 1 + 1 file changed, 1 insertion(+) (limited to 'linux/include') diff --git a/linux/include/media/tuner.h b/linux/include/media/tuner.h index b1f57e175..4d5b53ff1 100644 --- a/linux/include/media/tuner.h +++ b/linux/include/media/tuner.h @@ -128,6 +128,7 @@ #define TUNER_PHILIPS_FQ1216LME_MK3 80 /* Active loopthrough, no FM */ #define TUNER_PARTSNIC_PTI_5NF05 81 #define TUNER_PHILIPS_CU1216L 82 +#define TUNER_NXP_TDA18271 83 /* tv card specific */ #define TDA9887_PRESENT (1<<0) -- cgit v1.2.3