Hi Adam,
I saw couple of minutes ago a similar issue in [1]. Cubieboard2 has 1024MB, therefore RAM_SIZE_MB is assigned to 1024 in /conf/Makeconf.boot. In addition to that, I checked also the l4lx.cfg, it seems ok to me, nevertheless, the part of the l4lx.cfg is given below.
======
loader:start( { caps = { sigma0 =L4.cast(L4.Proto.Factory,L4.Env.sigma0):create(L4.Proto.Sigma0); icu= L4.Env.icu; l4linux = vbus_l4linux:svr(); }, }, "rom/io -vv rom/arm-rv-eb-mc.devs rom/l4lx-vbus.io");
L4.default_loader:start( { caps = { log = L4.Env.log:m("rws"), vbus = vbus_l4linux; }, l4re_dbg = L4.Dbg.Warn,log = { "l4linux", "yellow" }, }, "rom/" .. lxname .. " mem=256M console=ttyLv0 l4x_rd=rom/ramdisk-" ..L4.Info.arch() .. ".rd root=1:0 ramdisk_size=10000");
====
Ref 1-http://os.inf.tu-dresden.de/pipermail/l4-hackers/2011/004772.html
Cem Akpolat
On Tue, Jan 13, 2015 at 11:43 AM, cem akpolat akpolatcem@gmail.com wrote:
Hi Adam,
I updated the uboot source code, somehow it started to work even though the version number is the same. Now, I can see that l4linux is loaded, but then an internal error is raised "Internal error: Boom!: 90000007 [#1] ARM". This occurs after a page fault message. it seems that it is like memory corruption, in other words RAM is seen that is not configured properly. Is that related to the address that we give in the module.list. Because I changed nothing here. The address is start from "modaddr 0x01100000" and the ARM modules as below:
entry L4LinuxARM roottask moe rom/l4lx.cfg module l4re module ned module l4lx.cfg module l4lx-vbus.io module arm-rv-eb-mc.devs module io module fb-drv module mag #module arm-rv.io module arm-rv-lcd.io module vmlinuz.arm module ramdisk-arm.rd
By the way, there is already a discussion on ARM covering the similar issue [1], however, it isn't related to the current issue.
Ref: 1- http://os.inf.tu-dresden.de/pipermail/l4-hackers/2011/004577.html
L4 Output:
OE: Hello world MOE: found 1022084 KByte free memory MOE: found RAM from 40000000 to 7f000000 MOE: allocated 1008 KByte for the page array @0x40187000 MOE: virtual user address space [0-bfffffff] MOE: rom name space cap -> [C:501000] BOOTFS: [41100000-41119458] [C:503000] l4re BOOTFS: [4111a000-4116cc04] [C:504000] ned BOOTFS: [4116d000-4116d413] [C:505000] l4lx.cfg BOOTFS: [4116e000-4116e03c] [C:506000] l4lx-vbus.io BOOTFS: [4116f000-4116f589] [C:507000] arm-rv-eb-mc.devs BOOTFS: [41170000-412be454] [C:508000] io BOOTFS: [412bf000-412e0624] [C:509000] fb-drv BOOTFS: [412e1000-41378c44] [C:50a000] mag BOOTFS: [41379000-413790e5] [C:50b000] arm-rv-lcd.io BOOTFS: [4137a000-4172b478] [C:50c000] vmlinuz.arm BOOTFS: [4172c000-41a2c000] [C:50d000] ramdisk-arm.rd MOE: cmdline: moe rom/l4lx.cfg MOE: Starting: rom/ned rom/l4lx.cfg MOE: loading 'rom/ned' Ned says: Hi World! Ned: loading file: 'rom/l4lx.cfg' io | Io service io | Verboseness level: 3 io | Loading: config 'rom/arm-rv-eb-mc.devs' io | Loading: config 'rom/l4lx-vbus.io' io | warning: could not register control interface at cap 'platform_ctl' io | Ready. Waiting for request. l4linux | PH 0 (t: 1) offs=00008000 vaddr=01000000 vend=014165f8 l4linux | phys=01000000 ephys=014165f8 l4linux | f_sz=003933ec memsz=004165f8 flgs=rwx l4linux | PH 1 (t: 4) offs=0039b3c8 vaddr=013933c8 vend=013933ec l4linux | phys=013933c8 ephys=013933ec l4linux | f_sz=00000024 memsz=00000024 flgs=r-x l4linux | PH 2 (t: 1685382481) offs=00000000 vaddr=00000000 vend=00000000 l4linux | phys=00000000 ephys=00000000 l4linux | f_sz=00000000 memsz=00000000 flgs=rwx l4linux | Starting binary at 0x1000298, argc=7 argv=0x80007f8c *argv=0xb1007ff0 argv0=rom/vmlinuz.arm l4linux | External resolver is at 0xa8000784 l4linux | ======> L4Linux starting... <======== l4linux | Linux version 3.6.0-l4-g485c55d (akpolat@akpolatX240) (gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-12ubuntu1) ) #1 Fri Aug 1 18:21:36 CEST 2014 l4linux | Binary name: rom/vmlinuz.arm l4linux | This is an AEABI build. l4linux | Linux kernel command line (6 args): mem=128M console=ttyLv0 l4x_rd=rom/ramdisk-arm.rd root=1:0 ramdisk_size=40000 init=/bin/sh l4linux | CPU mapping (l:p)[1]: 0:0 l4linux | Image: 01000000 - 01500000 [5120 KiB]. l4linux | Areas: Text: 01000000 - 0136c000 [3504kB] (a bit longer) l4linux | Data: 0136c000 - 0138e0a0 [136kB] l4linux | Initdata: 0134b000 - 0136b134 [128kB] l4linux | BSS: 013933ec - 014165f8 [524kB] l4linux | Device scan: l4linux | Device: L4ICU l4linux | Device: NIC l4linux | MEM: 4e000000 - 4e000fff l4linux | IRQ: 00000029 - 00000029 l4linux | Device scan done. l4linux | l4lx_thread_create: Created thread 415 (cpu0) (u:b3000e00, v:b3000c00, sp:0136dff4) l4linux | main thread will be 415 l4linux | l4x_register_pointer_section: addr = 01000000 size = 4288512 l4linux | section-with-init: virt: 0x1000000 to 0x14165f7 [4185 KiB] l4linux | section-with-init: Phys: 0x40430000 to 0x408465f8, Size: 4285944 l4linux | Main thread running, waiting... l4linux | l4x_setup_memory: Forcing superpages for main memory l4linux | l4re_global_env: 0xb1007ef4 l4linux | Main memory size: 128MB l4linux | Main memory: virt: 0x1500000 to 0x94fffff [131072 KiB] l4linux | Main memory: Phys: 0x41c00000 to 0x49c00000, Size: 134217728 l4linux | Filling lower ptabs... l4linux | Done (247 entries). l4linux | l4x_register_pointer_section: addr = 01000000 size = 4288512 l4linux | text: virt: 0x1000000 to 0x14165f7 [4185 KiB] l4linux | text: Phys: 0x40430000 to 0x408465f8, Size: 4285944 l4linux | l4x_rd_path: rom/ramdisk-arm.rd l4linux | Loading: rom/ramdisk-arm.rd l4linux | INITRD: Size of RAMdisk is 3072KiB l4linux | RAMdisk from 11600000 to 11900000 [3072KiB] l4linux | l4lx_thread_create: Created thread 41b (timer) (u:b3000a00, v:00000000, sp:013afff0) Booting Linux on physical CPU 0 Linux version 3.6.0-l4-g485c55d (akpolat@akpolatX240) (gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-12ubuntu1) ) #1 Fri Aug 1 18:21:36 CEST 2014 CPU: Fiasco [860f0001] revision 1 (ARMv6TEJ), cr=00000000 CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache Machine: L4 Memory policy: ECC disabled, Data cache writeback INITRD: 11600000 - 11900000 Built 1 zonelists in Zone order, mobility grouping on. Total pages: 33751 Kernel command line: mem=128M console=ttyLv0 l4x_rd=rom/ramdisk-arm.rd root=1:0 ramdisk_size=40000 init=/bin/sh PID hash table entries: 1024 (order: 0, 4096 bytes) Dentry cache hash table entries: 32768 (order: 5, 131072 bytes) Inode-cache hash table entries: 16384 (order: 4, 65536 bytes) Memory: 0MB 133MB = 133MB total Memory: 129700k/129700k available, 6496k reserved, 0K highmem Virtual kernel memory layout: vector : 0xbffff000 - 0xc0000000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0x09600000 - 0x11600000 ( 128 MB) lowmem : 0x00000000 - 0x09500000 ( 149 MB) modules : Virtual kernel memory layout: vector : 0xbffff000 - 0xc0000000 ( 4 kB) fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB) vmalloc : 0x09600000 - 0x11600000 ( 128 MB) lowmem : 0x00000000 - 0x09500000 ( 149 MB) moNR_IRQS:220 l4timer: Using IRQ210 sched_clock: 32 bits at 100 Hz, resolution 10000000ns, wraps every 4294967286ms Console: colour dummy device 80x30 console [ttyLv0] enabled Calibrating delay loop... l4linux | Page fault (non-resolved): pfa=39 pc=1002b50
*Internal error: Boom!: 90000007 [#1] ARM* Modules linked in: CPU: 0 Not tainted (3.6.0-l4-g485c55d #1) PC is at l4x_deliver_signal+0x30/0x74 LR is at l4x_vcpu_entry_c+0x20fc/0x279c pc : [<01002b50>] lr : [<0100a040>] psr: 6000001f sp : 0136dd68 ip : 00030001 fp : 00000000 r10: 01363a4c r9 : 00000000 r8 : e5932000 r7 : 0136c000 r6 : 0136de34 r5 : 00000000 r4 : 0136c000 r3 : 0000000b r2 : 013764c8 r1 : 00000000 r0 : 0000000b Flags: nZCv IRQs on FIQs on Mode SYS_32 ISA ARM Segment kernel Process swapper (pid: 0, stack limit = 0x0136c268) Stack: (0x0136dd68 to 0x0136e000) dd60: 00000001 00000000 0000003b 0136ddc8 ffffffe8 00000000 dd80: 00000001 00000000 00000000 00000000 98968000 00000000 00000000 00989680 dda0: 00000000 00989680 00000001 01379618 013764c8 013764f8 01379618 013764c8 ddc0: 01378c08 00000000 0137fc2c 010381d8 0136ddd0 0136ddd0 00000000 013764c8 dde0: 0136de34 0136c000 00416000 00000000 013764c8 0100a040 000000e0 01021e40 de00: ffff8ae0 000000d2 0136de08 0136de08 00000000 00000001 00000004 0139d9e8 de20: 0139d9e0 0136c000 00000000 00000008 0139d9ec e5932000 00000002 0000000a de40: 0000000a 00200000 000000d2 01384fac 000000d2 00000000 b3000c00 0136dea8 de60: b3000c00 0104dc5c 01400000 01384fac b3000c00 01186e2c 0137a04c 000000d2 de80: 00000004 01007b48 0000001a 011b65c4 00000348 b3000c00 01394ca8 00000006 dea0: 00000005 010038b4 00000000 00000000 b3000c00 01033034 00000000 00000000 dec0: 00000004 01017f50 000003e0 0139559c 0000001b 00000000 00000001 00000000 dee0: 00000001 0000001a 00000013 01394ca8 00000006 01003a78 00000000 0000001a df00: 01377c3c 0101840c 0163a100 00000374 ffff8ae0 01378c08 ffff8ae0 01378c08 df20: 00000000 00000001 016308c0 00000000 00416000 00000000 00000000 00000000 df40: e85465a7 0136df80 01363a4c 01363a54 60000013 0127add4 012eb448 00000000 df60: 00000001 016308c0 00000000 00416000 00000000 00000000 00000000 01363a4c df80: 0139fd88 0105287c 00000003 01375108 00000001 016308c0 00000000 00416000 dfa0: 00000000 00000000 00000000 0134b658 ffffffff ffffffff 0134b20c 0118242c dfc0: 00000000 01365c40 40000001 0136c000 00415000 0134dbb4 346c0000 67752078 dfe0: 2d657461 00000030 00000000 00000000 00000000 00000000 00000000 00000000 [<01002b50>] (l4x_deliver_signal+0x30/0x74) from [<0100a040>] (l4x_vcpu_entry_c+0x20fc/0x279c) [<0100a040>] (l4x_vcpu_entry_c+0x20fc/0x279c) from [<01363a4c>] (calibrate_delay+0x9c/0x22c) [<01363a4c>] (calibrate_delay+0x9c/0x22c) from [<0134b658>] (start_kernel+0x228/0x2b8) [<0134b658>] (start_kernel+0x228/0x2b8) from [<0134dbb4>] (cpu0_startup+0x1f4/0x238) Code: e1a02001 e59111dc e3a05000 e1a00003 (e591e03c) ---[ end trace 1b75b31a2719ed1c ]--- Kernel panic - not syncing: Attempted to kill the idle task! panic: going to sleep forever, bye l4linux | panic: going to sleep forever, bye
==========
Cheers,
Cem Akpolat
On Tue, Jan 13, 2015 at 10:29 AM, cem akpolat akpolatcem@gmail.com wrote:
You can find the uboot-version that I use and the url address of uboot: https://github.com/linux-sunxi/u-boot-sunxi
==== U-Boot SPL 2014.01-rc1-00873-g6c34253 (Nov 21 2014 - 17:45:26) Board: Cubieboard2 DRAM: 1024 MiB CPU: 960000000Hz, AXI/AHB/APB: 3/2/2 spl: not an uImage at 1600
U-Boot 2014.01-rc1-00873-g6c34253 (Nov 21 2014 - 17:45:26) Allwinner Technology ====
Cheers, Cem
Cem Akpolat
On Tue, Jan 13, 2015 at 9:15 AM, Adam Lackorzynski < adam@os.inf.tu-dresden.de> wrote:
On Mon Jan 12, 2015 at 12:12:43 +0100, cem akpolat wrote:
Couple of months ago, I was trying to run l4 on the samsung nexus s,
but
then I decided to switch to Cubieboard2 due to the simple
configurations
and costs stemming from the JTAG/UART interfaces which are quite expensive(around 1000 Euro). What I did:
- the fiasco is compiled for All-sunxi and cubieboard
- l4re is compiled for cubieboard2.
- the uImage is generated through the following command make uimage -C ~/l4android/src/l4/ E=L4LinuxARM
O=~l4android/src/build/l4/
- boot.scr file for uboot is created in which the compiled kernel
image is
given as kernel as belowe
setenv kernel_addr_r 0x46000000 # 8M setenv fdt_addr 0x49000000 # 2M setenv fdt_high 0xffffffff # Load fdt in place instead of relocating
fatload mmc 0 0x43000000 /script.bin
fatload mmc 0 ${kernel_addr_r} /uImage setenv bootargs "console=ttyS0,115200 hdmi.audio=EDID:0 disp.screen0_output_mode=EDID:1280x1024p60 rw root=/dev/mmcblk0p2
rootwait"
fatload mmc 0 ${fdt_addr} /sun7i-a20-cubieboard2.dtb
bootm ${kernel_addr_r} - ${fdt_addr}
#End of the setup
# What I am seeing on the console outputs
API Version: (87) experimental Sigma0 config ip:40090100 sp:00000000 Roottask config ip:40140260 sp:00000000 Starting kernel fiasco at 40001388 Non-HYP kernel detected but running in HYP mode, switching back.
What exactly Fiasco tries to tell me with this message "Non-HYP kernel detected but running in HYP mode, switching back.".
Bootstrap tries to tell us that it detected a non-HYP enabled Fiasco.OC that it shall load, but the system is currently running in HYP mode so it wants to switch it to non-HYP mode. And that somehow fails. Which type/version of u-boot are you using?
Adam
Adam adam@os.inf.tu-dresden.de Lackorzynski http://os.inf.tu-dresden.de/~adam/
l4-hackers mailing list l4-hackers@os.inf.tu-dresden.de http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers