• Home
  • Raw
  • Download

Lines Matching refs:sp

35 static int sp_get_msix_irqs(struct sp_device *sp)  in sp_get_msix_irqs()  argument
37 struct sp_pci *sp_pci = sp->dev_specific; in sp_get_msix_irqs()
38 struct device *dev = sp->dev; in sp_get_msix_irqs()
50 sp->use_tasklet = true; in sp_get_msix_irqs()
52 sp->psp_irq = sp_pci->msix_entry[0].vector; in sp_get_msix_irqs()
53 sp->ccp_irq = (sp_pci->msix_count > 1) ? sp_pci->msix_entry[1].vector in sp_get_msix_irqs()
58 static int sp_get_msi_irq(struct sp_device *sp) in sp_get_msi_irq() argument
60 struct device *dev = sp->dev; in sp_get_msi_irq()
68 sp->ccp_irq = pdev->irq; in sp_get_msi_irq()
69 sp->psp_irq = pdev->irq; in sp_get_msi_irq()
74 static int sp_get_irqs(struct sp_device *sp) in sp_get_irqs() argument
76 struct device *dev = sp->dev; in sp_get_irqs()
79 ret = sp_get_msix_irqs(sp); in sp_get_irqs()
85 ret = sp_get_msi_irq(sp); in sp_get_irqs()
95 static void sp_free_irqs(struct sp_device *sp) in sp_free_irqs() argument
97 struct sp_pci *sp_pci = sp->dev_specific; in sp_free_irqs()
98 struct device *dev = sp->dev; in sp_free_irqs()
103 else if (sp->psp_irq) in sp_free_irqs()
106 sp->ccp_irq = 0; in sp_free_irqs()
107 sp->psp_irq = 0; in sp_free_irqs()
110 static bool sp_pci_is_master(struct sp_device *sp) in sp_pci_is_master() argument
115 dev_new = sp->dev; in sp_pci_is_master()
133 static void psp_set_master(struct sp_device *sp) in psp_set_master() argument
136 sp_dev_master = sp; in psp_set_master()
140 if (sp_pci_is_master(sp)) in psp_set_master()
141 sp_dev_master = sp; in psp_set_master()
151 struct sp_device *sp; in sp_pci_probe() local
159 sp = sp_alloc_struct(dev); in sp_pci_probe()
160 if (!sp) in sp_pci_probe()
167 sp->dev_specific = sp_pci; in sp_pci_probe()
168 sp->dev_vdata = (struct sp_dev_vdata *)id->driver_data; in sp_pci_probe()
169 if (!sp->dev_vdata) { in sp_pci_probe()
195 sp->io_map = iomap_table[sp->dev_vdata->bar]; in sp_pci_probe()
196 if (!sp->io_map) { in sp_pci_probe()
202 ret = sp_get_irqs(sp); in sp_pci_probe()
207 sp->set_psp_master_device = psp_set_master; in sp_pci_probe()
208 sp->get_psp_master_device = psp_get_master; in sp_pci_probe()
220 dev_set_drvdata(dev, sp); in sp_pci_probe()
222 ret = sp_init(sp); in sp_pci_probe()
236 struct sp_device *sp = dev_get_drvdata(dev); in sp_pci_remove() local
238 if (!sp) in sp_pci_remove()
241 sp_destroy(sp); in sp_pci_remove()
243 sp_free_irqs(sp); in sp_pci_remove()
250 struct sp_device *sp = dev_get_drvdata(dev); in sp_pci_suspend() local
252 return sp_suspend(sp, state); in sp_pci_suspend()
258 struct sp_device *sp = dev_get_drvdata(dev); in sp_pci_resume() local
260 return sp_resume(sp); in sp_pci_resume()