From: Kyle Guinn <elyk03@gmail.com>
To: kilgota@banach.math.auburn.edu
Cc: Hans de Goede <hdegoede@redhat.com>,
Jean-Francois Moine <moinejf@free.fr>,
linux-media@vger.kernel.org
Subject: Re: RFC on proposed patches to mr97310a.c for gspca and v4l
Date: Thu, 5 Mar 2009 19:21:56 -0600 [thread overview]
Message-ID: <200903051921.57412.elyk03@gmail.com> (raw)
In-Reply-To: <alpine.LNX.2.00.0903051457410.27979@banach.math.auburn.edu>
On Thursday 05 March 2009 14:58:54 kilgota@banach.math.auburn.edu wrote:
> Well, here is the code in the function. I don't see. So can you explain?
> Perhaps I am dense.
>
> {
> struct sd *sd = (struct sd *) gspca_dev;
> int i;
>
> /* Search for the SOF marker (fixed part) in the header */
> for (i = 0; i < len; i++) {
> if (m[i] == pac_sof_marker[sd->sof_read]) {
> sd->sof_read++;
> if (sd->sof_read == sizeof(pac_sof_marker)) {
> PDEBUG(D_FRAM,
> "SOF found, bytes to analyze: %u."
> " Frame starts at byte #%u",
> len, i + 1);
> sd->sof_read = 0;
> return m + i + 1;
> }
> } else {
> sd->sof_read = 0;
> }
> }
>
> return NULL;
> }
We send a chunk of data to this function, as pointed to by m. It could be the
entire transfer buffer or only a part of it, but that doesn't matter. If the
chunk of data ends with FF FF 00 then sd->sof_read will be set to 3 when the
function exits. On the next call it picks up where it left off and looks for
byte 4 of the SOF.
Way back when, I said to copy sd->sof_read bytes from pac_sof_marker if you
want the portion of the SOF that was in the previous transfer. There's no
need to buffer 4 bytes from the previous transfer because the SOF is
_constant_.
So, if it's constant, why do we need to copy it to userspace at all? If we
do, then every frame buffer begins with a constant, useless FF FF 00 FF 96.
The "reassurance" doesn't matter because the frame _must_ have started with
FF FF 00 FF 96 to get there in the first place. I agree with Hans that it
isn't necessary, and by not sending it to userspace we simplify the kernel
driver.
But what if it's not constant? Maybe the SOF is 4 bytes and the 5th byte is
some useful data that, 99.9% of the time, is set to 96? This is the only
reason I see for keeping the SOF.
-Kyle
next prev parent reply other threads:[~2009-03-06 1:22 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-17 19:09 MR97310A and other image formats Jean-Francois Moine
2009-02-17 19:35 ` Thomas Kaiser
2009-02-18 9:25 ` Jean-Francois Moine
2009-02-18 12:58 ` Thomas Kaiser
2009-02-18 19:17 ` Jean-Francois Moine
2009-02-17 19:43 ` Thomas Kaiser
2009-02-18 1:07 ` Kyle Guinn
2009-02-19 0:40 ` kilgota
2009-03-04 0:12 ` RFC on proposed patches to mr97310a.c for gspca and v4l kilgota
2009-03-04 2:50 ` Kyle Guinn
2009-03-04 5:21 ` kilgota
2009-03-04 8:41 ` Thomas Kaiser
2009-03-04 8:54 ` Thomas Kaiser
2009-03-04 19:01 ` kilgota
2009-03-05 13:02 ` Thomas Kaiser
2009-03-05 18:29 ` kilgota
2009-03-05 19:19 ` Thomas Kaiser
2009-03-05 19:45 ` kilgota
2009-03-05 20:29 ` Thomas Kaiser
2009-03-05 20:55 ` kilgota
2009-03-05 20:51 ` Thomas Kaiser
2009-04-15 23:59 ` Some questions about mr97310 controls (continuing previous thread on mr97310a.c) Theodore Kilgore
2009-04-16 16:10 ` Thomas Kaiser
2009-04-16 22:50 ` Theodore Kilgore
2009-04-17 8:36 ` Hans de Goede
2009-05-02 1:47 ` Progress with the MR97310A "CIF" cameras Theodore Kilgore
2009-04-16 5:14 ` RFC on proposed patches to mr97310a.c for gspca and v4l Kyle Guinn
2009-04-16 18:22 ` Theodore Kilgore
2009-04-17 4:33 ` Kyle Guinn
2009-04-17 17:50 ` Theodore Kilgore
2009-04-18 0:04 ` Kyle Guinn
2009-04-18 0:43 ` Theodore Kilgore
2009-04-21 1:18 ` RFC on proposed patches to mr97310a.c for gspca and v4l (headers) Theodore Kilgore
2009-04-21 2:44 ` Theodore Kilgore
2009-05-15 22:31 ` Preliminary results with an SN9C2028 camera Theodore Kilgore
2009-05-19 7:56 ` Hans de Goede
2009-05-19 18:18 ` Theodore Kilgore
2009-03-04 8:39 ` RFC on proposed patches to mr97310a.c for gspca and v4l Hans de Goede
2009-03-04 18:46 ` kilgota
2009-03-05 1:33 ` Kyle Guinn
2009-03-05 7:01 ` Hans de Goede
2009-03-04 8:35 ` Hans de Goede
2009-03-05 2:49 ` Kyle Guinn
2009-03-05 4:34 ` kilgota
2009-03-05 5:54 ` Kyle Guinn
2009-03-05 6:47 ` kilgota
2009-03-05 7:00 ` Hans de Goede
2009-03-05 19:08 ` kilgota
2009-03-05 19:07 ` Hans de Goede
2009-03-05 20:42 ` kilgota
2009-03-05 20:40 ` Hans de Goede
2009-03-05 20:58 ` kilgota
2009-03-06 1:21 ` Kyle Guinn [this message]
2009-03-06 1:57 ` kilgota
2009-03-28 22:42 ` [PATCH] to add new camera in gspca/mr97310a.c Theodore Kilgore
2009-02-19 18:17 ` MR97310A and other image formats kilgota
2009-02-19 19:17 ` Thomas Kaiser
2009-02-19 21:54 ` kilgota
2009-02-19 22:45 ` Thomas Kaiser
2009-02-19 23:50 ` kilgota
2009-02-20 0:52 ` Thomas Kaiser
2009-02-20 1:32 ` kilgota
2009-02-20 8:00 ` Thomas Kaiser
2009-02-20 18:45 ` kilgota
2009-02-20 19:05 ` Thomas Kaiser
2009-02-20 20:26 ` kilgota
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=200903051921.57412.elyk03@gmail.com \
--to=elyk03@gmail.com \
--cc=hdegoede@redhat.com \
--cc=kilgota@banach.math.auburn.edu \
--cc=linux-media@vger.kernel.org \
--cc=moinejf@free.fr \
/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