From 56edefc98a1c3c8124823ed45260c1c912f81bb3 Mon Sep 17 00:00:00 2001 From: Guenter Roeck Date: Tue, 10 Nov 2015 14:04:35 -0800 Subject: cris: debugport: Fix section mismatches Section mismatches can now cause build failures, such as for cris:allnoconfig. Rename affected variables to end with _console to make section mismatch checks happy. Signed-off-by: Guenter Roeck Signed-off-by: Jesper Nilsson --- arch/cris/arch-v10/kernel/debugport.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) (limited to 'arch/cris') diff --git a/arch/cris/arch-v10/kernel/debugport.c b/arch/cris/arch-v10/kernel/debugport.c index 7d307cc..b6549e5 100644 --- a/arch/cris/arch-v10/kernel/debugport.c +++ b/arch/cris/arch-v10/kernel/debugport.c @@ -468,7 +468,7 @@ etrax_console_device(struct console* co, int *index) #endif } -static struct console sercons = { +static struct console ser_console = { name : "ttyS", write: console_write, read : NULL, @@ -480,7 +480,7 @@ static struct console sercons = { cflag : 0, next : NULL }; -static struct console sercons0 = { +static struct console ser0_console = { name : "ttyS", write: console_write, read : NULL, @@ -493,7 +493,7 @@ static struct console sercons0 = { next : NULL }; -static struct console sercons1 = { +static struct console ser1_console = { name : "ttyS", write: console_write, read : NULL, @@ -505,7 +505,7 @@ static struct console sercons1 = { cflag : 0, next : NULL }; -static struct console sercons2 = { +static struct console ser2_console = { name : "ttyS", write: console_write, read : NULL, @@ -517,7 +517,7 @@ static struct console sercons2 = { cflag : 0, next : NULL }; -static struct console sercons3 = { +static struct console ser3_console = { name : "ttyS", write: console_write, read : NULL, @@ -539,17 +539,17 @@ init_etrax_debug(void) static int first = 1; if (!first) { - unregister_console(&sercons); - register_console(&sercons0); - register_console(&sercons1); - register_console(&sercons2); - register_console(&sercons3); + unregister_console(&ser_console); + register_console(&ser0_console); + register_console(&ser1_console); + register_console(&ser2_console); + register_console(&ser3_console); init_dummy_console(); return 0; } first = 0; - register_console(&sercons); + register_console(&ser_console); start_port(port); #ifdef CONFIG_ETRAX_KGDB start_port(kgdb_port); -- cgit v1.1 From f9f3f864b5e8c09d7837d8980edba4ad52969819 Mon Sep 17 00:00:00 2001 From: Guenter Roeck Date: Tue, 10 Nov 2015 14:04:36 -0800 Subject: cris: Fix section mismatches in architecture startup code Section mismatches can now result in build failures. As result, cris:allnoconfig fails to build as follows. WARNING: modpost: Found 7 section mismatch(es). To see full details build your kernel with: 'make CONFIG_DEBUG_SECTION_MISMATCH=y' FATAL: modpost: Section mismatches detected. Set CONFIG_SECTION_MISMATCH_WARN_ONLY=y to allow them. Part of the problem is that references from .text to .init.text are not permitted, and such references are used in cris startup code. Since references from .head.text to .init.text are permitted, move cris startup code to a new section .head.text. Signed-off-by: Guenter Roeck Signed-off-by: Jesper Nilsson --- arch/cris/arch-v10/kernel/head.S | 6 ++++-- arch/cris/arch-v32/kernel/head.S | 6 ++++-- arch/cris/kernel/vmlinux.lds.S | 1 + 3 files changed, 9 insertions(+), 4 deletions(-) (limited to 'arch/cris') diff --git a/arch/cris/arch-v10/kernel/head.S b/arch/cris/arch-v10/kernel/head.S index a4877a4..a74aa23 100644 --- a/arch/cris/arch-v10/kernel/head.S +++ b/arch/cris/arch-v10/kernel/head.S @@ -5,6 +5,8 @@ * */ +#include + #define ASSEMBLER_MACROS_ONLY /* The IO_* macros use the ## token concatenation operator, so -traditional must not be used when assembling this file. */ @@ -25,7 +27,7 @@ .globl romfs_in_flash .globl swapper_pg_dir - .text + __HEAD ;; This is the entry point of the kernel. We are in supervisor mode. ;; 0x00000000 if Flash, 0x40004000 if DRAM @@ -159,7 +161,7 @@ _inflash0: ;; Put this in a suitable section where we can reclaim storage ;; after init. - .section ".init.text", "ax" + __INIT _inflash: #ifdef CONFIG_ETRAX_ETHERNET ;; Start MII clock to make sure it is running when tranceiver is reset diff --git a/arch/cris/arch-v32/kernel/head.S b/arch/cris/arch-v32/kernel/head.S index ea63668..5ce83eb 100644 --- a/arch/cris/arch-v32/kernel/head.S +++ b/arch/cris/arch-v32/kernel/head.S @@ -4,6 +4,8 @@ * Copyright (C) 2003, Axis Communications AB */ +#include + #define ASSEMBLER_MACROS_ONLY /* @@ -36,7 +38,7 @@ .global nand_boot .global swapper_pg_dir - .text + __HEAD tstart: ;; This is the entry point of the kernel. The CPU is currently in ;; supervisor mode. @@ -177,7 +179,7 @@ _inflash0: ;; Put the following in a section so that storage for it can be ;; reclaimed after init is finished. - .section ".init.text", "ax" + __INIT _inflash: diff --git a/arch/cris/kernel/vmlinux.lds.S b/arch/cris/kernel/vmlinux.lds.S index a68b983..7552c25 100644 --- a/arch/cris/kernel/vmlinux.lds.S +++ b/arch/cris/kernel/vmlinux.lds.S @@ -40,6 +40,7 @@ SECTIONS _stext = .; __stext = .; .text : { + HEAD_TEXT TEXT_TEXT SCHED_TEXT LOCK_TEXT -- cgit v1.1