sram.h (813B)
1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * mach/sram.h - DaVinci simple SRAM allocator 4 * 5 * Copyright (C) 2009 David Brownell 6 */ 7#ifndef __MACH_SRAM_H 8#define __MACH_SRAM_H 9 10/* ARBITRARY: SRAM allocations are multiples of this 2^N size */ 11#define SRAM_GRANULARITY 512 12 13/* 14 * SRAM allocations return a CPU virtual address, or NULL on error. 15 * If a DMA address is requested and the SRAM supports DMA, its 16 * mapped address is also returned. 17 * 18 * Errors include SRAM memory not being available, and requesting 19 * DMA mapped SRAM on systems which don't allow that. 20 */ 21extern void *sram_alloc(size_t len, dma_addr_t *dma); 22extern void sram_free(void *addr, size_t len); 23 24/* Get the struct gen_pool * for use in platform data */ 25extern struct gen_pool *sram_get_gen_pool(void); 26 27#endif /* __MACH_SRAM_H */