linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* cortex-m3 booting failure
@ 2010-05-06 10:30 RK Raggit
  2010-05-06 13:51 ` Catalin Marinas
  0 siblings, 1 reply; 4+ messages in thread
From: RK Raggit @ 2010-05-06 10:30 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Catalin/others,

I am trying to boot the linux kernel with my baseport built on top of your
architecture port (taken from this link
http://www.linux-arm.org/LinuxKernel/LinuxM3) on
my cortex-m3 based target FPGA.

kernel and busybox are compiled with the Sourcery G++ Lite 2009q3-66
toolset and i
am using an initramfs filesystem. My target has 4MB of RAM. I get the
following bootlog -

--------------------
Linux version 2.6.28-arm2 (raghun at PINGU) (gcc version 4.4.1 (Sourcery
G++ Lite 2009q3-66) ) #1 Thu M
ay 6 15:43:55 IST 2010
CPU: ARMv7-M Processor [411fc231] revision 1 (ARMv?(11)M)
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache
Machine: STM STICE
Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 1016
Kernel command line: init=/bin/sh console=ttyAMA0,115200n8 mem=4M user_debug=31
PID hash table entries: 16 (order: 4, 64 bytes)
Dentry cache hash table entries: 1024 (order: 0, 4096 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 4MB = 4MB total
Memory: 3376KB available (444K code, 48K data, 112K init)
Calibrating delay loop... 5.44 BogoMIPS (lpj=27200)
Mount-cache hash table entries: 512
Serial: AMBA PL011 UART driver
stice-uart0: ttyAMA0 at MMIO 0x4e000000 (irq = 13) is a AMBA/PL011
console [ttyAMA0] enabled
Freeing init memory: 112K
?CPU: 0    Not tainted  (2.6.28-arm2 #1)
PC is at 0x180044
LR is at 0x0
pc : [<00180044>]    lr : [<00000000>]    psr: 00000000
sp : 001bff98  ip : 00000000  fp : 00000000
r10: 001991ec  r9 : 00000000  r8 : 00000000
r7 : 00000000  r6 : 00000000  r5 : 00000000  r4 : 00180044
r3 : 00000000  r2 : 001bffcc  r1 : 001bffc4  r0 : 00000000
Flags: nzcv  IRQs on  FIQs on  Mode USER_26  ISA ARM  Segment kernel
----------------

It looks like the first userspace process is crashing but i do not get
any log (though
i have user debug enabled). A few times though i do manage to get the
serial console prompt
but when i try to execute any simple command (like 'ls') then i see
the same crash as above.

I am wondering what could be happening here.One possibility could be
that busybox is not built
properly but that seems less likely since i am using the standard
code-sourcery toolchain.
Could lack of memory be an issue ? ...but ~3.3MB seems good enough.

Your thoughts ?


Regards
RK

^ permalink raw reply	[flat|nested] 4+ messages in thread

* cortex-m3 booting failure
  2010-05-06 10:30 cortex-m3 booting failure RK Raggit
@ 2010-05-06 13:51 ` Catalin Marinas
  2010-05-06 16:20   ` RK Raggit
  2010-05-10  6:48   ` RK Raggit
  0 siblings, 2 replies; 4+ messages in thread
From: Catalin Marinas @ 2010-05-06 13:51 UTC (permalink / raw)
  To: linux-arm-kernel

On Thu, 2010-05-06 at 16:00 +0530, RK Raggit wrote:
> I am trying to boot the linux kernel with my baseport built on top of your
> architecture port (taken from this link
> http://www.linux-arm.org/LinuxKernel/LinuxM3) on
> my cortex-m3 based target FPGA.
> 
> kernel and busybox are compiled with the Sourcery G++ Lite 2009q3-66
> toolset and i
> am using an initramfs filesystem. My target has 4MB of RAM. I get the
> following bootlog -

I can't really tell what's happening but I'm going to release a new set
of patches against 2.6.33 sometime next week and there are some improved
error messages for Cortex-M3 support.

Do you have KALLSYMS enabled in the kernel?

> It looks like the first userspace process is crashing but i do not get
> any log (though
> i have user debug enabled). A few times though i do manage to get the
> serial console prompt
> but when i try to execute any simple command (like 'ls') then i see
> the same crash as above.

Have you tried with my variant of busybox from the above link?

Are you using the uclinux-eabi variant of the toolchain? Do you specify
-march=armv7-m and -mthumb options? If you link against the wrong C
library, it will fail.

> I am wondering what could be happening here.One possibility could be
> that busybox is not built
> properly but that seems less likely since i am using the standard
> code-sourcery toolchain.
> Could lack of memory be an issue ? ...but ~3.3MB seems good enough.

This should be ok.

-- 
Catalin

^ permalink raw reply	[flat|nested] 4+ messages in thread

* cortex-m3 booting failure
  2010-05-06 13:51 ` Catalin Marinas
@ 2010-05-06 16:20   ` RK Raggit
  2010-05-10  6:48   ` RK Raggit
  1 sibling, 0 replies; 4+ messages in thread
From: RK Raggit @ 2010-05-06 16:20 UTC (permalink / raw)
  To: linux-arm-kernel

> I can't really tell what's happening but I'm going to release a new set
> of patches against 2.6.33 sometime next week and there are some improved
> error messages for Cortex-M3 support.
>

Great. That should help !

> Do you have KALLSYMS enabled in the kernel?
>
I will check (i am away from office right now)


>
> Have you tried with my variant of busybox from the above link?
>
Yes i did , with the same results .

> Are you using the uclinux-eabi variant of the toolchain? Do you specify
> -march=armv7-m and -mthumb options? If you link against the wrong C
> library, it will fail.
>

Yes i use that variant with those options. When i try "init=/bin/ls" or
"init=/bin/busybox" or "init=/bin/date" i can see correct output. Based on this
i feel the binaries are correctly built.

--RK

^ permalink raw reply	[flat|nested] 4+ messages in thread

* cortex-m3 booting failure
  2010-05-06 13:51 ` Catalin Marinas
  2010-05-06 16:20   ` RK Raggit
@ 2010-05-10  6:48   ` RK Raggit
  1 sibling, 0 replies; 4+ messages in thread
From: RK Raggit @ 2010-05-10  6:48 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Catalin,


>
> I can't really tell what's happening but I'm going to release a new set
> of patches against 2.6.33 sometime next week and there are some improved
> error messages for Cortex-M3 support.
>
> Do you have KALLSYMS enabled in the kernel?

Yes. Debugging a bit further i enabled the hard fault processor
exception catch in
RVD. On doing this i notice that when running commands (like 'ls' or
'date') on console
the processor hard faults. The HFSR shows "0x40000000" while BFSR
reads "0x04" indicating an imprecise data access fault. Other U/MMFSR are 0x0.

I am wondering why an imprecise data access fault could happen at this stage ?

--RK

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-05-10  6:48 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-05-06 10:30 cortex-m3 booting failure RK Raggit
2010-05-06 13:51 ` Catalin Marinas
2010-05-06 16:20   ` RK Raggit
2010-05-10  6:48   ` RK Raggit

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).