Re: [linux-usb-devel] [PATCH] USB: add zr364xx V4L2 driver

"Manu Abraham" <[email protected]>
Newsgroups gmane.comp.video.video4linux,gmane.linux.usb.devel
Message-ID <[email protected]>
On 2/15/07, Trent Piepho <[email protected]> wrote:
> On Wed, 14 Feb 2007, Alan wrote:
> > > > My comment is not very good, in fact on some cameras I need to swap the bytes
> > > > to have correct JPEG data (so this is not an endianness issue I think).
> > > > Maybe there is a macro to swap bytes in a buffer? I cannot find it.
> > >
> > > Sorry, there's a swab32, but no swab16. I misremembered.
> >
> > Its just called "swab" for 16bit values and is a gcc builtin/string
> > function.
>
> The C library function swab() isn't usable in the kernel, as it's not part
> of the kernel's C lib.
>
> Gcc doesn't have a builtin swab/bswap16 yet, maybe it will someday:
> http://gcc.gnu.org/ml/gcc-patches/2006-07/msg00496.html
>
> The kernel does have swab64, swab32, and yes, swab16 macros!  They're all
> defined in the same place in asm/byteorder.h.  There are architecture
> optimized versions for some cases, but not for x86 and swab16 as gcc
> supposedly does ok (or does it? *).
>
> There are three versions of the swabXX functions, a normal one, one that
> takes a pointer to the data, and one that swaps the data in-place.  The
> more specialized versions might be faster in some cases.  I don't see any
> version of that swaps an array of data, like C-lib swab(), which be a lot
> more useful that swab16 vs swab16p vs swab16s, IMHO.


Additionally we have some bswap* functions in dvb-apps, if it helps in some way

http://linuxtv.org/hg/dvb-apps?f=15989fca7c14;file=lib/libucsi/endianops.h;style=gitweb


Manu

--
video4linux-list mailing list
Unsubscribe mailto:[email protected]?subject=unsubscribe
https://www.redhat.com/mailman/listinfo/video4linux-list
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.