Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 578165 Details for
Bug 812895
Bug in dvb driver modules when switching from DVB-S2 to DVB-S
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
Fix DVB frontend regression when switching back to DVB-S
dvb_frontend_switch_regression_fix.patch (text/plain), 2.34 KB, created by
Mauro Carvalho Chehab
on 2012-04-17 21:44:17 UTC
(
hide
)
Description:
Fix DVB frontend regression when switching back to DVB-S
Filename:
MIME Type:
Creator:
Mauro Carvalho Chehab
Created:
2012-04-17 21:44:17 UTC
Size:
2.34 KB
patch
obsolete
>From c6c6fa8dcc27aad6ce3467544be0f57fd82b99a3 Mon Sep 17 00:00:00 2001 >From: Mauro Carvalho Chehab <mchehab@redhat.com> >Date: Tue, 17 Apr 2012 18:32:19 -0300 >Subject: [PATCH] [media] dvb_frontend: Fix a regression when switching back > to DVB-S > >There are some softwares (Kaffeine and likely xine) that uses a >DVBv5 call to switch to DVB-S2, but expects that a DVBv3 call to >switch back to DVB-S. Well, this is not right, as a DVBv3 call >doesn't know anything about delivery systems. > >However, as, by accident, this used to work, we need to restore its >behavior, in order to avoid regressions with those softwares. > >Reported on this Fedora 16 bugzilla: > https://bugzilla.redhat.com/show_bug.cgi?id=812895 > >Reported-by: Dieter Roever <Dieter.Roever@gmx.de> >Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> > >diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c >index 4555baa..bb582fd 100644 >--- a/drivers/media/dvb/dvb-core/dvb_frontend.c >+++ b/drivers/media/dvb/dvb-core/dvb_frontend.c >@@ -1443,6 +1443,28 @@ static int set_delivery_system(struct dvb_frontend *fe, u32 desired_system) > __func__); > return -EINVAL; > } >+ /* >+ * Get a delivery system that is compatible with DVBv3 >+ * NOTE: in order for this to work with softwares like Kaffeine that >+ * uses a DVBv5 call for DVB-S2 and a DVBv3 call to go back to >+ * DVB-S, drivers that support both should put the SYS_DVBS entry >+ * before the SYS_DVBS2, otherwise it won't switch back to DVB-S. >+ * The real fix is that userspace applications should not use DVBv3 >+ * and not trust on calling FE_SET_FRONTEND to switch the delivery >+ * system. >+ */ >+ ncaps = 0; >+ while (fe->ops.delsys[ncaps] && ncaps < MAX_DELSYS) { >+ if (fe->ops.delsys[ncaps] == desired_system) { >+ delsys = desired_system; >+ break; >+ } >+ ncaps++; >+ } >+ if (delsys == SYS_UNDEFINED) { >+ dprintk("%s() Couldn't find a delivery system that matches %d\n", >+ __func__, desired_system); >+ } > } else { > /* > * This is a DVBv5 call. So, it likely knows the supported >@@ -1491,9 +1513,10 @@ static int set_delivery_system(struct dvb_frontend *fe, u32 desired_system) > __func__); > return -EINVAL; > } >- c->delivery_system = delsys; > } > >+ c->delivery_system = delsys; >+ > /* > * The DVBv3 or DVBv5 call is requesting a different system. So, > * emulation is needed.
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 812895
: 578165