Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752669AbbHWNh1 (ORCPT ); Sun, 23 Aug 2015 09:37:27 -0400 Received: from mga01.intel.com ([192.55.52.88]:6784 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752260AbbHWNh0 (ORCPT ); Sun, 23 Aug 2015 09:37:26 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,732,1432623600"; d="scan'208";a="789378936" Date: Sun, 23 Aug 2015 19:09:33 +0530 From: Vinod Koul To: Laurent Pinchart Cc: Anurag Kumar Vulisha , "dan.j.williams@intel.com" , Michal Simek , Soren Brinkmann , "srikanth.thokala@xilinx.com" , "maxime.ripard@free-electrons.com" , Appana Durga Kedareswara Rao , "dmaengine@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , Anirudha Sarangi , Srikanth Vemula Subject: Re: [PATCH] dmaengine: vdma: Add 64 bit addressing support to the driver Message-ID: <20150823133933.GY13546@localhost> References: <1438775257-3511-1-git-send-email-anuragku@xilinx.com> <2214014.FVHbR3JRBK@avalon> <3802E9A6666DF54886E2B9CBF743BA9801BF8264@XAP-PVEXMBX01.xlnx.xilinx.com> <2348343.VuhoH7scrX@avalon> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <2348343.VuhoH7scrX@avalon> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2136 Lines: 38 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 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/