[mythtv-commits] Ticket #9191: Channel switching doesn't work with cx18 driver
MythTV
mythtv at cvs.mythtv.org
Sun Nov 7 01:13:23 UTC 2010
#9191: Channel switching doesn't work with cx18 driver
------------------------------------+---------------------------------------
Reporter: Artem Astafyev | Type: defect
Status: new | Priority: minor
Milestone: unknown | Component: MythTV - General
Version: 0.23.1 | Severity: medium
Keywords: cx18 SetInputAndFormat | Ticket locked: 0
------------------------------------+---------------------------------------
I can successfully tune any analog channel but when I try to switch to any
other channel I get such error:
{{{
2010-11-06 20:51:27.840 TVRec(1): Recorder paused, calling TuningFrequency
2010-11-06 20:51:27.858 Channel(/dev/video0)::SwitchToInput(in 1, '')
2010-11-06 20:51:27.876 Channel(/dev/video0): SetInputAndFormat(1,
SECAM-D) (v4l v2)
2010-11-06 20:51:27.885 Channel(/dev/video0) Error: SetInputAndFormat(1,
SECAM-D)
while setting format (v4l v2)
eno: Device or resource busy (16)
2010-11-06 20:51:27.893 Channel(/dev/video0): SetInputAndFormat() failed
2010-11-06 20:51:27.901 TVRec(1) Error: Failed to set channel to 32.
Reverting to kState_None
}}}
I get this error only with cx18 driver. After investigating libmythtv code
and cx18 driver I found the cause. Here is cut from cx18 driver's function
that is called from S_STD ioctl:
{{{
if (test_bit(CX18_F_I_RADIO_USER, &cx->i_flags) ||
atomic_read(&cx->ana_capturing) > 0) {
/* Switching standard would turn off the radio or mess
with already running streams, prevent that by
returning EBUSY. */
return -EBUSY;
}
}}}
cx->ana_capturing is atomic_t which increased every time
V4L2_ENC_CMD_START ioctl is called and decreased on V4L2_ENC_CMD_STOP
ioctl. In addition it seems that cx18 driver has no STREAMOFF ioctl so
workaround which is used for ConvertX doesn't work: I get EINVAL.
I'm not so familiar with mythtv coding or v4l2 but I feel that fix should
be simple.
I can provide any additional info or test fix if you need.
--
Ticket URL: <http://svn.mythtv.org/trac/ticket/9191>
MythTV <http://www.mythtv.org/>
MythTV Media Center
More information about the mythtv-commits
mailing list