diff options
author | Mike Frysinger <michael.frysinger@analog.com> | 2007-08-05 05:03:59 -0400 |
---|---|---|
committer | Bryan Wu <bryan.wu@analog.com> | 2007-08-05 05:03:59 -0400 |
commit | f0b5d12f2b3226c85258519d7725e63d9daf5e90 (patch) | |
tree | d64fdcf65cb5f647b544ece5f1727af5153c0a3d /arch/blackfin/Kconfig | |
parent | 0174dd59bb5f343e8981b5ea7a3dc782fad5b644 (diff) |
Blackfin arch: allow people to select the feature that is unavailable to the kernel
- allow people to select the feature that is unavailable to the kernel: NMI, JTAG, or CYCLES.
- change default NMI handler to simply dump hardware trace buffer.
- remove default NMI handler completely as calling into kernel code is not safe
move example handler to wiki so people dont haphazardly copy and paste this stuff thinking its safe
Signed-off-by: Mike Frysinger <michael.frysinger@analog.com>
Signed-off-by: Bryan Wu <bryan.wu@analog.com>
Diffstat (limited to 'arch/blackfin/Kconfig')
-rw-r--r-- | arch/blackfin/Kconfig | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/arch/blackfin/Kconfig b/arch/blackfin/Kconfig index cdce8cc5b7b3..26ebb0e8c431 100644 --- a/arch/blackfin/Kconfig +++ b/arch/blackfin/Kconfig | |||
@@ -521,6 +521,52 @@ config BFIN_IDLE_LED_NUM | |||
521 | help | 521 | help |
522 | Select the LED (marked on the board) for you to blink. | 522 | Select the LED (marked on the board) for you to blink. |
523 | 523 | ||
524 | choice | ||
525 | prompt "Blackfin Exception Scratch Register" | ||
526 | default BFIN_SCRATCH_REG_RETN | ||
527 | help | ||
528 | Select the resource to reserve for the Exception handler: | ||
529 | - RETN: Non-Maskable Interrupt (NMI) | ||
530 | - RETE: Exception Return (JTAG/ICE) | ||
531 | - CYCLES: Performance counter | ||
532 | |||
533 | If you are unsure, please select "RETN". | ||
534 | |||
535 | config BFIN_SCRATCH_REG_RETN | ||
536 | bool "RETN" | ||
537 | help | ||
538 | Use the RETN register in the Blackfin exception handler | ||
539 | as a stack scratch register. This means you cannot | ||
540 | safely use NMI on the Blackfin while running Linux, but | ||
541 | you can debug the system with a JTAG ICE and use the | ||
542 | CYCLES performance registers. | ||
543 | |||
544 | If you are unsure, please select "RETN". | ||
545 | |||
546 | config BFIN_SCRATCH_REG_RETE | ||
547 | bool "RETE" | ||
548 | help | ||
549 | Use the RETE register in the Blackfin exception handler | ||
550 | as a stack scratch register. This means you cannot | ||
551 | safely use a JTAG ICE while debugging a Blackfin board, | ||
552 | but you can safely use the CYCLES performance registers | ||
553 | and the NMI. | ||
554 | |||
555 | If you are unsure, please select "RETN". | ||
556 | |||
557 | config BFIN_SCRATCH_REG_CYCLES | ||
558 | bool "CYCLES" | ||
559 | help | ||
560 | Use the CYCLES register in the Blackfin exception handler | ||
561 | as a stack scratch register. This means you cannot | ||
562 | safely use the CYCLES performance registers on a Blackfin | ||
563 | board at anytime, but you can debug the system with a JTAG | ||
564 | ICE and use the NMI. | ||
565 | |||
566 | If you are unsure, please select "RETN". | ||
567 | |||
568 | endchoice | ||
569 | |||
524 | # | 570 | # |
525 | # Sorry - but you need to put the hex address here - | 571 | # Sorry - but you need to put the hex address here - |
526 | # | 572 | # |