Skip to contentSkip to conversation

fixes for binutils 2.21

PATCH In review Víctor Manuel Jáquez Leal 2 participants 7 messages Jan 24, 2011 2 messages not in the archive

lore
Share & tools
lore
#0 lore raw

cover fixes for binutils 2.21

These patches focus the same problem: with the binutils upgrade to 2.21 it is required specify the +sec to the march parameter.

The kernel patch is just grabbed from the ubuntu's repository. For the u-boot I just came up with a translation of those patches.

vmjl

Víctor Manuel Jáquez Leal (2):
u-boot-sakoman: fix break caused by the new binutils
linux-omap4: fix break caused by the new binutils

 ...TU-Config-Fix-FTBS-caused-by-new-binutils.patch |   38 ++++++++++++++++++++
 ...0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch |   26 +++++++++++++
 recipes/linux/linux-omap4_2.6.35.3.bb              |    2 +
 .../fix-break-caused-by-new-binutils.patch         |   31 ++++++++++++++++
 recipes/u-boot/u-boot-sakoman_git.bb               |    1 +
 5 files changed, 98 insertions(+), 0 deletions(-)
 create mode 100644 recipes/linux/linux-omap4/0001-UBUNTU-Config-Fix-FTBS-caused-by-new-binutils.patch
 create mode 100644 recipes/linux/linux-omap4/0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch
 create mode 100644 recipes/u-boot/u-boot-sakoman/fix-break-caused-by-new-binutils.patch
#1 lore raw

PATCH 1/2 u-boot-sakoman: fix break caused by the new binutils

New assemblers need -march=armv7-a+sec on command line or .arch_extension sec inline to enable use of the smc instruction.

This patch adds as-instr to check the latter to conditionally enable the former in AFLAGS for files that use smc.

---
 .../fix-break-caused-by-new-binutils.patch         |   31 ++++++++++++++++++++
 recipes/u-boot/u-boot-sakoman_git.bb               |    1 +
 2 files changed, 32 insertions(+), 0 deletions(-)
 create mode 100644 recipes/u-boot/u-boot-sakoman/fix-break-caused-by-new-binutils.patch
recipes/u-boot/u-boot-sakoman/fix-break-caused-by-new-binutils.patch new file +31 -0
new file mode 100644
index 0000000..16bc980
@@ -0,0 +1,31 @@
+Index: git/arch/arm/cpu/armv7/omap4/Makefile
+===================================================================
+--- git.orig/arch/arm/cpu/armv7/omap4/Makefile
++++ git/arch/arm/cpu/armv7/omap4/Makefile
+@@ -26,6 +26,8 @@ include $(TOPDIR)/config.mk
+ LIB	=  $(obj)lib$(SOC).o
+ 
+ SOBJS	+= lowlevel_init.o
++plus_sec := $(call as-instr,.arch_extension sec,+sec)
++lowlevel_init.o: AFLAGS += -Wa,-march=armv7-a$(plus_sec)
+ 
+ COBJS	+= board.o
+ COBJS	+= mem.o
+Index: git/config.mk
+===================================================================
+--- git.orig/config.mk
++++ git/config.mk
+@@ -266,3 +266,13 @@ cmd_link_o_target = $(if $(strip $1),\
+ 		      rm -f $@; $(AR) rcs $@ )
+ 
+ #########################################################################
++
++# Tries to compile an assembly instruction
++as-instr = $(shell if echo -e "$(1)" | \
++            $(CC) $(AFLAGS) -c -xassembler - \
++             -o $(TMPOUT)astest$$$$.out > /dev/null 2>&1; \
++         then rm $(TMPOUT)astest$$$$.out; echo "$(2)"; \
++         else echo "$(3)"; fi)
++
++#########################################################################
++
recipes/u-boot/u-boot-sakoman_git.bb +1 -0
index 5b9ff11..8dfe713 100644
@@ -7,6 +7,7 @@ SRCREV = "261733408a27d14590cf3ec6b596461808050e32"
 PV = "2010.12+${PR}+git${SRCREV}"
 
 SRC_URI = "git://www.sakoman.com/git/u-boot.git;branch=omap4-exp;protocol=git \
+	   file://fix-break-caused-by-new-binutils.patch \
           "
 S = "${WORKDIR}/git"
 
