Skip to contentSkip to conversation

GCC 4.6.0 on ARM?

DISCUSSION Gary Thomas 3 participants 15 messages Apr 28, 2011 – May 17, 2011 1 message not in the archive

lore
Share & tools
lore
#0 lore raw

I got my OMAP target to build with GCC-4.6.0 using the latest Poky tree after a fresh rebuild. Sadly, the Linux kernel (2.6.37.3) does not run correctly when built with this compiler. It fails when enumerating the USB bus :-(

Are there known issues with the Linux kernel on ARM and GCC-4.6?

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#1 lore raw
Quoted 7 lines · Gary Thomas

I got my OMAP target to build with GCC-4.6.0 using the latest Poky tree after a fresh rebuild.  Sadly, the Linux kernel (2.6.37.3) does not run correctly when built with this compiler.  It fails when enumerating the USB bus :-(

Are there known issues with the Linux kernel on ARM and GCC-4.6?

There has been fixes on top of 4.6.0 the one we have right now is vanilla 4.6.0 release. I plan to add second set of patches but you have to dig a bit more to identify the problem

Quoted 10 lines

--
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky

#2 lore raw
Quoted 6 lines · Khem Raj
Quoted 5 lines · Gary Thomas

I got my OMAP target to build with GCC-4.6.0 using the latest Poky tree after a fresh rebuild.  Sadly, the Linux kernel (2.6.37.3) does not run correctly when built with this compiler.  It fails when enumerating the USB bus :-(

Quoted 7 lines
Quoted 2 lines

Are there known issues with the Linux kernel on ARM and GCC-4.6?

There has been fixes on top of 4.6.0 the one we have right now is vanilla 4.6.0 release. I plan to add second set of patches but you have to dig a bit more to identify the problem

I have some updates for gcc 4.6.0
they are staged in

http://git.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/gcc-4.6

(top 3 patches)

Please test them out and if you are lucky
your problem might be fixed too.

All, please try these patches and provide any feedback

-Khem

#3 lore raw
Quoted 18 lines · Khem Raj
Quoted 6 lines · Khem Raj
Quoted 5 lines · Gary Thomas

I got my OMAP target to build with GCC-4.6.0 using the latest Poky tree after a fresh rebuild. Sadly, the Linux kernel (2.6.37.3) does not run correctly when built with this compiler. It fails when enumerating the USB bus :-(

Quoted 7 lines
Quoted 2 lines

Are there known issues with the Linux kernel on ARM and GCC-4.6?

There has been fixes on top of 4.6.0 the one we have right now is vanilla 4.6.0 release. I plan to add second set of patches but you have to dig a bit more to identify the problem

I have some updates for gcc 4.6.0
they are staged in

Quoted 8 lines

http://git.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/gcc-4.6

(top 3 patches)

Please test them out and if you are lucky
your problem might be fixed too.

All, please try these patches and provide any feedback

There seem to be some missing pieces:
| ERROR: Function 'Fetcher failure for URL: 'file://gcc-4_6-branch-backports/0055-Remove-svn-mergeinfo.patch'. Unable to fetch URL file://gcc-4_6-branch-backports/0055-Remove-svn-mergeinfo.patch from any source.' failed

I don't see either gcc-4_6-branch-backports or linaro directories (full of patches) in the tree.

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------

A message that is not in the archive (sent off-list or not yet received): [email protected]

#5 lore raw
Quoted 5 lines · Gary Thomas

It seems that the file gcc-4_6-branch-backports/0055-Remove-svn-mergeinfo.patch is empty in your tree, so patch didn't create it for me.  Should it just be removed from the SRC list?

good find. Yes it should be. I will remove it and repush to same branch

#6 lore raw
In reply to Khem Raj
Quoted 18 lines · Khem Raj
Quoted 6 lines · Khem Raj
Quoted 5 lines · Gary Thomas

I got my OMAP target to build with GCC-4.6.0 using the latest Poky tree after a fresh rebuild. Sadly, the Linux kernel (2.6.37.3) does not run correctly when built with this compiler. It fails when enumerating the USB bus :-(

Quoted 7 lines
Quoted 2 lines

Are there known issues with the Linux kernel on ARM and GCC-4.6?

There has been fixes on top of 4.6.0 the one we have right now is vanilla 4.6.0 release. I plan to add second set of patches but you have to dig a bit more to identify the problem

I have some updates for gcc 4.6.0
they are staged in

Quoted 8 lines

http://git.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/gcc-4.6

(top 3 patches)

Please test them out and if you are lucky
your problem might be fixed too.

All, please try these patches and provide any feedback

I was able to build my kernel (ARM OMAP/3530 based) using this, but the USB still doesn't work, so no improvement, sorry.

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#7 lore raw

2011/5/2 Gary Thomas <[email protected]>:

Quoted 1 line

I was able to build my kernel (ARM OMAP/3530 based) using this, but

good.

Quoted 2 lines

the USB still doesn't work, so no improvement, sorry.

bad. hmm I guess it needs to be debugged. Many times new compilers unearth coding errors
sometimes compiler mess up too.

#8 lore raw
In reply to Gary Thomas
Quoted 39 lines

-----Original Message-----
From: [email protected] [mailto:poky- [email protected]] On Behalf Of Gary Thomas
Sent: Monday, May 02, 2011 5:57 AM
To: Khem Raj
Cc: Poky Project; Patches and discussions about the oe-core layer
Subject: Re: [poky] GCC 4.6.0 on ARM?

Quoted 1 line · Khem Raj

On Thu, Apr 28, 2011 at 11:23 AM, Khem Raj<[email protected]>

Quoted 1 line · wrote:
Quoted 1 line

On Thu, Apr 28, 2011 at 10:09 AM, Gary Thomas<[email protected]>

Quoted 2 lines · wrote:
Quoted 2 lines
Quoted 2 lines

I got my OMAP target to build with GCC-4.6.0 using the latest Poky tree after a fresh rebuild. Sadly, the Linux kernel

(2.6.37.3)

Quoted 7 lines
Quoted 7 lines
Quoted 5 lines

does not run correctly when built with this compiler. It fails when enumerating the USB bus :-(

Are there known issues with the Linux kernel on ARM and GCC-4.6?

There has been fixes on top of 4.6.0 the one we have right now is

vanilla

Quoted 1 line
Quoted 1 line

4.6.0 release. I plan to add second set of patches but you have to

dig a bit

Quoted 7 lines
Quoted 2 lines

more to identify the problem

I have some updates for gcc 4.6.0
they are staged in

http://git.openembedded.org/cgit.cgi/openembedded-core-

contrib/log/?h=kraj/gcc-4.6

Quoted 3 lines

(top 3 patches)

Quoted 7 lines
Quoted 4 lines

Please test them out and if you are lucky
your problem might be fixed too.

All, please try these patches and provide any feedback

I was able to build my kernel (ARM OMAP/3530 based) using this, but the USB still doesn't work, so no improvement, sorry.

Gary,
Is the USB breakage is due to gcc 4.6.0 ?

Thanks,
Nitin

Quoted 10 lines

--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
_______________________________________________
poky mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/poky

#9 lore raw
Quoted 42 lines · Nitin A
Quoted 42 lines

-----Original Message-----
From: [email protected] [mailto:poky- [email protected]] On Behalf Of Gary Thomas
Sent: Monday, May 02, 2011 5:57 AM
To: Khem Raj
Cc: Poky Project; Patches and discussions about the oe-core layer
Subject: Re: [poky] GCC 4.6.0 on ARM?

Quoted 1 line · Khem Raj

On Thu, Apr 28, 2011 at 11:23 AM, Khem Raj<[email protected]>

Quoted 1 line · wrote:
Quoted 1 line

On Thu, Apr 28, 2011 at 10:09 AM, Gary Thomas<[email protected]>

Quoted 2 lines · wrote:
Quoted 2 lines
Quoted 2 lines

I got my OMAP target to build with GCC-4.6.0 using the latest Poky tree after a fresh rebuild. Sadly, the Linux kernel

(2.6.37.3)

Quoted 7 lines
Quoted 7 lines
Quoted 5 lines

does not run correctly when built with this compiler. It fails when enumerating the USB bus :-(

Are there known issues with the Linux kernel on ARM and GCC-4.6?

There has been fixes on top of 4.6.0 the one we have right now is

vanilla

Quoted 1 line
Quoted 1 line

4.6.0 release. I plan to add second set of patches but you have to

dig a bit

Quoted 7 lines
Quoted 2 lines

more to identify the problem

I have some updates for gcc 4.6.0
they are staged in

http://git.openembedded.org/cgit.cgi/openembedded-core-

contrib/log/?h=kraj/gcc-4.6

Quoted 6 lines

(top 3 patches)

Please test them out and if you are lucky
your problem might be fixed too.

Quoted 7 lines
Quoted 4 lines
Quoted 1 line

All, please try these patches and provide any feedback

I was able to build my kernel (ARM OMAP/3530 based) using this, but the USB still doesn't work, so no improvement, sorry.

Gary,
Is the USB breakage is due to gcc 4.6.0 ?

Yes, that's the only change. Building the kernel from the same source repository with 4.5.2 (using patches from you and Khem Raj) works perfectly.

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#10 lore raw
Quoted 4 lines

Yes, that's the only change. Building the kernel from the same source repository with 4.5.2 (using patches from you and Khem Raj) works perfectly.

Hi Gary,
The yocto-linux kernel had to go through few changes to mute some compiler warnings with gcc 4.6.0. Are you building your own kernel?

Thanks,
Nitin

#11 lore raw
Quoted 6 lines · Nitin A
Quoted 4 lines

Yes, that's the only change. Building the kernel from the same source repository with 4.5.2 (using patches from you and Khem Raj) works perfectly.

Hi Gary,
The yocto-linux kernel had to go through few changes to mute some compiler warnings with gcc 4.6.0. Are you building your own kernel?

Yes. It's roughly based on the Angstrom 2.6.37 with BeagleBoard support (I have additional OMAP boards which are not in the public tree).

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#12 lore raw

Gary,
I tried with qemuarm machine in the yocto tree. And I find the usb devices are working when compiled with gcc 4.6.0

Thanks,
Nitin

root@qemuarm:~# usb-devices  
T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 3
D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0001 Rev=02.06
S:  Manufacturer=Linux 2.6.37.6-yocto-standard+ ohci_hcd
S:  Product=OHCI Host Controller
S:  SerialNumber=0000:00:0c.0
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=056a ProdID=0000 Rev=42.10
S:  Manufacturer=QEMU 0.14.0
S:  Product=Wacom PenPartner
S:  SerialNumber=1
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=80mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=01 Prot=02 Driver=wacom
root@qemuarm:~# dmesg | head
Linux version 2.6.37.6-yocto-standard+ ([email protected]) (gcc version 4.6.0 (GCC) ) #1 PREEMPT Fri May 13 13:55:35 PDT 2011
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00093177
CPU: VIVT data cache, VIVT instruction cache
Machine: ARM-Versatile PB
Memory policy: ECC disabled, Data cache writeback
On node 0 totalpages: 32768
free_area_init_node: node 0, pgdat c05640c0, node_mem_map c05c0000
  Normal zone: 256 pages used for memmap
  Normal zone: 0 pages reserved
  Normal zone: 32512 pages, LIFO batch:7
Quoted 26 lines

-----Original Message-----
From: Gary Thomas [mailto:[email protected]]
Sent: Wednesday, May 11, 2011 8:40 AM
To: Kamble, Nitin A
Cc: Khem Raj; Poky Project; Patches and discussions about the oe-core layer
Subject: Re: [poky] GCC 4.6.0 on ARM?

Quoted 6 lines · Nitin A
Quoted 4 lines

Yes, that's the only change. Building the kernel from the same source repository with 4.5.2 (using patches from you and Khem Raj) works perfectly.

Hi Gary,
The yocto-linux kernel had to go through few changes to mute some

compiler warnings with gcc 4.6.0. Are you building your own kernel?

Yes. It's roughly based on the Angstrom 2.6.37 with BeagleBoard support (I have additional OMAP boards which are not in the public tree).

--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------

#13 lore raw
Quoted 2 lines · Nitin A

Gary,
I tried with qemuarm machine in the yocto tree. And I find the usb devices are working when compiled with gcc 4.6.0

Can you try it on the beagleboard?

Also, it's not that the USB device isn't found, rather no devices connected to the USB bus are discovered.

Quoted 54 lines
root@qemuarm:~# usb-devices
T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 3
D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0001 Rev=02.06
S:  Manufacturer=Linux 2.6.37.6-yocto-standard+ ohci_hcd
S:  Product=OHCI Host Controller
S:  SerialNumber=0000:00:0c.0
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
D:  Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=056a ProdID=0000 Rev=42.10
S:  Manufacturer=QEMU 0.14.0
S:  Product=Wacom PenPartner
S:  SerialNumber=1
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=80mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=01 Prot=02 Driver=wacom
root@qemuarm:~# dmesg | head
Linux version 2.6.37.6-yocto-standard+ ([email protected]) (gcc version 4.6.0 (GCC) ) #1 PREEMPT Fri May 13 13:55:35 PDT 2011
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00093177
CPU: VIVT data cache, VIVT instruction cache
Machine: ARM-Versatile PB
Memory policy: ECC disabled, Data cache writeback
On node 0 totalpages: 32768
free_area_init_node: node 0, pgdat c05640c0, node_mem_map c05c0000
   Normal zone: 256 pages used for memmap
   Normal zone: 0 pages reserved
   Normal zone: 32512 pages, LIFO batch:7
Quoted 20 lines

-----Original Message-----
From: Gary Thomas [mailto:[email protected]]
Sent: Wednesday, May 11, 2011 8:40 AM
To: Kamble, Nitin A
Cc: Khem Raj; Poky Project; Patches and discussions about the oe-core layer
Subject: Re: [poky] GCC 4.6.0 on ARM?

Quoted 6 lines · Nitin A
Quoted 4 lines

Yes, that's the only change. Building the kernel from the same source repository with 4.5.2 (using patches from you and Khem Raj) works perfectly.

Hi Gary,
The yocto-linux kernel had to go through few changes to mute some

compiler warnings with gcc 4.6.0. Are you building your own kernel?

Yes. It's roughly based on the Angstrom 2.6.37 with BeagleBoard support (I have additional OMAP boards which are not in the public tree).

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#14 lore raw
Quoted 11 lines

-----Original Message-----
From: Gary Thomas [mailto:[email protected]]
Sent: Monday, May 16, 2011 3:46 PM
To: Kamble, Nitin A
Cc: Khem Raj; Poky Project; Patches and discussions about the oe-core layer
Subject: Re: [poky] GCC 4.6.0 on ARM?

Quoted 2 lines · Nitin A

Gary,
I tried with qemuarm machine in the yocto tree. And I find the usb

Quoted 8 lines

devices are working when compiled with gcc 4.6.0

Can you try it on the beagleboard?

Also, it's not that the USB device isn't found, rather no devices connected to
the USB bus are discovered.

Gary,
I don't have a beagle board to try out. If you can put some debug printks in the code to figure out what is happening in there. And for qemuarm machine the mouse(touchpad) and keyboards are working.

Thanks,
Nitin

#15 lore raw
In reply to Gary Thomas
Quoted 60 lines · Gary Thomas
Quoted 59 lines · Nitin A
Quoted 58 lines

-----Original Message-----
From: [email protected] [mailto:poky- [email protected]] On Behalf Of Gary Thomas
Sent: Monday, May 02, 2011 5:57 AM
To: Khem Raj
Cc: Poky Project; Patches and discussions about the oe-core layer
Subject: Re: [poky] GCC 4.6.0 on ARM?

Quoted 2 lines · Khem Raj

On Thu, Apr 28, 2011 at 11:23 AM, Khem Raj<[email protected]>

Quoted 2 lines · wrote:
Quoted 2 lines

On Thu, Apr 28, 2011 at 10:09 AM, Gary Thomas<[email protected]>

Quoted 3 lines · wrote:
Quoted 3 lines
Quoted 3 lines

I got my OMAP target to build with GCC-4.6.0 using the latest Poky tree after a fresh rebuild.  Sadly, the Linux kernel

(2.6.37.3)

Quoted 8 lines
Quoted 8 lines
Quoted 6 lines

does not run correctly when built with this compiler.  It fails when enumerating the USB bus :-(

Are there known issues with the Linux kernel on ARM and GCC-4.6?

There has been fixes on top of 4.6.0 the one we have right now is

vanilla

Quoted 2 lines
Quoted 2 lines

4.6.0 release. I plan to add second set of patches but you have to

dig a bit

Quoted 8 lines
Quoted 3 lines

more to identify the problem

I have some updates for gcc 4.6.0
they are staged in

http://git.openembedded.org/cgit.cgi/openembedded-core-

contrib/log/?h=kraj/gcc-4.6

Quoted 7 lines

(top 3 patches)

Please test them out and if you are lucky
your problem might be fixed too.

All, please try these patches and provide any feedback

I was able to build my kernel (ARM OMAP/3530 based) using this, but the USB still doesn't work, so no improvement, sorry.

Quoted 7 lines
Quoted 2 lines

Gary,
 Is the USB breakage is due to gcc 4.6.0 ?

Yes, that's the only change.  Building the kernel from the same source repository with 4.5.2 (using patches from you and Khem Raj) works perfectly.

Unless we dig down and narrow the issue its hard to say if its a gcc issue or a latent problem that
gcc 4.6 brings out.