1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-10-03 08:21:30 +02:00

microblaze: exception: move unaligned access printfs inside switch case

The unaligned access messages are only valid in the case of an unaligned
data access exception. Do not print them for other types of hw exceptions.

Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com>
Link: https://lore.kernel.org/r/20220213080925.1548411-5-ovidiu.panait@windriver.com
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
This commit is contained in:
Ovidiu Panait
2022-02-13 10:09:23 +02:00
committed by Michal Simek
parent ee8161f7d1
commit 339f489d52

View File

@@ -35,6 +35,10 @@ void _hw_exception_handler (void)
switch (state & 0x1f) { /* mask on exception cause */ switch (state & 0x1f) { /* mask on exception cause */
case 0x1: case 0x1:
puts("Unaligned data access exception\n"); puts("Unaligned data access exception\n");
printf("Unaligned %sword access\n", ((state & 0x800) ? "" : "half"));
printf("Unaligned %s access\n", ((state & 0x400) ? "store" : "load"));
printf("Register R%x\n", (state & 0x3E) >> 5);
break; break;
case 0x2: case 0x2:
puts("Illegal op-code exception\n"); puts("Illegal op-code exception\n");
@@ -57,9 +61,6 @@ void _hw_exception_handler (void)
} }
printf("Return address from exception 0x%x\n", address); printf("Return address from exception 0x%x\n", address);
printf("Unaligned %sword access\n", ((state & 0x800) ? "" : "half"));
printf("Unaligned %s access\n", ((state & 0x400) ? "store" : "load"));
printf("Register R%x\n", (state & 0x3E) >> 5);
hang(); hang();
} }