Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
b4916f8c
Commit
b4916f8c
authored
Apr 13, 2008
by
Mauro Carvalho Chehab
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
V4L/DVB (7564): em28xx: Some fixes to display logic
Signed-off-by:
Mauro Carvalho Chehab
<
mchehab@infradead.org
>
parent
dbecb44c
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
19 additions
and
15 deletions
+19
-15
drivers/media/video/em28xx/em28xx-video.c
drivers/media/video/em28xx/em28xx-video.c
+16
-15
drivers/media/video/em28xx/em28xx.h
drivers/media/video/em28xx/em28xx.h
+3
-0
No files found.
drivers/media/video/em28xx/em28xx-video.c
View file @
b4916f8c
...
...
@@ -365,32 +365,33 @@ static inline int em28xx_isoc_copy(struct urb *urb)
/* FIXME: incomplete buffer checks where removed to make
logic simpler. Impacts of those changes should be evaluated
*/
if
(
p
[
0
]
==
0x33
&&
p
[
1
]
==
0x95
&&
p
[
2
]
==
0x00
)
{
em28xx_isocdbg
(
"VBI HEADER!!!
\n
"
);
/* FIXME: Should add vbi copy */
continue
;
}
if
(
p
[
0
]
==
0x22
&&
p
[
1
]
==
0x5a
)
{
em28xx_isocdbg
(
"Video frame %d, length=%i, %s
\n
"
,
p
[
2
],
len
,
(
p
[
2
]
&
1
)
?
"odd"
:
"even"
);
if
(
p
[
2
]
&
1
)
buf
->
top_field
=
0
;
else
{
if
(
buf
->
receiving
)
{
buffer_filled
(
dev
,
dma_q
,
buf
);
rc
=
get_next_buf
(
dma_q
,
&
buf
);
if
(
rc
<=
0
)
return
rc
;
outp
=
videobuf_to_vmalloc
(
&
buf
->
vb
);
}
else
buf
->
top_field
=
1
;
// if (dev->isoc_ctl.last_field && !buf->top_field) {
if
(
dev
->
isoc_ctl
.
last_field
!=
buf
->
top_field
)
{
buffer_filled
(
dev
,
dma_q
,
buf
);
rc
=
get_next_buf
(
dma_q
,
&
buf
);
if
(
rc
<=
0
)
return
rc
;
outp
=
videobuf_to_vmalloc
(
&
buf
->
vb
);
}
buf
->
receiving
=
1
;
dev
->
isoc_ctl
.
last_field
=
buf
->
top_field
;
dma_q
->
pos
=
0
;
}
else
if
(
p
[
0
]
==
0x33
&&
p
[
1
]
==
0x95
&&
p
[
2
]
==
0x00
)
{
em28xx_isocdbg
(
"VBI HEADER!!!
\n
"
);
}
em28xx_copy_video
(
dev
,
dma_q
,
buf
,
p
,
outp
,
len
);
/* FIXME: Should add vbi copy */
}
return
rc
;
}
...
...
drivers/media/video/em28xx/em28xx.h
View file @
b4916f8c
...
...
@@ -114,6 +114,9 @@ struct em28xx_usb_isoc_ctl {
/* Stores already requested buffers */
struct
em28xx_buffer
*
buf
;
/* Store last filled frame */
int
last_field
;
/* Stores the number of received fields */
int
nfields
;
};
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment