With CONFIG_LD_DEAD_CODE_DATA_ELIMINATION enabled we must ensure that we keep the earlycon table or we discard all entries leading to no earlycon devices being found. Signed-off-by: Paul Burton <paul.burton@xxxxxxxxxx> Cc: Nicholas Piggin <npiggin@xxxxxxxxx> --- include/asm-generic/vmlinux.lds.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h index e710593..abe79e3 100644 --- a/include/asm-generic/vmlinux.lds.h +++ b/include/asm-generic/vmlinux.lds.h @@ -156,7 +156,7 @@ #ifdef CONFIG_SERIAL_EARLYCON #define EARLYCON_TABLE() STRUCT_ALIGN(); \ VMLINUX_SYMBOL(__earlycon_table) = .; \ - *(__earlycon_table) \ + KEEP(*(__earlycon_table)) \ VMLINUX_SYMBOL(__earlycon_table_end) = .; #else #define EARLYCON_TABLE() -- 2.10.0