1 #ifndef __ASM_SH64_PLATFORM_H 2 #define __ASM_SH64_PLATFORM_H 3 4 /* 5 * This file is subject to the terms and conditions of the GNU General Public 6 * License. See the file "COPYING" in the main directory of this archive 7 * for more details. 8 * 9 * include/asm-sh64/platform.h 10 * 11 * Copyright (C) 2000, 2001 Paolo Alberelli 12 * 13 * benedict.gaster@superh.com: 3rd May 2002 14 * Added support for ramdisk, removing statically linked romfs at the same time. 15 */ 16 17 #include <linux/ioport.h> 18 #include <asm/irq.h> 19 20 21 /* 22 * Platform definition structure. 23 */ 24 struct sh64_platform { 25 unsigned int readonly_rootfs; 26 unsigned int ramdisk_flags; 27 unsigned int initial_root_dev; 28 unsigned int loader_type; 29 unsigned int initrd_start; 30 unsigned int initrd_size; 31 unsigned int fpu_flags; 32 unsigned int io_res_count; 33 unsigned int kram_res_count; 34 unsigned int xram_res_count; 35 unsigned int rom_res_count; 36 struct resource *io_res_p; 37 struct resource *kram_res_p; 38 struct resource *xram_res_p; 39 struct resource *rom_res_p; 40 }; 41 42 extern struct sh64_platform platform_parms; 43 44 extern unsigned long long memory_start, memory_end; 45 46 extern unsigned long long fpu_in_use; 47 48 extern int platform_int_priority[NR_INTC_IRQS]; 49 50 #define FPU_FLAGS (platform_parms.fpu_flags) 51 #define STANDARD_IO_RESOURCES (platform_parms.io_res_count) 52 #define STANDARD_KRAM_RESOURCES (platform_parms.kram_res_count) 53 #define STANDARD_XRAM_RESOURCES (platform_parms.xram_res_count) 54 #define STANDARD_ROM_RESOURCES (platform_parms.rom_res_count) 55 56 /* 57 * Kernel Memory description, Respectively: 58 * code = last but one memory descriptor 59 * data = last memory descriptor 60 */ 61 #define code_resource (platform_parms.kram_res_p[STANDARD_KRAM_RESOURCES - 2]) 62 #define data_resource (platform_parms.kram_res_p[STANDARD_KRAM_RESOURCES - 1]) 63 64 /* Be prepared to 64-bit sign extensions */ 65 #define PFN_UP(x) ((((x) + PAGE_SIZE-1) >> PAGE_SHIFT) & 0x000fffff) 66 #define PFN_DOWN(x) (((x) >> PAGE_SHIFT) & 0x000fffff) 67 #define PFN_PHYS(x) ((x) << PAGE_SHIFT) 68 69 #endif /* __ASM_SH64_PLATFORM_H */ 70