Signature · 1 line
1.7.0.2
Acked-by on v1 1/2
#2 lore raw

Re: [PATCH 1/2] u-boot-sakoman: fix break caused by the new binutils

2011/1/24 Víctor Manuel Jáquez Leal <[email protected]>:

Quoted 7 lines

New assemblers need -march=armv7-a+sec on command line or .arch_extension sec inline to enable use of the smc instruction.

This patch adds as-instr to check the latter to conditionally enable the former in AFLAGS for files that use smc.

Quoted 64 lines

---
 .../fix-break-caused-by-new-binutils.patch         |   31 ++++++++++++++++++++ recipes/u-boot/u-boot-sakoman_git.bb               |    1 +

 2 files changed, 32 insertions(+), 0 deletions(-)

 create mode 100644 recipes/u-boot/u-boot-sakoman/fix-break-caused-by-new-binutils.patch

recipes/u-boot/u-boot-sakoman/fix-break-caused-by-new-binutils.patch new file +31 -0
new file mode 100644
index 0000000..16bc980
@@ -0,0 +1,31 @@
+Index: git/arch/arm/cpu/armv7/omap4/Makefile
+===================================================================
+--- git.orig/arch/arm/cpu/armv7/omap4/Makefile
++++ git/arch/arm/cpu/armv7/omap4/Makefile
+@@ -26,6 +26,8 @@ include $(TOPDIR)/config.mk
+ LIB   =  $(obj)lib$(SOC).o
+
+ SOBJS += lowlevel_init.o
++plus_sec := $(call as-instr,.arch_extension sec,+sec)
++lowlevel_init.o: AFLAGS += -Wa,-march=armv7-a$(plus_sec)
+
+ COBJS += board.o
+ COBJS += mem.o
+Index: git/config.mk
+===================================================================
+--- git.orig/config.mk
++++ git/config.mk
+@@ -266,3 +266,13 @@ cmd_link_o_target = $(if $(strip $1),\
+                     rm -f $@; $(AR) rcs $@ )
+
+ #########################################################################
++
++# Tries to compile an assembly instruction
++as-instr = $(shell if echo -e "$(1)" | \
++            $(CC) $(AFLAGS) -c -xassembler - \
++             -o $(TMPOUT)astest$$$$.out > /dev/null 2>&1; \
++         then rm $(TMPOUT)astest$$$$.out; echo "$(2)"; \
++         else echo "$(3)"; fi)
++
++#########################################################################
++
recipes/u-boot/u-boot-sakoman_git.bb +0 -0
index 5b9ff11..8dfe713 100644
@@ -7,6 +7,7 @@ SRCREV = "261733408a27d14590cf3ec6b596461808050e32"

 PV = "2010.12+${PR}+git${SRCREV}"

 SRC_URI = "git://www.sakoman.com/git/u-boot.git;branch=omap4-exp;protocol=git \
+          file://fix-break-caused-by-new-binutils.patch \
          "
 S = "${WORKDIR}/git"

--
1.7.0.2

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

A message that is not in the archive (sent off-list or not yet received): 1295882416.1999.8.camel@quadra

#4 lore raw

Re: [PATCH 1/2] u-boot-sakoman: fix break caused by the new binutils

Quoted 10 lines · Steve Sakoman
Quoted 5 lines · Víctor Manuel Jáquez Leal

New assemblers need -march=armv7-a+sec on command line or .arch_extension sec inline to enable use of the smc instruction.

This patch adds as-instr to check the latter to conditionally enable the former in AFLAGS for files that use smc.

Since this is a generic u-boot issue, it would be best to submit the Makefile patch to the u-boot mailing list.

These patches depend on these ones:

http://www.sakoman.com/cgi-bin/gitweb.cgi?p=u-boot.git;a=commitdiff;h=2a9a9da5530f5bc9cb09ffa2fe8e32494d1a8b0f

and

http://www.sakoman.com/cgi-bin/gitweb.cgi?p=u-boot.git;a=commitdiff;h=268fff79ea11b2bb6f174c3c97c104768b5cd7e3

but neither are in the denx's git repository, neither in its patchwork.

So, I'm not sure what should I do. Any advise?

