1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyun /* identifiers for device / performance-differentiated memory regions */ 3*4882a593Smuzhiyun #include <linux/idr.h> 4*4882a593Smuzhiyun #include <linux/types.h> 5*4882a593Smuzhiyun #include <linux/memregion.h> 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun static DEFINE_IDA(memregion_ids); 8*4882a593Smuzhiyun memregion_alloc(gfp_t gfp)9*4882a593Smuzhiyunint memregion_alloc(gfp_t gfp) 10*4882a593Smuzhiyun { 11*4882a593Smuzhiyun return ida_alloc(&memregion_ids, gfp); 12*4882a593Smuzhiyun } 13*4882a593Smuzhiyun EXPORT_SYMBOL(memregion_alloc); 14*4882a593Smuzhiyun memregion_free(int id)15*4882a593Smuzhiyunvoid memregion_free(int id) 16*4882a593Smuzhiyun { 17*4882a593Smuzhiyun ida_free(&memregion_ids, id); 18*4882a593Smuzhiyun } 19*4882a593Smuzhiyun EXPORT_SYMBOL(memregion_free); 20