All of lore.kernel.org
 help / color / mirror / Atom feed
From: vinod.koul@intel.com (Vinod Koul)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] dmaengine: vdma: Add 64 bit addressing support to the driver
Date: Sun, 23 Aug 2015 19:09:33 +0530	[thread overview]
Message-ID: <20150823133933.GY13546@localhost> (raw)
In-Reply-To: <2348343.VuhoH7scrX@avalon>

On Fri, Aug 21, 2015 at 02:01:59AM +0300, Laurent Pinchart wrote:
> > > How is 64 bit DMA addressing implemented ? Can you use a 64-bit VDMA on
> > > a 32- bit platform with LPAE ? Can you use a 32-bit VDMA on a 64-bit
> > > platform ? Given that VDMA is an IP core you can instantiate in the
> > > programmable logic I expect some level of flexibility to be possible, but
> > > this patch doesn't seem to support it. Please provide more context to
> > > allow a proper review (and please include it in the commit message of v2).
> > 
> > The VDMA core is a soft ip, which can be programmed to support both 32 bit
> > and 64 bit addressing.When the VDMA core is configured for 32 bit address
> > space , transfer start address is specified by a single register.
> > 
> > When the  VDMA core is configured for an address space greater than 32, each
> > start address is specified by a combination of two registers.The first
> > register specifies the LSB 32 bits of address, while the next register
> > specifies the MSB 32 bits of address.For example,5Ch will specify the LSB
> > bits while 60h will specify the MSB bits of the first start address. So we
> > need to program two registers at a time.
> > 
> > Yes,64 bit vdma can be used on 32 bit platform and 32 bit vdma can also be
> > used on 64 bit platform.As far as i know , there is no use case where 64
> > bit dma can be used on 32 bit platform.Please correct me if i am wrong.
> 
> I'm not sure what the use cases would be, but it makes me feel uncomfortable 
> to decide on whether the VDMA is 32 or 64 bits based on the type of CPU.
> 
> As the VDMA flavour is selected at synthesis time, how about specifying it in 
> DT instead ? You could just add an address-width property.
That would be saner thing to do. People wont check which IP and will mix and
match. So you may have a 64 bit system with your 32 bit IP...

-- 
~Vinod

WARNING: multiple messages have this Message-ID (diff)
From: Vinod Koul <vinod.koul@intel.com>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Anurag Kumar Vulisha <anurag.kumar.vulisha@xilinx.com>,
	"dan.j.williams@intel.com" <dan.j.williams@intel.com>,
	Michal Simek <michals@xilinx.com>,
	Soren Brinkmann <sorenb@xilinx.com>,
	"srikanth.thokala@xilinx.com" <srikanth.thokala@xilinx.com>,
	"maxime.ripard@free-electrons.com"
	<maxime.ripard@free-electrons.com>,
	Appana Durga Kedareswara Rao <appanad@xilinx.com>,
	"dmaengine@vger.kernel.org" <dmaengine@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	Anirudha Sarangi <anirudh@xilinx.com>,
	Srikanth Vemula <svemula@xilinx.com>
Subject: Re: [PATCH] dmaengine: vdma: Add 64 bit addressing support to the driver
Date: Sun, 23 Aug 2015 19:09:33 +0530	[thread overview]
Message-ID: <20150823133933.GY13546@localhost> (raw)
In-Reply-To: <2348343.VuhoH7scrX@avalon>

On Fri, Aug 21, 2015 at 02:01:59AM +0300, Laurent Pinchart wrote:
> > > How is 64 bit DMA addressing implemented ? Can you use a 64-bit VDMA on
> > > a 32- bit platform with LPAE ? Can you use a 32-bit VDMA on a 64-bit
> > > platform ? Given that VDMA is an IP core you can instantiate in the
> > > programmable logic I expect some level of flexibility to be possible, but
> > > this patch doesn't seem to support it. Please provide more context to
> > > allow a proper review (and please include it in the commit message of v2).
> > 
> > The VDMA core is a soft ip, which can be programmed to support both 32 bit
> > and 64 bit addressing.When the VDMA core is configured for 32 bit address
> > space , transfer start address is specified by a single register.
> > 
> > When the  VDMA core is configured for an address space greater than 32, each
> > start address is specified by a combination of two registers.The first
> > register specifies the LSB 32 bits of address, while the next register
> > specifies the MSB 32 bits of address.For example,5Ch will specify the LSB
> > bits while 60h will specify the MSB bits of the first start address. So we
> > need to program two registers at a time.
> > 
> > Yes,64 bit vdma can be used on 32 bit platform and 32 bit vdma can also be
> > used on 64 bit platform.As far as i know , there is no use case where 64
> > bit dma can be used on 32 bit platform.Please correct me if i am wrong.
> 
> I'm not sure what the use cases would be, but it makes me feel uncomfortable 
> to decide on whether the VDMA is 32 or 64 bits based on the type of CPU.
> 
> As the VDMA flavour is selected at synthesis time, how about specifying it in 
> DT instead ? You could just add an address-width property.
That would be saner thing to do. People wont check which IP and will mix and
match. So you may have a 64 bit system with your 32 bit IP...

-- 
~Vinod

  reply	other threads:[~2015-08-23 13:39 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-05 11:47 [PATCH] dmaengine: vdma: Add 64 bit addressing support to the driver Anurag Kumar Vulisha
2015-08-05 11:47 ` Anurag Kumar Vulisha
2015-08-18  6:45 ` Anurag Kumar Vulisha
2015-08-18  6:45   ` Anurag Kumar Vulisha
2015-08-18 22:43 ` Laurent Pinchart
2015-08-18 22:43   ` Laurent Pinchart
2015-08-20 10:47   ` Anurag Kumar Vulisha
2015-08-20 10:47     ` Anurag Kumar Vulisha
2015-08-20 23:01     ` Laurent Pinchart
2015-08-20 23:01       ` Laurent Pinchart
2015-08-23 13:39       ` Vinod Koul [this message]
2015-08-23 13:39         ` Vinod Koul
2015-08-23 13:59         ` Arnd Bergmann
2015-08-23 13:59           ` 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=20150823133933.GY13546@localhost \
    --to=vinod.koul@intel.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.