diff options
Diffstat (limited to 'drivers/pci/controller/dwc/pcie-kirin.c')
| -rw-r--r-- | drivers/pci/controller/dwc/pcie-kirin.c | 10 | 
1 files changed, 3 insertions, 7 deletions
| diff --git a/drivers/pci/controller/dwc/pcie-kirin.c b/drivers/pci/controller/dwc/pcie-kirin.c index 095afbccf9c1..fa6886d66488 100644 --- a/drivers/pci/controller/dwc/pcie-kirin.c +++ b/drivers/pci/controller/dwc/pcie-kirin.c @@ -530,10 +530,8 @@ static int kirin_pcie_rd_own_conf(struct pci_bus *bus, unsigned int devfn,  {  	struct dw_pcie *pci = to_dw_pcie_from_pp(bus->sysdata); -	if (PCI_SLOT(devfn)) { -		*val = ~0; +	if (PCI_SLOT(devfn))  		return PCIBIOS_DEVICE_NOT_FOUND; -	}  	*val = dw_pcie_read_dbi(pci, where, size);  	return PCIBIOS_SUCCESSFUL; @@ -773,7 +771,6 @@ static const struct of_device_id kirin_pcie_match[] = {  static int kirin_pcie_probe(struct platform_device *pdev)  {  	enum pcie_kirin_phy_type phy_type; -	const struct of_device_id *of_id;  	struct device *dev = &pdev->dev;  	struct kirin_pcie *kirin_pcie;  	struct dw_pcie *pci; @@ -784,13 +781,12 @@ static int kirin_pcie_probe(struct platform_device *pdev)  		return -EINVAL;  	} -	of_id = of_match_device(kirin_pcie_match, dev); -	if (!of_id) { +	phy_type = (long)of_device_get_match_data(dev); +	if (!phy_type) {  		dev_err(dev, "OF data missing\n");  		return -EINVAL;  	} -	phy_type = (long)of_id->data;  	kirin_pcie = devm_kzalloc(dev, sizeof(struct kirin_pcie), GFP_KERNEL);  	if (!kirin_pcie) |