 9dec17eb57
			
		
	
	
	9dec17eb57
	
	
	
		
			
			Fix some FRV arch compile errors, including:
 (*) Marking nr_kernel_pages as __meminitdata so that references to it end up
     being properly calculated rather than being assumed to be in the small
     data section (and thus calculated wrt the GP register).  Not doing this
     causes the linker to emit errors as the offset is too big to fit into the
     load instruction.
 (*) Move pm_power_off into an unconditionally compiled .c file as it's now
     unconditionally accessed.
 (*) Declare frv_change_cmode() in a header file rather than in a .c file, and
     declare it asmlinkage.
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
		
	
			
		
			
				
	
	
		
			59 lines
		
	
	
	
		
			1.7 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
	
		
			1.7 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
| /* local.h: local definitions
 | |
|  *
 | |
|  * Copyright (C) 2004 Red Hat, Inc. All Rights Reserved.
 | |
|  * Written by David Howells (dhowells@redhat.com)
 | |
|  *
 | |
|  * This program is free software; you can redistribute it and/or
 | |
|  * modify it under the terms of the GNU General Public License
 | |
|  * as published by the Free Software Foundation; either version
 | |
|  * 2 of the License, or (at your option) any later version.
 | |
|  */
 | |
| 
 | |
| #ifndef _FRV_LOCAL_H
 | |
| #define _FRV_LOCAL_H
 | |
| 
 | |
| #include <asm/sections.h>
 | |
| 
 | |
| #ifndef __ASSEMBLY__
 | |
| 
 | |
| /* dma.c */
 | |
| extern unsigned long frv_dma_inprogress;
 | |
| 
 | |
| extern void frv_dma_pause_all(void);
 | |
| extern void frv_dma_resume_all(void);
 | |
| 
 | |
| /* sleep.S */
 | |
| extern asmlinkage void frv_cpu_suspend(unsigned long);
 | |
| extern asmlinkage void frv_cpu_core_sleep(void);
 | |
| 
 | |
| /* setup.c */
 | |
| extern unsigned long __nongprelbss pdm_suspend_mode;
 | |
| extern void determine_clocks(int verbose);
 | |
| extern int __nongprelbss clock_p0_current;
 | |
| extern int __nongprelbss clock_cm_current;
 | |
| extern int __nongprelbss clock_cmode_current;
 | |
| 
 | |
| #ifdef CONFIG_PM
 | |
| extern int __nongprelbss clock_cmodes_permitted;
 | |
| extern unsigned long __nongprelbss clock_bits_settable;
 | |
| #define CLOCK_BIT_CM		0x0000000f
 | |
| #define CLOCK_BIT_CM_H		0x00000001	/* CLKC.CM can be set to 0 */
 | |
| #define CLOCK_BIT_CM_M		0x00000002	/* CLKC.CM can be set to 1 */
 | |
| #define CLOCK_BIT_CM_L		0x00000004	/* CLKC.CM can be set to 2 */
 | |
| #define CLOCK_BIT_P0		0x00000010	/* CLKC.P0 can be changed */
 | |
| #define CLOCK_BIT_CMODE		0x00000020	/* CLKC.CMODE can be changed */
 | |
| 
 | |
| extern void (*__power_switch_wake_setup)(void);
 | |
| extern int  (*__power_switch_wake_check)(void);
 | |
| extern void (*__power_switch_wake_cleanup)(void);
 | |
| #endif
 | |
| 
 | |
| /* time.c */
 | |
| extern void time_divisor_init(void);
 | |
| 
 | |
| /* cmode.S */
 | |
| extern asmlinkage void frv_change_cmode(int);
 | |
| 
 | |
| 
 | |
| #endif /* __ASSEMBLY__ */
 | |
| #endif /* _FRV_LOCAL_H */
 |