7 Jun 2010 00:32
Re: Trying to add post-fbprintf per-architecture callback (i.e. for DMA'ing)
Martijn Stolk <martijn.stolk <at> gmail.com>
2010-06-06 22:32:48 GMT
2010-06-06 22:32:48 GMT
The memPhysMap() gives me the virtual address for the given physical address. For some reason, this address still works after the MMU is disabled. I'm not sure why. I suppose the Machine should have a way to determine wether the MMU is currently enabled or disabled, so that it can use the correct addresses. It works for the QSD8xxx, but that's probably an exception thenRegards, Martijn On 6-6-2010 23:50, Kevin O'Connor wrote: > On Sun, Jun 06, 2010 at 11:13:37PM +0200, Martijn Stolk wrote: > >> Thanks for your response. You were correct, calculating the function >> address that way does make it work. >> > Great! > > >> However, now I probably need to >> keep two addresses, or transform the address once the MMU is >> disabled. This is because fbprintf() is used before and after the >> MMU is disabled. >> > Yeah, that is a pain. I guess transforming the address just > before/after the call to preloader() isn't so bad. > > Is that why there are calls to memPhysMap() in getPostFbCallback()? > Will that mean also having to switch between using phys addresses and > virt addresses there as well? > > >> Regarding moving the callback to the linboot.cpp, I don't see why >> (or how). The callback is specifically meant to be called after an >> fbprintf() >> > Sorry - I missed that. (I thought it was just called once to do > initialization). Please ignore my original comment. > > -Kevin >
Regards,
Martijn
On 6-6-2010 23:50, Kevin O'Connor wrote:
> On Sun, Jun 06, 2010 at 11:13:37PM +0200, Martijn Stolk wrote:
>
>> Thanks for your response. You were correct, calculating the function
>> address that way does make it work.
>>
> Great!
>
>
>> However, now I probably need to
>> keep two addresses, or transform the address once the MMU is
>> disabled. This is because fbprintf() is used before and after the
>> MMU is disabled.
>>
> Yeah, that is a pain. I guess transforming the address just
> before/after the call to preloader() isn't so bad.
>
> Is that why there are calls to memPhysMap() in getPostFbCallback()?
> Will that mean also having to switch between using phys addresses and
> virt addresses there as well?
>
>
>> Regarding moving the callback to the linboot.cpp, I don't see why
>> (or how). The callback is specifically meant to be called after an
>> fbprintf()
>>
> Sorry - I missed that. (I thought it was just called once to do
> initialization). Please ignore my original comment.
>
> -Kevin
>
RSS Feed