Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp779739pxb; Wed, 20 Jan 2021 22:22:13 -0800 (PST) X-Google-Smtp-Source: ABdhPJzr0JR+9iPqPmCZiOJHPauPLPeXs2y+6MRlLW3LadHzzH8xgUeH6vwysuPDCdRcEfQS94tY X-Received: by 2002:a17:906:9381:: with SMTP id l1mr8643446ejx.433.1611210133660; Wed, 20 Jan 2021 22:22:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1611210133; cv=none; d=google.com; s=arc-20160816; b=KOgni3TJwnhUjoB/m77VJJLsiH5EMPc9cbGuUmqLO1MP4hl1k6yKwUkA3VCbJe2pd+ Tl1iEmRpQDu4DxkdBT3DsRivD0Z3m8hMGtNSgd03Se/XR9PuxQPiLDO1ilQyh4pRVDnq Bepvzk5eI6SV4Qe24JpigdHPI5GZcVBztMGRwTmgLLo3daNqp7UR3U6qwGJV9cMFrE14 v2tShP+t9ujJ9FwxV/vmiOOn6b4X4GB9y0wwhl9NsQhRgeFz6UB9nOv1wjuX6nyKFZIm lYPCZVd7T3i8g1eXtDSFBFKNfFFigCgcf4qjCaBJo5gQliLrZ7S7Y9l0kERrXnQ8rwGE 5zqQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from:ironport-sdr:ironport-sdr; bh=0Qvm2Oo+fpgYS3W7Rnup087GU4cDCDXqIOyNpL7e33o=; b=ng+szUNvAmuBNmEsWzPr8iHk5pUBH1/6tqxqLFopTyNy1erbUdL8xL+8b73LLRRUa5 GKI5N8zR7C1fpGDIUK9h6SB6TCnCGGYfvwY7t47ejIA8s6WizJ+qMwvp7D/3KOhXuWEc b0eREZMm1ketVs+w4uhS9GKm+oETepGLg48SrXjujKsf3tuL3apvShxeJVb7wZWZwWy5 b5TsUHHVt9U6u8s7fDXkVEAyA8ksltapJE5VvOduF27cKi5T40E3nfZ5e11D5FKylz22 QwJlFmfGD61n5WWA0lkRX1/Cl9YYsHaJmMNafz1Bgx3qd/ot0Tvbo6IiLdPcf6MzoC4L WM7A== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p59si1820641edb.125.2021.01.20.22.21.50; Wed, 20 Jan 2021 22:22:13 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726810AbhAUGSf (ORCPT + 99 others); Thu, 21 Jan 2021 01:18:35 -0500 Received: from mga11.intel.com ([192.55.52.93]:10404 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726703AbhAUGP5 (ORCPT ); Thu, 21 Jan 2021 01:15:57 -0500 IronPort-SDR: NPuQ3UJllaFzUzDcv20sAJ0C4nIzSlMjob77RX2VCb6gRpFax0NQ5FgqYxDE9Z+fuyZKQHLt9E OVWfRF9/KXdA== X-IronPort-AV: E=McAfee;i="6000,8403,9870"; a="175716801" X-IronPort-AV: E=Sophos;i="5.79,363,1602572400"; d="scan'208";a="175716801" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jan 2021 22:14:41 -0800 IronPort-SDR: vfpoBzzVGKgNa8rtuFcVWKjZRHvpcDCTQvso6Zq0ubGvpN4bBoIDcix6O5sXJpv7WunXWt1H1J Ja6VLqvZJWhA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,363,1602572400"; d="scan'208";a="427201421" Received: from jsia-hp-z620-workstation.png.intel.com ([10.221.118.135]) by orsmga001.jf.intel.com with ESMTP; 20 Jan 2021 22:14:39 -0800 From: Sia Jee Heng To: vkoul@kernel.org, Eugeniy.Paltsev@synopsys.com, robh+dt@kernel.org Cc: andriy.shevchenko@linux.intel.com, jee.heng.sia@intel.com, dmaengine@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: [PATCH v10 11/16] dmaengine: dw-axi-dmac: Add Intel KeemBay DMA register fields Date: Thu, 21 Jan 2021 13:56:36 +0800 Message-Id: <20210121055641.6307-12-jee.heng.sia@intel.com> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20210121055641.6307-1-jee.heng.sia@intel.com> References: <20210121055641.6307-1-jee.heng.sia@intel.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add support for Intel KeemBay DMA registers. These registers are required to run data transfer between device to memory and memory to device on Intel KeemBay SoC. Signed-off-by: Sia Jee Heng Reviewed-by: Andy Shevchenko Reviewed-by: Eugeniy Paltsev Tested-by: Eugeniy Paltsev --- drivers/dma/dw-axi-dmac/dw-axi-dmac.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/dma/dw-axi-dmac/dw-axi-dmac.h b/drivers/dma/dw-axi-dmac/dw-axi-dmac.h index 46baf93de617..3a357f7fda02 100644 --- a/drivers/dma/dw-axi-dmac/dw-axi-dmac.h +++ b/drivers/dma/dw-axi-dmac/dw-axi-dmac.h @@ -63,6 +63,7 @@ struct axi_dma_chip { struct device *dev; int irq; void __iomem *regs; + void __iomem *apb_regs; struct clk *core_clk; struct clk *cfgr_clk; struct dw_axi_dma *dw; @@ -169,6 +170,19 @@ static inline struct axi_dma_chan *dchan_to_axi_dma_chan(struct dma_chan *dchan) #define CH_INTSIGNAL_ENA 0x090 /* R/W Chan Interrupt Signal Enable */ #define CH_INTCLEAR 0x098 /* W Chan Interrupt Clear */ +/* These Apb registers are used by Intel KeemBay SoC */ +#define DMAC_APB_CFG 0x000 /* DMAC Apb Configuration Register */ +#define DMAC_APB_STAT 0x004 /* DMAC Apb Status Register */ +#define DMAC_APB_DEBUG_STAT_0 0x008 /* DMAC Apb Debug Status Register 0 */ +#define DMAC_APB_DEBUG_STAT_1 0x00C /* DMAC Apb Debug Status Register 1 */ +#define DMAC_APB_HW_HS_SEL_0 0x010 /* DMAC Apb HW HS register 0 */ +#define DMAC_APB_HW_HS_SEL_1 0x014 /* DMAC Apb HW HS register 1 */ +#define DMAC_APB_LPI 0x018 /* DMAC Apb Low Power Interface Reg */ +#define DMAC_APB_BYTE_WR_CH_EN 0x01C /* DMAC Apb Byte Write Enable */ +#define DMAC_APB_HALFWORD_WR_CH_EN 0x020 /* DMAC Halfword write enables */ + +#define UNUSED_CHANNEL 0x3F /* Set unused DMA channel to 0x3F */ +#define MAX_BLOCK_SIZE 0x1000 /* 1024 blocks * 4 bytes data width */ /* DMAC_CFG */ #define DMAC_EN_POS 0 -- 2.18.0