Linux Kernel
3.7.1
|
#include <linux/bootmem.h>
#include <linux/init.h>
#include <linux/io.h>
#include <linux/module.h>
#include <linux/slab.h>
#include <linux/vmalloc.h>
#include <linux/mmiotrace.h>
#include <asm/cacheflush.h>
#include <asm/e820.h>
#include <asm/fixmap.h>
#include <asm/pgtable.h>
#include <asm/tlbflush.h>
#include <asm/pgalloc.h>
#include <asm/pat.h>
#include "physaddr.h"
Go to the source code of this file.
Macros | |
#define | __FIXADDR_TOP (-PAGE_SIZE) |
#define __FIXADDR_TOP (-PAGE_SIZE) |
void __init __iomem* early_ioremap | ( | resource_size_t | phys_addr, |
unsigned long | size | ||
) |
void __init __iomem* early_memremap | ( | resource_size_t | phys_addr, |
unsigned long | size | ||
) |
early_param | ( | "early_ioremap_debug" | , |
early_ioremap_debug_setup | |||
) |
EXPORT_SYMBOL | ( | ioremap_nocache | ) |
EXPORT_SYMBOL | ( | ioremap_wc | ) |
EXPORT_SYMBOL | ( | ioremap_cache | ) |
EXPORT_SYMBOL | ( | ioremap_prot | ) |
EXPORT_SYMBOL | ( | iounmap | ) |
void __iomem* ioremap_cache | ( | resource_size_t | phys_addr, |
unsigned long | size | ||
) |
void __iomem* ioremap_nocache | ( | resource_size_t | phys_addr, |
unsigned long | size | ||
) |
ioremap_nocache - map bus memory into CPU space : bus address of the memory : size of the resource to map
ioremap_nocache performs a platform specific sequence of operations to make bus memory CPU accessible via the readb/readw/readl/writeb/ writew/writel functions and the other mmio helpers. The returned address is not guaranteed to be usable directly as a virtual address.
This version of ioremap ensures that the memory is marked uncachable on the CPU as well as honouring existing caching rules from things like the PCI bus. Note that there are other caches and buffers on many busses. In particular driver authors should read up on PCI writes
It's useful if some control registers are in such an area and write combining or read caching is not desirable:
Must be freed with iounmap.
void __iomem* ioremap_prot | ( | resource_size_t | phys_addr, |
unsigned long | size, | ||
unsigned long | prot_val | ||
) |
void __iomem* ioremap_wc | ( | resource_size_t | phys_addr, |
unsigned long | size | ||
) |
late_initcall | ( | check_early_ioremap_leak | ) |