On 08/30/2013 12:32 PM, Guenter Roeck wrote:On 08/29/2013 08:59 PM, Chen Gang wrote:The related error (allmodconfig for h8300):
arch/h8300/kernel/setup.c: In function 'setup_arch':
arch/h8300/kernel/setup.c:103:3: error: 'initrd_start' undeclared
(first use in this function)
initrd_start = memory_start;
^
arch/h8300/kernel/setup.c:103:3: note: each undeclared identifier
is reported only once for each function it appears in
arch/h8300/kernel/setup.c:104:3: error: 'initrd_end' undeclared
(first use in this function)
initrd_end = memory_start += be32_to_cpu(((unsigned long *)
(memory_start))[2]);
^
Signed-off-by: Chen Gang <gang.chen@xxxxxxxxxxx>
---
arch/h8300/kernel/setup.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/arch/h8300/kernel/setup.c b/arch/h8300/kernel/setup.c
index d0b1607..85639a1 100644
--- a/arch/h8300/kernel/setup.c
+++ b/arch/h8300/kernel/setup.c
@@ -47,6 +47,10 @@
#include <asm/regs267x.h>
#endif
+#if defined(CONFIG_BLK_DEV_INITRD)
+#include <linux/initrd.h>
+#endif
+
Is the #ifdef/#endif really needed ? If not you should drop it.
"linux/initrd.h" is needed by 'initrd_start' and 'initrd_end' when
BLK_DEV_INITRD enabled.
'memory_start' is defined within this file, and also only one place may
use "linux/initrd.h" within this file.
So if BLK_DEV_INITRD disabled, do not need "linux/initrd.h" either.