linux/drivers/misc
Philipp Zabel 4984c6f5e5 misc: generic on-chip SRAM allocation driver
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: Philipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: Shawn Guo <shawn.guo@linaro.org>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Tested-by: Michal 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: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-04-29 18:28:13 -07:00
..
altera-stapl
c2port misc/c2port: convert to idr_alloc() 2013-02-27 19:10:17 -08:00
carma dmaengine: remove dma_async_memcpy_pending() macro 2013-01-07 22:05:09 -08:00
cb710 drivers/misc/cb710: add missing GENERIC_HARDIRQS dependency 2013-02-08 12:23:53 -08:00
eeprom misc: eeprom_93xx46: use spi_get_drvdata() and spi_set_drvdata() 2013-04-05 15:38:31 -07:00
ibmasm fs: Limit sys_mount to only request filesystem modules. 2013-03-03 19:36:31 -08:00
lis3lv02d misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
mei mei: fix krealloc() misuse in in mei_cl_irq_read_msg() 2013-04-23 10:29:58 -07:00
sgi-gru hlist: drop the node parameter from iterators 2013-02-27 19:10:24 -08:00
sgi-xp SGI-XP: handle non-fatal traps 2012-12-20 17:40:20 -08:00
ti-st Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
vmw_vmci Merge branch 'char-misc-linus' into char-misc-next 2013-03-26 16:09:30 -07:00
ad525x_dpot-i2c.c misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
ad525x_dpot-spi.c misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
ad525x_dpot.c misc: remove use of __devinit 2012-11-21 12:51:53 -08:00
ad525x_dpot.h
apds990x.c misc: apds990x: add CONFIG_PM_SLEEP to suspend/resume functions 2013-03-29 08:50:52 -07:00
apds9802als.c misc: apds9802als: Fix suspend/resume 2013-04-11 12:39:02 -07:00
arm-charlcd.c misc: arm-charlcd: use module_platform_driver_probe() 2013-03-15 11:10:49 -07:00
atmel_pwm.c misc: atmel_pwm: use module_platform_driver_probe() 2013-03-15 11:10:49 -07:00
atmel_tclib.c
atmel-ssc.c Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
bh1770glc.c misc: bh1770glc: add CONFIG_PM_SLEEP to suspend/resume functions 2013-03-29 08:50:51 -07:00
bh1780gli.c misc: bh1780gli: add CONFIG_PM_SLEEP to suspend/resume functions 2013-03-29 08:50:51 -07:00
bmp085-i2c.c misc: remove use of __devinit 2012-11-21 12:51:53 -08:00
bmp085-spi.c misc: remove use of __devinit 2012-11-21 12:51:53 -08:00
bmp085.c misc: remove use of __devinit 2012-11-21 12:51:53 -08:00
bmp085.h
cs5535-mfgpt.c cs5535-mfgpt: Fix quotation marks 2013-04-03 11:23:13 -07:00
ds1682.c
dummy-irq.c dummy-irq: introduce a dummy IRQ handler driver 2013-03-25 13:22:32 -07:00
enclosure.c
ep93xx_pwm.c misc: ep93xx_pwm: use module_platform_driver_probe() 2013-03-15 11:10:49 -07:00
fsa9480.c misc: fsa8480: Use dev_pm_ops 2013-04-11 12:39:02 -07:00
hmc6352.c
hpilo.c misc: remove use of __devinit 2012-11-21 12:51:53 -08:00
hpilo.h
ics932s401.c
ioc4.c misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
isl29003.c misc: isl29003: Use dev_pm_ops 2013-04-11 12:39:02 -07:00
isl29020.c
Kconfig misc: generic on-chip SRAM allocation driver 2013-04-29 18:28:13 -07:00
kgdbts.c kgdb/kgdbts: support ppc64 2013-03-02 08:52:17 -06:00
lattice-ecp3-config.c misc: lattice-ecp3-config: use spi_get_drvdata() 2013-04-05 15:38:31 -07:00
lkdtm.c drivers/misc/lkdtm.c: fix missing allocation failure check 2012-07-30 17:25:22 -07:00
Makefile misc: generic on-chip SRAM allocation driver 2013-04-29 18:28:13 -07:00
pch_phub.c misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
phantom.c misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
pti.c TTY/Serial merge for 3.8-rc1 2012-12-11 14:08:47 -08:00
spear13xx_pcie_gadget.c misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
sram.c misc: generic on-chip SRAM allocation driver 2013-04-29 18:28:13 -07:00
ti_dac7512.c misc: remove use of __devexit 2012-11-21 12:53:32 -08:00
tifm_7xx1.c tifm: use module_pci_driver 2012-09-05 14:10:29 -07:00
tifm_core.c misc/tifm_core: convert to idr_alloc() 2013-02-27 19:10:17 -08:00
tsl2550.c misc: tsl2550: Use dev_pm_ops 2013-04-11 12:39:02 -07:00
vmw_balloon.c