1#ifndef __ASM_SRAM_H 2#define __ASM_SRAM_H 3 4#ifdef CONFIG_HAVE_SRAM_POOL 5 6#include <linux/spinlock.h> 7#include <linux/genalloc.h> 8 9/* arch/sh/mm/sram.c */ 10extern struct gen_pool *sram_pool; 11 12static inline unsigned long sram_alloc(size_t len) 13{ 14 if (!sram_pool) 15 return 0UL; 16 17 return gen_pool_alloc(sram_pool, len); 18} 19 20static inline void sram_free(unsigned long addr, size_t len) 21{ 22 return gen_pool_free(sram_pool, addr, len); 23} 24 25#else 26 27static inline unsigned long sram_alloc(size_t len) 28{ 29 return 0; 30} 31 32static inline void sram_free(unsigned long addr, size_t len) 33{ 34} 35 36#endif /* CONFIG_HAVE_SRAM_POOL */ 37 38#endif /* __ASM_SRAM_H */ 39