vmjl

A message that is not in the archive (sent off-list or not yet received): 1295890383.1999.11.camel@quadra

#6 lore raw

Re: [PATCH 1/2] u-boot-sakoman: fix break caused by the new binutils

Quoted 28 lines · Steve Sakoman
Quoted 16 lines · Víctor M. Jáquez L.
Quoted 10 lines · Steve Sakoman
Quoted 5 lines · Víctor Manuel Jáquez Leal

New assemblers need -march=armv7-a+sec on command line or .arch_extension sec inline to enable use of the smc instruction.

This patch adds as-instr to check the latter to conditionally enable the former in AFLAGS for files that use smc.

Since this is a generic u-boot issue, it would be best to submit the Makefile patch to the u-boot mailing list.

These patches depend on these ones:

http://www.sakoman.com/cgi-bin/gitweb.cgi?p=u-boot.git;a=commitdiff;h=2a9a9da5530f5bc9cb09ffa2fe8e32494d1a8b0f

Quoted 7 lines

and

http://www.sakoman.com/cgi-bin/gitweb.cgi?p=u-boot.git;a=commitdiff;h=268fff79ea11b2bb6f174c3c97c104768b5cd7e3

but neither are in the denx's git repository, neither in its patchwork.

So, I'm not sure what should I do. Any advise?

Yeah, Aneesh is still revising those patches to respond to list feedback.

Quoted 6 lines

You could submit your patch in a RFC form with a note that it depends on the cache maintenance patches that Aneesh is revising.

That way you can get some comments on the basic idea while waiting for Aneesh's patches to be accepted. At that point you could submit a final patch for approval.

Done. Thanks a lot! :)

vmjl

Quoted 6 lines

Steve

#7 lore raw

PATCH 2/2 linux-omap4: fix break caused by the new binutils

In reply to Víctor Manuel Jáquez Leal

According to this discussion [1], a couple patches where required by the kernel using the latest binutils (2.21).

This patch add those patches, which were posted in the Ubuntu's kernel repository.

1. http://comments.gmane.org/gmane.comp.handhelds.openembedded/40650

---
 ...TU-Config-Fix-FTBS-caused-by-new-binutils.patch |   38 ++++++++++++++++++++
 ...0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch |   26 +++++++++++++
 recipes/linux/linux-omap4_2.6.35.3.bb              |    2 +
 3 files changed, 66 insertions(+), 0 deletions(-)
 create mode 100644 recipes/linux/linux-omap4/0001-UBUNTU-Config-Fix-FTBS-caused-by-new-binutils.patch
 create mode 100644 recipes/linux/linux-omap4/0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch
