linux/mm/cma.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef __MM_CMA_H__
   3#define __MM_CMA_H__
   4
   5struct cma {
   6        unsigned long   base_pfn;
   7        unsigned long   count;
   8        unsigned long   *bitmap;
   9        unsigned int order_per_bit; /* Order of pages represented by one bit */
  10        struct mutex    lock;
  11#ifdef CONFIG_CMA_DEBUGFS
  12        struct hlist_head mem_head;
  13        spinlock_t mem_head_lock;
  14#endif
  15        const char *name;
  16};
  17
  18extern struct cma cma_areas[MAX_CMA_AREAS];
  19extern unsigned cma_area_count;
  20
  21static inline unsigned long cma_bitmap_maxno(struct cma *cma)
  22{
  23        return cma->count >> cma->order_per_bit;
  24}
  25
  26#endif
  27