Received: by 2002:a05:6358:f14:b0:e5:3b68:ec04 with SMTP id b20csp2635708rwj; Mon, 19 Dec 2022 07:06:38 -0800 (PST) X-Google-Smtp-Source: AMrXdXvikQwTIsM30OdOyo+wkQaurAefywZ23nwFqdGRP0VdnK/emGPHozXTRlqGD1NFksnzq7qu X-Received: by 2002:a17:906:34d8:b0:7c4:f8fb:6a27 with SMTP id h24-20020a17090634d800b007c4f8fb6a27mr13616224ejb.0.1671462397928; Mon, 19 Dec 2022 07:06:37 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1671462397; cv=none; d=google.com; s=arc-20160816; b=lhaDSpu59qTsr4suA9VrNWrxw2uCcQsOz37kjPknu5Cf6PcnMsfJDXkzLbia/8qoYx Rwrjod3lVn2aGe6LKO70zaziyLYK2M5wCIT6gAznbl6D444KD/TvEgG3SGrkKcc2Z7zw 76LX6EXyqqw5tx19rG8cKk/KoPejvbfpUHpZm8/RiKJ7xc6NU3BzFw4pWBBqy4qpJ0sA D3kUTcCFR/4q6Xa0yd69EgklaGgcpZlqsykEa9SfQH0UhtQU2sDRgDV7t6DbNT8Oj/H6 0CiT9OQseRhlzy6iyn79Rn/wSBEWA4heBkj8E88RdQP4tsalTh10BWG7GG7/K9L1uiMy Jphg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=i5i9TkCG3hGnq3CWiMkD0V+zfJ+jV4ugBGTrN/78M2c=; b=cSnnwy7G1hRFE0w0qveGbNxWLy+FEWP3UFv/CCKRaIhfwD1FTv3oIxtjBGq00JNghq 0bDXfajJh+6U/sDfV73McnZTBGPh+ZyHumgEGMPhDWkgtuXsqO7fpIBm79jCAjjRl1K2 wrcOGJ3nB5MMjUnC7qvTEAycGyrZQjwrGmcrCmWnpkwQPSOg40QGPVWGStPsWXxWRYFC nKD54RUtSX3OJP6uQxXC5buTdPDN3qP3UJtbYWqzowDd0kkZ7UoJ1n97bWN2AIabvsHJ Bged0V4m5IwRIC0HHpZtV26+WTq76gZFcu96/KPW7oTXzedx3BylVWnkZky74cY9AywK mlrA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@baikalelectronics.ru header.s=post header.b=P5498GSs; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=baikalelectronics.ru Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id sa23-20020a1709076d1700b007f38bd15f62si7329191ejc.551.2022.12.19.07.06.20; Mon, 19 Dec 2022 07:06:37 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@baikalelectronics.ru header.s=post header.b=P5498GSs; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=baikalelectronics.ru Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232542AbiLSOtn (ORCPT + 71 others); Mon, 19 Dec 2022 09:49:43 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:47402 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232012AbiLSOr1 (ORCPT ); Mon, 19 Dec 2022 09:47:27 -0500 Received: from post.baikalelectronics.com (post.baikalelectronics.com [213.79.110.86]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 9406126F0; Mon, 19 Dec 2022 06:47:17 -0800 (PST) Received: from post.baikalelectronics.com (localhost.localdomain [127.0.0.1]) by post.baikalelectronics.com (Proxmox) with ESMTP id 3442DE0EB1; Mon, 19 Dec 2022 17:47:17 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= baikalelectronics.ru; h=cc:cc:content-transfer-encoding :content-type:content-type:date:from:from:in-reply-to:message-id :mime-version:references:reply-to:subject:subject:to:to; s=post; bh=i5i9TkCG3hGnq3CWiMkD0V+zfJ+jV4ugBGTrN/78M2c=; b=P5498GSs1mVq xixoZeJR6cEcQLjJZadsgdMzFzUG2ROX6b0ziKg09Z+hRYV4PF5JkyL5tfztX4wN vqf2a5WGf8NrscN24VrYzMJLdjGoyyHmQhG+xP1TsHnWuQQNHeI7DQzk3IoC+AjG dsTVPSSplgzV5SowSxgDOmJkyctSlts= Received: from mail.baikal.int (mail.baikal.int [192.168.51.25]) by post.baikalelectronics.com (Proxmox) with ESMTP id 25D53E0E70; Mon, 19 Dec 2022 17:47:17 +0300 (MSK) Received: from localhost (10.8.30.14) by mail (192.168.51.25) with Microsoft SMTP Server (TLS) id 15.0.1395.4; Mon, 19 Dec 2022 17:47:16 +0300 From: Serge Semin To: Gustavo Pimentel , Vinod Koul , Rob Herring , Bjorn Helgaas , Lorenzo Pieralisi , Cai Huoqing , Robin Murphy , Jingoo Han , Frank Li , Manivannan Sadhasivam CC: Serge Semin , Serge Semin , Alexey Malahov , Pavel Parkhomenko , =?UTF-8?q?Krzysztof=20Wilczy=C5=84ski?= , caihuoqing , Yoshihiro Shimoda , , , Subject: [PATCH v8 21/26] dmaengine: dw-edma: Replace chip ID number with device name Date: Mon, 19 Dec 2022 17:46:52 +0300 Message-ID: <20221219144658.26620-22-Sergey.Semin@baikalelectronics.ru> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20221219144658.26620-1-Sergey.Semin@baikalelectronics.ru> References: <20221219144658.26620-1-Sergey.Semin@baikalelectronics.ru> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Originating-IP: [10.8.30.14] X-ClientProxiedBy: MAIL.baikal.int (192.168.51.25) To mail (192.168.51.25) X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Using some abstract number as the DW eDMA chip identifier isn't really practical. First of all there can be more than one DW eDMA controller on the platform some of them can be detected as the PCIe end-points, some of them can be embedded into the DW PCIe Root Port/End-point controllers. Seeing some abstract number in for instance IRQ handlers list doesn't give a notion regarding their reference to the particular DMA controller. Secondly current DW eDMA chip id implementation doesn't provide the multi-eDMA platforms support for same reason of possibly having eDMA detected on different system buses. At the same time re-implementing something ida-based won't give much benefits especially seeing the DW eDMA chip ID is only used in the IRQ request procedure. So to speak in order to preserve the code simplicity and get to have the multi-eDMA platforms support let's just use the parental device name to create the DW eDMA controller name. Signed-off-by: Serge Semin Reviewed-by: Manivannan Sadhasivam Tested-by: Manivannan Sadhasivam Acked-by: Vinod Koul --- Changelog v2: - Slightly extend the eDMA name array. (@Manivannan) --- drivers/dma/dw-edma/dw-edma-core.c | 3 ++- drivers/dma/dw-edma/dw-edma-core.h | 2 +- drivers/dma/dw-edma/dw-edma-pcie.c | 1 - include/linux/dma/edma.h | 1 - 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/dma/dw-edma/dw-edma-core.c b/drivers/dma/dw-edma/dw-edma-core.c index 040a88cfe070..e3671bfbe186 100644 --- a/drivers/dma/dw-edma/dw-edma-core.c +++ b/drivers/dma/dw-edma/dw-edma-core.c @@ -973,7 +973,8 @@ int dw_edma_probe(struct dw_edma_chip *chip) if (!dw->chan) return -ENOMEM; - snprintf(dw->name, sizeof(dw->name), "dw-edma-core:%d", chip->id); + snprintf(dw->name, sizeof(dw->name), "dw-edma-core:%s", + dev_name(chip->dev)); /* Disable eDMA, only to establish the ideal initial conditions */ dw_edma_v0_core_off(dw); diff --git a/drivers/dma/dw-edma/dw-edma-core.h b/drivers/dma/dw-edma/dw-edma-core.h index e3ad3e372b55..0ab2b6dba880 100644 --- a/drivers/dma/dw-edma/dw-edma-core.h +++ b/drivers/dma/dw-edma/dw-edma-core.h @@ -96,7 +96,7 @@ struct dw_edma_irq { }; struct dw_edma { - char name[20]; + char name[32]; struct dma_device dma; diff --git a/drivers/dma/dw-edma/dw-edma-pcie.c b/drivers/dma/dw-edma/dw-edma-pcie.c index f530bacfd716..3f9dadc73854 100644 --- a/drivers/dma/dw-edma/dw-edma-pcie.c +++ b/drivers/dma/dw-edma/dw-edma-pcie.c @@ -222,7 +222,6 @@ static int dw_edma_pcie_probe(struct pci_dev *pdev, /* Data structure initialization */ chip->dev = dev; - chip->id = pdev->devfn; chip->mf = vsec_data.mf; chip->nr_irqs = nr_irqs; diff --git a/include/linux/dma/edma.h b/include/linux/dma/edma.h index 380a0a3e251f..9d44da4aa59d 100644 --- a/include/linux/dma/edma.h +++ b/include/linux/dma/edma.h @@ -76,7 +76,6 @@ enum dw_edma_chip_flags { */ struct dw_edma_chip { struct device *dev; - int id; int nr_irqs; const struct dw_edma_core_ops *ops; u32 flags; -- 2.38.1