
Hello Masahiro,
Am 08.07.2015 um 06:29 schrieb Masahiro Yamada:
The macro cpu_relax() is defined by several headers in different ways.
arch/{arm,avr32,mips}/include/asm/processor.h defines it as follows: #define cpu_relax() barrier()
On the other hand, include/linux/compat.h defines it as follows: #define cpu_relax() do {} while (0)
If both headers are included from the same source file, the warning warning: "cpu_relax" redefined [enabled by default] is displayed.
It effectively makes it impossible to include <linux/compat.h> from some sources. Drop the latter.
Signed-off-by: Masahiro Yamada yamada.masahiro@socionext.com
drivers/usb/musb-new/musb_gadget_ep0.c | 1 + include/linux/compat.h | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/usb/musb-new/musb_gadget_ep0.c b/drivers/usb/musb-new/musb_gadget_ep0.c index 5a71501..415a9f2 100644 --- a/drivers/usb/musb-new/musb_gadget_ep0.c +++ b/drivers/usb/musb-new/musb_gadget_ep0.c @@ -43,6 +43,7 @@ #else #include <common.h> #include "linux-compat.h" +#include <asm/processor.h> #endif
#include "musb_core.h" diff --git a/include/linux/compat.h b/include/linux/compat.h index 6ff3915..da1420f 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h @@ -315,8 +315,6 @@ struct notifier_block {};
typedef unsigned long dmaaddr_t;
-#define cpu_relax() do {} while (0)
doesn;t this lead to compie errors on archs, which does not define this?
If so, we should add this in arch/{xxx}/include/asm/processor.h
beside of that. Reviewed-by: Heiko Schocher hs@denx.de
bye, Heiko
#define pm_runtime_get_sync(dev) do {} while (0) #define pm_runtime_put(dev) do {} while (0) #define pm_runtime_put_sync(dev) do {} while (0)