From patchwork Mon Nov 9 08:54:49 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vinod Koul X-Patchwork-Id: 11890661 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id AD70A1391 for ; Mon, 9 Nov 2020 08:55:11 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8E397207BC for ; Mon, 9 Nov 2020 08:55:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1604912111; bh=FAWZqcB8rrnTRfBi5nGT+Xgbjb35tQW4OIlGOvwmpXU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=NCFSh6/uIggZ6mW3JthDD/ObLgVRiBKQUN+hEb9B9lsuSQy8/tqNQPcfplCJwSBvB pRLBVwU6WCYunWamUq0ZxXocWdAXCTTZ60eUQibCjQN5QJEChEztH7AWPrw8yO7Das M3BB+DLokw7sylAMQSyo94XPJdAeWJkpTkLmmR5Y= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729785AbgKIIzH (ORCPT ); Mon, 9 Nov 2020 03:55:07 -0500 Received: from mail.kernel.org ([198.145.29.99]:44606 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726127AbgKIIzH (ORCPT ); Mon, 9 Nov 2020 03:55:07 -0500 Received: from localhost.localdomain (unknown [122.171.147.34]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 775A420702; Mon, 9 Nov 2020 08:55:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1604912106; bh=FAWZqcB8rrnTRfBi5nGT+Xgbjb35tQW4OIlGOvwmpXU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Vu1OXd0fjQyx9LsdDupVEILzPTSAWGthDBDADg6HzHxHsfHFsq33UamYUM1dJ/FNY A8LpT98fWI6YvXgGy0PFN61Tgq4jqm+Fs+PuIyZmubqi5tXp3tz1xjl7PHfGY6ljkr eG2QJ7Z12VGn1DTXGLTfbW/1bQ4xCyhkLN9Fi35M= From: Vinod Koul To: dmaengine@vger.kernel.org Cc: linux-arm-msm@vger.kernel.org, Bjorn Andersson , Vinod Koul , Rob Herring , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Peter Ujfalusi Subject: [PATCH v6 2/3] dmaengine: add peripheral configuration Date: Mon, 9 Nov 2020 14:24:49 +0530 Message-Id: <20201109085450.24843-3-vkoul@kernel.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201109085450.24843-1-vkoul@kernel.org> References: <20201109085450.24843-1-vkoul@kernel.org> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-arm-msm@vger.kernel.org Some complex dmaengine controllers have capability to program the peripheral device, so pass on the peripheral configuration as part of dma_slave_config Signed-off-by: Vinod Koul --- include/linux/dmaengine.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h index dd357a747780..493a047ed0a2 100644 --- a/include/linux/dmaengine.h +++ b/include/linux/dmaengine.h @@ -418,6 +418,9 @@ enum dma_slave_buswidth { * @slave_id: Slave requester id. Only valid for slave channels. The dma * slave peripheral will have unique id as dma requester which need to be * pass as slave config. + * @peripheral_config: peripheral configuration for programming peripheral + * for dmaengine transfer + * @peripheral_size: peripheral configuration buffer size * * This struct is passed in as configuration data to a DMA engine * in order to set up a certain channel for DMA transport at runtime. @@ -443,6 +446,8 @@ struct dma_slave_config { u32 dst_port_window_size; bool device_fc; unsigned int slave_id; + void *peripheral_config; + size_t peripheral_size; }; /**