All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 00/13] media: bttv: convert to vb2
@ 2023-07-15  2:15 Deborah Brouwer
  2023-07-15  2:15 ` [PATCH v3 01/13] media: bttv: use video_drvdata to get bttv Deborah Brouwer
                   ` (12 more replies)
  0 siblings, 13 replies; 14+ messages in thread
From: Deborah Brouwer @ 2023-07-15  2:15 UTC (permalink / raw)
  To: linux-media; +Cc: hverkuil-cisco, deborahbrouwer3563, Deborah Brouwer

Hi - Here is v3 of the vb1 to vb2 conversion.

I tested it with two cards:
Leadtek WinFast TV 2000 (has video, vbi and radio)
and Hauppauge WinTV (just video and vbi).

Changes since v2:
All the patches are the same except in the main
"media-bttv-convert-to-vb2" patch:
- stop dropping frames when video/vbi starts
after the other one has already started;
- assign buffer sequence numbers using the field
change bit in the interrupt status register so
that dropped frames are reflected in the sequence
numbers;
- stop setting the buffer's field when returning
it to userspace because this is redundant;
- remove the last four lines in interlaced,
sequential top/bottom, and alternating buffers
to prevent long latency and frame drops
(this is instead of just enabling the existing
VCR hack by default);
- fix g_fmt so that it returns "alternate"
instead of top/bottom for V4L2_FIELD_ALTERNATE;
- add some macros for risc and dma values to try
to make the code easier to read;

An issue that could still be improved is the
dropped frames that occur if you stop video or
vbi while the other one is still streaming. This
happens because vb2_wait_for_all_buffers()
waits for both video and vbi buffers and
temporarily stops queuing buffers for the stream
that is still running. I did try, alternatively,
to stop a stream manually while keeping the other
one running which solved the dropped frames issue
but introduced a bunch of page faults and other
bugs that were worse.

Changes since v1:
- revised commit messages in patches 04/13 and 05/13
to clearly explain treatment of format/width/height and
certain vbi fields

- In patch "media: bttv: refactor bttv_set_dma()":
  - drop superfluous parentheses
  - rename the argument 'override' as
 'start_capture' to be more descriptive of its
 function.

- In patch "media: bttv: convert to vb2":
- use BT848_CAP_CTL_* when calling bttv_set_dma()
- fix compiler warning that vb2_queue may be
 uninitialized
- fix vbi sequence counter to avoid incrementing it twice
 if both video and vbi are streaming

v4l2-compliance results:

v4l2-compliance 1.25.0-5073, 64 bits, 64-bit time_t
v4l2-compliance SHA: 16e70e28584c 2023-06-22 09:47:27

Compliance test for bttv device /dev/video0:

Driver Info:
  Driver name      : bttv
  Card type        : BT878 video (Leadtek WinFast 20
  Bus info         : PCI:0000:06:00.0
  Driver version   : 6.4.0
  Capabilities     : 0x85250011
    Video Capture
    VBI Capture
    Tuner
    Radio
    Read/Write
    Streaming
    Extended Pix Format
    Device Capabilities
  Device Caps      : 0x05210001
    Video Capture
    Tuner
    Read/Write
    Streaming
    Extended Pix Format

Required ioctls:
  test VIDIOC_QUERYCAP: OK
  test invalid ioctls: OK

Allow for multiple opens:
  test second /dev/video0 open: OK
  test VIDIOC_QUERYCAP: OK
  test VIDIOC_G/S_PRIORITY: OK
  test for unlimited opens: OK

Debug ioctls:
  test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
  test VIDIOC_LOG_STATUS: OK

Input ioctls:
  test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK
  test VIDIOC_G/S_FREQUENCY: OK
  test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
  test VIDIOC_ENUMAUDIO: OK (Not Supported)
  test VIDIOC_G/S/ENUMINPUT: OK
  test VIDIOC_G/S_AUDIO: OK (Not Supported)
  Inputs: 4 Audio Inputs: 0 Tuners: 1

Output ioctls:
  test VIDIOC_G/S_MODULATOR: OK (Not Supported)
  test VIDIOC_G/S_FREQUENCY: OK
  test VIDIOC_ENUMAUDOUT: OK (Not Supported)
  test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
  test VIDIOC_G/S_AUDOUT: OK (Not Supported)
  Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
  test VIDIOC_ENUM/G/S/QUERY_STD: OK
  test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
  test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
  test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls (Input 0):
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 8 Private Controls: 10

Format ioctls (Input 0):
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
  test VIDIOC_G/S_PARM: OK
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK
    warn: v4l2-test-formats.cpp(794): TRY_FMT cannot handle an invalid pixelformat.
    warn: v4l2-test-formats.cpp(795): This may or may not be a problem. For more information see:
    warn: v4l2-test-formats.cpp(796): http://www.mail-archive.com/linux-media@vger.kernel.org/msg56550.html
  test VIDIOC_TRY_FMT: OK
    warn: v4l2-test-formats.cpp(1157): S_FMT cannot handle an invalid pixelformat.
    warn: v4l2-test-formats.cpp(1158): This may or may not be a problem. For more information see:
    warn: v4l2-test-formats.cpp(1159): http://www.mail-archive.com/linux-media@vger.kernel.org/msg56550.html
  test VIDIOC_S_FMT: OK
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK
  test Composing: OK (Not Supported)
  test Scaling: OK

Codec ioctls (Input 0):
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 0):
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Control ioctls (Input 1):
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 8 Private Controls: 10