recipes/linux/linux-omap4/0001-UBUNTU-Config-Fix-FTBS-caused-by-new-binutils.patch new file +38 -0
new file mode 100644
index 0000000..e83a3e2
@@ -0,0 +1,38 @@
+From 7699704e011db864c56f333bce9936a36522fb79 Mon Sep 17 00:00:00 2001
+From: Tim Gardner <[email protected]>
+Date: Thu, 9 Dec 2010 08:16:52 -0700
+Subject: [PATCH 1/2] UBUNTU: [Config] Fix FTBS caused by new binutils
+
+New assemblers need -march=armv7-a+sec on command line or
+.arch_extension sec inline to enable use of the smc instruction.
+
+This patch uses as-instr to check the latter to conditionally
+enable the former in AFLAGS for files that use smc.
+
+Checked on both old and new binutils to verify that it does
+not break old versions.
+
+Signed-off-by: John Rigby <[email protected]>
+Signed-off-by: Tim Gardner <[email protected]>
+---
+ arch/arm/mach-omap2/Makefile |    4 +++-
+ 1 files changed, 3 insertions(+), 1 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
+index 75251b4..0241b4d 100644
+--- a/arch/arm/mach-omap2/Makefile
++++ b/arch/arm/mach-omap2/Makefile
+@@ -29,7 +29,9 @@ obj-$(CONFIG_HOTPLUG_CPU)		+= omap-hotplug.o
+ obj-$(CONFIG_ARCH_OMAP4)		+= omap44xx-smc.o omap4-common.o \
+ 					   omap4-wakeupgen.o
+ 
+-AFLAGS_omap44xx-smc.o			:=-Wa,-march=armv7-a
++plus_sec := $(call as-instr,.arch_extension sec,+sec)
++AFLAGS_omap-headsmp.o                  :=-Wa,-march=armv7-a$(plus_sec)
++AFLAGS_omap44xx-smc.o                  :=-Wa,-march=armv7-a$(plus_sec)
+ 
+ # Functions loaded to SRAM
+ obj-$(CONFIG_ARCH_OMAP2420)		+= sram242x.o
+-- 
+1.7.0.2
+
recipes/linux/linux-omap4/0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch new file +26 -0
new file mode 100644
index 0000000..ea16ab1
@@ -0,0 +1,26 @@
+From da58d36fb6b13899249bf1efbf25f7385d048bb3 Mon Sep 17 00:00:00 2001
+From: Tim Gardner <[email protected]>
+Date: Tue, 14 Dec 2010 06:56:34 -0700
+Subject: [PATCH 2/2] Add AFLAGS for sleep44xx to fix FTBS
+
+Signed-off-by: Tim Gardner <[email protected]>
+---
+ arch/arm/mach-omap2/Makefile |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
+index 0241b4d..865a3e2 100644
+--- a/arch/arm/mach-omap2/Makefile
++++ b/arch/arm/mach-omap2/Makefile
+@@ -59,6 +59,8 @@ obj-$(CONFIG_ARCH_OMAP4)		+= pm44xx.o pm_bus.o cpuidle44xx.o \
+ 					   omap4-mpuss-lowpower.o sleep44xx.o \
+ 					   voltage.o opp44xx_data.o
+ 
++AFLAGS_sleep44xx.o                  :=-Wa,-march=armv7-a$(plus_sec)
++
+ obj-$(CONFIG_PM_DEBUG)			+= pm-debug.o
+ obj-$(CONFIG_OMAP_SMARTREFLEX)          += sr_device.o smartreflex.o
+ obj-$(CONFIG_OMAP_SMARTREFLEX_CLASS3)	+= smartreflex-class3.o
+-- 
+1.7.0.2
+
recipes/linux/linux-omap4_2.6.35.3.bb +2 -0
index 4db0b28..f5a11f4 100644
@@ -15,6 +15,8 @@ SRC_URI = "git://dev.omapzoom.org/pub/scm/integration/kernel-ubuntu.git;protocol
            file://0006-ARM-Add-option-to-allow-userspace-access-to-performa.patch \
            file://0007-OMAP4-do-not-force-select-options-which-are-not-requ.patch \
            file://0008-omap4-pandaboard-add-support-for-DVI-output.patch \
+	   file://0001-UBUNTU-Config-Fix-FTBS-caused-by-new-binutils.patch \
+	   file://0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch \
            file://defconfig"
 
 S = "${WORKDIR}/git"
Signature · 1 line
1.7.0.2
Acked-by on v1 2/2
#8 lore raw

Re: [PATCH 2/2] linux-omap4: fix break caused by the new binutils

2011/1/24 Víctor Manuel Jáquez Leal <[email protected]>:

Quoted 9 lines

According to this discussion [1], a couple patches where required by the kernel using the latest binutils (2.21).

This patch add those patches, which were posted in the Ubuntu's kernel repository.

1. http://comments.gmane.org/gmane.comp.handhelds.openembedded/40650

Quoted 106 lines

---
 ...TU-Config-Fix-FTBS-caused-by-new-binutils.patch |   38 ++++++++++++++++++++ ...0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch |   26 +++++++++++++ recipes/linux/linux-omap4_2.6.35.3.bb              |    2 +

 3 files changed, 66 insertions(+), 0 deletions(-)

 create mode 100644 recipes/linux/linux-omap4/0001-UBUNTU-Config-Fix-FTBS-caused-by-new-binutils.patch create mode 100644 recipes/linux/linux-omap4/0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch

