slram on mapped ram areas
Brian Norris
computersforpeace at gmail.com
Mon Oct 20 17:05:56 PDT 2014
On Thu, Oct 9, 2014 at 9:17 AM, <dwalker at fifo99.com> wrote:
> Hi,
>
> It seems that slram was made for access parts of memory not used by the system,
> or not mapped (right terminology?). I wanted to use it on memory which is mapped
> or memory that can be used by the system. The problem I have is that the system I
> work on places a filesystem image in memory someplace, and send the physical address
> and size of the area as boot parameters. The memory where the images ends up is not
> special memory.
I honestly don't know much about the slram.c driver. I doubt it has
many serious users these days.
It also seems like you're really trying to use this driver in a way it
was not designed. Do you really need to access specific kernel memory?
Or do you just want a RAM-backed MTD? There are other drivers for this
already (mtdram?).
> I made the following changes to your driver (somewhat condensed),
>
> 1) Added memblock_reserve() on the memory region
> 2) Added an insert_resource() call to the memory
> 3) Altered the driver to not use ioremap, instead use __va() conditionally.
I see this comment next to the __va() definition for ARM:
/*
* Drivers should NOT use these either.
*/
> This worked. I was able to access the memory via the typical mtd
> userspace interface.
>
> So is this something acceptable to add to the slram driver?
>
> Should it go someplace else?
>
> Does the functionality to do this exists someplace already ?
>
> I just wanted to send out feelers before I send any patches..
Brian
More information about the linux-mtd
mailing list