Bug 8873 - Legacy mode ATA controllers fixed resources error
Summary: Legacy mode ATA controllers fixed resources error
Status: CLOSED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: PCI (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: Greg Kroah-Hartman
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-08-09 21:30 UTC by Yoichi Yuasa
Modified: 2007-10-21 19:35 UTC (History)
0 users

See Also:
Kernel Version: 2.6.23
Subsystem:
Regression: ---
Bisected commit-id:


Attachments
fix IDE legacy mode resource patch (2.15 KB, patch)
2007-08-09 21:33 UTC, Yoichi Yuasa
Details | Diff

Description Yoichi Yuasa 2007-08-09 21:30:59 UTC
Most recent kernel where this bug did not occur: git commit 368c73d4f689dae0807d0a2aa74c61fd2b9b075f
Distribution:
Hardware Environment: MIPS Cobalt server with pata_via.c and via82cxxx.c
Software Environment:
Problem Description:

The following errors occur when the machine boots up. 

PCI: Unable to reserve I/O region #1:8@f00001f0 for device 0000:00:09.1
pata_via 0000:00:09.1: failed to request/iomap BARs for port 0 (errno=-16)
PCI: Unable to reserve I/O region #3:8@f0000170 for device 0000:00:09.1
pata_via 0000:00:09.1: failed to request/iomap BARs for port 1 (errno=-16)
pata_via 0000:00:09.1: no available native port

This problem occurs by the following steps.

pci_setup_device()
    Legacy mode ATA controllers have fixed addresses.
    IDE resources: 0x1F0-0x1F7, 0x3F6, 0x170-0x177, 0x376

    |
    V

pcibios_fixup_bus()
    MIPS Cobalt PCI bus regions have the -0x10000000 offset from PCI resources.
    pcibios_fixup_bus() fix PCI bus regions.
    0x1F0 - 0x10000000 = 0xF00001F0

    |
    V

ata_pci_init_one()
    PCI: Unable to reserve I/O region #1:8@f00001f0 for device 0000:00:09.1

Steps to reproduce:

boot up MIPS Cobalt server.
Comment 1 Yoichi Yuasa 2007-08-09 21:33:08 UTC
Created attachment 12342 [details]
fix IDE legacy mode resource patch

Note You need to log in before you can comment on or make changes to this bug.