Format ioctls (Input 1):
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
  test VIDIOC_G/S_PARM: OK
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK
  test VIDIOC_TRY_FMT: OK
  test VIDIOC_S_FMT: OK
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK
  test Composing: OK (Not Supported)
  test Scaling: OK

Codec ioctls (Input 1):
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 1):
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Control ioctls (Input 2):
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 8 Private Controls: 10

Format ioctls (Input 2):
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
  test VIDIOC_G/S_PARM: OK
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK
  test VIDIOC_TRY_FMT: OK
  test VIDIOC_S_FMT: OK
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK
  test Composing: OK (Not Supported)
  test Scaling: OK

Codec ioctls (Input 2):
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 2):
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Control ioctls (Input 3):
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 8 Private Controls: 10

Format ioctls (Input 3):
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK
  test VIDIOC_G/S_PARM: OK
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK
  test VIDIOC_TRY_FMT: OK
  test VIDIOC_S_FMT: OK
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK
  test Composing: OK (Not Supported)
  test Scaling: OK

Codec ioctls (Input 3):
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 3):
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Total for bttv device /dev/video0: 111, Succeeded: 111, Failed: 0, Warnings: 6

v4l2-compliance 1.25.0-5073, 64 bits, 64-bit time_t
v4l2-compliance SHA: 16e70e28584c 2023-06-22 09:47:27

Compliance test for bttv device /dev/vbi0:

Driver Info:
  Driver name      : bttv
  Card type        : BT878 video (Leadtek WinFast 20
  Bus info         : PCI:0000:06:00.0
  Driver version   : 6.4.0
  Capabilities     : 0x85250011
    Video Capture
    VBI Capture
    Tuner
    Radio
    Read/Write
    Streaming
    Extended Pix Format
    Device Capabilities
  Device Caps      : 0x05210010
    VBI Capture
    Tuner
    Read/Write
    Streaming
    Extended Pix Format

Required ioctls:
  test VIDIOC_QUERYCAP: OK
  test invalid ioctls: OK

Allow for multiple opens:
  test second /dev/vbi0 open: OK
  test VIDIOC_QUERYCAP: OK
  test VIDIOC_G/S_PRIORITY: OK
  test for unlimited opens: OK

Debug ioctls:
  test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
  test VIDIOC_LOG_STATUS: OK

Input ioctls:
  test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK
  test VIDIOC_G/S_FREQUENCY: OK
  test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
  test VIDIOC_ENUMAUDIO: OK (Not Supported)
  test VIDIOC_G/S/ENUMINPUT: OK
  test VIDIOC_G/S_AUDIO: OK (Not Supported)
  Inputs: 4 Audio Inputs: 0 Tuners: 1

Output ioctls:
  test VIDIOC_G/S_MODULATOR: OK (Not Supported)
  test VIDIOC_G/S_FREQUENCY: OK
  test VIDIOC_ENUMAUDOUT: OK (Not Supported)
  test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
  test VIDIOC_G/S_AUDOUT: OK (Not Supported)
  Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
  test VIDIOC_ENUM/G/S/QUERY_STD: OK
  test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
  test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
  test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls (Input 0):
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 8 Private Controls: 10

Format ioctls (Input 0):
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK (Not Supported)
  test VIDIOC_G/S_PARM: OK (Not Supported)
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK
  test VIDIOC_TRY_FMT: OK
  test VIDIOC_S_FMT: OK
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK (Not Supported)
  test Composing: OK (Not Supported)
  test Scaling: OK (Not Supported)

Codec ioctls (Input 0):
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 0):
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Control ioctls (Input 1):
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 8 Private Controls: 10

