summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/fiq.h
diff options
context:
space:
mode:
authorDave Martin <dave.martin@linaro.org>2011-05-24 13:11:48 +0200
committerRussell King <rmk+kernel@arm.linux.org.uk>2011-05-26 11:31:06 +0200
commit2846d84ffa4408c9810fabad74cb7aec410352fc (patch)
tree25e0a37c87f283e24808ecceb84bb846f9e49e07 /arch/arm/include/asm/fiq.h
parentARM: 6938/1: fiq: Refactor {get,set}_fiq_regs() for Thumb-2 (diff)
downloadlinux-2846d84ffa4408c9810fabad74cb7aec410352fc.tar.xz
linux-2846d84ffa4408c9810fabad74cb7aec410352fc.zip
ARM: 6940/1: fiq: Briefly document driver responsibilities for suspend/resume
Drivers which make use of the FIQ interrupt may require the state of the FIQ mode registers to be preserved across suspend/resume. Because the FIQ mode registers are not saved and restored automatically by the kernel, driver authors will need to do the appropriate save/restore in their own driver suspend/resume handlers. Implementing global automatic save/restore of the FIQ state does not appear appropriate, since this by itself is not sufficient for FIQ-based drivers to function correctly across suspend/resume in any case. This patch adds a brief explanatory note to fiq.h documenting the requirement placed on driver authors. Signed-off-by: Dave Martin <dave.martin@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/fiq.h')
-rw-r--r--arch/arm/include/asm/fiq.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/include/asm/fiq.h b/arch/arm/include/asm/fiq.h
index 45bb3eeeab7c..d493d0b742a1 100644
--- a/arch/arm/include/asm/fiq.h
+++ b/arch/arm/include/asm/fiq.h
@@ -4,6 +4,13 @@
* Support for FIQ on ARM architectures.
* Written by Philip Blundell <philb@gnu.org>, 1998
* Re-written by Russell King
+ *
+ * NOTE: The FIQ mode registers are not magically preserved across
+ * suspend/resume.
+ *
+ * Drivers which require these registers to be preserved across power
+ * management operations must implement appropriate suspend/resume handlers to
+ * save and restore them.
*/
#ifndef __ASM_FIQ_H