[U-Boot] [PATCH v2] arm: Add missing .vectors section to linker scripts

Michal Simek monstr at monstr.eu
Fri Aug 29 13:40:57 CEST 2014


On 08/21/2014 03:43 PM, Benoît Thébaudeau wrote:
> Commit 41623c9 'arm: move exception handling out of start.S files' missed some
> linker scripts. Hence, some boards no longer had exception handling linked since
> this commit. Restore the original behavior by adding the .vectors section to
> these linker scripts.
> 
> Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev at gmail.com>
> Cc: Albert ARIBAUD <albert.u.boot at aribaud.net>
> 
> ---
> 
> Changes in v2:
>  - Reword the patch subject from 'arm: fix missing exception handling' to 'arm:
>    Add missing .vectors section to linker scripts'.
> ---
>  arch/arm/cpu/arm1136/u-boot-spl.lds            | 1 +
>  arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds      | 1 +
>  arch/arm/cpu/armv7/am33xx/u-boot-spl.lds       | 1 +
>  arch/arm/cpu/armv7/omap-common/u-boot-spl.lds  | 1 +
>  arch/arm/cpu/armv7/socfpga/u-boot-spl.lds      | 1 +
>  arch/arm/cpu/armv7/zynq/u-boot-spl.lds         | 1 +
>  arch/arm/cpu/at91-common/u-boot-spl.lds        | 1 +
>  board/Barix/ipam390/u-boot-spl-ipam390.lds     | 1 +
>  board/ait/cam_enc_4xx/u-boot-spl.lds           | 1 +
>  board/cirrus/edb93xx/u-boot.lds                | 1 +
>  board/davinci/da8xxevm/u-boot-spl-da850evm.lds | 1 +
>  board/davinci/da8xxevm/u-boot-spl-hawk.lds     | 1 +
>  board/samsung/common/exynos-uboot-spl.lds      | 1 +
>  board/vpac270/u-boot-spl.lds                   | 1 +
>  14 files changed, 14 insertions(+)
> 
> diff --git a/arch/arm/cpu/arm1136/u-boot-spl.lds b/arch/arm/cpu/arm1136/u-boot-spl.lds
> index 0299902..97e4a8b 100644
> --- a/arch/arm/cpu/arm1136/u-boot-spl.lds
> +++ b/arch/arm/cpu/arm1136/u-boot-spl.lds
> @@ -22,6 +22,7 @@ SECTIONS
>  	.text      :
>  	{
>  	__start = .;
> +	  *(.vectors)
>  	  arch/arm/cpu/arm1136/start.o	(.text*)
>  	  *(.text*)
>  	} >.sram
> diff --git a/arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds b/arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds
> index f4bf8ac..bf2ac13 100644
> --- a/arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds
> +++ b/arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds
> @@ -21,6 +21,7 @@ SECTIONS
>  	. = ALIGN(4);
>  	.text	:
>  	{
> +		*(.vectors)
>  		arch/arm/cpu/arm926ejs/mxs/start.o	(.text*)
>  		*(.text*)
>  	}
> diff --git a/arch/arm/cpu/armv7/am33xx/u-boot-spl.lds b/arch/arm/cpu/armv7/am33xx/u-boot-spl.lds
> index b1c28c9..07cf267 100644
> --- a/arch/arm/cpu/armv7/am33xx/u-boot-spl.lds
> +++ b/arch/arm/cpu/armv7/am33xx/u-boot-spl.lds
> @@ -22,6 +22,7 @@ SECTIONS
>  	.text      :
>  	{
>  		__start = .;
> +		*(.vectors)
>  		arch/arm/cpu/armv7/start.o	(.text)
>  		*(.text*)
>  	} >.sram
> diff --git a/arch/arm/cpu/armv7/omap-common/u-boot-spl.lds b/arch/arm/cpu/armv7/omap-common/u-boot-spl.lds
> index 745603d..ccd0c83 100644
> --- a/arch/arm/cpu/armv7/omap-common/u-boot-spl.lds
> +++ b/arch/arm/cpu/armv7/omap-common/u-boot-spl.lds
> @@ -22,6 +22,7 @@ SECTIONS
>  	.text      :
>  	{
>  		__start = .;
> +		*(.vectors)
>  		arch/arm/cpu/armv7/start.o	(.text*)
>  		*(.text*)
>  	} >.sram
> diff --git a/arch/arm/cpu/armv7/socfpga/u-boot-spl.lds b/arch/arm/cpu/armv7/socfpga/u-boot-spl.lds
> index 4282beb..db9bdad 100644
> --- a/arch/arm/cpu/armv7/socfpga/u-boot-spl.lds
> +++ b/arch/arm/cpu/armv7/socfpga/u-boot-spl.lds
> @@ -16,6 +16,7 @@ SECTIONS
>  	. = ALIGN(4);
>  	.text	:
>  	{
> +		*(.vectors)
>  		arch/arm/cpu/armv7/start.o	(.text*)
>  		*(.text*)
>  	} >.sdram
> diff --git a/arch/arm/cpu/armv7/zynq/u-boot-spl.lds b/arch/arm/cpu/armv7/zynq/u-boot-spl.lds
> index 0c4501e..0f2f756 100644
> --- a/arch/arm/cpu/armv7/zynq/u-boot-spl.lds
> +++ b/arch/arm/cpu/armv7/zynq/u-boot-spl.lds
> @@ -22,6 +22,7 @@ SECTIONS
>  	.text :
>  	{
>  		__image_copy_start = .;
> +		*(.vectors)
>  		CPUDIR/start.o (.text*)
>  		*(.text*)
>  	} > .sram


I have this patch for zynq in my private branch. It means when Albert or Tom
applies my zynq changes please ensure that vectors are not added twice.

Thanks,
Michal

-- 
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Microblaze cpu - http://www.monstr.eu/fdt/
Maintainer of Linux kernel - Xilinx Zynq ARM architecture
Microblaze U-BOOT custodian and responsible for u-boot arm zynq platform


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: OpenPGP digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20140829/b10347da/attachment.pgp>


More information about the U-Boot mailing list