DiBcom adapter problems

Message ID C73E570AC040D442A4DD326F39F0F00E138E9533EE@SAPHIR.xi-lite.lan (mailing list archive)
State Superseded, archived
Headers

Commit Message

Olivier GRENIE June 21, 2012, 5:07 p.m. UTC
  Hello,
can you test the following patch.

regards,
Olivier

From: Olivier Grenie <olivier.grenie@parrot.com>
Date: Thu, 21 Jun 2012 18:57:14 +0200
Subject: [PATCH] [media] dvb frontend core: tuning in ISDB-T using DVB API v3
 The intend of this patch is to be able to tune ISDB-T using
 the DVB API v3

Signed-off-by: Olivier Grenie <olivier.grenie@parrot.com>
---
 drivers/media/dvb/dvb-core/dvb_frontend.c |    7 +++++++
 1 file changed, 7 insertions(+)
  

Comments

Zhu Sha Zang June 22, 2012, 12:15 p.m. UTC | #1
Excuse me, dumb question, but where and how can i apply this patch?

Thanks again!

Em 21-06-2012 14:07, Olivier GRENIE escreveu:
> Hello,
> can you test the following patch.
>
> regards,
> Olivier
>
> From: Olivier Grenie <olivier.grenie@parrot.com>
> Date: Thu, 21 Jun 2012 18:57:14 +0200
> Subject: [PATCH] [media] dvb frontend core: tuning in ISDB-T using DVB API v3
>   The intend of this patch is to be able to tune ISDB-T using
>   the DVB API v3
>
> Signed-off-by: Olivier Grenie <olivier.grenie@parrot.com>
> ---
>   drivers/media/dvb/dvb-core/dvb_frontend.c |    7 +++++++
>   1 file changed, 7 insertions(+)
>
> diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c
> index aebcdf2..ee1cc10 100644
> --- a/drivers/media/dvb/dvb-core/dvb_frontend.c
> +++ b/drivers/media/dvb/dvb-core/dvb_frontend.c
> @@ -1531,6 +1531,13 @@ static int set_delivery_system(struct dvb_frontend *fe, u32 desired_system)
>                                  delsys = desired_system;
>                                  break;
>                          }
> +
> +                       /* check if the fe delivery system corresponds
> +                          to the delivery system in cache */
> +                       if (fe->ops.delsys[ncaps] == c->delivery_system) {
> +                               delsys = c->delivery_system;
> +                               break;
> +                       }
>                          ncaps++;
>                  }
>                  if (delsys == SYS_UNDEFINED) {
>
  
Olivier GRENIE June 22, 2012, 2:10 p.m. UTC | #2
You need to get the source code of your kernel, apply the path and recompile the kernel. There is another solution by compiling the module externally (http://git.linuxtv.org/media_build.git). You will also need to patch it.

regards,
Olivier
  

Patch

diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c
index aebcdf2..ee1cc10 100644
--- a/drivers/media/dvb/dvb-core/dvb_frontend.c
+++ b/drivers/media/dvb/dvb-core/dvb_frontend.c
@@ -1531,6 +1531,13 @@  static int set_delivery_system(struct dvb_frontend *fe, u32 desired_system)
                                delsys = desired_system;
                                break;
                        }
+
+                       /* check if the fe delivery system corresponds
+                          to the delivery system in cache */
+                       if (fe->ops.delsys[ncaps] == c->delivery_system) {
+                               delsys = c->delivery_system;
+                               break;
+                       }
                        ncaps++;
                }
                if (delsys == SYS_UNDEFINED) {