Revert "configs/stm32f429: force usage of binutils 2.28.x"
PATCH 1/4 Revert "configs/stm32f429: force usage of binutils 2.28.x"
This reverts commit cbe43fd417d77f846f1ca47cdacd51a73be1aaec.
--- configs/stm32f429_disco_defconfig | 1 - 1 file changed, 1 deletion(-)
configs/stm32f429_disco_defconfig +0 -1
@@ -2,7 +2,6 @@ BR2_arm=y BR2_cortex_m4=y BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f429-disco/patches" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_11=y -BR2_BINUTILS_VERSION_2_28_X=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/stm32-post-build.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y
Signature · 1 line
2.7.4
PATCH 2/4 Revert "configs/stm32f469: force usage of binutils 2.28.x"
This reverts commit 12049cc8b8972a9d0f1e27f1382cc5752d45312f.
--- configs/stm32f469_disco_defconfig | 1 - 1 file changed, 1 deletion(-)
configs/stm32f469_disco_defconfig +0 -1
@@ -2,7 +2,6 @@ BR2_arm=y BR2_cortex_m4=y BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_11=y -BR2_BINUTILS_VERSION_2_28_X=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/stm32-post-build.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y
Signature · 1 line
2.7.4
PATCH 3/4 package/binutils: Cortex-M targets require version <2.29
In reply to Christophe PRIOUZEAUFrom: Laurent GONZALEZ <[email protected]>
binutils 2.29 changed the implementation of adr pseudo instruction it breaks linux kernel and impacts Cortex-M targets (eg. stm32)
--- package/binutils/Config.in.host | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
package/binutils/Config.in.host +3 -2
@@ -2,8 +2,9 @@ comment "Binutils Options" choice prompt "Binutils Version" - default BR2_BINUTILS_VERSION_2_29_X if !BR2_arc - default BR2_BINUTILS_VERSION_ARC if BR2_arc + default BR2_BINUTILS_VERSION_2_28_X if BR2_ARM_CPU_ARMV7M + default BR2_BINUTILS_VERSION_2_29_X if !BR2_arc && !BR2_ARM_CPU_ARMV7M + default BR2_BINUTILS_VERSION_ARC if BR2_arc && !BR2_ARM_CPU_ARMV7M help Select the version of binutils you wish to use.
Signature · 1 line
2.7.4
PATCH 4/4 linux: config.in: add comment for Arm Cortex-M
In reply to Christophe PRIOUZEAUWhen binutils > 2.28 are selected on Arm Cortex-M cpu, linux kernel does not boot due to a new implementation of 'adr pseudo instruction' on binutils.
Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051
--- linux/Config.in | 4 ++++ 1 file changed, 4 insertions(+)
linux/Config.in +4 -0
@@ -8,6 +8,10 @@ config BR2_LINUX_KERNEL if BR2_LINUX_KERNEL +comment "Linux kernel will not boot with binutils >= 2.29" + depends on !BR2_ARMV7M + depends on BR2_BINUTILS_VERSION_2_28_X + # Packages that need to have a kernel with support for loadable modules, # but do not use the kernel-modules infrastructure, should select that # option.
Signature · 1 line
2.7.4
PATCH 4/4 linux: config.in: add comment for Arm Cortex-M
Quoted 16 lines · Christophe PRIOUZEAU
When binutils > 2.28 are selected on Arm Cortex-M cpu, linux kernel does not boot due to a new implementation of 'adr pseudo instruction' on binutils.
Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051
Signed-off-by Christophe Priouzeau <[email protected]>--- linux/Config.in | 4 ++++ 1 file changed, 4 insertions(+)linux/Config.in +0
-0
linux/Config.in config BR2_LINUX_KERNEL · line 13
Quoted 6 lines
linux/Config.in +3
-0@@ -8,6 +8,10 @@ config BR2_LINUX_KERNEL if BR2_LINUX_KERNEL +comment "Linux kernel will not boot with binutils >= 2.29" + depends on !BR2_ARMV7M + depends on BR2_BINUTILS_VERSION_2_28_X
The logic is inverted here: it should be
depends on BR2_ARMV7M depends on !BR2_BINUTILS_VERSION_2_28_X
I guess you didn't test it?
Regards,
Arnout
Quoted 5 lines
linux/Config.in +1
-0+ # Packages that need to have a kernel with support for loadable modules, # but do not use the kernel-modules infrastructure, should select that # option.
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
PATCH 4/4 linux: config.in: add comment for Arm Cortex-M
On 05/31/2018 01:39 PM, Arnout Vandecappelle wrote:
On 31-05-18 12:17, Christophe PRIOUZEAU wrote:
When binutils > 2.28 are selected on Arm Cortex-M cpu, linux kernel does not boot due to a new implementation of 'adr pseudo instruction' on binutils.
Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051
--- linux/Config.in | 4 ++++ 1 file changed, 4 insertions(+)
linux/Config.in +3 -0
@@ -8,6 +8,10 @@ config BR2_LINUX_KERNEL if BR2_LINUX_KERNEL +comment "Linux kernel will not boot with binutils >= 2.29" + depends on !BR2_ARMV7M + depends on BR2_BINUTILS_VERSION_2_28_X
The logic is inverted here: it should be
depends on BR2_ARMV7M
depends on !BR2_BINUTILS_VERSION_2_28_X
I guess you didn't test it?
Sorry, I have made the test with the patch on binutils/config.in, and I have inverted the value. It's my fault.
Regards,
Arnout
+
# Packages that need to have a kernel with support for loadable modules,
# but do not use the kernel-modules infrastructure, should select that # option.
Regards
Christophe
--
Best regards / Cordialement,
[cid:part1.6C50213D.8A91E88A at st.com] Christophe Priouzeau | TINA: 166 7320 | Tel: +33 244027320
STMicroelectronics
ST oneline: www.st.com<http://www.st.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20180531/202a86fd/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: st_mail.png
Type: image/png
Size: 9916 bytes
Desc: st_mail.png
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20180531/202a86fd/attachment.png>
PATCH 4/4 linux: config.in: add comment for Arm Cortex-M
In reply to Arnout VandecappelleHello,
On 05/31/2018 01:39 PM, Arnout Vandecappelle wrote:
On 31-05-18 12:17, Christophe PRIOUZEAU wrote:
When binutils > 2.28 are selected on Arm Cortex-M cpu, linux kernel does not boot due to a new implementation of 'adr pseudo instruction' on binutils.
Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051
--- linux/Config.in | 4 ++++ 1 file changed, 4 insertions(+)
linux/Config.in +3 -0
@@ -8,6 +8,10 @@ config BR2_LINUX_KERNEL if BR2_LINUX_KERNEL +comment "Linux kernel will not boot with binutils >= 2.29" + depends on !BR2_ARMV7M + depends on BR2_BINUTILS_VERSION_2_28_X
The logic is inverted here: it should be
depends on BR2_ARMV7M
depends on !BR2_BINUTILS_VERSION_2_28_X
I guess you didn't test it?
After, new test:
$> grep BINUTILS_VERSION_2_29 .config
BR2_BINUTILS_VERSION_2_29_X=y
The depends must be
depends on !BR2_ARMV7M
depends on !BR2_BINUTILS_VERSION_2_28_X
I will update the patch.
Regards,
Arnout
+
# Packages that need to have a kernel with support for loadable modules,
# but do not use the kernel-modules infrastructure, should select that # option.
Regards
Christophe
--
Best regards / Cordialement,
[cid:part1.979821E0.7643D799 at st.com] Christophe Priouzeau | TINA: 166 7320 | Tel: +33 244027320
STMicroelectronics
ST oneline: www.st.com<http://www.st.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20180531/95304a4a/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: st_mail.png
Type: image/png
Size: 9916 bytes
Desc: st_mail.png
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20180531/95304a4a/attachment.png>
PATCH v2 1/4 Revert "configs/stm32f429: force usage of binutils 2.28.x"
In reply to Christophe PRIOUZEAUThis reverts commit cbe43fd417d77f846f1ca47cdacd51a73be1aaec.
--- configs/stm32f429_disco_defconfig | 1 - 1 file changed, 1 deletion(-)
configs/stm32f429_disco_defconfig +0 -1
@@ -2,7 +2,6 @@ BR2_arm=y BR2_cortex_m4=y BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f429-disco/patches" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_11=y -BR2_BINUTILS_VERSION_2_28_X=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/stm32-post-build.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y
Signature · 1 line
2.7.4
PATCH v2 2/4 Revert "configs/stm32f469: force usage of binutils 2.28.x"
This reverts commit 12049cc8b8972a9d0f1e27f1382cc5752d45312f.
--- configs/stm32f469_disco_defconfig | 1 - 1 file changed, 1 deletion(-)
configs/stm32f469_disco_defconfig +0 -1
@@ -2,7 +2,6 @@ BR2_arm=y BR2_cortex_m4=y BR2_GLOBAL_PATCH_DIR="board/stmicroelectronics/stm32f469-disco/patches" BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_11=y -BR2_BINUTILS_VERSION_2_28_X=y BR2_ROOTFS_POST_BUILD_SCRIPT="board/stmicroelectronics/stm32-post-build.sh" BR2_LINUX_KERNEL=y BR2_LINUX_KERNEL_CUSTOM_VERSION=y
Signature · 1 line
2.7.4
PATCH v2 3/4 package/binutils: Cortex-M targets require version <2.29
In reply to Christophe PRIOUZEAUFrom: Laurent GONZALEZ <[email protected]>
binutils 2.29 changed the implementation of adr pseudo instruction it breaks linux kernel and impacts Cortex-M targets (eg. stm32)
--- package/binutils/Config.in.host | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-)
package/binutils/Config.in.host +3 -2
@@ -2,8 +2,9 @@ comment "Binutils Options" choice prompt "Binutils Version" - default BR2_BINUTILS_VERSION_2_29_X if !BR2_arc - default BR2_BINUTILS_VERSION_ARC if BR2_arc + default BR2_BINUTILS_VERSION_2_28_X if BR2_ARM_CPU_ARMV7M + default BR2_BINUTILS_VERSION_2_29_X if !BR2_arc && !BR2_ARM_CPU_ARMV7M + default BR2_BINUTILS_VERSION_ARC if BR2_arc && !BR2_ARM_CPU_ARMV7M help Select the version of binutils you wish to use.
Signature · 1 line
2.7.4
PATCH v2 4/4 linux: config.in: add comment for Arm Cortex-M
In reply to Christophe PRIOUZEAUWhen binutils > 2.28 are selected on Arm Cortex-M cpu, linux kernel does not boot due to a new implementation of 'adr pseudo instruction' on binutils.
Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051
---
Changes v1 -> v2
- correct depends on for comment
linux/Config.in | 4 ++++ 1 file changed, 4 insertions(+)
linux/Config.in +4 -0
@@ -8,6 +8,10 @@ config BR2_LINUX_KERNEL if BR2_LINUX_KERNEL +comment "Linux kernel will not boot with binutils >= 2.29" + depends on !BR2_ARMV7M + depends on !BR2_BINUTILS_VERSION_2_28_X + # Packages that need to have a kernel with support for loadable modules, # but do not use the kernel-modules infrastructure, should select that # option.
Signature · 1 line
2.7.4
PATCH v2 4/4 linux: config.in: add comment for Arm Cortex-M
Hello Christophe,
Thanks for coming up with a patch series for this issue.
Quoted 19 lines · Christophe PRIOUZEAU
When binutils > 2.28 are selected on Arm Cortex-M cpu, linux kernel does not boot due to a new implementation of 'adr pseudo instruction' on binutils.
Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051
Signed-off-by Christophe Priouzeau <[email protected]>---
Changes v1 -> v2
- correct depends on for commentlinux/Config.in | 4 ++++ 1 file changed, 4 insertions(+)linux/Config.in +0
-0
linux/Config.in config BR2_LINUX_KERNEL · line 12
Quoted 5 lines
linux/Config.in +2
-0@@ -8,6 +8,10 @@ config BR2_LINUX_KERNEL if BR2_LINUX_KERNEL +comment "Linux kernel will not boot with binutils >= 2.29" + depends on !BR2_ARMV7M
So this comment will never appear on ARMv7M, which is exactly the opposite of what we want. Did you test this ? Did you verify that the comment actually appears when expected ?
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering https://bootlin.com
PATCH v2 4/4 linux: config.in: add comment for Arm Cortex-M
Quoted 25 lines · Thomas Petazzoni
Hello Christophe,
Thanks for coming up with a patch series for this issue.
Quoted 20 lines · Christophe PRIOUZEAU
When binutils > 2.28 are selected on Arm Cortex-M cpu, linux kernel does not boot due to a new implementation of 'adr pseudo instruction' on binutils.
Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051
Signed-off-by Christophe Priouzeau <[email protected]>---
Changes v1 -> v2
- correct depends on for commentlinux/Config.in | 4 ++++ 1 file changed, 4 insertions(+)linux/Config.in +0
-0@@ -8,6 +8,10 @@ config BR2_LINUX_KERNEL
Quoted 7 lines
linux/Config.in config BR2_LINUX_KERNEL · line 12
Quoted 4 lines
linux/Config.in +2
-0if BR2_LINUX_KERNEL +comment "Linux kernel will not boot with binutils >= 2.29" + depends on !BR2_ARMV7MSo this comment will never appear on ARMv7M, which is exactly the opposite of what we want. Did you test this ? Did you verify that the comment actually appears when expected ?
Ok, I have made a bad copy/paste from the proposition of Arnoult and is why the depends of !BR2_ARMV7M are always true (it's not defined), the correct
tag are "BR2_ARM_CPU_ARMV7M".
Sorry, I started to send a new series.
Quoted 4 lines
Best regards,
Thomas
Regards
Christophe
PATCH v2 4/4 linux: config.in: add comment for Arm Cortex-M
Hello,
Quoted 33 lines · Christophe PRIOUZEAU
Quoted 25 lines · Thomas Petazzoni
Hello Christophe,
Thanks for coming up with a patch series for this issue.
Quoted 20 lines · Christophe PRIOUZEAU
When binutils > 2.28 are selected on Arm Cortex-M cpu, linux kernel does not boot due to a new implementation of 'adr pseudo instruction' on binutils.
Bugzilla thread: https://bugs.busybox.net/show_bug.cgi?id=11051
Signed-off-by Christophe Priouzeau <[email protected]>---
Changes v1 -> v2
- correct depends on for commentlinux/Config.in | 4 ++++ 1 file changed, 4 insertions(+)linux/Config.in +0
-0@@ -8,6 +8,10 @@ config BR2_LINUX_KERNELQuoted 7 lines
linux/Config.in config BR2_LINUX_KERNEL · line 12
Quoted 4 lines
linux/Config.in +2
-0if BR2_LINUX_KERNEL +comment "Linux kernel will not boot with binutils >= 2.29" + depends on !BR2_ARMV7MSo this comment will never appear on ARMv7M, which is exactly the opposite of what we want. Did you test this ? Did you verify that the comment actually appears when expected ?
Quoted 5 lines
Ok, I have made a bad copy/paste from the proposition of Arnoult and is why the depends of !BR2_ARMV7M are always true (it's not defined), the correct
tag are "BR2_ARM_CPU_ARMV7M".
Sorry, I started to send a new series.
This was indeed one problem. But the other problem is that the condition is inverted, it should be:
depends on <we are on ARMv7M>
and not:
depends on !<we are on ARMv7M>
Indeed, we want the comment to be visible when we are on ARMv7M, and invisible in all other cases.
Please test your change by running menuconfig and making sure that the comment is visible vs. invisible as expected.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering https://bootlin.com