History log of /openbmc/linux/drivers/media/usb/em28xx/em28xx-video.c (Results 151 – 175 of 366)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 50fdf40f 07-Sep-2012 Hans Verkuil <hans.verkuil@cisco.com>

[media] em28xx: add support for control events

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Cheha

[media] em28xx: add support for control events

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 69a61642 07-Sep-2012 Hans Verkuil <hans.verkuil@cisco.com>

[media] em28xx: convert to v4l2_fh, fix priority handling

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Car

[media] em28xx: convert to v4l2_fh, fix priority handling

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 081b945e 07-Sep-2012 Hans Verkuil <hans.verkuil@cisco.com>

[media] em28xx: convert to the control framework

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Che

[media] em28xx: convert to the control framework

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 20deebfe 06-Sep-2012 Hans Verkuil <hans.verkuil@cisco.com>

[media] em28xx: fix tuner/frequency handling

v4l2-compliance found problems with frequency clamping that wasn't
reported correctly and missing tuner index checks.
Also removed unnecessary tuner type

[media] em28xx: fix tuner/frequency handling

v4l2-compliance found problems with frequency clamping that wasn't
reported correctly and missing tuner index checks.
Also removed unnecessary tuner type checks (these are now done by the
v4l2 core).

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 319a55fb 06-Sep-2012 Hans Verkuil <hans.verkuil@cisco.com>

[media] em28xx: fix VIDIOC_DBG_G_CHIP_IDENT compliance errors

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro

[media] em28xx: fix VIDIOC_DBG_G_CHIP_IDENT compliance errors

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# dd5a4363 06-Sep-2012 Hans Verkuil <hans.verkuil@cisco.com>

[media] em28xx: remove bogus input/audio ioctls for the radio device

Radio devices should not implement those ioctls.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitm

[media] em28xx: remove bogus input/audio ioctls for the radio device

Radio devices should not implement those ioctls.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# a9d79fe5 06-Sep-2012 Hans Verkuil <hans.verkuil@cisco.com>

[media] em28xx: fix querycap

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.

[media] em28xx: fix querycap

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 36016a35 08-Dec-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: clean up and unify functions em28xx_copy_vbi() em28xx_copy_video()

The code in em28xx_vbi_copy can be simplified a lot.
Also rename some variables to something more meaningful and fi

[media] em28xx: clean up and unify functions em28xx_copy_vbi() em28xx_copy_video()

The code in em28xx_vbi_copy can be simplified a lot.
Also rename some variables to something more meaningful and fix+add the
function descriptions.

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 227b7c90 08-Dec-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: move the em2710/em2750/em28xx specific frame data processing code to a separate function

em28xx_urb_data_copy() actually consists of two parts:
USB urb processing (checks, data extra

[media] em28xx: move the em2710/em2750/em28xx specific frame data processing code to a separate function

em28xx_urb_data_copy() actually consists of two parts:
USB urb processing (checks, data extraction) and frame data packet processing.
Move the latter to a separate function and call it from em28xx_urb_data_copy()
for each data packet.
The em25xx, em2760, em2765 (and likely em277x) chip variants are using a
different frame data format, for which support will be added later with
another function.
This reduces the size of em28xx_urb_data_copy() and makes the code much more
readable. While we're at it, clean up the code a bit (rename some variables to
something more meaningful, improve some comments etc.)

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# e04c00d9 08-Dec-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: em28xx_urb_data_copy(): move duplicate code for capture_type=0 and capture_type=2 to a function

