ahci: bail out on ICH6 before using AHCI BAR
authorPaul Bolle <pebolle@tiscali.nl>
Mon, 16 Dec 2013 10:34:21 +0000 (11:34 +0100)
committerTejun Heo <tj@kernel.org>
Mon, 16 Dec 2013 15:45:38 +0000 (10:45 -0500)
commit6fec88712cea016b1fc929fee53f67e3993194a6
tree59c54a76e48437740a87ef8d256df7582f110c03
parent10becdb402af4fd4808a0491a726b96128c41076
ahci: bail out on ICH6 before using AHCI BAR

The check for "combined mode" (which disables ahci support) on ICH6 is
done after the first use of AHCI BAR. But if ahci is not enabled AHCI
BAR is initialized to 0x00000000. (At least it is on the ICH6-M I tested
this on. If I understand the datasheet correctly it should also be on
ICH6R.) This apparently makes the call of
pcim_iomap_regions_request_all() return -EINVAL. And we end up with
    ahci: probe of 0000:00:1f.2 failed with error -22

(at warning level) in the logs.

So check for "combined mode" before calling
pcim_iomap_regions_request_all().

Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Tejun Heo <tj@kernel.org>
drivers/ata/ahci.c