Skip to contentSkip to conversation

arm: Add missing .vectors section to linker scripts

PATCH New Benoît Thébaudeau 3 participants 3 messages Aug 21, 2014 – Aug 30, 2014

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 arm: Add missing .vectors section to linker scripts

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.

---

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(+)
arch/arm/cpu/arm1136/u-boot-spl.lds +1 -0
index 0299902..97e4a8b 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 	__start = .;
+	  *(.vectors)
 	  arch/arm/cpu/arm1136/start.o	(.text*)
 	  *(.text*)
 	} >.sram
arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds +1 -0
index f4bf8ac..bf2ac13 100644
@@ -21,6 +21,7 @@ SECTIONS
 	. = ALIGN(4);
 	.text	:
 	{
+		*(.vectors)
 		arch/arm/cpu/arm926ejs/mxs/start.o	(.text*)
 		*(.text*)
 	}
arch/arm/cpu/armv7/am33xx/u-boot-spl.lds +1 -0
index b1c28c9..07cf267 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 		__start = .;
+		*(.vectors)
 		arch/arm/cpu/armv7/start.o	(.text)
 		*(.text*)
 	} >.sram
arch/arm/cpu/armv7/omap-common/u-boot-spl.lds +1 -0
index 745603d..ccd0c83 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 		__start = .;
+		*(.vectors)
 		arch/arm/cpu/armv7/start.o	(.text*)
 		*(.text*)
 	} >.sram
arch/arm/cpu/armv7/socfpga/u-boot-spl.lds +1 -0
index 4282beb..db9bdad 100644
@@ -16,6 +16,7 @@ SECTIONS
 	. = ALIGN(4);
 	.text	:
 	{
+		*(.vectors)
 		arch/arm/cpu/armv7/start.o	(.text*)
 		*(.text*)
 	} >.sdram
arch/arm/cpu/armv7/zynq/u-boot-spl.lds +1 -0
index 0c4501e..0f2f756 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text :
 	{
 		__image_copy_start = .;
+		*(.vectors)
 		CPUDIR/start.o (.text*)
 		*(.text*)
 	} > .sram
arch/arm/cpu/at91-common/u-boot-spl.lds +1 -0
index 57ac1eb..eccca43 100644
@@ -25,6 +25,7 @@ SECTIONS
 	.text      :
 	{
 		__start = .;
+		*(.vectors)
 		arch/arm/cpu/armv7/start.o	(.text*)
 		*(.text*)
 	} >.sram
board/Barix/ipam390/u-boot-spl-ipam390.lds +1 -0
index 8604696..5f290ec 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 	__start = .;
+	  *(.vectors)
 	  arch/arm/cpu/arm926ejs/start.o	(.text*)
 	  *(.text*)
 	} >.sram
board/ait/cam_enc_4xx/u-boot-spl.lds +1 -0
index c0d09ad..f5c19df 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 	__start = .;
+	  *(.vectors)
 	  arch/arm/cpu/arm926ejs/start.o	(.text*)
 	  *(.text*)
 	} >.sram
board/cirrus/edb93xx/u-boot.lds +1 -0
index b0d892a..4aa7891 100644
@@ -21,6 +21,7 @@ SECTIONS
 	. = ALIGN(4);
 	.text : {
 		*(.__image_copy_start)
+		*(.vectors)
 		arch/arm/cpu/arm920t/start.o (.text*)
 		. = 0x1000;
 
board/davinci/da8xxevm/u-boot-spl-da850evm.lds +1 -0
index de21a13..ab4f50c 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 	__start = .;
+	  *(.vectors)
 	  arch/arm/cpu/arm926ejs/start.o	(.text*)
 	  *(.text*)
 	} >.sram
board/davinci/da8xxevm/u-boot-spl-hawk.lds +1 -0
index 299226b..682f268 100644
@@ -18,6 +18,7 @@ SECTIONS
 	. = ALIGN(4);
 	.text      :
 	{
+	  *(.vectors)
 	  arch/arm/cpu/arm926ejs/start.o		(.text*)
 	  arch/arm/cpu/arm926ejs/davinci/built-in.o	(.text*)
 	  drivers/mtd/nand/built-in.o			(.text*)
board/samsung/common/exynos-uboot-spl.lds +1 -0
index b22f9e0..4a933c8 100644
@@ -21,6 +21,7 @@ SECTIONS
 	.text :
 	{
 		__start = .;
+		*(.vectors)
 		arch/arm/cpu/armv7/start.o (.text*)
 		*(.text*)
 	} >.sram
board/vpac270/u-boot-spl.lds +1 -0
index 5dbf94e..a10ea71 100644
@@ -19,6 +19,7 @@ SECTIONS
 	. = CONFIG_SPL_TEXT_BASE;
 	.text.0	:
 	{
+		*(.vectors)
 		arch/arm/cpu/pxa/start.o		(.text*)
 		arch/arm/lib/built-in.o			(.text*)
 		board/vpac270/built-in.o		(.text*)
Signature · 1 line
1.9.1
#1 lore raw

PATCH v2 1/1 arm: Add missing .vectors section to linker scripts

Quoted 95 lines · Beno?t Th?baudeau

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.

---

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(+)
arch/arm/cpu/arm1136/u-boot-spl.lds +1 -0
index 0299902..97e4a8b 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 	__start = .;
+	  *(.vectors)
 	  arch/arm/cpu/arm1136/start.o	(.text*)
 	  *(.text*)
 	} >.sram
arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds +1 -0
index f4bf8ac..bf2ac13 100644
@@ -21,6 +21,7 @@ SECTIONS
 	. = ALIGN(4);
 	.text	:
 	{
+		*(.vectors)
 		arch/arm/cpu/arm926ejs/mxs/start.o	(.text*)
 		*(.text*)
 	}
arch/arm/cpu/armv7/am33xx/u-boot-spl.lds +1 -0
index b1c28c9..07cf267 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 		__start = .;
+		*(.vectors)
 		arch/arm/cpu/armv7/start.o	(.text)
 		*(.text*)
 	} >.sram
arch/arm/cpu/armv7/omap-common/u-boot-spl.lds +1 -0
index 745603d..ccd0c83 100644
@@ -22,6 +22,7 @@ SECTIONS
 	.text      :
 	{
 		__start = .;
+		*(.vectors)
 		arch/arm/cpu/armv7/start.o	(.text*)
 		*(.text*)
 	} >.sram
arch/arm/cpu/armv7/socfpga/u-boot-spl.lds +1 -0
index 4282beb..db9bdad 100644
@@ -16,6 +16,7 @@ SECTIONS
 	. = ALIGN(4);
 	.text	:
 	{
+		*(.vectors)
 		arch/arm/cpu/armv7/start.o	(.text*)
 		*(.text*)
 	} >.sdram
arch/arm/cpu/armv7/zynq/u-boot-spl.lds +0 -0
index 0c4501e..0f2f756 100644

arch/arm/cpu/armv7/zynq/u-boot-spl.lds SECTIONS · line 28

Quoted 7 lines
arch/arm/cpu/armv7/zynq/u-boot-spl.lds +1 -0
@@ -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

Signature · 14 lines
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>
#2 lore raw

PATCH v2 1/1 arm: Add missing .vectors section to linker scripts

In reply to Benoît Thébaudeau
Quoted 7 lines · Beno?t Th?baudeau

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.

Applied to u-boot/master (and checked that zynq didn't get a duplicate entry now), thanks!

Signature · 8 lines
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20140830/d721dd6d/attachment.pgp>