[meta-freescale] Problem booting linux-boundary on nitrogen6x - suspect GCC 4.8.1 issue

Erik Botö erik.boto at pelagicore.com
Tue Jul 9 06:13:33 PDT 2013


On Tue, Jul 9, 2013 at 3:03 PM, Gary Thomas <samoht.yrag at gmail.com> wrote:

> On 2013-07-09 06:39, Erik Botö wrote:
>
>
>> On Tue, Jul 9, 2013 at 1:17 PM, Gary Thomas <gary at mlbassoc.com <mailto:
>> gary at mlbassoc.com>> wrote:
>>
>>     On 2013-07-09 03:19, Erik Botö wrote:
>>
>>         Update:
>>
>>         I added the following two lines to local.conf and rebuilt the
>> kernel, now it boots ok.
>>
>>         PREFERRED_VERSION_gcc = "4.7.2"
>>         PREFERRED_VERSION_gcc-cross = "4.7.2"
>>
>>         So it seems we have an issue here with GCC 4.8.1, though I'm not
>> really sure what the best way to approach this is.
>>
>>
>>     There are known problems with the ARM kernel and GCC 4.8.  The Yocto
>> kernel
>>     has a set of patches that they've incorporated to make this work.  I
>> suspect
>>     that these need to be applied to the FreeScale kernels as well.
>>  Until that
>>     happens, I'd stay with the GCC 4.7 compiler.
>>
>>
>> I took a look at the patches that was applied to linux-yocto-3.8 to fix
>> this issue. Seems like it's two patches to memset.S, and both applied
>> cleanly to linux-boundary as well and
>> leads to a booting kernel. These patches are also available upstream [1].
>> Before this memset.S hasn't been touched since November -08, so I suspect
>> they're totally safe to include
>> in linux-boundary as well.
>>
>> [1] See the two latest commits at https://github.com/torvalds/**
>> linux/commits/master/arch/arm/**lib/memset.S<https://github.com/torvalds/linux/commits/master/arch/arm/lib/memset.S>
>>
>
> So does your board boot with these changes (with GCC 4.8)?
>

Yes :)


>
>          On Tue, Jul 9, 2013 at 9:58 AM, Erik Botö <
>> erik.boto at pelagicore.com <mailto:erik.boto at pelagicore.**com<erik.boto at pelagicore.com>>
>> <mailto:erik.boto at pelagicore._**_com <mailto:erik.boto at pelagicore.**com<erik.boto at pelagicore.com>
>> >>>
>>
>>         wrote:
>>
>>              Hi,
>>
>>              Has anyone built (and verified boot) linux-boundary using
>> GCC 4.8.1? I have a build that's a couple of days old (using gcc-4.7.2-r20)
>> that works, and one more recent
>>              (gcc-4.8.1-r0) that doesn't boot. The same sources for
>> linux-boundary are used in both cases.
>>
>>              I'll see if I can step down to GCC 4.7.2 and keep everything
>> else equal to see if it's really the GCC version that breaks it. If anyone
>> else has ideas or input I'll be
>>         happy to
>>              hear!
>>
>>              Cheers,
>>              Erik Botö
>>
>>              The error:
>>
>>              Uncompressing Linux... done, booting the kernel.
>>              [    0.000000] Initializing cgroup subsys cpuset
>>              [    0.000000] Initializing cgroup subsys cpu
>>              [    0.000000] Linux version 3.0.35-4.0.0+ge6e1b5a
>> (erbo at yocto-build) (gcc version 4.8.1 (GCC) ) #1 SMP PREEMPT Tue Jul 9
>> 08:51:39 CEST 2013
>>              [    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10
>> (ARMv7), cr=10c53c7d
>>              [    0.000000] CPU: VIPT nonaliasing data cache, VIPT
>> aliasing instruction cache
>>              [    0.000000] Machine: Boundary Devices Nitrogen6X/SABRE
>> Lite Board
>>              [    0.000000] Memory policy: ECC disabled, Data cache
>> writealloc
>>              [    0.000000] CPU identified as i.MX6Q, silicon rev 1.2
>>              [    0.000000] PERCPU: Embedded 7 pages/cpu @8c008000 s5504
>> r8192 d14976 u32768
>>              [    0.000000] Built 1 zonelists in Zone order, mobility
>> grouping on.  Total pages: 227328
>>              [    0.000000] Kernel command line: enable_wait_mode=off
>> video=mxcfb0:fbpix=BGR32 video=mxcfb1:off video=mxcfb2:off fbmem=10M
>> vt.global_cursor_default=0 console=0
>>              [    0.000000] PID hash table entries: 4096 (order: 2, 16384
>> bytes)
>>              [    0.000000] Dentry cache hash table entries: 131072
>> (order: 7, 524288 bytes)
>>              [    0.000000] Inode-cache hash table entries: 65536 (order:
>> 6, 262144 bytes)
>>              [    0.000000] Memory: 640MB 256MB = 896MB total
>>              [    0.000000] Memory: 901044k/901044k available, 147532k
>> reserved, 0K highmem
>>              [    0.000000] Virtual kernel memory layout:
>>              [    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4
>> kB)
>>              [    0.000000]     fixmap  : 0xfff00000 - 0xfffe0000   ( 896
>> kB)
>>              [    0.000000]     DMA     : 0xf4600000 - 0xffe00000   ( 184
>> MB)
>>              [    0.000000]     vmalloc : 0xc0800000 - 0xf2000000   ( 792
>> MB)
>>              [    0.000000]     lowmem  : 0x80000000 - 0xc0000000   (1024
>> MB)
>>              [    0.000000]     pkmap   : 0x7fe00000 - 0x80000000   (   2
>> MB)
>>              [    0.000000]     modules : 0x7f000000 - 0x7fe00000   (  14
>> MB)
>>              [    0.000000]       .init : 0x80008000 - 0x80035000   ( 180
>> kB)
>>              [    0.000000]       .text : 0x80035000 - 0x806836dc   (6458
>> kB)
>>              [    0.000000]       .data : 0x80684000 - 0x806db1e0   ( 349
>> kB)
>>              [    0.000000]        .bss : 0x806db204 - 0x80725958   ( 298
>> kB)
>>              [    0.000000] SLUB: Genslabs=13, HWalign=32, Order=0-3,
>> MinObjects=0, CPUs=4, Nodes=1
>>              [    0.000000] Preemptible hierarchical RCU implementation.
>>              [    0.000000] NR_IRQS:624
>>              [    0.000000] MXC GPIO hardware
>>              [    0.000000] sched_clock: 32 bits at 3000kHz, resolution
>> 333ns, wraps every 1431655ms
>>              [    0.000000] arm_max_freq=1GHz
>>              [    0.000000] MXC_Early serial console at MMIO 0x21e8000
>> (options '115200')
>>              [    0.000000] bootconsole [ttymxc1] enabled
>>              [    0.000000] Console: colour dummy device 80x30
>>              [    0.230828] Calibrating delay loop... 1581.05 BogoMIPS
>> (lpj=7905280)
>>              [    0.319158] pid_max: default: 32768 minimum: 301
>>              [    0.324128] Mount-cache hash table entries: 512
>>              [    0.329539] Initializing cgroup subsys blkio
>>              [    0.333874] CPU: Testing write buffer coherency: ok
>>              [    0.339064] hw perfevents: enabled with ARMv7 Cortex-A9
>> PMU driver, 7 counters available
>>              [    0.439583] CPU1: Booted secondary processor
>>              [    0.519586] CPU2: Booted secondary processor
>>              [    0.599594] CPU3: Booted secondary processor
>>              [    0.639097] Brought up 4 CPUs
>>              [    0.654922] SMP: Total of 4 processors activated (6324.22
>> BogoMIPS).
>>              [    0.661862] devtmpfs: initialized
>>              [    0.682812] print_constraints: dummy:
>>              [    0.686834] NET: Registered protocol family 16
>>              [    0.695678] print_constraints: vddpu: 725 <--> 1300 mV at
>> 1100 mV fast normal
>>              [    0.703251] print_constraints: vddcore: 725 <--> 1300 mV
>> at 1100 mV fast normal
>>              [    0.710993] print_constraints: vddsoc: 725 <--> 1300 mV
>> at 1200 mV fast normal
>>              [    0.718671] print_constraints: vdd2p5: 2000 <--> 2775 mV
>> at 2400 mV fast normal
>>              [    0.726442] print_constraints: vdd1p1: 800 <--> 1400 mV
>> at 1100 mV fast normal
>>              [    0.734100] print_constraints: vdd3p0: 2625 <--> 3400 mV
>> at 3000 mV fast normal
>>              [    0.743198] ------------ Board type Nitrogen6X/W
>>              [    0.756891] imx_add_mxc_pwm:pdata=  (null)
>>              [    0.761282] imx_add_mxc_pwm:pdata=  (null)
>>              [    0.765640] imx_add_mxc_pwm:pdata=806a6da0
>>              [    0.770048] imx_add_mxc_pwm:pdata=  (null)
>>              [    0.777205] Flexcan NXP tja1040
>>              [    0.785250] hw-breakpoint: found 6 breakpoint and 1
>> watchpoint registers.
>>              [    0.792084] hw-breakpoint: 1 breakpoint(s) reserved for
>> watchpoint single-step.
>>              [    0.799440] hw-breakpoint: maximum watchpoint size is 4
>> bytes.
>>              [    0.805325] L310 cache controller enabled
>>              [    0.809365] l2x0: 16 ways, CACHE_ID 0x410000c7, AUX_CTRL
>> 0x02070000, Cache size: 1048576 B
>>              [    0.839010] bio: create slab <bio-0> at 0
>>              [    0.844014] print_constraints: VDDA: 2500 mV
>>              [    0.848587] print_constraints: VDDIO: 3300 mV
>>              [    0.853268] machine_constraints_voltage: VDDD:
>> unsupportable voltage constraints
>>              [    0.860834] reg-fixed-voltage reg-fixed-voltage.2: Failed
>> to register regulator: -22
>>              [    0.868606] reg-fixed-voltage: probe of
>> reg-fixed-voltage.2 failed with error -22
>>              [    0.876297] print_constraints: vmmc: 3300 mV
>>              [    0.880912] print_constraints: VDD_1.8V: 1800 mV
>>              [    0.886045] vgaarb: loaded
>>              [    0.889487] SCSI subsystem initialized
>>              [    0.893687] spi_imx imx6q-ecspi.0: probed
>>              [    0.898454] usbcore: registered new interface driver usbfs
>>              [    0.904110] usbcore: registered new interface driver hub
>>              [    0.909598] usbcore: registered new device driver usb
>>              [    0.914667] Freescale USB OTG Driver loaded, $Revision:
>> 1.55 $
>>              [    0.939093] imx-ipuv3 imx-ipuv3.0: IPU DMFC NORMAL mode:
>> 1(0~1), 5B(4,5), 5F(6,7)
>>              [    0.959087] imx-ipuv3 imx-ipuv3.1: IPU DMFC NORMAL mode:
>> 1(0~1), 5B(4,5), 5F(6,7)
>>              [    0.966934] mxc_mipi_csi2 mxc_mipi_csi2: i.MX MIPI CSI2
>> driver probed
>>              [    0.973412] mxc_mipi_csi2 mxc_mipi_csi2: i.MX MIPI CSI2
>> dphy version is 0x3130302a
>>              [    0.981146] MIPI CSI2 driver module loaded
>>              [    0.985474] Advanced Linux Sound Architecture Driver
>> Version 1.0.24.
>>              [    0.993155] cfg80211: Calling CRDA to update world
>> regulatory domain
>>              [    1.000556] Switching to clocksource mxc_timer1
>>              [    1.018685] Unable to handle kernel paging request at
>> virtual address ef00e0bf
>>              [    1.025930] pgd = 80004000
>>              [    1.028646] [ef00e0bf] *pgd=00000000
>>              [    1.032250] Internal error: Oops: 5 [#1] PREEMPT SMP
>>              [    1.037230] Modules linked in:
>>              [    1.040313] CPU: 0    Not tainted  (3.0.35-4.0.0+ge6e1b5a
>> #1)
>>              [    1.046094] PC is at kmem_cache_alloc+0xa8/0x100
>>              [    1.050737] LR is at con_insert_unipair+0xb8/0x104
>>              [    1.055546] pc : [<800f149c>]    lr : [<8027cb5c>]
>>  psr: 60000093
>>              [    1.055550] sp : bff8bed0  ip : 800365e0  fp : 00000000
>>              [    1.067067] r10: 00000001  r9 : 80699cd0  r8 : 000000d0
>>              [    1.072307] r7 : 0bfd5000  r6 : bff8a000  r5 : bfff9300
>>  r4 : ef00e0bf
>>              [    1.078854] r3 : 80699cd0  r2 : 8027cb5c  r1 : 0000253c
>>  r0 : a0000013
>>              [    1.085403] Flags: nZCv  IRQs off  FIQs on  Mode SVC_32
>>  ISA ARM  Segment kernel
>>              [    1.092821] Control: 10c53c7d  Table: 1000404a  DAC:
>> 00000015
>>              [    1.098584] Process swapper (pid: 1, stack limit =
>> 0xbff8a2f0)
>>              [    1.104435] Stack: (0xbff8bed0 to 0xbff8c000)
>>              [    1.108811] bec0:
>> 806ea4e8 0000fffd bfe3d900 000000fe
>>              [    1.117014] bee0: bfefd0fc 806bb48c 806bb488 000000fe
>> 00000002 8027cb5c 806bb490 00000000
>>              [    1.125218] bf00: 00000001 bfe3d900 000000fe 8027d78c
>> 806f8158 806bb490 806f8338 bfff0000
>>              [    1.133421] bf20: 00000000 00000001 00000014 806f855c
>> 00000002 00000004 00000000 8001f528
>>              [    1.141624] bf40: 00000000 8001ea4c 00000000 806f8438
>> 00000001 8001ef44 805f9618 80144bf8
>>              [    1.149827] bf60: 806f7f34 00000000 bff8a000 00000001
>> 806db220 8001e390 805c8d80 00000001
>>              [    1.158030] bf80: 8002b4a0 8002b4a0 8002b894 800355c0
>> 800b0ef8 806e4f5c 80695080 bff8a010
>>              [    1.166234] bfa0: 000001df 00000001 00000000 3734d6a8
>> 00000039 00000000 00000270 8002b4a0
>>              [    1.174437] bfc0: 8002b894 bff8a000 00000001 00000000
>> 00000000 00000000 00000000 800089c0
>>              [    1.182640] bfe0: 00000000 00000000 800088d0 8003ba7c
>> 00000013 8003ba7c e92d40f7 e1a04000
>>              [    1.190857] [<800f149c>] (kmem_cache_alloc+0xa8/0x100)
>> from [<8027cb5c>] (con_insert_unipair+0xb8/__**0x104)
>>              [    1.200377] [<8027cb5c>] (con_insert_unipair+0xb8/__**0x104)
>> from [<8027d78c>] (con_set_default_unimap+0xe4/_**_0x16c)
>>              [    1.210421] [<8027d78c>] (con_set_default_unimap+0xe4/_**_0x16c)
>> from [<8001ea4c>] (console_map_init+0x44/0x50)
>>
>>              [    1.220197] [<8001ea4c>] (console_map_init+0x44/0x50)
>> from [<8001ef44>] (vty_init+0x18c/0x19c)
>>              [    1.228838] [<8001ef44>] (vty_init+0x18c/0x19c) from
>> [<8001e390>] (tty_init+0x12c/0x144)
>>              [    1.236969] [<8001e390>] (tty_init+0x12c/0x144) from
>> [<800355c0>] (do_one_initcall+0x11c/0x174)
>>              [    1.245702] [<800355c0>] (do_one_initcall+0x11c/0x174)
>> from [<800089c0>] (kernel_init+0xf0/0x174)
>>              [    1.254612] [<800089c0>] (kernel_init+0xf0/0x174) from
>> [<8003ba7c>] (kernel_thread_exit+0x0/0x8)
>>              [    1.263427] Code: 1afffff3 e595b014 e2811004 e3a0a001
>> (e794b00b)
>>              [    1.269583] ---[ end trace 60f60b23e6fa95d6 ]---
>>              [    1.274228] Kernel panic - not syncing: Attempted to kill
>> init!
>>              [    1.280198] [<80041ee4>] (unwind_backtrace+0x0/0xf4) from
>> [<804d55bc>] (panic+0x84/0x198)
>>              [    1.288431] [<804d55bc>] (panic+0x84/0x198) from
>> [<800733dc>] (complete_and_exit+0x0/0x1c)
>>              [    1.296739] [<800733dc>] (complete_and_exit+0x0/0x1c)
>> from [<bff8bd00>] (0xbff8bd00)
>>              [    1.304508] CPU1: stopping
>>              [    1.307242] [<80041ee4>] (unwind_backtrace+0x0/0xf4) from
>> [<80035338>] (do_IPI+0x144/0x154)
>>              [    1.315628] [<80035338>] (do_IPI+0x144/0x154) from
>> [<8003a9cc>] (__irq_svc+0x4c/0xe8)
>>              [    1.323481] Exception stack(0xbffadf90 to 0xbffadfd8)
>>              [    1.328550] df80:
>> 00000000 806e27fc bffac000 00000006
>>              [    1.336753] dfa0: bffac000 8069d0ec 806db2c4 804df9e0
>> 1000406a 412fc09a 00000000 00000000
>>              [    1.344955] dfc0: 60000013 bffadfd8 80049e98 8003bb5c
>> 80000013 ffffffff
>>              [    1.351597] [<8003a9cc>] (__irq_svc+0x4c/0xe8) from
>> [<8003bb5c>] (default_idle+0x24/0x28)
>>              [    1.359805] [<8003bb5c>] (default_idle+0x24/0x28) from
>> [<8003bcb8>] (cpu_idle+0xa0/0x104)
>>              [    1.368010] [<8003bcb8>] (cpu_idle+0xa0/0x104) from
>> [<104d1f14>] (0x104d1f14)
>>              [    1.375168] CPU2: stopping
>>              [    1.377902] [<80041ee4>] (unwind_backtrace+0x0/0xf4) from
>> [<80035338>] (do_IPI+0x144/0x154)
>>              [    1.386286] [<80035338>] (do_IPI+0x144/0x154) from
>> [<8003a9cc>] (__irq_svc+0x4c/0xe8)
>>              [    1.394137] Exception stack(0xbffb5f90 to 0xbffb5fd8)
>>              [    1.399205] 5f80:
>> 00000000 806e27fc bffb4000 00000006
>>              [    1.407409] 5fa0: bffb4000 8069d0ec 806db2c4 804df9e0
>> 1000406a 412fc09a 00000000 00000000
>>              [    1.415611] 5fc0: 60000013 bffb5fd8 80049e98 8003bb5c
>> 80000013 ffffffff
>>              [    1.422251] [<8003a9cc>] (__irq_svc+0x4c/0xe8) from
>> [<8003bb5c>] (default_idle+0x24/0x28)
>>              [    1.430458] [<8003bb5c>] (default_idle+0x24/0x28) from
>> [<8003bcb8>] (cpu_idle+0xa0/0x104)
>>              [    1.438663] [<8003bcb8>] (cpu_idle+0xa0/0x104) from
>> [<104d1f14>] (0x104d1f14)
>>              [    1.445820] CPU3: stopping
>>              [    1.448552] [<80041ee4>] (unwind_backtrace+0x0/0xf4) from
>> [<80035338>] (do_IPI+0x144/0x154)
>>              [    1.456934] [<80035338>] (do_IPI+0x144/0x154) from
>> [<8003a9cc>] (__irq_svc+0x4c/0xe8)
>>              [    1.464786] Exception stack(0xbff01f90 to 0xbff01fd8)
>>              [    1.469855] 1f80:
>> 00000000 806e27fc bff00000 00000006
>>              [    1.478058] 1fa0: bff00000 8069d0ec 806db2c4 804df9e0
>> 1000406a 412fc09a 00000000 00000000
>>              [    1.486260] 1fc0: 00000000 bff01fd8 80049e98 8003bb5c
>> 80000013 ffffffff
>>              [    1.492899] [<8003a9cc>] (__irq_svc+0x4c/0xe8) from
>> [<8003bb5c>] (default_idle+0x24/0x28)
>>              [    1.501105] [<8003bb5c>] (default_idle+0x24/0x28) from
>> [<8003bcb8>] (cpu_idle+0xa0/0x104)
>>              [    1.509309] [<8003bcb8>] (cpu_idle+0xa0/0x104) from
>> [<104d1f14>] (0x104d1f14)
>>
>>
>>
>>
>>
>>
>>         ______________________________**___________________
>>         meta-freescale mailing list
>>         meta-freescale at yoctoproject.__**org <mailto:meta-freescale@**
>> yoctoproject.org <meta-freescale at yoctoproject.org>>
>>         https://lists.yoctoproject.__**org/listinfo/meta-freescale <
>> https://lists.yoctoproject.**org/listinfo/meta-freescale<https://lists.yoctoproject.org/listinfo/meta-freescale>
>> >
>>
>>
>>     --
>>     ------------------------------**__----------------------------**--
>>
>>     Gary Thomas                 |  Consulting for the
>>     MLB Associates              |    Embedded world
>>     ------------------------------**__----------------------------**--
>>     ______________________________**___________________
>>     meta-freescale mailing list
>>     meta-freescale at yoctoproject.__**org <mailto:meta-freescale@**
>> yoctoproject.org <meta-freescale at yoctoproject.org>>
>>     https://lists.yoctoproject.__**org/listinfo/meta-freescale <
>> https://lists.yoctoproject.**org/listinfo/meta-freescale<https://lists.yoctoproject.org/listinfo/meta-freescale>
>> >
>>
>>
>>
>>
>>
>> --
>> ==============================**===============
>> Erik Botö
>> Senior Software Engineer
>> Pelagicore AB
>> Ekelundsgatan 4, 6tr, SE-411 18 Gothenburg, Sweden
>> Mobile: +46 (0)76 881 72 03
>> E-Mail: erik.boto at pelagicore.com <mailto:erik.boto at pelagicore.**com<erik.boto at pelagicore.com>
>> >
>> ==============================**===============
>>
>>
>>
>> ______________________________**_________________
>> meta-freescale mailing list
>> meta-freescale at yoctoproject.**org <meta-freescale at yoctoproject.org>
>> https://lists.yoctoproject.**org/listinfo/meta-freescale<https://lists.yoctoproject.org/listinfo/meta-freescale>
>>
>>  ______________________________**_________________
> meta-freescale mailing list
> meta-freescale at yoctoproject.**org <meta-freescale at yoctoproject.org>
> https://lists.yoctoproject.**org/listinfo/meta-freescale<https://lists.yoctoproject.org/listinfo/meta-freescale>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-freescale/attachments/20130709/a8f77278/attachment.html>


More information about the meta-freescale mailing list