1/* 2 * SRAM Memory Management 3 * 4 * Copyright (c) 2011 Marvell Semiconductors Inc. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License version 2 as 8 * published by the Free Software Foundation. 9 * 10 */ 11 12#ifndef __DMA_MMP_TDMA_H 13#define __DMA_MMP_TDMA_H 14 15#include <linux/genalloc.h> 16 17/* ARBITRARY: SRAM allocations are multiples of this 2^N size */ 18#define SRAM_GRANULARITY 512 19 20enum sram_type { 21 MMP_SRAM_UNDEFINED = 0, 22 MMP_ASRAM, 23 MMP_ISRAM, 24}; 25 26struct sram_platdata { 27 char *pool_name; 28 int granularity; 29}; 30 31#ifdef CONFIG_MMP_SRAM 32extern struct gen_pool *sram_get_gpool(char *pool_name); 33#else 34static inline struct gen_pool *sram_get_gpool(char *pool_name) 35{ 36 return NULL; 37} 38#endif 39 40#endif /* __DMA_MMP_TDMA_H */ 41