forked from luck/tmp_suning_uos_patched
PCI: portdrv: remove redundant pcie_port_device_probe
We don't need pcie_port_device_probe() because we can get pci device/port type using pci_is_pcie() and 'pcie_type' fields in struct pci_dev. Remove pcie_port_device_probe(). Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
This commit is contained in:
parent
59353ea30e
commit
898294c975
|
@ -35,7 +35,6 @@
|
|||
#define get_descriptor_id(type, service) (((type - 4) << 4) | service)
|
||||
|
||||
extern struct bus_type pcie_port_bus_type;
|
||||
extern int pcie_port_device_probe(struct pci_dev *dev);
|
||||
extern int pcie_port_device_register(struct pci_dev *dev);
|
||||
#ifdef CONFIG_PM
|
||||
extern int pcie_port_device_suspend(struct device *dev);
|
||||
|
|
|
@ -296,28 +296,6 @@ static struct pcie_device* alloc_pcie_device(struct pci_dev *parent,
|
|||
return device;
|
||||
}
|
||||
|
||||
/**
|
||||
* pcie_port_device_probe - check if device is a PCI Express port
|
||||
* @dev: Device to check
|
||||
*/
|
||||
int pcie_port_device_probe(struct pci_dev *dev)
|
||||
{
|
||||
int pos, type;
|
||||
u16 reg;
|
||||
|
||||
pos = pci_pcie_cap(dev);
|
||||
if (!pos)
|
||||
return -ENODEV;
|
||||
|
||||
pci_read_config_word(dev, pos + PCIE_CAPABILITIES_REG, ®);
|
||||
type = (reg >> 4) & PORT_TYPE_MASK;
|
||||
if ( type == PCIE_RC_PORT || type == PCIE_SW_UPSTREAM_PORT ||
|
||||
type == PCIE_SW_DOWNSTREAM_PORT )
|
||||
return 0;
|
||||
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
/**
|
||||
* pcie_port_device_register - register PCI Express port
|
||||
* @dev: PCI Express port to register
|
||||
|
|
|
@ -67,14 +67,16 @@ static struct dev_pm_ops pcie_portdrv_pm_ops = {
|
|||
* this port device.
|
||||
*
|
||||
*/
|
||||
static int __devinit pcie_portdrv_probe (struct pci_dev *dev,
|
||||
const struct pci_device_id *id )
|
||||
static int __devinit pcie_portdrv_probe(struct pci_dev *dev,
|
||||
const struct pci_device_id *id)
|
||||
{
|
||||
int status;
|
||||
|
||||
status = pcie_port_device_probe(dev);
|
||||
if (status)
|
||||
return status;
|
||||
if (!pci_is_pcie(dev) ||
|
||||
((dev->pcie_type != PCI_EXP_TYPE_ROOT_PORT) &&
|
||||
(dev->pcie_type != PCI_EXP_TYPE_UPSTREAM) &&
|
||||
(dev->pcie_type != PCI_EXP_TYPE_DOWNSTREAM)))
|
||||
return -ENODEV;
|
||||
|
||||
if (!dev->irq && dev->pin) {
|
||||
dev_warn(&dev->dev, "device [%04x:%04x] has invalid IRQ; "
|
||||
|
|
Loading…
Reference in New Issue
Block a user