#include <linux/types.h>
#include <linux/videodev2.h>
-#if WORDS_BIGENDIAN
-# define cc0(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 24))
-# define cc1(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 16))
-# define cc2(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 8))
-# define cc3(arg) ((unsigned int) (unsigned char) (arg))
-# define fourcc(a0, a1, a2, a3) \
- ((unsigned int)(a3) | \
- ((unsigned int)(a2) << 8) | \
- ((unsigned int)(a1) << 16) | \
- ((unsigned int)(a0) << 24))
-#else
-# define cc0(arg) ((unsigned int) (unsigned char) (arg))
-# define cc1(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 8))
-# define cc2(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 16))
-# define cc3(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 24))
-# define fourcc(a0, a1, a2, a3) \
+#define cc0(arg) ((unsigned int) (unsigned char) (arg))
+#define cc1(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 8))
+#define cc2(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 16))
+#define cc3(arg) ((unsigned int) (unsigned char) ((unsigned int) (arg) >> 24))
+#define fourcc(a0, a1, a2, a3) \
((unsigned int)(a0) | \
((unsigned int)(a1) << 8) | \
((unsigned int)(a2) << 16) | \
((unsigned int)(a3) << 24))
-#endif
static const unsigned int magic = 0xdeadbeef;
static void
print_pixelformat(uint32_t fourcc)
{
- const union {
- uint32_t pixelformat;
- unsigned char cc[sizeof(uint32_t)];
- } u = {
-#if WORDS_BIGENDIAN
- .cc = {
- (unsigned char) (fourcc >> 24),
- (unsigned char) (fourcc >> 16),
- (unsigned char) (fourcc >> 8),
- (unsigned char) fourcc
- }
-#else
- .pixelformat = fourcc
-#endif
+ unsigned char a[] = {
+ (unsigned char) fourcc,
+ (unsigned char) (fourcc >> 8),
+ (unsigned char) (fourcc >> 16),
+ (unsigned char) (fourcc >> 24),
};
unsigned int i;
tprints("v4l2_fourcc(");
- for (i = 0; i < sizeof(u.cc); ++i) {
- unsigned char c = u.cc[i];
+ for (i = 0; i < ARRAY_SIZE(a); ++i) {
+ unsigned char c = a[i];
if (i)
tprints(", ");