Go to the source code of this file.
Classes | |
| struct | region_devres |
: reserving caller's ID string | |
| __request_region - create a new busy resource region : parent resource descriptor : resource start address : resource region size
: IO resource flags | |
| #define | MAXRESERVE 4 |
| static int | strict_iomem_checks |
| struct resource * | __request_region (struct resource *parent, resource_size_t start, resource_size_t n, const char *name, int flags) |
| EXPORT_SYMBOL (__request_region) | |
| int | __check_region (struct resource *parent, resource_size_t start, resource_size_t n) |
| __check_region - check if a resource region is busy or free : parent resource descriptor : resource start address : resource region size | |
| EXPORT_SYMBOL (__check_region) | |
| void | __release_region (struct resource *parent, resource_size_t start, resource_size_t n) |
| __release_region - release a previously reserved resource region : parent resource descriptor : resource start address : resource region size | |
| EXPORT_SYMBOL (__release_region) | |
| static void | devm_region_release (struct device *dev, void *res) |
| static int | devm_region_match (struct device *dev, void *res, void *match_data) |
| struct resource * | __devm_request_region (struct device *dev, struct resource *parent, resource_size_t start, resource_size_t n, const char *name) |
| EXPORT_SYMBOL (__devm_request_region) | |
| void | __devm_release_region (struct device *dev, struct resource *parent, resource_size_t start, resource_size_t n) |
| EXPORT_SYMBOL (__devm_release_region) | |
| static int __init | reserve_setup (char *str) |
| __setup ("reserve=", reserve_setup) | |
| int | iomem_map_sanity_check (resource_size_t addr, unsigned long size) |
| int | iomem_is_exclusive (u64 addr) |
| static int __init | strict_iomem (char *str) |
Functions | |
| EXPORT_SYMBOL (ioport_resource) | |
| EXPORT_SYMBOL (iomem_resource) | |
| static | DEFINE_RWLOCK (resource_lock) |
| static void * | r_next (struct seq_file *m, void *v, loff_t *pos) |
| static struct resource * | __request_resource (struct resource *root, struct resource *new) |
| static int | __release_resource (struct resource *old) |
| int | request_resource (struct resource *root, struct resource *new) |
| request_resource - request and reserve an I/O or memory resource : root resource descriptor : resource descriptor desired by caller | |
| EXPORT_SYMBOL (request_resource) | |
| int | release_resource (struct resource *old) |
| release_resource - release a previously reserved resource : resource pointer | |
| EXPORT_SYMBOL (release_resource) | |
| static int | find_resource (struct resource *root, struct resource *new, resource_size_t size, resource_size_t min, resource_size_t max, resource_size_t align, void(*alignf)(void *, struct resource *, resource_size_t, resource_size_t), void *alignf_data) |
| int | allocate_resource (struct resource *root, struct resource *new, resource_size_t size, resource_size_t min, resource_size_t max, resource_size_t align, void(*alignf)(void *, struct resource *, resource_size_t, resource_size_t), void *alignf_data) |
| allocate_resource - allocate empty slot in the resource tree given range & alignment : root resource descriptor : resource descriptor desired by caller : requested resource region size : minimum size to allocate : maximum size to allocate : alignment requested, in bytes : alignment function, optional, called if not NULL : arbitrary data to pass to the function | |
| EXPORT_SYMBOL (allocate_resource) | |
| static struct resource * | __insert_resource (struct resource *parent, struct resource *new) |
| int | insert_resource (struct resource *parent, struct resource *new) |
| insert_resource - Inserts a resource in the resource tree : parent of the new resource : new resource to insert | |
| void | insert_resource_expand_to_fit (struct resource *root, struct resource *new) |
| insert_resource_expand_to_fit - Insert a resource into the resource tree : root resource descriptor : new resource to insert | |
| int | adjust_resource (struct resource *res, resource_size_t start, resource_size_t size) |
| adjust_resource - modify a resource's start and size : resource to modify : new start value : new size | |
| static void __init | __reserve_region_with_split (struct resource *root, resource_size_t start, resource_size_t end, const char *name) |
| void __init | reserve_region_with_split (struct resource *root, resource_size_t start, resource_size_t end, const char *name) |
| EXPORT_SYMBOL (adjust_resource) | |
| resource_size_t | resource_alignment (struct resource *res) |
| resource_alignment - calculate resource's alignment : resource pointer | |
Variables | |
| struct resource | ioport_resource |
| struct resource | iomem_resource |
| #define MAXRESERVE 4 |
Definition at line 807 of file resource.c.
| int __check_region | ( | struct resource * | parent, | |
| resource_size_t | start, | |||
| resource_size_t | n | |||
| ) |
__check_region - check if a resource region is busy or free : parent resource descriptor : resource start address
: resource region size
Returns 0 if the region is free at the moment it is checked, returns -EBUSY if the region is busy.
NOTE: This function is deprecated because its use is racy. Even if it returns 0, a subsequent call to request_region() may fail because another driver etc. just allocated the region. Do NOT use it. It will be removed from the kernel.
Definition at line 680 of file resource.c.
| void __devm_release_region | ( | struct device * | dev, | |
| struct resource * | parent, | |||
| resource_size_t | start, | |||
| resource_size_t | n | |||
| ) |
Definition at line 793 of file resource.c.
| struct resource* __devm_request_region | ( | struct device * | dev, | |
| struct resource * | parent, | |||
| resource_size_t | start, | |||
| resource_size_t | n, | |||
| const char * | name | |||
| ) | [read] |
Definition at line 767 of file resource.c.
| static struct resource* __insert_resource | ( | struct resource * | parent, | |
| struct resource * | new | |||
| ) | [static, read] |
Definition at line 370 of file resource.c.
| void __release_region | ( | struct resource * | parent, | |
| resource_size_t | start, | |||
| resource_size_t | n | |||
| ) |
__release_region - release a previously reserved resource region : parent resource descriptor : resource start address
: resource region size
The described resource region must match a currently busy region.
Definition at line 703 of file resource.c.
| static int __release_resource | ( | struct resource * | old | ) | [static] |
Definition at line 172 of file resource.c.
| struct resource* __request_region | ( | struct resource * | parent, | |
| resource_size_t | start, | |||
| resource_size_t | n, | |||
| const char * | name, | |||
| int | flags | |||
| ) | [read] |
Definition at line 626 of file resource.c.
| static struct resource* __request_resource | ( | struct resource * | root, | |
| struct resource * | new | |||
| ) | [static, read] |
Definition at line 144 of file resource.c.
| static void __init __reserve_region_with_split | ( | struct resource * | root, | |
| resource_size_t | start, | |||
| resource_size_t | end, | |||
| const char * | name | |||
| ) | [static] |
Definition at line 520 of file resource.c.
| __setup | ( | ) |
| int adjust_resource | ( | struct resource * | res, | |
| resource_size_t | start, | |||
| resource_size_t | size | |||
| ) |
adjust_resource - modify a resource's start and size : resource to modify : new start value : new size
Given an existing resource, change its start and size to match the arguments. Returns 0 on success, -EBUSY if it can't fit. Existing children of the resource are assumed to be immutable.
Definition at line 484 of file resource.c.
| int allocate_resource | ( | struct resource * | root, | |
| struct resource * | new, | |||
| resource_size_t | size, | |||
| resource_size_t | min, | |||
| resource_size_t | max, | |||
| resource_size_t | align, | |||
| void(*)(void *, struct resource *, resource_size_t, resource_size_t) | alignf, | |||
| void * | alignf_data | |||
| ) |
allocate_resource - allocate empty slot in the resource tree given range & alignment : root resource descriptor : resource descriptor desired by caller : requested resource region size : minimum size to allocate : maximum size to allocate : alignment requested, in bytes : alignment function, optional, called if not NULL : arbitrary data to pass to the function
Definition at line 347 of file resource.c.
| static DEFINE_RWLOCK | ( | resource_lock | ) | [static] |
| static int devm_region_match | ( | struct device * | dev, | |
| void * | res, | |||
| void * | match_data | |||
| ) | [static] |
Definition at line 759 of file resource.c.
| static void devm_region_release | ( | struct device * | dev, | |
| void * | res | |||
| ) | [static] |
Definition at line 752 of file resource.c.
| EXPORT_SYMBOL | ( | __devm_release_region | ) |
| EXPORT_SYMBOL | ( | __devm_request_region | ) |
| EXPORT_SYMBOL | ( | __release_region | ) |
| EXPORT_SYMBOL | ( | __check_region | ) |
| EXPORT_SYMBOL | ( | __request_region | ) |
| EXPORT_SYMBOL | ( | adjust_resource | ) |
| EXPORT_SYMBOL | ( | allocate_resource | ) |
| EXPORT_SYMBOL | ( | release_resource | ) |
| EXPORT_SYMBOL | ( | request_resource | ) |
| EXPORT_SYMBOL | ( | iomem_resource | ) |
| EXPORT_SYMBOL | ( | ioport_resource | ) |
| static int find_resource | ( | struct resource * | root, | |
| struct resource * | new, | |||
| resource_size_t | size, | |||
| resource_size_t | min, | |||
| resource_size_t | max, | |||
| resource_size_t | align, | |||
| void(*)(void *, struct resource *, resource_size_t, resource_size_t) | alignf, | |||
| void * | alignf_data | |||
| ) | [static] |
Definition at line 294 of file resource.c.
| int insert_resource | ( | struct resource * | parent, | |
| struct resource * | new | |||
| ) |
insert_resource - Inserts a resource in the resource tree : parent of the new resource : new resource to insert
Returns 0 on success, -EBUSY if the resource can't be inserted.
This function is equivalent to request_resource when no conflict happens. If a conflict happens, and the conflicting resources entirely fit within the range of the new resource, then the new resource is inserted and the conflicting resources become children of the new resource.
Definition at line 430 of file resource.c.
| void insert_resource_expand_to_fit | ( | struct resource * | root, | |
| struct resource * | new | |||
| ) |
insert_resource_expand_to_fit - Insert a resource into the resource tree : root resource descriptor : new resource to insert
Insert a resource into the resource tree, possibly expanding it in order to make it encompass any conflicting resources.
Definition at line 448 of file resource.c.
| int iomem_is_exclusive | ( | u64 | addr | ) |
Definition at line 894 of file resource.c.
| int iomem_map_sanity_check | ( | resource_size_t | addr, | |
| unsigned long | size | |||
| ) |
Definition at line 841 of file resource.c.
| static void* r_next | ( | struct seq_file * | m, | |
| void * | v, | |||
| loff_t * | pos | |||
| ) | [static] |
Definition at line 42 of file resource.c.
| int release_resource | ( | struct resource * | old | ) |
release_resource - release a previously reserved resource : resource pointer
Definition at line 214 of file resource.c.
| int request_resource | ( | struct resource * | root, | |
| struct resource * | new | |||
| ) |
request_resource - request and reserve an I/O or memory resource : root resource descriptor : resource descriptor desired by caller
Returns 0 for success, negative error code on error.
Definition at line 198 of file resource.c.
| void __init reserve_region_with_split | ( | struct resource * | root, | |
| resource_size_t | start, | |||
| resource_size_t | end, | |||
| const char * | name | |||
| ) |
Definition at line 575 of file resource.c.
| static int __init reserve_setup | ( | char * | str | ) | [static] |
Definition at line 808 of file resource.c.
| resource_size_t resource_alignment | ( | struct resource * | res | ) |
resource_alignment - calculate resource's alignment : resource pointer
Returns alignment on success, 0 (invalid alignment) on failure.
Definition at line 592 of file resource.c.
| static int __init strict_iomem | ( | char * | str | ) | [static] |
Definition at line 927 of file resource.c.
| struct resource iomem_resource |
Initial value:
{
.name = "PCI mem",
.start = 0,
.end = -1,
.flags = IORESOURCE_MEM,
}
Definition at line 32 of file resource.c.
| struct resource ioport_resource |
Initial value:
{
.name = "PCI IO",
.start = 0,
.end = IO_SPACE_LIMIT,
.flags = IORESOURCE_IO,
}
Definition at line 24 of file resource.c.
int strict_iomem_checks [static] |
Definition at line 887 of file resource.c.
1.5.6