From patchwork Sun Nov 27 10:12:33 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hans-Frieder Vogt X-Patchwork-Id: 8634 Received: from mail.tu-berlin.de ([130.149.7.33]) by www.linuxtv.org with esmtp (Exim 4.72) (envelope-from ) id 1RUbj2-0005ud-Sy; Sun, 27 Nov 2011 11:12:46 +0100 X-tubIT-Incoming-IP: 209.132.180.67 Received: from vger.kernel.org ([209.132.180.67]) by mail.tu-berlin.de (exim-4.75/mailfrontend-3) with esmtp id 1RUbj1-0005TR-FP; Sun, 27 Nov 2011 11:12:44 +0100 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751288Ab1K0KMm (ORCPT + 4 others); Sun, 27 Nov 2011 05:12:42 -0500 Received: from mailout-de.gmx.net ([213.165.64.23]:52077 "HELO mailout-de.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S1751196Ab1K0KMl (ORCPT ); Sun, 27 Nov 2011 05:12:41 -0500 Received: (qmail invoked by alias); 27 Nov 2011 10:12:38 -0000 Received: from p4FC0863F.dip0.t-ipconnect.de (EHLO maximilian.localnet) [79.192.134.63] by mail.gmx.net (mp017) with SMTP; 27 Nov 2011 11:12:38 +0100 X-Authenticated: #24390674 X-Provags-ID: V01U2FsdGVkX1/hOg9HbZDhBufH0nXWdeqoVP4kk7dgM9OwRGC+Sj uvqoKfwGJ6fM0l From: "Hans-Frieder Vogt" To: linux-media@vger.kernel.org Subject: Re: Status of RTL283xU support? [NOXON DAB Stick Supported][PATCH for 3.2 included] Date: Sun, 27 Nov 2011 11:12:33 +0100 User-Agent: KMail/1.13.7 (Linux/3.2.0-rc2-a64; KDE/4.6.5; x86_64; ; ) MIME-Version: 1.0 Message-Id: <201111271112.33964.hfvogt@gmx.net> X-Y-GMX-Trusted: 0 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-PMX-Version: 5.6.1.2065439, Antispam-Engine: 2.7.2.376379, Antispam-Data: 2011.11.27.100014 X-PMX-Spam: Gauge=IIIIIIII, Probability=8%, Report=' __ANY_URI 0, __BOUNCE_CHALLENGE_SUBJ 0, __BOUNCE_NDR_SUBJ_EXEMPT 0, __CP_URI_IN_BODY 0, __CT 0, __CTE 0, __CT_TEXT_PLAIN 0, __HAS_MSGID 0, __HAS_X_MAILING_LIST 0, __MIME_TEXT_ONLY 0, __MIME_VERSION 0, __SANE_MSGID 0, __TO_MALFORMED_2 0, __TO_NO_NAME 0, __URI_NS , __USER_AGENT 0' X-LSpam-Score: -6.9 (------) X-LSpam-Report: No, score=-6.9 required=5.0 tests=BAYES_00=-1.9, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_HI=-5 autolearn=ham On Sat, Nov 26, 2011 at 13:47, Maik Zumstrull wrote: > > > it seems I've found myself with an rtl2832u-based DVB-T USB stick. The > > latest news on that seems to be that you were working on cleaning up > > the code of the Realtek-provided GPL driver, with the goal of > > eventually getting it into mainline. > > > > Would you mind giving a short status update? > > FYI, someone has contacted me off-list to point out that the newest(?) > Realtek tree for these devices is available online: > > Alessandro Ambrosini wrote: > > > Dear maik, > > > > I've read your post here > > http://www.mail-archive.com/linux-media@xxxxxxxxxxxxxxx/msg39559.html > > I have not a subscription to linux-media mailing list. I see your post > > looking for in archive. > > > > Some days ago I've asked to Realtek if there are newer driver (latest on the > > net was 2.2.0) > > They kindly send me latest driver 2.2.2 kernel 2.6.x > > > > I've patched it yesterday for kernel 3.0.0 (Ubuntu 11.10) and they looks to > > work fine. > > I'm not an expert C coder, only an hobbyist. So I suppose there are > > problems. > > > > Anyway here you can find: > > > > 1) original Realtek 2.2.2 driver "simplified version" (DVB-T only and 4 > > tuners only) > > https://github.com/ambrosa/DVB-Realtek-RTL2832U-2.2.2-4_tuner > > > > 2) original Realtek 2.2.2 driver "full version" (DVB-T/ DTMB and 10 tuners) > > https://github.com/ambrosa/DVB-Realtek-RTL2832U-2.2.2-10_tuner > > > > 3) driver "full" modded by me for kernel 3.0.0 > > https://github.com/ambrosa/DVB-Realtek-RTL2832U-2.2.2-10tuner- mod_kernel-3.0.0 > > README file explain about all ... Please note that the DVB part of the Noxon DAB Stick (USB ID 0ccd:00b3) is also supported by the driver code (not sure how to access DAB+, maybe someone can give me a hint?)! For kernel 3.2 the following patch is required (tested with 3.2-rc2 64bit kernel), relative to the "full" modded kernel 3.0.0 version from Alessandro: Alessandro, thanks very much for your effort! Cheers, Hans-Frieder Vogt e-mail: hfvogt gmx .dot. net --- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html --- a/rtl2832u.c 2011-11-27 11:05:03.587543422 +0100 +++ b/rtl2832u.c 2011-11-27 10:47:19.329713097 +0100 @@ -689,7 +689,11 @@ error: static int rtl2832u_frontend_attach(struct dvb_usb_adapter *adap) { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + adap->fe_adap[0].fe = rtl2832u_fe_attach(adap->dev); +#else adap->fe = rtl2832u_fe_attach(adap->dev); +#endif return 0; } @@ -835,9 +839,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -852,6 +863,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, @@ -917,9 +931,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -934,6 +955,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, //remote control @@ -999,9 +1023,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -1016,6 +1047,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, @@ -1087,9 +1121,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -1104,6 +1145,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, //remote control @@ -1176,9 +1220,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -1193,6 +1244,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, //remote control @@ -1265,9 +1319,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -1282,6 +1343,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, /*remote control*/ @@ -1353,9 +1417,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -1370,6 +1441,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, //remote control @@ -1436,9 +1510,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -1453,6 +1534,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, //remote control @@ -1519,9 +1603,16 @@ static struct dvb_usb_device_properties .adapter = { { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + .fe_ioctl_override = rtl2832u_ioctl_override, + .num_frontends = 1, + .fe = {{ +#endif .streaming_ctrl = rtl2832u_streaming_ctrl, .frontend_attach = rtl2832u_frontend_attach, +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0) .fe_ioctl_override = rtl2832u_ioctl_override, +#endif //parameter for the MPEG2-data transfer .stream = { @@ -1536,6 +1627,9 @@ static struct dvb_usb_device_properties } } }, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) + }}, +#endif } }, //remote control