Atmel website | ARM Community | AVR freaks | Technical Support
Banner
 FAQ •  Search •  Register •  Login 

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 1 post ] 
Author Message
 Post subject: Kexec with Linux 2.6.32 and AT91SAM9G20
PostPosted: Tue Mar 01, 2011 5:29 pm 
Offline

Joined: Mon Aug 10, 2009 1:50 pm
Posts: 3
hello !

I am trying to use Kexec to load a new kernel and do a warm reboot. As a first test, I try to reload the same kernel that the one used.
Kexec works fine but when loading the new kernel it fails with an error on IRQ 1.
Below the traces:
---
# kexec -e
ifdown: socket: FStarting new kernel
uBye!
nUncompressing Linux...................................................... done, booting the kernel.
Linux version 2.6.30-1.2.0-DEV (llherbier@d-llherbier) (gcc version 4.2.0 20070413 (prerelease) (CodeSourcery Source1
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
CPU: VIVT data cache, VIVT instruction cache
Machine: Atmel AT91SAM9G20-EK
Memory policy: ECC disabled, Data cache writeback
Clocks: CPU 360 MHz, master 120 MHz, main 20.000 MHz
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128
Kernel command line: console=ttyS0,115200 ubi.mtd=2,512 root=ubi0:rootfs rw rootfstype=ubifs mem=32M
NR_IRQS:192
AT91: 96 gpio irqs in 3 banks
PID hash table entries: 128 (order: 7, 512 bytes)
irq 1: nobody cared (try booting with the "irqpoll" option)
[<c0022fa8>] (unwind_backtrace+0x0/0xdc) from [<c0052814>] (__report_bad_irq+0x30/0x88)
[<c0052814>] (__report_bad_irq+0x30/0x88) from [<c00529cc>] (note_interrupt+0x160/0x1d4)
[<c00529cc>] (note_interrupt+0x160/0x1d4) from [<c005355c>] (handle_level_irq+0x90/0xf0)
[<c005355c>] (handle_level_irq+0x90/0xf0) from [<c001d050>] (_text+0x50/0x78)
[<c001d050>] (_text+0x50/0x78) from [<c001d974>] (__irq_svc+0x34/0x60)
Exception stack(0xc018df08 to 0xc018df50)
df00: 00000001 c018c000 c01a4a00 20000053 c018c000 00000000
df20: 00000001 00000002 c01a4a00 00000000 0000000a 00000000 00000005 c018df50
df40: c001d060 c0036f00 20000053 ffffffff
[<c001d974>] (__irq_svc+0x34/0x60) from [<c001d060>] (_text+0x60/0x78)
[<c001d060>] (_text+0x60/0x78) from [<00000001>] (0x1)
Exception stack(0xc018df60 to 0xc018dfa8)
df60: 00000000 00000001 c0190328 2001a56c 41069265 2001a538 00000000 c001d060
df80: 00000000 ffffffff fefff000 c001d974 00008001 00000000 00000001 20000053
dfa0: c001beec c019fe60
handlers:
[<c0027994>] (at91sam926x_pit_interrupt+0x0/0x70)
Disabling IRQ #1
Console: colour dummy device 80x30
console [ttyS0] enabled
Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
Memory: 32MB = 32MB total
Memory: 30740KB available (1412K code, 144K data, 84K init, 0K highmem)
SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Calibrating delay loop...
---

My problem seems similar to this post: viewtopic.php/p,33147/#p33147

So I have tried to disable the RTTINCIEN bit very early in the start of the Linux Kernel: at the beginning of ek_map_io() in board-sam9g20ek.c. And as the traces shows that the problem seems to be in at91sam926x_pit_interrupt() I also tried to reset the PIT but with both approach the kernel freezes just after showing the trace "Uncompressing Linux...................................................... done, booting the kernel".

Does someone already managed to use Kexec + 2.6.32 on sam9g20 ?

Is there anything else that I should try ?

Thanks for your ideas and suggestions.

Loïs


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: