kernel: add Intel/Lantiq VRX518 EP driver
[openwrt/staging/ldir.git] / package / kernel / lantiq / vrx518_ep / patches / 100-compat.patch
1 --- a/ep.c
2 +++ b/ep.c
3 @@ -373,23 +373,23 @@ int dc_ep_dev_info_req(int dev_idx, enum
4
5 switch (module) {
6 case DC_EP_INT_PPE:
7 - dev->irq = priv->irq_base;
8 + dev->irq = pci_irq_vector(priv->pdev, 0);
9 if (priv->msi_mode == DC_EP_8_MSI_MODE) {
10 - dev->aca_tx_irq = priv->irq_base + 7;
11 - dev->aca_rx_irq = priv->irq_base + 6;
12 + dev->aca_tx_irq = pci_irq_vector(priv->pdev, 7);
13 + dev->aca_rx_irq = pci_irq_vector(priv->pdev, 6);
14 } else if (priv->msi_mode == DC_EP_4_MSI_MODE) {
15 - dev->aca_tx_irq = priv->irq_base + 2;
16 - dev->aca_rx_irq = priv->irq_base + 3;
17 + dev->aca_tx_irq = pci_irq_vector(priv->pdev, 2);
18 + dev->aca_rx_irq = pci_irq_vector(priv->pdev, 3);
19 } else {
20 dev_err(dev->dev, "%s ACA should never occur\n",
21 __func__);
22 }
23 break;
24 case DC_EP_INT_MEI:
25 - dev->irq = priv->irq_base + 1;
26 + dev->irq = pci_irq_vector(priv->pdev, 1);
27 break;
28 default:
29 - dev->irq = priv->irq_base;
30 + dev->irq = pci_irq_vector(priv->pdev, 0);
31 break;
32 }
33
34 @@ -466,8 +466,8 @@ static int dc_ep_msi_enable(struct pci_d
35 return -EIO;
36 }
37
38 - err = pci_enable_msi_exact(pdev, nvec);
39 - if (err) {
40 + err = pci_alloc_irq_vectors(pdev, nvec, nvec, PCI_IRQ_MSI | PCI_IRQ_LEGACY);
41 + if (err < 0) {
42 dev_err(&pdev->dev,
43 "%s: Failed to enable MSI interrupts error code: %d\n",
44 __func__, err);
45 @@ -654,7 +654,7 @@ static int dc_ep_probe(struct pci_dev *p
46 goto err_iomap;
47
48 spin_lock(&dc_ep_lock);
49 - priv->irq_base = pdev->irq;
50 + priv->irq_base = pci_irq_vector(pdev, 0);
51 spin_unlock(&dc_ep_lock);
52
53 #ifndef CONFIG_OF
54 @@ -715,7 +715,7 @@ static void dc_ep_remove(struct pci_dev
55 dc_ep_icu_disable(priv);
56 pci_iounmap(pdev, priv->mem);
57 pci_release_region(pdev, DC_EP_BAR_NUM);
58 - pci_disable_msi(pdev);
59 + pci_free_irq_vectors(pdev);
60 wmb();
61 pci_clear_master(pdev);
62 pci_disable_device(pdev);
63 --- a/aca.c
64 +++ b/aca.c
65 @@ -756,7 +756,7 @@ static void aca_hif_param_init_done(stru
66 addr = fw_param->init_addr;
67 dev_dbg(priv->dev, "init_addr: %x\n", addr);
68 memcpy_toio(priv->mem + addr, hif_params, sizeof(*hif_params));
69 - kzfree(hif_params);
70 + kfree(hif_params);
71 dev_dbg(priv->dev, "%s\n", __func__);
72 }
73