2004-03-27 00:06:44

by Deepak Saxena

[permalink] [raw]
Subject: [PATCH 2.6-BK] Allow arch-specific pci_dma_set_mask


Jeff,

Following is a patch that allows for architectures to override
pci_set_dma_mask and friends for systems that need to do so such
as the ARM IXP425. Instead of having invidual HAVE_ARCH_FOO
for each of the three mask functions, I think it just makes more
sense to have one for overrdding all three since chances are
if you need to override one, you need to do so for all of them.

Tnx,
~Deepak

===== drivers/pci/pci.c 1.63 vs edited =====
--- 1.63/drivers/pci/pci.c Sun Mar 14 12:17:06 2004
+++ edited/drivers/pci/pci.c Fri Mar 26 16:58:01 2004
@@ -658,6 +658,10 @@
}
}

+#ifndef HAVE_ARCH_PCI_SET_DMA_MASK
+/*
+ * These can be overridden by arch-specific implementations
+ */
int
pci_set_dma_mask(struct pci_dev *dev, u64 mask)
{
@@ -690,6 +694,7 @@

return 0;
}
+#endif

static int __devinit pci_init(void)
{

--
Deepak Saxena - dsaxena at plexity dot net - http://www.plexity.net/

"Unlike me, many of you have accepted the situation of your imprisonment and
will die here like rotten cabbages." - Number 6


2004-03-28 20:45:00

by Jeff Garzik

[permalink] [raw]
Subject: Re: [PATCH 2.6-BK] Allow arch-specific pci_dma_set_mask

Deepak Saxena wrote:
> Jeff,
>
> Following is a patch that allows for architectures to override
> pci_set_dma_mask and friends for systems that need to do so such
> as the ARM IXP425. Instead of having invidual HAVE_ARCH_FOO
> for each of the three mask functions, I think it just makes more
> sense to have one for overrdding all three since chances are
> if you need to override one, you need to do so for all of them.
>
> Tnx,
> ~Deepak
>
> ===== drivers/pci/pci.c 1.63 vs edited =====
> --- 1.63/drivers/pci/pci.c Sun Mar 14 12:17:06 2004
> +++ edited/drivers/pci/pci.c Fri Mar 26 16:58:01 2004
> @@ -658,6 +658,10 @@
> }
> }
>
> +#ifndef HAVE_ARCH_PCI_SET_DMA_MASK
> +/*
> + * These can be overridden by arch-specific implementations
> + */
> int
> pci_set_dma_mask(struct pci_dev *dev, u64 mask)


Looks OK to me, but it's really up to arch people. I just follow the
API I'm given. :)

Jeff