 327c21bc3d
			
		
	
	
	327c21bc3d
	
	
	
		
			
			Unification, so we have these things in one file. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
		
			
				
	
	
		
			35 lines
		
	
	
	
		
			740 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
	
		
			740 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef _ASM_X86_DMI_H
 | |
| #define _ASM_X86_DMI_H
 | |
| 
 | |
| #include <asm/io.h>
 | |
| 
 | |
| #ifdef CONFIG_X86_32
 | |
| 
 | |
| /* Use early IO mappings for DMI because it's initialized early */
 | |
| #define dmi_ioremap bt_ioremap
 | |
| #define dmi_iounmap bt_iounmap
 | |
| #define dmi_alloc alloc_bootmem
 | |
| 
 | |
| #else /* CONFIG_X86_32 */
 | |
| 
 | |
| #define DMI_MAX_DATA 2048
 | |
| 
 | |
| extern int dmi_alloc_index;
 | |
| extern char dmi_alloc_data[DMI_MAX_DATA];
 | |
| 
 | |
| /* This is so early that there is no good way to allocate dynamic memory.
 | |
|    Allocate data in an BSS array. */
 | |
| static inline void *dmi_alloc(unsigned len)
 | |
| {
 | |
| 	int idx = dmi_alloc_index;
 | |
| 	if ((dmi_alloc_index += len) > DMI_MAX_DATA)
 | |
| 		return NULL;
 | |
| 	return dmi_alloc_data + idx;
 | |
| }
 | |
| 
 | |
| #define dmi_ioremap early_ioremap
 | |
| #define dmi_iounmap early_iounmap
 | |
| 
 | |
| #endif
 | |
| 
 | |
| #endif
 |