• Philipp Zabel's avatar
    misc: generic on-chip SRAM allocation driver · 4984c6f5
    Philipp Zabel authored
    This driver requests and remaps a memory region as configured in the
    device tree.  It serves memory from this region via the genalloc API.  It
    optionally enables the SRAM clock.
    
    Other drivers can retrieve the genalloc pool from a phandle pointing to
    this drivers' device node in the device tree.
    
    The allocation granularity is hard-coded to 32 bytes for now, to make the
    SRAM driver useful for the 6502 remoteproc driver.  There is overhead for
    bigger SRAMs, where only a much coarser allocation granularity is needed:
    At 32 bytes minimum allocation size, a 256 KiB SRAM needs a 1 KiB bitmap
    to track allocations.
    
    [akpm@linux-foundation.org: fix Kconfig text, make sram_init static]
    Signed-off-by: default avatarPhilipp Zabel <p.zabel@pengutronix.de>
    Reviewed-by: default avatarShawn Guo <shawn.guo@linaro.org>
    Acked-by: default avatarGrant Likely <grant.likely@secretlab.ca>
    Tested-by: default avatarMichal Simek <monstr@monstr.eu>
    Cc: Dong Aisheng <dong.aisheng@linaro.org>
    Cc: Fabio Estevam <fabio.estevam@freescale.com>
    Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Cc: Huang Shijie <shijie8@gmail.com>
    Cc: Javier Martin <javier.martin@vista-silicon.com>
    Cc: Matt Porter <mporter@ti.com>
    Cc: Michal Simek <monstr@monstr.eu>
    Cc: Paul Gortmaker <paul.gortmaker@windriver.com>
    Cc: Rob Herring <rob.herring@calxeda.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    4984c6f5
sram.c 2.83 KB