recipes/linux/linux-omap4/0001-UBUNTU-Config-Fix-FTBS-caused-by-new-binutils.patch new file +38 -0
new file mode 100644
index 0000000..e83a3e2
@@ -0,0 +1,38 @@
+From 7699704e011db864c56f333bce9936a36522fb79 Mon Sep 17 00:00:00 2001
+From: Tim Gardner <[email protected]>
+Date: Thu, 9 Dec 2010 08:16:52 -0700
+Subject: [PATCH 1/2] UBUNTU: [Config] Fix FTBS caused by new binutils
+
+New assemblers need -march=armv7-a+sec on command line or
+.arch_extension sec inline to enable use of the smc instruction.
+
+This patch uses as-instr to check the latter to conditionally
+enable the former in AFLAGS for files that use smc.
+
+Checked on both old and new binutils to verify that it does
+not break old versions.
+
+Signed-off-by: John Rigby <[email protected]>
+Signed-off-by: Tim Gardner <[email protected]>
+---
+ arch/arm/mach-omap2/Makefile |    4 +++-
+ 1 files changed, 3 insertions(+), 1 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
+index 75251b4..0241b4d 100644
+--- a/arch/arm/mach-omap2/Makefile
++++ b/arch/arm/mach-omap2/Makefile
+@@ -29,7 +29,9 @@ obj-$(CONFIG_HOTPLUG_CPU)            += omap-hotplug.o
+ obj-$(CONFIG_ARCH_OMAP4)              += omap44xx-smc.o omap4-common.o \
+                                          omap4-wakeupgen.o
+
+-AFLAGS_omap44xx-smc.o                 :=-Wa,-march=armv7-a
++plus_sec := $(call as-instr,.arch_extension sec,+sec)
++AFLAGS_omap-headsmp.o                  :=-Wa,-march=armv7-a$(plus_sec)
++AFLAGS_omap44xx-smc.o                  :=-Wa,-march=armv7-a$(plus_sec)
+
+ # Functions loaded to SRAM
+ obj-$(CONFIG_ARCH_OMAP2420)           += sram242x.o
+--
+1.7.0.2
+
recipes/linux/linux-omap4/0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch new file +26 -0
new file mode 100644
index 0000000..ea16ab1
@@ -0,0 +1,26 @@
+From da58d36fb6b13899249bf1efbf25f7385d048bb3 Mon Sep 17 00:00:00 2001
+From: Tim Gardner <[email protected]>
+Date: Tue, 14 Dec 2010 06:56:34 -0700
+Subject: [PATCH 2/2] Add AFLAGS for sleep44xx to fix FTBS
+
+Signed-off-by: Tim Gardner <[email protected]>
+---
+ arch/arm/mach-omap2/Makefile |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
+index 0241b4d..865a3e2 100644
+--- a/arch/arm/mach-omap2/Makefile
++++ b/arch/arm/mach-omap2/Makefile
+@@ -59,6 +59,8 @@ obj-$(CONFIG_ARCH_OMAP4)             += pm44xx.o pm_bus.o cpuidle44xx.o \
+                                          omap4-mpuss-lowpower.o sleep44xx.o \
+                                          voltage.o opp44xx_data.o
+
++AFLAGS_sleep44xx.o                  :=-Wa,-march=armv7-a$(plus_sec)
++
+ obj-$(CONFIG_PM_DEBUG)                        += pm-debug.o
+ obj-$(CONFIG_OMAP_SMARTREFLEX)          += sr_device.o smartreflex.o
+ obj-$(CONFIG_OMAP_SMARTREFLEX_CLASS3) += smartreflex-class3.o
+--
+1.7.0.2
+
recipes/linux/linux-omap4_2.6.35.3.bb +2 -0
index 4db0b28..f5a11f4 100644
@@ -15,6 +15,8 @@ SRC_URI = "git://dev.omapzoom.org/pub/scm/integration/kernel-ubuntu.git;protocol
            file://0006-ARM-Add-option-to-allow-userspace-access-to-performa.patch \
            file://0007-OMAP4-do-not-force-select-options-which-are-not-requ.patch \
            file://0008-omap4-pandaboard-add-support-for-DVI-output.patch \
+          file://0001-UBUNTU-Config-Fix-FTBS-caused-by-new-binutils.patch \
+          file://0002-Add-AFLAGS-for-sleep44xx-to-fix-FTBS.patch \

           file://defconfig"

 S = "${WORKDIR}/git"
--
1.7.0.2

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel