Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 78ccbf9f authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Mauro Carvalho Chehab
Browse files

[media] media/cobalt: use pci_irq_allocate_vectors



Simply the interrupt setup by using the new PCI layer helpers.

Despite using pci_enable_msi_range, this driver was only requesting a
single MSI vector anyway.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent f60f3560
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -308,9 +308,7 @@ static void cobalt_pci_iounmap(struct cobalt *cobalt, struct pci_dev *pci_dev)
static void cobalt_free_msi(struct cobalt *cobalt, struct pci_dev *pci_dev)
{
	free_irq(pci_dev->irq, (void *)cobalt);

	if (cobalt->msi_enabled)
		pci_disable_msi(pci_dev);
	pci_free_irq_vectors(pci_dev);
}

static int cobalt_setup_pci(struct cobalt *cobalt, struct pci_dev *pci_dev,
@@ -387,14 +385,12 @@ static int cobalt_setup_pci(struct cobalt *cobalt, struct pci_dev *pci_dev,
	   from being generated. */
	cobalt_set_interrupt(cobalt, false);

	if (pci_enable_msi_range(pci_dev, 1, 1) < 1) {
	if (pci_alloc_irq_vectors(pci_dev, 1, 1, PCI_IRQ_MSI) < 1) {
		cobalt_err("Could not enable MSI\n");
		cobalt->msi_enabled = false;
		ret = -EIO;
		goto err_release;
	}
	msi_config_show(cobalt, pci_dev);
	cobalt->msi_enabled = true;

	/* Register IRQ */
	if (request_irq(pci_dev->irq, cobalt_irq_handler, IRQF_SHARED,
+0 −2
Original line number Diff line number Diff line
@@ -287,8 +287,6 @@ struct cobalt {
	u32 irq_none;
	u32 irq_full_fifo;

	bool msi_enabled;

	/* omnitek dma */
	int dma_channels;
	int first_fifo_channel;