Format ioctls (Input 1):
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK (Not Supported)
  test VIDIOC_G/S_PARM: OK (Not Supported)
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK
  test VIDIOC_TRY_FMT: OK
  test VIDIOC_S_FMT: OK
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK (Not Supported)
  test Composing: OK (Not Supported)
  test Scaling: OK (Not Supported)

Codec ioctls (Input 1):
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 1):
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Control ioctls (Input 2):
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 8 Private Controls: 10

Format ioctls (Input 2):
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK (Not Supported)
  test VIDIOC_G/S_PARM: OK (Not Supported)
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK
  test VIDIOC_TRY_FMT: OK
  test VIDIOC_S_FMT: OK
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK (Not Supported)
  test Composing: OK (Not Supported)
  test Scaling: OK (Not Supported)

Codec ioctls (Input 2):
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 2):
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Control ioctls (Input 3):
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 8 Private Controls: 10

Format ioctls (Input 3):
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK (Not Supported)
  test VIDIOC_G/S_PARM: OK (Not Supported)
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK
  test VIDIOC_TRY_FMT: OK
  test VIDIOC_S_FMT: OK
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK (Not Supported)
  test Composing: OK (Not Supported)
  test Scaling: OK (Not Supported)

Codec ioctls (Input 3):
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls (Input 3):
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Total for bttv device /dev/vbi0: 111, Succeeded: 111, Failed: 0, Warnings: 0

v4l2-compliance 1.25.0-5073, 64 bits, 64-bit time_t
v4l2-compliance SHA: 16e70e28584c 2023-06-22 09:47:27

Compliance test for bttv device /dev/radio0:

