ARM: 7409/1: Do not call flush_cache_user_range with mmap_sem held
[linux/fpc-iii.git] / arch / sh / kernel / swsusp.c
blob12b64a0f2f013a288aa24ddc1edba99dcf77228e
1 /*
2 * swsusp.c - SuperH hibernation support
4 * Copyright (C) 2009 Magnus Damm
6 * This file is subject to the terms and conditions of the GNU General Public
7 * License. See the file "COPYING" in the main directory of this archive
8 * for more details.
9 */
11 #include <linux/mm.h>
12 #include <linux/sched.h>
13 #include <linux/suspend.h>
14 #include <asm/suspend.h>
15 #include <asm/sections.h>
16 #include <asm/tlbflush.h>
17 #include <asm/page.h>
18 #include <asm/fpu.h>
20 struct swsusp_arch_regs swsusp_arch_regs_cpu0;
22 int pfn_is_nosave(unsigned long pfn)
24 unsigned long begin_pfn = __pa(&__nosave_begin) >> PAGE_SHIFT;
25 unsigned long end_pfn = PAGE_ALIGN(__pa(&__nosave_end)) >> PAGE_SHIFT;
27 return (pfn >= begin_pfn) && (pfn < end_pfn);
30 void save_processor_state(void)
32 init_fpu(current);
35 void restore_processor_state(void)
37 local_flush_tlb_all();