[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <653402b90610300553t405c67e6u69dee3c83c22dae5@mail.gmail.com>
Date: Mon, 30 Oct 2006 14:53:15 +0100
From: "Miguel Ojeda" <maxextreme@...il.com>
To: Franck <vagabon.xyz@...il.com>
Cc: "Andrew Morton" <akpm@...l.org>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 2.6.19-rc1 update4] drivers: add LCD support
On 10/30/06, Franck Bui-Huu <vagabon.xyz@...il.com> wrote:
> Andrew,
>
> Andrew Morton wrote:
> > On Thu, 26 Oct 2006 17:48:58 +0000
> > Miguel Ojeda Sandonis <maxextreme@...il.com> wrote:
> >
> [snip]
> >
> >> +struct page *cfag12864bfb_vma_nopage(struct vm_area_struct *vma,
> >> + unsigned long address, int *type)
> >
> > This function can have static scope.
> >
> >> +{
> >> + struct page *page;
> >> + down(&cfag12864bfb_sem);
> >> +
> >> + page = virt_to_page(cfag12864b_buffer);
> >> + get_page(page);
> >> +
> >> + if(type)
> >> + *type = VM_FAULT_MINOR;
> >> +
> >> + up(&cfag12864bfb_sem);
> >> + return page;
> >> +}
> >
>
> Any idea why LDD3 states:
>
> An interesting limitation of remap_pfn_range is that it gives
> access only to reserved pages and physical addresses above the
> top of physical memory.
>
> Is that true we can't do:
>
> buf = (char *)__get_free_page(...);
> pfn = PFN_DOWN(virt_to_phys(buf));
> remap_pfn_range(vma, vma->vm_start, pfn, PAGE_SIZE, vma->vm_page_prot);
>
> Thanks
> Franck
>
Again: Please read LDD3. It explains it well. Read all the "Remapping
RAM" chapter and you will understand what I've done, or just try to
remap RAM yourself with remap_pfn_range. (I really tried it using
different ways and I couldn't map it with remap_pfn_range, it returns
you a place full with zeros, as LDD3 states).
-
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