浏览代码

sh: Define _ebss for uClinux MTD map driver.

The uClinux MTD device uses _ebss, add the symbol and corresponding
export.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Paul Mundt 17 年之前
父节点
当前提交
1f91bbb584
共有 3 个文件被更改,包括 4 次插入1 次删除
  1. 2 1
      arch/sh/kernel/sh_ksyms.c
  2. 1 0
      arch/sh/kernel/vmlinux.lds.S
  3. 1 0
      include/asm-sh/sections.h

+ 2 - 1
arch/sh/kernel/sh_ksyms.c

@@ -8,7 +8,7 @@
 #include <linux/vmalloc.h>
 #include <linux/vmalloc.h>
 #include <linux/pci.h>
 #include <linux/pci.h>
 #include <linux/irq.h>
 #include <linux/irq.h>
-
+#include <asm/sections.h>
 #include <asm/semaphore.h>
 #include <asm/semaphore.h>
 #include <asm/processor.h>
 #include <asm/processor.h>
 #include <asm/uaccess.h>
 #include <asm/uaccess.h>
@@ -149,3 +149,4 @@ EXPORT_SYMBOL(csum_ipv6_magic);
 #endif
 #endif
 EXPORT_SYMBOL(clear_page);
 EXPORT_SYMBOL(clear_page);
 EXPORT_SYMBOL(__clear_user);
 EXPORT_SYMBOL(__clear_user);
+EXPORT_SYMBOL(_ebss);

+ 1 - 0
arch/sh/kernel/vmlinux.lds.S

@@ -107,6 +107,7 @@ SECTIONS
   	*(.bss.page_aligned)
   	*(.bss.page_aligned)
   	*(.bss)
   	*(.bss)
 	. = ALIGN(4);
 	. = ALIGN(4);
+	_ebss = .;			/* uClinux MTD sucks */
 	_end = . ;
 	_end = . ;
   }
   }
 
 

+ 1 - 0
include/asm-sh/sections.h

@@ -4,6 +4,7 @@
 #include <asm-generic/sections.h>
 #include <asm-generic/sections.h>
 
 
 extern long __machvec_start, __machvec_end;
 extern long __machvec_start, __machvec_end;
+extern char _ebss[];
 
 
 #endif /* __ASM_SH_SECTIONS_H */
 #endif /* __ASM_SH_SECTIONS_H */