I've had a few beer long discussion with Joern Engel and David Woodhouse on this one. To cut a long discussion short: the current XIP infrastructure is not sufficient to be used on top of mtd. We'd need some extenstions: - on get_xip_page() we'd need to state if we want the reference read-only or read+write - we need a put_xip_page() to return references - and finally we need a callback for the referece, so that the mtd driver can ask to get its reference back (in order to unmap from userland when erasing a block)
Yes. And one more thing. We can't assume every page in a file is XIP or not. However, I still can't get even the existing get_xip_page() to work for me so we are getting ahead of ourselves;) Looking back on this thread I realize I haven't confirmed if my cramfs_get_xip_page() gets a page struct. I assume that is my problem? The UML find_iomem() probably returns psuedo iomem with page structs. While ioremap() does not return with page struct backed memory. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/