All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Michael Ellerman <michael@ellerman.id.au>
Cc: linuxppc-dev@ozlabs.org, Arnd Bergmann <arnd.bergmann@de.ibm.com>,
	cbe-oss-dev@ozlabs.org
Subject: Re: [PATCH 1/7] Set archdata.dma_data for direct DMA in cell_dma_dev_setup()
Date: Mon, 21 Jan 2008 17:20:01 +1100	[thread overview]
Message-ID: <1200896401.7222.103.camel@pasglop> (raw)
In-Reply-To: <2949748ba6ad7e14f0768ac3889267e42c050d7a.1200894155.git.michael@ellerman.id.au>


On Mon, 2008-01-21 at 16:42 +1100, Michael Ellerman wrote:
> Store the direct_dma_offset in each device's dma_data in the case
> where we're using the direct DMA ops.
> 
> We need to make sure we setup the ppc_md.pci_dma_dev_setup() callback
> if we're using a non-zero offset.
> 
> Signed-off-by: Michael Ellerman <michael@ellerman.id.au>

Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

> ---
>  arch/powerpc/platforms/cell/iommu.c |    8 ++++++--
>  1 files changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/powerpc/platforms/cell/iommu.c b/arch/powerpc/platforms/cell/iommu.c
> index bceb5e1..9682b63 100644
> --- a/arch/powerpc/platforms/cell/iommu.c
> +++ b/arch/powerpc/platforms/cell/iommu.c
> @@ -496,9 +496,10 @@ static void cell_dma_dev_setup(struct device *dev)
>  	struct cbe_iommu *iommu;
>  	struct dev_archdata *archdata = &dev->archdata;
>  
> -	/* If we run without iommu, no need to do anything */
> -	if (get_pci_dma_ops() == &dma_direct_ops)
> +	if (get_pci_dma_ops() == &dma_direct_ops) {
> +		archdata->dma_data = (void *)dma_direct_offset;
>  		return;
> +	}
>  
>  	/* Current implementation uses the first window available in that
>  	 * node's iommu. We -might- do something smarter later though it may
> @@ -690,6 +691,9 @@ static int __init cell_iommu_init_disabled(void)
>  
>  	dma_direct_offset += base;
>  
> +	if (dma_direct_offset != 0)
> +		ppc_md.pci_dma_dev_setup = cell_pci_dma_dev_setup;
> +
>  	printk("iommu: disabled, direct DMA offset is 0x%lx\n",
>  	       dma_direct_offset);
>  

  parent reply	other threads:[~2008-01-21  6:20 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-21  5:42 [PATCH 1/7] Set archdata.dma_data for direct DMA in cell_dma_dev_setup() Michael Ellerman
2008-01-21  5:42 ` [PATCH 2/7] Add celleb_dma_dev_setup() Michael Ellerman
2008-01-21  6:20   ` Benjamin Herrenschmidt
2008-01-21  5:42 ` [PATCH 3/7] Use archdata.dma_data in dma_direct_ops and add the offset Michael Ellerman
2008-01-21  6:21   ` Benjamin Herrenschmidt
2008-01-21  5:42 ` [PATCH 4/7] Have cell use its own dma_direct_offset variable Michael Ellerman
2008-01-21  6:21   ` Benjamin Herrenschmidt
2008-01-21  6:21   ` Benjamin Herrenschmidt
2008-01-21  5:42 ` [PATCH 5/7] Have celleb " Michael Ellerman
2008-01-21  6:21   ` Benjamin Herrenschmidt
2008-01-21  5:42 ` [PATCH 6/7] Remove the global dma_direct_offset Michael Ellerman
2008-01-21  6:21   ` Benjamin Herrenschmidt
2008-01-21  5:42 ` [PATCH 7/7] Remove bogus comment in dma_direct_alloc_coherent() Michael Ellerman
2008-01-21  6:22   ` Benjamin Herrenschmidt
2008-01-21  6:20 ` Benjamin Herrenschmidt [this message]
  -- strict thread matches above, loose matches on Subject: below --
2007-12-05  7:20 [PATCH 1/7] Set archdata.dma_data for direct DMA in cell_dma_dev_setup() Michael Ellerman
2007-12-05 23:38 ` Arnd Bergmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1200896401.7222.103.camel@pasglop \
    --to=benh@kernel.crashing.org \
    --cc=arnd.bergmann@de.ibm.com \
    --cc=cbe-oss-dev@ozlabs.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=michael@ellerman.id.au \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.