Received: by 10.192.165.156 with SMTP id m28csp497772imm; Wed, 11 Apr 2018 02:38:55 -0700 (PDT) X-Google-Smtp-Source: AIpwx4+D1Xb4pCyGDGA6e2uR6elg3XRzc65FgPjnJBE4n+sJLgBkPMvZaFTU41oOji8CgnM5Wc8e X-Received: by 2002:a17:902:69ce:: with SMTP id m14-v6mr4332128pln.358.1523439535377; Wed, 11 Apr 2018 02:38:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1523439535; cv=none; d=google.com; s=arc-20160816; b=woLXWHC/mM2IPMNuh2nX/OYoU5/3lu5jlwjizykiFXBlW39iVkyGHkoGC1ax89+P+9 MIi+yJx86SqkoEVNx05kQBqoflT4jx/fh8rIfHkLHAMyU+mdrgTyuTF4NSTQRRX0j07a 4ebO7XWk8snoDlPqU82aQ3CJWTr6ttCKNobmOyGYt4hnnRVyGh0aOV7Dl26yNQ/Q3HHH HNH9zE1XrBSy2/NYeE/CR87hrmLDIMTU1a8bdBs5f+dA8upTMYFvAa52ZO7Uae7ReZVV U6PMwfqMmnk1H0HuHNbWTaOYclotdiuxgn7N+wwMFZAvwJJXbHm4ZodUKZvRgpxwgap5 5dZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:arc-authentication-results; bh=TKJF9B5TrEmBAvVf3ow4CVD3zW+Wp9bONs3Njm/Aitc=; b=wcyAV6EyPLCZkOoTFWDqHPq+hLIhmogjMtDUYzy4fVmd7p60ARjoiFBDye4MEi70HM 4Qg3zI9IJSJxmd8dMfzFJK73KwI3sc6EATRspkusHeCZUhOkhQjSKMhXCrh22pVS/zI1 N/tsP7AHslmq/dMCGeag3Iy3EYA3+jw9tpdRYgjfpIek8YBoN0k8BUa8Xj33AMTRZeIo vQmHGdlQjJCY8ujh71MpRYHr4UQXTGUkGm/C0Hw+yydL6DVI7ngeOU1o7t8eTy3jiAk4 xzQ1SgFigqwmxKsfhiwiV8b9Di+0w8OA9Lr/otRhkedxJ08SKp0i/r0HHW3xyjtww3rn 5Gxw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e92-v6si728711pld.16.2018.04.11.02.38.18; Wed, 11 Apr 2018 02:38:55 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752369AbeDKJcK (ORCPT + 99 others); Wed, 11 Apr 2018 05:32:10 -0400 Received: from mga03.intel.com ([134.134.136.65]:30212 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751854AbeDKJcI (ORCPT ); Wed, 11 Apr 2018 05:32:08 -0400 X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 11 Apr 2018 02:32:07 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.48,435,1517904000"; d="scan'208";a="46011642" Received: from vkoul-udesk7.iind.intel.com (HELO localhost) ([10.223.84.143]) by fmsmga001.fm.intel.com with ESMTP; 11 Apr 2018 02:32:05 -0700 Date: Wed, 11 Apr 2018 15:06:34 +0530 From: Vinod Koul To: Baolin Wang Cc: dan.j.williams@intel.com, eric.long@spreadtrum.com, broonie@kernel.org, dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 4/5] dmaengine: sprd: Add Spreadtrum DMA configuration Message-ID: <20180411093634.GC6014@localhost> References: <0c2b76aba6a49e583f920ae582d6815fa9cc4361.1523346135.git.baolin.wang@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <0c2b76aba6a49e583f920ae582d6815fa9cc4361.1523346135.git.baolin.wang@linaro.org> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Apr 10, 2018 at 03:46:06PM +0800, Baolin Wang wrote: > +/* > + * struct sprd_dma_config - DMA configuration structure > + * @config: dma slave channel config > + * @fragment_len: specify one fragment transfer length > + * @block_len: specify one block transfer length > + * @transcation_len: specify one transcation transfer length > + * @wrap_ptr: wrap pointer address, once the transfer address reaches the > + * 'wrap_ptr', the next transfer address will jump to the 'wrap_to' address. > + * @wrap_to: wrap jump to address > + * @req_mode: specify the DMA request mode > + * @int_mode: specify the DMA interrupt type > + */ > +struct sprd_dma_config { > + struct dma_slave_config config; > + u32 fragment_len; why not use _maxburst? > + u32 block_len; > + u32 transcation_len; what does block and transaction len refer to here > + phys_addr_t wrap_ptr; > + phys_addr_t wrap_to; this sound sg_list to me, why are we not using that here > + enum sprd_dma_req_mode req_mode; Looking at definition of request mode we have frag, block, transaction list etc.. That should depend upon dma request. If you have been asked to transfer a list, you shall configure list mode. if it is a single transaction then it should be transaction mode! > + enum sprd_dma_int_type int_mode; Here again I think driver needs to take a call based on dma_ctrl_flags. Okay I dont think we are proceeding in right direction on this one. This seems to be fairly generic dma controller and in line with other IP blocks and you should take reference from those one. I dont think we need this configuration and can do with generic api and configuration provided. Thanks -- ~Vinod