diff mbox

fdt: update embedded header file from upstream to fix compilation

Message ID 5188F66F.80201@linaro.org
State New
Headers show

Commit Message

Andre Przywara May 7, 2013, 12:41 p.m. UTC
(forgot to CC:, sorry)

-------- Original Message --------
Subject: [PATCH] fdt: update embedded header file from upstream to fix 
compilation
Date: Tue,  7 May 2013 14:36:59 +0200
From: Andre Przywara <andre.przywara@linaro.org>
To: aliguori@us.ibm.com
CC: qemu-devel@nongnu.org, jdl@jdl.com, kim.phillips@freescale.com, 
hollisb@us.ibm.com, Andre Przywara <andre.przywara@linaro.org>

Upstream dtc.git introduced a change in libfdt_env.h, which breaks
compilation with QEMU's version of it:

   CC arm-softmmu/device_tree.o
In file included from /usr/include/libfdt.h:55:0,
                  from /src/qemu.git/device_tree.c:28:
/usr/include/fdt.h:7:2: error: unknown type name 'fdt32_t'
    ...

The culprit is:
commit feafcd972cb744750a65728440c99526e6199a6d
Author: Kim Phillips <kim.phillips@freescale.com>
Date:   Wed Nov 28 17:33:01 2012 -0600

     dtc/libfdt: introduce fdt types for annotation by endian checkers
     ...

Pull the new definitions into QEMU's version of the file. This change
also works with older installed versions of dtc.
The upstream version got a "GPL or BSD" dual license header meanwhile.
I retained the original GPL license header from QEMU, only added
the original copyrights.

Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
---
  include/libfdt_env.h | 25 ++++++++++++++++++++-----
  1 file changed, 20 insertions(+), 5 deletions(-)
diff mbox

Patch

diff --git a/include/libfdt_env.h b/include/libfdt_env.h
index 3667d4c..aad54bb 100644
--- a/include/libfdt_env.h
+++ b/include/libfdt_env.h
@@ -1,4 +1,12 @@ 
+#ifndef _LIBFDT_ENV_H
+#define _LIBFDT_ENV_H
  /*
+ * libfdt - Flat Device Tree manipulation
+ * Copyright (C) 2006 David Gibson, IBM Corporation.
+ * Copyright 2012 Kim Phillips, Freescale Semiconductor.
+ * Adaptation to QEMU: Copyright IBM Corp. 2008
+ *                     by Hollis Blanchard <hollisb@us.ibm.com>
+ *
   * This program is free software; you can redistribute it and/or modify
   * it under the terms of the GNU General Public License, version 2, as
   * published by the Free Software Foundation.
@@ -11,16 +19,23 @@ 
   * You should have received a copy of the GNU General Public License
   * along with this program; if not, see <http://www.gnu.org/licenses/>.
   *
- * Copyright IBM Corp. 2008
- * Authors: Hollis Blanchard <hollisb@us.ibm.com>
   *
   */

-#ifndef _LIBFDT_ENV_H
-#define _LIBFDT_ENV_H
-
  #include "qemu/bswap.h"

+#ifdef __CHECKER__
+#define __force __attribute__((force))
+#define __bitwise __attribute__((bitwise))
+#else
+#define __force
+#define __bitwise
+#endif
+
+typedef uint16_t __bitwise fdt16_t;
+typedef uint32_t __bitwise fdt32_t;
+typedef uint64_t __bitwise fdt64_t;
+
  #ifdef HOST_WORDS_BIGENDIAN
  #define fdt32_to_cpu(x)  (x)
  #define cpu_to_fdt32(x)  (x)