···1515 * from areas congruently mapped with user space. It is 8MB large1616 * and must be 16MB aligned */1717#define TMPALIAS_MAP_START ((__PAGE_OFFSET) - 16*1024*1024)1818+1919+#define FIXMAP_SIZE (FIX_BITMAP_COUNT << PAGE_SHIFT)2020+#define FIXMAP_START (TMPALIAS_MAP_START - FIXMAP_SIZE)1821/* This is the kernel area for all maps (vmalloc, dma etc.) most1922 * usually, it extends up to TMPALIAS_MAP_START. Virtual addresses2023 * 0..GATEWAY_PAGE_SIZE are reserved for the gateway page */2124#define KERNEL_MAP_START (GATEWAY_PAGE_SIZE)2222-#define KERNEL_MAP_END (TMPALIAS_MAP_START)2525+#define KERNEL_MAP_END (FIXMAP_START)23262427#ifndef __ASSEMBLY__2828+2929+3030+enum fixed_addresses {3131+ /* Support writing RO kernel text via kprobes, jump labels, etc. */3232+ FIX_TEXT_POKE0,3333+ FIX_BITMAP_COUNT3434+};3535+2536extern void *parisc_vmalloc_start;2637#define PCXL_DMA_MAP_SIZE (8*1024*1024)2738#define VMALLOC_START ((unsigned long)parisc_vmalloc_start)2839#define VMALLOC_END (KERNEL_MAP_END)4040+4141+#define __fix_to_virt(_x) (FIXMAP_START + ((_x) << PAGE_SHIFT))4242+4343+void set_fixmap(enum fixed_addresses idx, phys_addr_t phys);4444+void clear_fixmap(enum fixed_addresses idx);4545+2946#endif /*__ASSEMBLY__*/30473148#endif /*_ASM_FIXMAP_H*/