diff mbox

[U-Boot,07/11] arm: pxa: colibri_pxa270: fix boot hang

Message ID 1439691396-28809-7-git-send-email-marcel@ziswiler.com
State Accepted
Delegated to: Marek Vasut
Headers show

Commit Message

Marcel Ziswiler Aug. 16, 2015, 2:16 a.m. UTC
Fix boot hang caused by incompatible libgcc which has been observed
when using later Linaro toolchains like
gcc-linaro-arm-linux-gnueabihf-2012.09-20120921_linux or
gcc-linaro-4.9-2014.11-x86_64_arm-linux-gnueabihf.

Signed-off-by: Marcel Ziswiler <marcel@ziswiler.com>
---

 configs/colibri_pxa270_defconfig | 1 +
 1 file changed, 1 insertion(+)

Comments

Marek Vasut Aug. 16, 2015, 3:31 a.m. UTC | #1
On Sunday, August 16, 2015 at 04:16:32 AM, Marcel Ziswiler wrote:
> Fix boot hang caused by incompatible libgcc which has been observed
> when using later Linaro toolchains like
> gcc-linaro-arm-linux-gnueabihf-2012.09-20120921_linux or
> gcc-linaro-4.9-2014.11-x86_64_arm-linux-gnueabihf.

That's no surprise, since U-Boot links libgcc into itself. And since PXA2xx
is armv5-compatible, you'd need armv5 toolchain. The hang you're observing
is most likely happening in some aeabi_* function pulled in from libgcc,
which contains some armv7 instruction(s), which in turn upsets the xscale.

I would suggest that we drop this patch, but I would also suggest that we do
the same thing kernel does and just enable CONFIG_USE_PRIVATE_LIBGCC globally 
for everyone to break this constant nonsensical influx of toolchain-related 
problems. This nonsense has been dragging on for too long. Tom? Albert?

> Signed-off-by: Marcel Ziswiler <marcel@ziswiler.com>
> ---
> 
>  configs/colibri_pxa270_defconfig | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/configs/colibri_pxa270_defconfig
> b/configs/colibri_pxa270_defconfig index 3963a50..2ef9ccb 100644
> --- a/configs/colibri_pxa270_defconfig
> +++ b/configs/colibri_pxa270_defconfig
> @@ -4,3 +4,4 @@ CONFIG_TARGET_COLIBRI_PXA270=y
>  # CONFIG_CMD_LOADB is not set
>  # CONFIG_CMD_LOADS is not set
>  # CONFIG_CMD_SETEXPR is not set
> +CONFIG_USE_PRIVATE_LIBGCC=y

Best regards,
Marek Vasut
Marcel Ziswiler Aug. 16, 2015, 8:03 a.m. UTC | #2
On 16 August 2015 05:31:58 CEST, Marek Vasut <marex@denx.de> wrote:
>On Sunday, August 16, 2015 at 04:16:32 AM, Marcel Ziswiler wrote:

>I would suggest that we drop this patch, but I would also suggest that
>we do
>the same thing kernel does and just enable CONFIG_USE_PRIVATE_LIBGCC
>globally 
>for everyone to break this constant nonsensical influx of
>toolchain-related 
>problems. This nonsense has been dragging on for too long. Tom? Albert?

I don't really care how this gets fixed I just don't ever want to have to debug through that one ever again!

Thanks, Marek.
Marek Vasut Aug. 16, 2015, 2:34 p.m. UTC | #3
On Sunday, August 16, 2015 at 10:03:51 AM, Marcel Ziswiler wrote:
> On 16 August 2015 05:31:58 CEST, Marek Vasut <marex@denx.de> wrote:
> >On Sunday, August 16, 2015 at 04:16:32 AM, Marcel Ziswiler wrote:
> >
> >I would suggest that we drop this patch, but I would also suggest that
> >we do
> >the same thing kernel does and just enable CONFIG_USE_PRIVATE_LIBGCC
> >globally
> >for everyone to break this constant nonsensical influx of
> >toolchain-related
> >problems. This nonsense has been dragging on for too long. Tom? Albert?
> 
> I don't really care how this gets fixed I just don't ever want to have to
> debug through that one ever again!

I've been there, multiple times. I can feel your pain, this is a terrible
nastiness with the libgcc.

> Thanks, Marek.

Best regards,
Marek Vasut
diff mbox

Patch

diff --git a/configs/colibri_pxa270_defconfig b/configs/colibri_pxa270_defconfig
index 3963a50..2ef9ccb 100644
--- a/configs/colibri_pxa270_defconfig
+++ b/configs/colibri_pxa270_defconfig
@@ -4,3 +4,4 @@  CONFIG_TARGET_COLIBRI_PXA270=y
 # CONFIG_CMD_LOADB is not set
 # CONFIG_CMD_LOADS is not set
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_USE_PRIVATE_LIBGCC=y