[PATCH] FUSE - read-only operations
[linux-2.6] / include / asm-sh64 / platform.h
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 */