Driver Info:
  Driver name      : bttv
  Card type        : BT878 video (Leadtek WinFast 20
  Bus info         : PCI:0000:06:00.0
  Driver version   : 6.4.0
  Capabilities     : 0x85250011
    Video Capture
    VBI Capture
    Tuner
    Radio
    Read/Write
    Streaming
    Extended Pix Format
    Device Capabilities
  Device Caps      : 0x00250000
    Tuner
    Radio
    Extended Pix Format

Required ioctls:
  test VIDIOC_QUERYCAP: OK
  test invalid ioctls: OK

Allow for multiple opens:
  test second /dev/radio0 open: OK
  test VIDIOC_QUERYCAP: OK
  test VIDIOC_G/S_PRIORITY: OK
  test for unlimited opens: OK

Debug ioctls:
  test VIDIOC_DBG_G/S_REGISTER: OK (Not Supported)
  test VIDIOC_LOG_STATUS: OK

Input ioctls:
  test VIDIOC_G/S_TUNER/ENUM_FREQ_BANDS: OK
  test VIDIOC_G/S_FREQUENCY: OK
  test VIDIOC_S_HW_FREQ_SEEK: OK (Not Supported)
  test VIDIOC_ENUMAUDIO: OK (Not Supported)
  test VIDIOC_G/S/ENUMINPUT: OK (Not Supported)
  test VIDIOC_G/S_AUDIO: OK (Not Supported)
  Inputs: 0 Audio Inputs: 0 Tuners: 1

Output ioctls:
  test VIDIOC_G/S_MODULATOR: OK (Not Supported)
  test VIDIOC_G/S_FREQUENCY: OK
  test VIDIOC_ENUMAUDOUT: OK (Not Supported)
  test VIDIOC_G/S/ENUMOUTPUT: OK (Not Supported)
  test VIDIOC_G/S_AUDOUT: OK (Not Supported)
  Outputs: 0 Audio Outputs: 0 Modulators: 0

Input/Output configuration ioctls:
  test VIDIOC_ENUM/G/S/QUERY_STD: OK (Not Supported)
  test VIDIOC_ENUM/G/S/QUERY_DV_TIMINGS: OK (Not Supported)
  test VIDIOC_DV_TIMINGS_CAP: OK (Not Supported)
  test VIDIOC_G/S_EDID: OK (Not Supported)

Control ioctls:
  test VIDIOC_QUERY_EXT_CTRL/QUERYMENU: OK
  test VIDIOC_QUERYCTRL: OK
  test VIDIOC_G/S_CTRL: OK
  test VIDIOC_G/S/TRY_EXT_CTRLS: OK
  test VIDIOC_(UN)SUBSCRIBE_EVENT/DQEVENT: OK
  test VIDIOC_G/S_JPEGCOMP: OK (Not Supported)
  Standard Controls: 2 Private Controls: 0

Format ioctls:
  test VIDIOC_ENUM_FMT/FRAMESIZES/FRAMEINTERVALS: OK (Not Supported)
  test VIDIOC_G/S_PARM: OK (Not Supported)
  test VIDIOC_G_FBUF: OK (Not Supported)
  test VIDIOC_G_FMT: OK (Not Supported)
  test VIDIOC_TRY_FMT: OK (Not Supported)
  test VIDIOC_S_FMT: OK (Not Supported)
  test VIDIOC_G_SLICED_VBI_CAP: OK (Not Supported)
  test Cropping: OK (Not Supported)
  test Composing: OK (Not Supported)
  test Scaling: OK (Not Supported)

Codec ioctls:
  test VIDIOC_(TRY_)ENCODER_CMD: OK (Not Supported)
  test VIDIOC_G_ENC_INDEX: OK (Not Supported)
  test VIDIOC_(TRY_)DECODER_CMD: OK (Not Supported)

Buffer ioctls:
  test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK (Not Supported)
  test VIDIOC_EXPBUF: OK (Not Supported)
  test Requests: OK (Not Supported)

Total for bttv device /dev/radio0: 45, Succeeded: 45, Failed: 0, Warnings: 0

Deborah Brouwer (13):
  media: bttv: use video_drvdata to get bttv
  media: bttv: replace BUG with WARN_ON
  media: bttv: radio use v4l2_fh instead of bttv_fh
  media: bttv: copy vid fmt/width/height from fh
  media: bttv: copy vbi_fmt from bttv_fh
  media: bttv: move do_crop flag out of bttv_fh
  media: bttv: remove format field from bttv_buffer
  media: bttv: remove tvnorm field from bttv_buffer
  media: bttv: remove crop info from bttv_buffer
  media: bttv: move vbi_skip/vbi_count out of buffer
  media: bttv: refactor bttv_set_dma()
  media: bttv: use audio defaults for winfast2000
  media: bttv: convert to vb2

 drivers/media/pci/bt8xx/Kconfig           |    2 +-
 drivers/media/pci/bt8xx/bt848.h           |    8 +
 drivers/media/pci/bt8xx/bttv-audio-hook.c |   10 +-
 drivers/media/pci/bt8xx/bttv-driver.c     | 1014 +++++++--------------
 drivers/media/pci/bt8xx/bttv-risc.c       |  415 +++++----
 drivers/media/pci/bt8xx/bttv-vbi.c        |  281 +++---
 drivers/media/pci/bt8xx/bttvp.h           |   79 +-
 7 files changed, 720 insertions(+), 1089 deletions(-)

-- 
2.40.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2023-07-15  2:16 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-15  2:15 [PATCH v3 00/13] media: bttv: convert to vb2 Deborah Brouwer
2023-07-15  2:15 ` [PATCH v3 01/13] media: bttv: use video_drvdata to get bttv Deborah Brouwer
2023-07-15  2:15 ` [PATCH v3 02/13] media: bttv: replace BUG with WARN_ON Deborah Brouwer
2023-07-15  2:15 ` [PATCH v3 03/13] media: bttv: radio use v4l2_fh instead of bttv_fh Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 04/13] media: bttv: copy vid fmt/width/height from fh Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 05/13] media: bttv: copy vbi_fmt from bttv_fh Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 06/13] media: bttv: move do_crop flag out of bttv_fh Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 07/13] media: bttv: remove format field from bttv_buffer Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 08/13] media: bttv: remove tvnorm " Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 09/13] media: bttv: remove crop info " Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 10/13] media: bttv: move vbi_skip/vbi_count out of buffer Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 11/13] media: bttv: refactor bttv_set_dma() Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 12/13] media: bttv: use audio defaults for winfast2000 Deborah Brouwer
2023-07-15  2:16 ` [PATCH v3 13/13] media: bttv: convert to vb2 Deborah Brouwer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.