ahci: Factor out PCI specifics from ahci_print_info()
Introduce ahci_pci_print_info() that now handles PCI stuff. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
parent
781d655083
commit
439fcaec10
|
@ -2845,15 +2845,12 @@ static int ahci_configure_dma_masks(struct pci_dev *pdev, int using_dac)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void ahci_print_info(struct ata_host *host)
|
||||
static void ahci_print_info(struct ata_host *host, const char *scc_s)
|
||||
{
|
||||
struct ahci_host_priv *hpriv = host->private_data;
|
||||
struct pci_dev *pdev = to_pci_dev(host->dev);
|
||||
void __iomem *mmio = hpriv->mmio;
|
||||
u32 vers, cap, cap2, impl, speed;
|
||||
const char *speed_s;
|
||||
u16 cc;
|
||||
const char *scc_s;
|
||||
|
||||
vers = readl(mmio + HOST_VERSION);
|
||||
cap = hpriv->cap;
|
||||
|
@ -2870,17 +2867,7 @@ static void ahci_print_info(struct ata_host *host)
|
|||
else
|
||||
speed_s = "?";
|
||||
|
||||
pci_read_config_word(pdev, 0x0a, &cc);
|
||||
if (cc == PCI_CLASS_STORAGE_IDE)
|
||||
scc_s = "IDE";
|
||||
else if (cc == PCI_CLASS_STORAGE_SATA)
|
||||
scc_s = "SATA";
|
||||
else if (cc == PCI_CLASS_STORAGE_RAID)
|
||||
scc_s = "RAID";
|
||||
else
|
||||
scc_s = "unknown";
|
||||
|
||||
dev_printk(KERN_INFO, &pdev->dev,
|
||||
dev_info(host->dev,
|
||||
"AHCI %02x%02x.%02x%02x "
|
||||
"%u slots %u ports %s Gbps 0x%x impl %s mode\n"
|
||||
,
|
||||
|
@ -2896,7 +2883,7 @@ static void ahci_print_info(struct ata_host *host)
|
|||
impl,
|
||||
scc_s);
|
||||
|
||||
dev_printk(KERN_INFO, &pdev->dev,
|
||||
dev_info(host->dev,
|
||||
"flags: "
|
||||
"%s%s%s%s%s%s%s"
|
||||
"%s%s%s%s%s%s%s"
|
||||
|
@ -2926,6 +2913,25 @@ static void ahci_print_info(struct ata_host *host)
|
|||
);
|
||||
}
|
||||
|
||||
static void ahci_pci_print_info(struct ata_host *host)
|
||||
{
|
||||
struct pci_dev *pdev = to_pci_dev(host->dev);
|
||||
u16 cc;
|
||||
const char *scc_s;
|
||||
|
||||
pci_read_config_word(pdev, 0x0a, &cc);
|
||||
if (cc == PCI_CLASS_STORAGE_IDE)
|
||||
scc_s = "IDE";
|
||||
else if (cc == PCI_CLASS_STORAGE_SATA)
|
||||
scc_s = "SATA";
|
||||
else if (cc == PCI_CLASS_STORAGE_RAID)
|
||||
scc_s = "RAID";
|
||||
else
|
||||
scc_s = "unknown";
|
||||
|
||||
ahci_print_info(host, scc_s);
|
||||
}
|
||||
|
||||
/* On ASUS P5W DH Deluxe, the second port of PCI device 00:1f.2 is
|
||||
* hardwired to on-board SIMG 4726. The chipset is ICH8 and doesn't
|
||||
* support PMP and the 4726 either directly exports the device
|
||||
|
@ -3459,7 +3465,7 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
|
|||
return rc;
|
||||
|
||||
ahci_pci_init_controller(host);
|
||||
ahci_print_info(host);
|
||||
ahci_pci_print_info(host);
|
||||
|
||||
pci_set_master(pdev);
|
||||
return ata_host_activate(host, pdev->irq, ahci_interrupt, IRQF_SHARED,
|
||||
|
|
Loading…
Reference in New Issue