Name

allocate_resource — allocate empty slot in the resource tree given range & alignment

Synopsis

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);

Arguments

root

root resource descriptor

new

resource descriptor desired by caller

size

requested resource region size

min

minimum size to allocate

max

maximum size to allocate

align

alignment requested, in bytes

alignf

alignment function, optional, called if not NULL

alignf_data

arbitrary data to pass to the alignf function