--- zzzz-none-000/linux-3.10.107/arch/xtensa/kernel/vmlinux.lds.S 2017-06-27 09:49:32.000000000 +0000 +++ scorpion-7490-727/linux-3.10.107/arch/xtensa/kernel/vmlinux.lds.S 2021-02-04 17:41:59.000000000 +0000 @@ -165,6 +165,11 @@ .DoubleExceptionVector.text); RELOCATE_ENTRY(_DebugInterruptVector_text, .DebugInterruptVector.text); +#if defined(CONFIG_SMP) + RELOCATE_ENTRY(_SecondaryResetVector_text, + .SecondaryResetVector.text); +#endif + __boot_reloc_table_end = ABSOLUTE(.) ; @@ -262,48 +267,36 @@ .UserExceptionVector.literal) SECTION_VECTOR (_DoubleExceptionVector_literal, .DoubleExceptionVector.literal, - DOUBLEEXC_VECTOR_VADDR - 16, + DOUBLEEXC_VECTOR_VADDR - 48, SIZEOF(.UserExceptionVector.text), .UserExceptionVector.text) SECTION_VECTOR (_DoubleExceptionVector_text, .DoubleExceptionVector.text, DOUBLEEXC_VECTOR_VADDR, - 32, + 48, .DoubleExceptionVector.literal) . = (LOADADDR( .DoubleExceptionVector.text ) + SIZEOF( .DoubleExceptionVector.text ) + 3) & ~ 3; - . = ALIGN(PAGE_SIZE); - __init_end = .; +#if defined(CONFIG_SMP) - BSS_SECTION(0, 8192, 0) - - _end = .; + SECTION_VECTOR (_SecondaryResetVector_text, + .SecondaryResetVector.text, + RESET_VECTOR1_VADDR, + SIZEOF(.DoubleExceptionVector.text), + .DoubleExceptionVector.text) - /* only used by the boot loader */ + . = LOADADDR(.SecondaryResetVector.text)+SIZEOF(.SecondaryResetVector.text); - . = ALIGN(0x10); - .bootstrap : { *(.bootstrap.literal .bootstrap.text .bootstrap.data) } +#endif - .ResetVector.text RESET_VECTOR_VADDR : - { - *(.ResetVector.text) - } + . = ALIGN(PAGE_SIZE); + __init_end = .; - /* - * This is a remapped copy of the Secondary Reset Vector Code. - * It keeps gdb in sync with the PC after switching - * to the temporary mapping used while setting up - * the V2 MMU mappings for Linux. - * - * Only debug information about this section is put in the kernel image. - */ - .SecondaryResetVector.remapped_text 0x46000000 (INFO): - { - *(.SecondaryResetVector.remapped_text) - } + BSS_SECTION(0, 8192, 0) + _end = .; .xt.lit : { *(.xt.lit) } .xt.prop : { *(.xt.prop) }