Reduce code duplication by moving the duplicate code for dev->capture_type=0
(vbi star

[media] em28xx: em28xx_urb_data_copy(): move duplicate code for capture_type=0 and capture_type=2 to a function

Reduce code duplication by moving the duplicate code for dev->capture_type=0
(vbi start) and dev->capture_type=2 (video start) to a function.
The same function will also be called by the (not yet existing) em25xx frame
data processing code.

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 4078d625 08-Dec-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: move caching of pointer to vmalloc memory in videobuf to struct em28xx_buffer

In the current code em28xx_urb_data_copy() caches the pointer to the vmalloc
memory in videobuf locally.

[media] em28xx: move caching of pointer to vmalloc memory in videobuf to struct em28xx_buffer

In the current code em28xx_urb_data_copy() caches the pointer to the vmalloc
memory in videobuf locally.
The alternative would be to call videobuf_to_vmalloc() for each processed USB
data packet (isoc USB transfers => 64 times per URB) in the em28xx_copy_*()
functions.
With the next commits, the data processing code will be split into functions
for serveral reasons:
- em28xx_urb_data_copy() is generally way to long, making it less readable
- there is code duplication between VBI and video data processing
- support for em25xx data processing (uses a different header and frame
end signaling mechanism) will be added
This would require extensive usage of pointer-pointers, which usually makes the
code less readable and prone to bugs.
The better solution is to cache the pointer in struct em28xx_buffer.
This also improves consistency, because we already track the buffer fill count there.

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# a4837015 08-Dec-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: refactor VBI data processing code in em28xx_urb_data_copy()

When a new frame header is detected in em28xx_urb_data_copy() and the data
packet contains both, VBI data and video data,

[media] em28xx: refactor VBI data processing code in em28xx_urb_data_copy()

When a new frame header is detected in em28xx_urb_data_copy() and the data
packet contains both, VBI data and video data, the prevoius VBI buffer doesn't
get finished and is overwritten with the new VBI data.
This bug is not triggered with isochronous USB transfers, because the data
packetes are much smaller than the VBI data size.
But when using USB bulk transfers, the whole data of an URB is treated as
single packet, which is usually much larger then the VBI data size.
Refactor the VBI data processing code to fix this bug, but also to simplify the
code and make it similar to the video data processing code part (which allows
further code abstraction/unification in the future).
The changes have been tested with device "Hauppauge HVR-900".

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 8732533b 08-Dec-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: move field 'pos' from struct em28xx_dmaqueue to struct em28xx_buffer

This field is used to keep track of the current memory position in the buffer,
not in the dma queue, so move it t

[media] em28xx: move field 'pos' from struct em28xx_dmaqueue to struct em28xx_buffer

This field is used to keep track of the current memory position in the buffer,
not in the dma queue, so move it to right place.
This also allows us to get rid of the struct em28xx_dmaqueue pointer parameter
in functions em28xx_copy_video() and em28xx_copy_vbi().

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 948a49aa 08-Dec-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: use common function for video and vbi buffer completion

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>


# 24a6d849 08-Dec-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: refactor get_next_buf() and use it for vbi data, too

get_next_buf() and vbi_get_next_buf() do exactly the same just with a
different dma queue and buffer. Saving the new buffer point

[media] em28xx: refactor get_next_buf() and use it for vbi data, too

get_next_buf() and vbi_get_next_buf() do exactly the same just with a
different dma queue and buffer. Saving the new buffer pointer back to the
device struct in em28xx_urb_data_copy() instead of doing this from inside
these functions makes it possible to get rid of one of them.
Also refactor the function parameters and return type:
- pass a pointer to struct em28xx as parameter (instead of obtaining the
pointer from the dma queue pointer with the container_of macro) like we do
it in all other functions
- instead of using a pointer-pointer, return the pointer to the new buffer
as return value of the function

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 960da93b 25-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: use common urb data copying function for vbi and non-vbi data streams

em28xx_urb_data_copy_vbi() is actually an extended version of
em28xx_urb_data_copy(). With the preceding fixes a

[media] em28xx: use common urb data copying function for vbi and non-vbi data streams

em28xx_urb_data_copy_vbi() is actually an extended version of
em28xx_urb_data_copy(). With the preceding fixes and improvements, it works
fine with both, vbi and non-vbi data streams without performance impacts.
So rename em28xx_urb_data_copy_vbi() to em28xx_urb_data_copy(), delete the
the old implementation of em28xx_urb_data_copy() and change the code to use
this function for both data stream types.
Tested with "SilverCrest 1.3 MPix webcam" (progressive, non-vbi) and
"Hauppauge HVR-900 (65008/A1C0)" (interlaced, vbi enabled and disabled).

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 79ff8697 25-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: em28xx_urb_data_copy_vbi(): calculate vbi_size only if needed

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>


# 0455eebf 25-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: fix capture type setting in em28xx_urb_data_copy_vbi()

Set capture type to 1 (video start) when the video frame start header is
detected. This bug didn't cause any trouble, because t

[media] em28xx: fix capture type setting in em28xx_urb_data_copy_vbi()

Set capture type to 1 (video start) when the video frame start header is
detected. This bug didn't cause any trouble, because this type of header is
never received in vbi mode.
Fix it, because we want to use this function with disabled vbi in the future.
Also start with capture type -1 to avoid processing of corrupted/incomplete
frame data which is usually received at streaming start (especially when
USB bulk transfers are used).

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 3610f58b 25-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: make sure the packet size is >= 4 before checking for headers in em28xx_urb_data_copy_vbi()

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho

[media] em28xx: make sure the packet size is >= 4 before checking for headers in em28xx_urb_data_copy_vbi()

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# b77e0c08 25-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: fix video data start position calculation in em28xx_urb_data_copy_vbi()

The header check/removal code at the end of function em28xx_urb_data_copy_vbi()
is obsolete, because this is a

[media] em28xx: fix video data start position calculation in em28xx_urb_data_copy_vbi()

The header check/removal code at the end of function em28xx_urb_data_copy_vbi()
is obsolete, because this is already done earlier in this function.
In fact it is incomplete (doesn't check for vbi header) and causes trouble
when the first data bytes are the same as header bytes (which is fortunately
very unlikely).

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# c647a91a 08-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: improve USB endpoint logic, also use bulk transfers

The current enpoint logic ignores all bulk endpoints and uses
a fixed mapping between endpint addresses and the supported
data str

[media] em28xx: improve USB endpoint logic, also use bulk transfers

The current enpoint logic ignores all bulk endpoints and uses
a fixed mapping between endpint addresses and the supported
data stream types (analog/audio/DVB):
Ep 0x82, isoc => analog
Ep 0x83, isoc => audio
Ep 0x84, isoc => DVB
Now that the code can also do bulk transfers, the endpoint
logic has to be extended to also consider bulk endpoints.
The new logic preserves backwards compatibility and reflects
the endpoint configurations we have seen so far:
Ep 0x82, isoc => analog
Ep 0x82, bulk => analog
Ep 0x83, isoc* => audio
Ep 0x84, isoc => digital
Ep 0x84, bulk => analog or digital**
(*: audio should always be isoc)
(**: analog, if ep 0x82 is isoc, otherwise digital)

[mchehab@redhat.com: Fix a CodingStyle issue: don't break strings
into separate lines]

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 0cf544a6 08-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: rename some USB parameter fields in struct em28xx to clarify their role

Also improve the comments.

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro C

[media] em28xx: rename some USB parameter fields in struct em28xx to clarify their role

Also improve the comments.

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 4601cc39 08-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: rename function em28xx_isoc_copy_vbi and extend for USB bulk transfers

The URB data processing for bulk transfers is very similar to what
is done with isoc transfers, so create a com

[media] em28xx: rename function em28xx_isoc_copy_vbi and extend for USB bulk transfers

The URB data processing for bulk transfers is very similar to what
is done with isoc transfers, so create a common function that works
with both transfer types based on the existing isoc function.

[mchehab@redhat.com: Fix a CodingStyle issue: don't break strings
into separate lines]

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 0fa4a402 08-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: rename function em28xx_isoc_copy and extend for USB bulk transfers

The URB data processing for bulk transfers is very similar to what
is done with isoc transfers, so create a common

[media] em28xx: rename function em28xx_isoc_copy and extend for USB bulk transfers

The URB data processing for bulk transfers is very similar to what
is done with isoc transfers, so create a common function that works
with both transfer types based on the existing isoc function.

[mchehab@redhat.com: Fix a CodingStyle issue: don't break strings
into separate lines]

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


# 1653cb0c 08-Nov-2012 Frank Schaefer <fschaefer.oss@googlemail.com>

[media] em28xx: remove double checks for urb->status == -ENOENT in urb_data_copy functions

This check is already done in the URB handler
em28xx_irq_callback before calling these functions.

Signed-o

[media] em28xx: remove double checks for urb->status == -ENOENT in urb_data_copy functions

This check is already done in the URB handler
em28xx_irq_callback before calling these functions.

Signed-off-by: Frank Schäfer <fschaefer.oss@googlemail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>

show more ...


12345678910>>...15