To: Stefan Richter <stefanr@...>, Ingo Molnar <mingo@...>, Thomas Gleixner <tglx@...>, Ivan Kokshaysky <ink@...>
Cc: Thomas Meyer <thomas@...>, Rafael J. Wysocki <rjw@...>, LKML <linux-kernel@...>, Adrian Bunk <bunk@...>, Andrew Morton <akpm@...>, Natalie Protasevich <protasnb@...>
Hmm. It would only work if PAE (HIGHMEM64G) is enabled too.
And obviously the hardware has to have working 64-bit BAR's.
AND no, I don't think our x86-32 ioremap() actually works for this case,
because while the resource data may have the full 64 bits, when the
ioremap() happens it gets truncated to 32 bits.
Ingo/Thomas - should ioremap*() perhaps take "resource_size_t" or a "u64"
for the address (and then "__ioremap()" should probably take a PFN, not a
physical address, and that one can remain just a "unsigned long"?)
Has anybody ever had a working 64-bit BAR on x86? Ivan? Maybe I'm missing
something..
Linus
--