[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4EABDDBE.5080407@gmail.com>
Date: Sat, 29 Oct 2011 13:04:30 +0200
From: Marco Stornelli <marco.stornelli@...il.com>
To: Russell King - ARM Linux <linux@....linux.org.uk>
CC: linux-arm-kernel@...ts.infradead.org, msb@...omium.org,
linux-kernel@...r.kernel.org, sergiu@...omium.org,
Bryan Freed <bfreed@...omium.org>, akpm@...ux-foundation.org,
seiji.aguchi@....com
Subject: Re: [PATCH] ramoops appears geared to not support ARM
Il 29/10/2011 11:34, Russell King - ARM Linux ha scritto:
> On Sat, Oct 29, 2011 at 10:39:47AM +0200, Marco Stornelli wrote:
>> (Added linux-arm)
>>
>> Il 29/10/2011 01:21, Bryan Freed ha scritto:
>>> I had some difficulty in getting ramoops to work on our ARM systems.
>>> The driver maps memory with ioremap() which is supposed to map IO memory,
>>> not physical RAM. This happens to work on x86 and apparently some other
>>> architectures, but it does not work on ARM.
>>> Specifically, I see this comment in __arm_ioremap_pfn_caller():
>>> Don't allow RAM to be mapped - this causes problems with ARMv6+
>>>
>>> So here is a patch that hacks around the issue using page_is_ram() to
>>> differentiate between the two.
>>>
>>> Am I missing something here?
>>> Is ramoops working on any ARM systems yet, and I am just doing something wrong?
>>>
>>> My ARM platform reserves a section of RAM for use by ramoops, but it is still
>>> mapped along with the rest of main memory. This is so /dev/mem can find it
>>> with xlate_dev_mem_ptr().
>>> On x86, I see our BIOS reserves the memory so that it is not counted as main
>>> memory, and it is not mapped until ramoops ioremaps it.
>>>
>>> Bryan Freed (1):
>>> ramoops: Add support for ARM systems.
>>>
>>> drivers/char/ramoops.c | 67 +++++++++++++++++++++++++++++++++++++----------
>>> 1 files changed, 52 insertions(+), 15 deletions(-)
>>>
>>
>> Can some ARM guys give an opinion about that?
>
> Opinion about the patch which isn't present in this email (so we can't
> see it) or about the commentry above?
>
About the ioremap problem. It seems there is a problem on some ARM arch
to use ioremap (ramoops driver) to remap a piece of RAM even if it's not
used by kernel (reserved at boot with mem option, Bryan can you
confirm?). It has been suggested by Bryan to use xlate_dev_mem_ptr(),
but I'm not sure if the problem is how to reserve the memory on these
ARM archs. I believe ioremap is a general way to do it, of course not
using kernel already used by kernel, am I right? Or to be compliant with
all archs (in this particular case with ARMv6+) we should use
xlate_dev_mem_ptr()?
Marco
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists