lkml.org 
[lkml]   [2004]   [Jun]   [2]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateWed, 02 Jun 2004 10:59:15 +0200
FromMarkus Lidel <>
SubjectRe: Problem with ioremap which returns NULL in 2.6 kernel
Hello,

Davide Rossetti wrote:
>>>> could someone help me with a ioremap problem. If there are two 
>>>> controllers plugged in, the ioremap request for the first controller 
>>>> is successfull, but the second returns NULL. Here is the output of 
>>>> the driver:>>>> i2o: Checking for PCI I2O controllers...>>>> i2o: I2O controller on bus 0 at 72.>>>> i2o: PCI I2O controller at 0xD0000000 size=134217728
>>>> I2O: MTRR workaround for Intel i960 processor>>>> i2o/iop0: Installed at IRQ17>>>> i2o: I2O controller on bus 0 at 96.>>>> i2o: PCI I2O controller at 0xD8000000 size=134217728
>>>> i2o: Unable to map controller.>>> If "size=xxxx" indicates the size you are remapping, then that's> I saw the same problem on a PCI card with a 128MB BAR. it is triggered 
> on an Tyan opteron mobo, while on a old Dell P4 mobo it is ok. I 

Ah, so it could maybe a mainboard problem?

> followed a bit the source code for ioremap and found two places in which 
> it can fail,>    area = get_vm_area(size, VM_IOREMAP);
>    if (!area)
>        return NULL;
>    addr = area->addr;
>    if (remap_area_pages(VMALLOC_VMADDR(addr), phys_addr, size, flags)) {
>        vfree(addr);
>        return NULL;
>    }
> I had not time to add debug printk and recompila the kernel to check 
> which one is faulty...
> The strange thing is that the BARs seems to be laid out correctly, so it 
> does not look like a bios bug...

But even if it's not a bug, maybe a BIOS update would help...

I'll check this out too...

>>> probably too large an area to be remapping.  Try remapping only the
>>> memory area needed, and not the entire area.>> Is there a way, to increase the size, which could be remapped, or is 
>> there a way, to find out what is the maximum size which could be 
>> remapped?> we tried with half and it was ok, then we moved up a bit and found the 
> maximum around 80MB I think...

Okay, i'll let try it out with only 64MB.


Thanks for your help!

Best regards,


Markus Lidel
------------------------------------------
Markus Lidel (Senior IT Consultant)
Shadow Connect GmbH
Carl-Reisch-Weg 12
D-86381 Krumbach
Germany

Phone:  +49 82 82/99 51-0
Fax:    +49 82 82/99 51-11

E-Mail: Markus.Lidel@shadowconnect.com
URL:    http://www.shadowconnect.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/

\
 
 \ /
  Last update: 2005-03-22 14:03    [from the cache]
©2003-2008