1 /* local.h: local definitions 2 * 3 * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved. 4 * Written by David Howells (dhowells@redhat.com) 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License 8 * as published by the Free Software Foundation; either version 9 * 2 of the License, or (at your option) any later version. 10 */ 11 12 #ifndef _FRV_LOCAL_H 13 #define _FRV_LOCAL_H 14 15 #include <asm/sections.h> 16 17 #ifndef __ASSEMBLY__ 18 19 /* dma.c */ 20 extern unsigned long frv_dma_inprogress; 21 22 extern void frv_dma_pause_all(void); 23 extern void frv_dma_resume_all(void); 24 25 /* sleep.S */ 26 extern asmlinkage void frv_cpu_suspend(unsigned long); 27 extern asmlinkage void frv_cpu_core_sleep(void); 28 29 /* setup.c */ 30 extern unsigned long __nongprelbss pdm_suspend_mode; 31 extern void determine_clocks(int verbose); 32 extern int __nongprelbss clock_p0_current; 33 extern int __nongprelbss clock_cm_current; 34 extern int __nongprelbss clock_cmode_current; 35 36 #ifdef CONFIG_PM 37 extern int __nongprelbss clock_cmodes_permitted; 38 extern unsigned long __nongprelbss clock_bits_settable; 39 #define CLOCK_BIT_CM 0x0000000f 40 #define CLOCK_BIT_CM_H 0x00000001 /* CLKC.CM can be set to 0 */ 41 #define CLOCK_BIT_CM_M 0x00000002 /* CLKC.CM can be set to 1 */ 42 #define CLOCK_BIT_CM_L 0x00000004 /* CLKC.CM can be set to 2 */ 43 #define CLOCK_BIT_P0 0x00000010 /* CLKC.P0 can be changed */ 44 #define CLOCK_BIT_CMODE 0x00000020 /* CLKC.CMODE can be changed */ 45 46 extern void (*__power_switch_wake_setup)(void); 47 extern int (*__power_switch_wake_check)(void); 48 extern void (*__power_switch_wake_cleanup)(void); 49 #endif 50 51 /* time.c */ 52 extern void time_divisor_init(void); 53 54 /* cmode.S */ 55 extern asmlinkage void frv_change_cmode(int); 56 57 58 #endif /* __ASSEMBLY__ */ 59 #endif /* _FRV_LOCAL_H */ 60