From: "Frank Schäfer" <fschaefer.oss@googlemail.com>
To: mchehab@redhat.com
Cc: linux-media@vger.kernel.org,
"Frank Schäfer" <fschaefer.oss@googlemail.com>
Subject: [PATCH 00/23] em28xx: add support fur USB bulk transfers
Date: Sun, 21 Oct 2012 19:52:05 +0300 [thread overview]
Message-ID: <1350838349-14763-1-git-send-email-fschaefer.oss@googlemail.com> (raw)
This patch series adds support for USB bulk transfers to the em28xx driver.
Patch 1 is a bugfix for the image data processing with non-interlaced devices (webcams)
that should be considered for stable (see commit message).
Patches 2-21 extend the driver to support USB bulk transfers.
USB endpoint mapping had to be extended and is a bit tricky.
It might still not be sufficient to handle ALL isoc/bulk endpoints of ALL existing devices,
but it should work with the devices we have seen so far and (most important !)
preserves backwards compatibility to the current driver behavior.
Isoc endpoints/transfers are preffered by default, patch 21 adds a module parameter to change this behavior.
The last two patches are follow-up patches not really related to USB tranfers.
Patch 22 reduces the code size in em28xx-video by merging the two URB data processing functions
and patch 23 enables VBI-support for em2840-devices.
Please note that I could test the changes with an analog non-interlaced non-VBI device only !
So further tests with DVB/interlaced/VBI devices are strongly recommended !
Frank Schäfer (23):
em28xx: fix wrong data offset for non-interlaced mode in
em28xx_copy_video
em28xx: clarify meaning of field 'progressive' in struct em28xx
em28xx: rename isoc packet number constants and parameters
em28xx: rename struct em28xx_usb_isoc_bufs to em28xx_usb_bufs
em28xx: rename struct em28xx_usb_isoc_ctl to em28xx_usb_ctl
em28xx: remove obsolete #define EM28XX_URB_TIMEOUT
em28xx: update description of em28xx_irq_callback
em28xx: rename function em28xx_uninit_isoc to em28xx_uninit_usb_xfer
em28xx: create a common function for isoc and bulk URB allocation and
setup
em28xx: create a common function for isoc and bulk USB transfer
initialization
em28xx: clear USB halt/stall condition in em28xx_init_usb_xfer when
using bulk transfers
em28xx: remove double checks for urb->status == -ENOENT in
urb_data_copy functions
em28xx: rename function em28xx_isoc_copy and extend for USB bulk
transfers
em28xx: rename function em28xx_isoc_copy_vbi and extend for USB bulk
transfers
em28xx: rename function em28xx_dvb_isoc_copy and extend for USB bulk
transfers
em28xx: rename usb debugging module parameter and macro
em28xx: rename some USB parameter fields in struct em28xx to clarify
their role
em28xx: add fields for analog and DVB USB transfer type selection to
struct em28xx
em28xx: set USB alternate settings for analog video bulk transfers
properly
em28xx: improve USB endpoint logic, also use bulk transfers
em28xx: add module parameter for selection of the preferred USB
transfer type
em28xx: use common urb data copying function for vbi and non-vbi
devices
em28xx: enable VBI-support for em2840 devices
drivers/media/usb/em28xx/em28xx-cards.c | 114 +++++++++---
drivers/media/usb/em28xx/em28xx-core.c | 250 ++++++++++++++++-----------
drivers/media/usb/em28xx/em28xx-dvb.c | 85 ++++++---
drivers/media/usb/em28xx/em28xx-reg.h | 4 +-
drivers/media/usb/em28xx/em28xx-vbi.c | 4 +-
drivers/media/usb/em28xx/em28xx-video.c | 288 +++++++++++--------------------
drivers/media/usb/em28xx/em28xx.h | 78 +++++----
7 Dateien geändert, 452 Zeilen hinzugefügt(+), 371 Zeilen entfernt(-)
--
1.7.10.4
next reply other threads:[~2012-10-21 17:52 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-21 16:52 Frank Schäfer [this message]
2012-10-21 16:52 ` [PATCH 01/23] em28xx: fix wrong data offset for non-interlaced mode in em28xx_copy_video Frank Schäfer
2012-10-21 16:52 ` [PATCH 02/23] em28xx: clarify meaning of field 'progressive' in struct em28xx Frank Schäfer
2012-10-21 16:52 ` [PATCH 03/23] em28xx: rename isoc packet number constants and parameters Frank Schäfer
2012-10-21 16:52 ` [PATCH 04/23] em28xx: rename struct em28xx_usb_isoc_bufs to em28xx_usb_bufs Frank Schäfer
2012-10-21 16:52 ` [PATCH 05/23] em28xx: rename struct em28xx_usb_isoc_ctl to em28xx_usb_ctl Frank Schäfer
2012-10-21 16:52 ` [PATCH 06/23] em28xx: remove obsolete #define EM28XX_URB_TIMEOUT Frank Schäfer
2012-10-21 16:52 ` [PATCH 07/23] em28xx: update description of em28xx_irq_callback Frank Schäfer
2012-10-21 16:52 ` [PATCH 08/23] em28xx: rename function em28xx_uninit_isoc to em28xx_uninit_usb_xfer Frank Schäfer
2012-10-21 16:52 ` [PATCH 09/23] em28xx: create a common function for isoc and bulk URB allocation and setup Frank Schäfer
2012-10-21 16:52 ` [PATCH 10/23] em28xx: create a common function for isoc and bulk USB transfer initialization Frank Schäfer
2012-10-21 16:52 ` Frank Schäfer
2012-10-21 16:52 ` [PATCH 11/23] em28xx: clear USB halt/stall condition in em28xx_init_usb_xfer when using bulk transfers Frank Schäfer
2012-10-21 16:52 ` [PATCH 12/23] em28xx: remove double checks for urb->status == -ENOENT in urb_data_copy functions Frank Schäfer
2012-10-21 16:52 ` [PATCH 13/23] em28xx: rename function em28xx_isoc_copy and extend for USB bulk transfers Frank Schäfer
2012-10-21 16:52 ` [PATCH 14/23] em28xx: rename function em28xx_isoc_copy_vbi " Frank Schäfer
2012-10-21 16:52 ` [PATCH 15/23] em28xx: rename function em28xx_dvb_isoc_copy " Frank Schäfer
2012-10-21 16:52 ` [PATCH 16/23] em28xx: rename usb debugging module parameter and macro Frank Schäfer
2012-10-21 16:52 ` [PATCH 17/23] em28xx: rename some USB parameter fields in struct em28xx to clarify their role Frank Schäfer
2012-10-21 16:52 ` [PATCH 18/23] em28xx: add fields for analog and DVB USB transfer type selection to struct em28xx Frank Schäfer
2012-10-21 16:52 ` [PATCH 19/23] em28xx: set USB alternate settings for analog video bulk transfers properly Frank Schäfer
2012-10-21 16:52 ` [PATCH 20/23] em28xx: improve USB endpoint logic, also use bulk transfers Frank Schäfer
2012-10-21 16:52 ` [PATCH 21/23] em28xx: add module parameter for selection of the preferred USB transfer type Frank Schäfer
2012-10-21 16:52 ` [PATCH 22/23] em28xx: use common urb data copying function for vbi and non-vbi devices Frank Schäfer
2012-10-21 16:52 ` [PATCH 23/23] em28xx: enable VBI-support for em2840 devices Frank Schäfer
2012-10-21 18:13 ` [PATCH 00/23] em28xx: add support fur USB bulk transfers Devin Heitmueller
2012-10-23 19:02 ` Frank Schäfer
[not found] ` <20121028175752.447c39d5@redhat.com>
2012-10-29 15:33 ` Frank Schäfer
2012-10-29 20:03 ` Mauro Carvalho Chehab
2012-10-29 21:14 ` Frank Schäfer
2012-10-30 3:00 ` Mauro Carvalho Chehab
2012-10-30 4:06 ` Mauro Carvalho Chehab
2012-10-30 13:08 ` Devin Heitmueller
2012-10-30 14:03 ` Mauro Carvalho Chehab
2012-10-30 17:29 ` Frank Schäfer
2012-10-30 17:18 ` Frank Schäfer
2012-11-08 18:03 ` Frank Schäfer
2012-11-09 15:02 ` Mauro Carvalho Chehab
2012-11-09 16:03 ` Frank Schäfer
2012-10-31 1:39 ` Benny Amorsen
2012-10-31 10:57 ` Ezequiel Garcia
2012-10-31 12:03 ` Frank Schäfer
2012-10-31 20:24 ` Benny Amorsen
2012-10-31 20:22 ` Benny Amorsen
2012-10-31 11:50 ` Frank Schäfer
2012-10-31 19:58 ` Benny Amorsen
2012-10-31 20:25 ` Ezequiel Garcia
2012-10-31 22:26 ` Benny Amorsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1350838349-14763-1-git-send-email-fschaefer.oss@googlemail.com \
--to=fschaefer.oss@googlemail.com \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).