[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Using mini-os ioremap()



Matthew Fioravante, le Wed 05 Jan 2011 14:24:55 -0500, a écrit :
>  I'm trying to map some mmio pages into my mini-os domain to use a 
> hardware device. The device is at address fed40000. I'm calling 
> ioremap() on this address but its failing, telling me that mfn fed40 is 
> in ram space. (Its failing the mfn_is_ram() check.)
> 
> What am I doing wrong here?

Mmm, I don't think anything you're doing is wrong. Notice the comment:

static long system_ram_end_mfn;
int mfn_is_ram(unsigned long mfn)
{
    /* very crude check if a given MFN is memory or not. Probably should
     * make this a little more sophisticated ;) */
    return (mfn <= system_ram_end_mfn) ? 1 : 0;
}

Do you have more than 4GiB memory, i.e. 0xfed40000 is actually between
two RAM areas?  In such case mfn_is_ram has to really get more
sophisticated.

(In the interim you could just comment the mfn_is_ram() test from
do_ioremap to make things work)

Samuel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.