diff options
Diffstat (limited to 'kernel/arch/sh/include/asm/sram.h')
-rw-r--r-- | kernel/arch/sh/include/asm/sram.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/kernel/arch/sh/include/asm/sram.h b/kernel/arch/sh/include/asm/sram.h new file mode 100644 index 000000000..a2808ce4c --- /dev/null +++ b/kernel/arch/sh/include/asm/sram.h @@ -0,0 +1,38 @@ +#ifndef __ASM_SRAM_H +#define __ASM_SRAM_H + +#ifdef CONFIG_HAVE_SRAM_POOL + +#include <linux/spinlock.h> +#include <linux/genalloc.h> + +/* arch/sh/mm/sram.c */ +extern struct gen_pool *sram_pool; + +static inline unsigned long sram_alloc(size_t len) +{ + if (!sram_pool) + return 0UL; + + return gen_pool_alloc(sram_pool, len); +} + +static inline void sram_free(unsigned long addr, size_t len) +{ + return gen_pool_free(sram_pool, addr, len); +} + +#else + +static inline unsigned long sram_alloc(size_t len) +{ + return 0; +} + +static inline void sram_free(unsigned long addr, size_t len) +{ +} + +#endif /* CONFIG_HAVE_SRAM_POOL */ + +#endif /* __ASM_SRAM_H */ |