lkml.org 
[lkml]   [2008]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: ohci1394 problem (MMIO broken) (was 2.6.25-rc6-git6: Reported regressions from 2.6.24)
I wrote:
> Thomas Meyer wrote:
>> Stefan Richter schrieb:
>>> - Is the "WARNING: at arch/x86/mm/ioremap.c" still there?
>> No. I couldn't reproduce this warning, yet.
>>
>>> - Can you reproduce it without the atheros driver?
>> Yes.
>>
>> See http://bugzilla.kernel.org/show_bug.cgi?id=10080.
>
> Thanks. Summary from today's bugzilla comments:
> No ioremap warning, but MMIO reads still give bogus values and let
> ohci1394 fail. ohci1394 still got the MMIO region 0x1'0000'0000 -
> 0x1'0000'07ff, FWIW. The length of the region is correct, but its
> contents bogus.

Can an MMIO region reside above 0x1'0000'0000 on x86-32? ... Apparently
yes, if CONFIG_RESOURCES_64BIT=y.

From Thomas' dmesg:
http://bugzilla.kernel.org/attachment.cgi?id=15397

BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000ede00 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 000000007f0c8000 (usable)
BIOS-e820: 000000007f0c8000 - 000000007f2c9000 (ACPI NVS)
BIOS-e820: 000000007f2c9000 - 000000007feb9000 (ACPI data)
BIOS-e820: 000000007feb9000 - 000000007feef000 (ACPI NVS)
BIOS-e820: 000000007feef000 - 000000007ff00000 (ACPI data)
BIOS-e820: 000000007ff00000 - 0000000080000000 (reserved)
BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
BIOS-e820: 00000000fec00000 - 00000000fec01000 (reserved)
BIOS-e820: 00000000fed14000 - 00000000fed1a000 (reserved)
BIOS-e820: 00000000fed1c000 - 00000000fed20000 (reserved)
BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
BIOS-e820: 00000000ffe00000 - 0000000100000000 (reserved)
1136MB HIGHMEM available.
896MB LOWMEM available.
...
ACPI: RSDP 000FE020, 0024 (r2 APPLE )
ACPI: XSDT 7FEFD120, 0074 (r1 APPLE Apple00 55 1000013)
ACPI: FACP 7FEFB000, 00F4 (r3 APPLE Apple00 55 Loki 5F)
ACPI: DSDT 7FEF0000, 48C0 (r1 APPLE MacBookP 10001 INTL 20050309)

From Thomas' .config:
http://bugzilla.kernel.org/attachment.cgi?id=15396
CONFIG_RESOURCES_64BIT=y

I have a Mac mini but run x86-64 on it. However, I've got another
i945GM based PC with x86-32 and three OHCI-1394 controllers in it.
I always had CONFIG_RESOURCES_64BIT switched off. I shall try
CONFIG_RESOURCES_64BIT=y on that PC.

Thomas, did you use CONFIG_RESOURCES_64BIT=y already under Linux 2.6.24?

All, is there anything special that drivers need to take care of for
CONFIG_RESOURCES_64BIT=y?

We use resource_size_t ohci_base to request the MMIO region in
drivers/ieee1394/ohci1394.c::ohci1394_pci_probe(). And we use struct
ti_ohci::void __iomem *registers to store the MMIO base we get from
ioremap, and readl(ohci->registers + (int)offset) and writel((u32)data,
ohci->registers + (int)offset) to peek and poke in them; see
drivers/ieee1394/ohci1394.h.
--
Stefan Richter
-=====-==--- --== =-==-
http://arcgraph.de/sr/


\
 
 \ /
  Last update: 2008-03-22 20:07    [W:0.233 / U:0.640 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site