I have ARM920T CPU (Atmel’s AT91RM9200) based board with QNX6.2.1B.
After IPL & Satrtup done I can’t see kernel message (display_msg).
All my system registers (interrupt controller, debug uart, etc.) placed in
address space 0xFFFFF000 - 0xFFFFFFFF. Is there possibility that
kernel just can’t work with this addresses (they used in interrupt &
debug callouts)? I’ve seen posts on QNX.ORG.RU & OPENQNX.COM about some
bug in memory manager on QNX6.2 for ARM:
http://qnx.org.ru/index.php?option=com_minibb&action=vthread&forum=5&topic=3245
http://www.openqnx.com/PNphpBB2-viewtopic-t3191-.html
To people in QSSL - can you confirm or disprove this?
Below are Startup log & buildfile. Of course, maybe there’s mistake in
debug_callout code (AFAIK display_msg use callouts)… If I make special
mistake in interrupt_callout - “Stop[0,0]” message appears. If I make
mistake
in timer_callout - “Timer isn’t running message”. But mistakes in
debug_callout
don’t lead to any messages.
I can post my callouts if you need.
Log:
add_mem(1,20000000,02000000)
alloc_ram(20009108,00002620,00000001) => 20009108
add_mem(1,2000b728,01ff48d8)
alloc_ram(ffffffff,00008000,00001000) => 2000c000
add_mem(1,20014000,01fec000)
add_mem(1,2000c000,00008000)
alloc_ram(20000000,0000b728,00000001) => 20000000
alloc_ram(ffffffff,00004000,00004000) => 20014000
add_mem(1,20018000,01fe8000)
alloc_ram(ffffffff,00001000,00001000) => 20018000
alloc_ram(ffffffff,00001000,00001000) => 20019000
Dcache: 512x32 WB
Icache: 512x32
arm920 rev 0 182MHz
alloc_ram(ffffffff,00001000,00001000) => 2001a000
alloc_ram(ffffffff,00001000,00001000) => 2001b000
alloc_ram(ffffffff,00001000,00001000) => 2001c000
alloc_ram(ffffffff,00003000,00001000) => 2001d000
add_mem(2,20009108,000ab248)
add_mem(3,20009108,00002620)
alloc_ram(ffffffff,00000848,00001000) => 20020000
add_mem(1,20020848,00093b08)
Header size=0x0000009c, Total Size=0x000004d8, #Cpu=1, Type=4
Section:system_private offset:0x000001d8 size:0x00000068
syspage ptr user:fc404000 kernel:fc404000
cpupage ptr user:fc404828 kernel:fc404828 spacing:32
kdebug info:00000000 callback:00000000
boot pgms: idx=0
0) base paddr:2000a000 start addr:fe01c60c
ramsize:02000000 pagesize:00001000
Section:qtime offset:0x00000148 size:0x00000048
boot:00000000 CPS:0000000001c9c380 rate/scale:3333333333/-17 intr:17
Section:callout offset:0x000000a0 size:0x00000048
reboot:fc404618 power:fc404638
timer_load:fc40464c reload:fc404684 value:fc40469c
0) display:fc4046b4 poll:fc4046d8 break:fc4046fc
- display:fc404714 poll:fc404738 break:fc40475c
Section:cpuinfo offset:0x00000190 size:0x00000020 - cpu:41129200 flags:40000000 speed:000000b6 cache i/d:1/0 name:48
Section:cacheattr offset:0x00000498 size:0x00000040 - flags:32 size:0020 #lines:0200 control:fc404514 next:255
- flags:11 size:0020 #lines:0200 control:fc40455c next:255
Section:meminfo offset:0x00000240 size:0x00000060
t:2 a:20009108 s:00016ef8 t:3 a:20009108 s:00002620 t:1 a:2000b728
s:000088d8
t:1 a:20020848 s:01fdf7b8
Section:asinfo offset:0x00000338 size:0x00000120 - 0000000000000000-00000000ffffffff o:ffff a:0010 p:100 c:00000000
n:21 - 0000000010000000-0000000012000000 o:0000 a:0005 p:100 c:00000000
n:28 - 0000000030000000-0000000040000000 o:0000 a:0013 p:100 c:00000000
n:34 - 0000000030000000-0000000040000000 o:0040 a:0003 p:100 c:00000000
n:41 - 0000000020000000-0000000021ffffff o:0000 a:0017 p:100 c:00000000
n:44
00a0) 0000000020009108-00000000200b434f o:0000 a:0005 p:100 c:00000000
n:55
00c0) 0000000020009108-000000002000b727 o:0000 a:0007 p:100 c:00000000
n:63
00e0) 000000002000b728-0000000020013fff o:0080 a:0007 p:100 c:00000000
n:71 - 0000000020020848-0000000021ffffff o:0080 a:0007 p:100 c:00000000
n:71
Section:hwinfo offset:0x00000310 size:0x00000028 - size:3 tag:3 isize:3, iname:0, owner:65535, kids:1
- size:3 tag:17 isize:3, iname:9, owner:0, kids:0
Section:typed_strings offset:0x000002a0 size:0x00000020
off:0 type:5 string:‘router’
off:12 type:2 string:‘localhost’
Section:strings offset:0x000002c0 size:0x00000050
[0]‘hw’ [3]‘Group’ [9]‘unknown’ [17]‘Bus’ [21]‘memory’ [28]‘flash’
[34]‘altera’ [41]‘io’ [44]‘ram’ [48]‘arm920’ [55]‘imagefs’ [63]‘bootram’
[71]‘sysram’
Section:intrinfo offset:0x00000458 size:0x00000040 - vector_base:00000000, #vectors:32, cascade_vector:7fffffff
cpu_intr_base:00000000, cpu_intr_stride:0, flags:0000
id => flags:0000, size:002c, rtn:fc404580
eoi => flags:1000, size:0024, rtn:fc4045ac
mask:fc4045d0, unmask:fc4045f4, config:00000000
Section:smp offset:0x000004d8 size:0x00000000
Section:pminfo offset:0x000004d8 size:0x00000000
Section:boxinfo offset:0x000001b0 size:0x00000028
hw_flags:00000000
Section:cpu offset:0x00000128 size:0x00000020
page_flush:fc4044d8 page_flush_deferred:fc404510
upte_ro:00000aae upte_rw:00000ffe
kpte_ro:0000000e kpte_rw:0000055e
mask_nc:0000000c
System page at phys:20020000 user:fc404000 kern:fc404000
Starting next program at vfe01c60c
Buildfile:
[image=0x20000000]
[ram=0x20000000]
[virtual=armle,binary] .bootstrap = {
…/scratch/armle/boot/sys/startup-router -K0xFFFFF200^0.115200.60000000
PATH=/proc/boot procnto -vvvvvvvvvvvvvvvv
}
[+script] .script = {
Initialise the console
display_msg “Neutrino starting…”
Start the main shell
[+session] ksh
}
Programs require the runtime linker (ldqnx.so) to be at a fixed location
[type=link] /usr/lib/ldqnx.so.2=/proc/boot/libc.so
Shared libaries
libc.so
Use the “fat” embedded shell as the default shell
sh=fesh
Thanks for any help