If this implementation is correct, the implementation still can be
improved (at least, it is not quite well to hard code the architecture
related code in "kernel/" and "usr/" sub-directory).

But it seems, I have no right to add or move files, so welcome any
members help do it.

And welcome any additional suggestions or completions.

Thanks.

On 08/26/2013 06:42 PM, Chen Gang wrote:
> Need add related prefix for h8300, or can not pass compiling by the
> latest linker.
> 
> The related error (allmodconfig for h8300):
> 
>   /usr/local/bin/h8300-gchen-elf-ld: h8300 architecture of input file 
> `usr/initramfs_data.o' is incompatible with h8300h output
>   /usr/local/bin/h8300-gchen-elf-ld: h8300 architecture of input file 
> `kernel/modsign_certificate.o' is incompatible with h8300h output
> 
> The cross-compiler's information:
> 
>   [root@dhcp122 linux-next]# /usr/local/bin/h8300-gchen-elf-ld -v
>   GNU ld (GNU Binutils) 2.22
>   [root@dhcp122 linux-next]# /usr/local/bin/h8300-gchen-elf-as -v
>   GNU assembler version 2.22 (h8300-gchen-elf) using BFD version (GNU 
> Binutils) 2.22
>   
>   [root@dhcp122 linux-next]# /usr/local/bin/h8300-gchen-elf-gcc -v
>   Using built-in specs.
>   COLLECT_GCC=/usr/local/bin/h8300-gchen-elf-gcc
>   COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/h8300-gchen-elf/4.8.0/lto-wrapper
>   Target: h8300-gchen-elf
>   Configured with: ../gcc-4.8.0/configure --target=h8300-gchen-elf 
> --without-header --disable-nls --enable-language=c --disable-threads 
> --disable-shared --enable-werror=no
>   Thread model: single
>   gcc version 4.8.0 (GCC) 
> 
> 
> Signed-off-by: Chen Gang <gang.c...@asianux.com>
> ---
>  kernel/modsign_certificate.S |    7 +++++++
>  usr/initramfs_data.S         |    7 +++++++
>  2 files changed, 14 insertions(+), 0 deletions(-)
> 
> diff --git a/kernel/modsign_certificate.S b/kernel/modsign_certificate.S
> index 4a9a86d..d24acac 100644
> --- a/kernel/modsign_certificate.S
> +++ b/kernel/modsign_certificate.S
> @@ -1,5 +1,12 @@
>  #include <linux/export.h>
>  
> +#if defined(CONFIG_CPU_H8300H)
> +     .h8300h
> +#endif
> +#if defined(CONFIG_CPU_H8S)
> +     .h8300s
> +#endif
> +
>  #define GLOBAL(name) \
>       .globl VMLINUX_SYMBOL(name);    \
>       VMLINUX_SYMBOL(name):
> diff --git a/usr/initramfs_data.S b/usr/initramfs_data.S
> index c14322d..6a6c106 100644
> --- a/usr/initramfs_data.S
> +++ b/usr/initramfs_data.S
> @@ -24,6 +24,13 @@
>  #include <linux/stringify.h>
>  #include <asm-generic/vmlinux.lds.h>
>  
> +#if defined(CONFIG_CPU_H8300H)
> +     .h8300h
> +#endif
> +#if defined(CONFIG_CPU_H8S)
> +     .h8300s
> +#endif
> +
>  .section .init.ramfs,"a"
>  __irf_start:
>  .incbin __stringify(INITRAMFS_IMAGE)
> 


-- 
Chen Gang
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to