瀏覽代碼

PCI: portdrv: remove redundant pcie type calculation

PCIe port type is already stored in 'pcie_type' field of struct
pci_dev. So we don't need to get it from pci configuration space.

Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Kenji Kaneshige 15 年之前
父節點
當前提交
2dd60e96b4
共有 1 個文件被更改,包括 2 次插入6 次删除
  1. 2 6
      drivers/pci/pcie/portdrv_core.c

+ 2 - 6
drivers/pci/pcie/portdrv_core.c

@@ -291,19 +291,15 @@ static int pcie_device_init(struct pci_dev *pdev, int service, int irq)
 int pcie_port_device_register(struct pci_dev *dev)
 {
 	struct pcie_port_data *port_data;
-	int status, capabilities, irq_mode, i, nr_serv, pos;
+	int status, capabilities, irq_mode, i, nr_serv;
 	int vectors[PCIE_PORT_DEVICE_MAXSERVICES];
-	u16 reg16;
 
 	port_data = kzalloc(sizeof(*port_data), GFP_KERNEL);
 	if (!port_data)
 		return -ENOMEM;
 	pci_set_drvdata(dev, port_data);
 
-	/* Get port type */
-	pos = pci_pcie_cap(dev);
-	pci_read_config_word(dev, pos + PCIE_CAPABILITIES_REG, &reg16);
-	port_data->port_type = (reg16 >> 4) & PORT_TYPE_MASK;
+	port_data->port_type = dev->pcie_type;
 
 	capabilities = get_port_device_capability(dev);
 	/* Root ports are capable of generating PME too */