Messages in this thread | | | Date | Mon, 20 Oct 2003 22:02:44 -0700 | From | "B. D. Elliott" <> | Subject | Slram doesn't work |
| |
I have an old (x86) machine that does not cache the upper half of memory. Under 2.4.x, I used "slram=slr0,64M,+64M" to reserve that half, and then used it as a swap device.
This fails on 2.6.0-test8, with an "ioremap failed" message during booting. The boot messages plus capturing the page flags in ioremap() shows the following:
... slram: devname = slr0 slram: devstart = 64M slram: devlength = +64M slram: devname=slr0, devstart=0x4000000, devlength=0x4000000 .. ioremap failed: line 145 (approximately) .. phys_addr: 04000000 t_addr: c4000000 t_end: c7ffffff page0: c10a0000 page: c10a0000 .. page-1 flags: 01000000 .. page flags: 01000080 .. page+1 flags: 01000080 .. page+2 flags: 01000080 .. page+3 flags: 01000080 .. PageReserved(page): 0 slram: ioremap failed ...
The failure occurs where "PageReserved" is checked. "page0" is the address of the first page entry for the region, which is also where it failed. ("PageReserved" is bit 11.) Apparently, "PageReserved" is no longer set when slram initialization occurs.
-- B. D. Elliott bde@nwlink.com - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |