alistair23-linux/arch/microblaze/kernel
Michal Simek c11389406f microblaze: Fix unaligned value saving to the stack for system with MMU
Several registers weren't saved correctly to the stack.

Unaligned expection for system with MMU stores
value in ex_tmp_data_loc_X address which is load to registers r3.
The next step is to move this value from r3 to a destination
register which caused unaligned exception. For several registers
this value was directly moved to the register.

For example for r28:
by "or r28, r0, r3"

but register r28 was rewritten when kernel returns from exception
handler by value saved on stack.

This patch changed r3 saving to the correct address on the stack.
For example for r28:
by "swi r3, r1, 4 * 28"

When kernel returns from the exception handler, correct value is restored.

Signed-off-by: Michal Simek <monstr@monstr.eu>
2011-07-25 09:07:45 +02:00
..
cpu Fix common misspellings 2011-03-31 11:26:23 -03:00
asm-offsets.c
dma.c microblaze: Add support for DMA_BIDIRECTIONAL 2011-03-09 08:09:57 +01:00
early_printk.c microblaze: Support early console on uart16550 2010-10-21 15:51:53 +10:00
entry-nommu.S microblaze: Do not use "la" pseudo instruction - use addik instead 2011-03-09 08:09:54 +01:00
entry.S microblaze: Do not copy reset vectors/manual reset vector setup 2011-03-15 10:59:00 +01:00
exceptions.c microblaze: Fix sparse warning - sw_exceptions 2011-03-09 08:09:58 +01:00
ftrace.c microblaze: Fix ftrace 2011-04-01 09:34:51 +02:00
head.S microblaze: Do not use "la" pseudo instruction - use addik instead 2011-03-09 08:09:54 +01:00
heartbeat.c microblaze: Add support for little-endian Microblaze 2010-10-21 15:51:59 +10:00
hw_exception_handler.S microblaze: Fix unaligned value saving to the stack for system with MMU 2011-07-25 09:07:45 +02:00
init_task.c
intc.c microblaze: Fix level/edge irq sensibility 2011-04-01 09:25:04 +02:00
irq.c microblaze: Use generic show_interrupts() 2011-03-29 14:48:06 +02:00
kgdb.c microblaze: KGDB little endian support 2010-10-21 15:51:58 +10:00
Makefile microblaze: Fix ftrace 2011-04-01 09:34:51 +02:00
mcount.S
microblaze_ksyms.c microblaze: Add missing export symbols for lib functions 2011-03-09 08:09:59 +01:00
misc.S
module.c
process.c microblaze: Remove r0_ram pointer and PTO alignment 2011-03-09 08:09:54 +01:00
prom.c dt/flattree: explicitly pass command line pointer to early_init_dt_scan_chosen 2011-05-11 14:53:18 +02:00
prom_parse.c of/pci: move of_irq_map_pci() into generic code 2011-02-04 11:46:50 -07:00
ptrace.c microblaze: Fix sparse warnings - ptrace 2011-03-09 08:09:58 +01:00
reset.c
selfmod.c
setup.c microblaze: Do not copy reset vectors/manual reset vector setup 2011-03-15 10:59:00 +01:00
signal.c microblaze: Fix sparse warnings - signal.c 2011-03-09 08:09:59 +01:00
stacktrace.c
sys_microblaze.c microblaze: Fix missing microblaze specific syscalls declaration 2011-03-09 08:09:58 +01:00
syscall_table.S ns: Wire up the setns system call 2011-05-28 10:48:39 -07:00
timer.c Merge branch 'consolidate-clksrc-i8253' of master.kernel.org:~rmk/linux-2.6-arm into timers/clocksource 2011-05-14 12:06:36 +02:00
traps.c
unwind.c microblaze: Fix sparse warning - unwind.c 2011-03-09 08:09:58 +01:00
vmlinux.lds.S microblaze: Remove r0_ram pointer and PTO alignment 2011-03-09 08:09:54 +01:00