From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932688AbcJPP6H (ORCPT ); Sun, 16 Oct 2016 11:58:07 -0400 Received: from aserp1050.oracle.com ([141.146.126.70]:26613 "EHLO aserp1050.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932464AbcJPP5b (ORCPT ); Sun, 16 Oct 2016 11:57:31 -0400 From: Vegard Nossum To: linux-kernel@vger.kernel.org, Greg Kroah-Hartman Cc: Jiri Slaby , Linus Torvalds , "Luis R . Rodriguez" , Vegard Nossum , Peter Hurley Subject: [PATCH 10/12] serial_core: declare __earlycon_table{,_end} as external array Date: Sun, 16 Oct 2016 17:16:14 +0200 Message-Id: <20161016151616.31451-11-vegard.nossum@oracle.com> X-Mailer: git-send-email 2.10.0.479.g221bd91 In-Reply-To: <20161016151616.31451-1-vegard.nossum@oracle.com> References: <20161016151616.31451-1-vegard.nossum@oracle.com> X-Source-IP: aserp1040.oracle.com [141.146.126.69] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Cc: Peter Hurley Cc: Greg Kroah-Hartman Signed-off-by: Vegard Nossum --- drivers/of/fdt.c | 2 +- drivers/tty/serial/earlycon.c | 2 +- include/asm-generic/vmlinux.lds.h | 8 ++++---- include/linux/serial_core.h | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c index c89d5d2..eb41e3d 100644 --- a/drivers/of/fdt.c +++ b/drivers/of/fdt.c @@ -956,7 +956,7 @@ int __init early_init_dt_scan_chosen_stdout(void) return 0; } - for (match = __earlycon_table; match < __earlycon_table_end; match++) { + ext_for_each(match, earlycon_table) { if (!match->compatible[0]) continue; diff --git a/drivers/tty/serial/earlycon.c b/drivers/tty/serial/earlycon.c index c365154..f49cfed 100644 --- a/drivers/tty/serial/earlycon.c +++ b/drivers/tty/serial/earlycon.c @@ -180,7 +180,7 @@ int __init setup_earlycon(char *buf) if (early_con.flags & CON_ENABLED) return -EALREADY; - for (match = __earlycon_table; match < __earlycon_table_end; match++) { + ext_for_each(match, earlycon_table) { size_t len = strlen(match->name); if (strncmp(buf, match->name, len)) diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index d6121ac..342c2dd 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h @@ -154,10 +154,10 @@ #endif #ifdef CONFIG_SERIAL_EARLYCON -#define EARLYCON_TABLE() STRUCT_ALIGN(); \ - VMLINUX_SYMBOL(__earlycon_table) = .; \ - *(__earlycon_table) \ - VMLINUX_SYMBOL(__earlycon_table_end) = .; +#define EARLYCON_TABLE() STRUCT_ALIGN(); \ + VMLINUX_SYMBOL(__start_earlycon_table) = .; \ + *(__earlycon_table) \ + VMLINUX_SYMBOL(__stop_earlycon_table) = .; #else #define EARLYCON_TABLE() #endif diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h index 3442014..2d35e87 100644 --- a/include/linux/serial_core.h +++ b/include/linux/serial_core.h @@ -22,6 +22,7 @@ #include +#include #include #include #include @@ -349,8 +350,7 @@ struct earlycon_id { int (*setup)(struct earlycon_device *, const char *options); } __aligned(32); -extern const struct earlycon_id __earlycon_table[]; -extern const struct earlycon_id __earlycon_table_end[]; +DECLARE_EXTARRAY(const struct earlycon_id, earlycon_table); #if defined(CONFIG_SERIAL_EARLYCON) && !defined(MODULE) #define EARLYCON_USED_OR_UNUSED __used -- 2.10.0.479.g221bd91