Received: by 2002:a05:7412:3784:b0:e2:908c:2ebd with SMTP id jk4csp1793165rdb; Tue, 3 Oct 2023 00:36:46 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHsdaVS3EPXlvaknVA7tSOabzp/pTYrF+UqepsOEsfSYyKV8FqbgEJYchaVwRLxf4ICfLFt X-Received: by 2002:a17:902:ceca:b0:1c7:69a1:751e with SMTP id d10-20020a170902ceca00b001c769a1751emr4701758plg.43.1696318606078; Tue, 03 Oct 2023 00:36:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696318606; cv=none; d=google.com; s=arc-20160816; b=pY9dQrtQvb2wXf+KIPti9MwRV9mrp5cJzvxumJG3VxiZEehXIzHijNNw/FRRYcx4xX e++RZyUlhT4oO6Np8h2rWqmXNibpM36DFmU2xb1fHj3EAylPsbMELdx2Kj+dTu0nIsSm X0Gh5nukHWpTDSfUoZuYzDrG2XA/uEMBIOoVPrF7ANFyqyqqGIyc1YvCMSzCiWkNcgzG lhkU1vFNCFeiD7DKi32D4DCQmt5Dl9z+IYqnVflaUcLzqegVhdzVb/AkLTHG+XvxQRet wbj65M9MMR/I2vI5eYXrip/6e+rnPaIozo60GC1BynVOIhnK/Qk68Mum8q3IdBlG/7EZ +3aQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:mime-version :references:in-reply-to:from:dkim-signature; bh=lZyLBflGA1l7hiEVfFkxQiwJT+7Gv/7fvNwXxJdKogA=; fh=//oGtJwtcq2S2I6Zu1zUhwxN+WwWohEz8GjTHtRywOo=; b=lziYMzDZ8+hSISVZObmiitIFns5pHxUn3bZb+xTuuaR0+GWtIb/Wa58xfsB1Za/qMI DZqIEIzHhDG695ACwpIFzp0z4JhliYLCbV8vXWwyGn1fVD4poNvztkjpMwj3lzoJcDaL sj4ICVIo4mPc5g/11IZnI4ek3VdydQKwYlnUFSO4SKmpo/wyx29ID9dbWn5UOBt3dcA0 bQYxa5GWFdR8V7u/UdDimBwx3f/KqGlJt32a2UgmEktDHw/EtPlvoIGkqqiVDIuwaz0b 5K1LqeYM0FMfGqNWeU8o0iA20hDMGq7/6dh/dFRNJ8CJcXSBtFo9XAplEDs1Dby9rse2 hM7Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@canonical.com header.s=20210705 header.b=qNY7pjyb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [23.128.96.33]) by mx.google.com with ESMTPS id n14-20020a170902d2ce00b001c725e4ae5csi889171plc.589.2023.10.03.00.36.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 03 Oct 2023 00:36:46 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) client-ip=23.128.96.33; Authentication-Results: mx.google.com; dkim=pass header.i=@canonical.com header.s=20210705 header.b=qNY7pjyb; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.33 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id CBF7C802F720; Tue, 3 Oct 2023 00:36:43 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231563AbjJCHgh (ORCPT + 99 others); Tue, 3 Oct 2023 03:36:37 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52176 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231442AbjJCHgf (ORCPT ); Tue, 3 Oct 2023 03:36:35 -0400 Received: from smtp-relay-internal-1.canonical.com (smtp-relay-internal-1.canonical.com [185.125.188.123]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B5A2CAF for ; Tue, 3 Oct 2023 00:36:32 -0700 (PDT) Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-1.canonical.com (Postfix) with ESMTPS id 580483F133 for ; Tue, 3 Oct 2023 07:36:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1696318589; bh=lZyLBflGA1l7hiEVfFkxQiwJT+7Gv/7fvNwXxJdKogA=; h=From:In-Reply-To:References:Mime-Version:Date:Message-ID:Subject: To:Cc:Content-Type; b=qNY7pjybc3zm12mC52FOkh52cWM8hkbLg4dMDB6KwDmyKCwzcnvyCS27gww+dv79x r8pPGyUks6pR0DDgEq5yMIhmTJK+bsGEOXSnSNDIXJtrnrkDUJuAmC5UV53VM4FsCP 3GS15c04z7SiDYhwlGhRr4qxI/r0tJUUihYbos7AqBOBYkc8MOlOaalgeZKjUkhFv3 H7J9ojMxoqOJCUjrfFRLCsYZJqoyulJOPJBPmtmMBsqRUXQ9r+Hklr33bqGXWckPin ZZe0khc1dkMiSbcA7OaOt9aMWlwqRCRlfIHiJ2ec8g74tTwo1fGRd3/+z16I2VnGJq K93nk6IO7CF0Q== Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-774309ff5e2so93181685a.1 for ; Tue, 03 Oct 2023 00:36:29 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696318588; x=1696923388; h=cc:to:subject:message-id:date:mime-version:references:in-reply-to :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=lZyLBflGA1l7hiEVfFkxQiwJT+7Gv/7fvNwXxJdKogA=; b=ATVpy49sUHRjNxhFHkhQs1qsiSuzFLepJDhCAzlMQ/GOyPT4aGg/zx/3ssrQyG9Wzu pBLVTYXZVR4yb6rOPJQUmY2B4jI67mUFyztMyDMRBZFmobla55+Uo/2CxEjJljBe8cif vOcYz6lDMQAUgaFK0Ckjbuq7tjsUHjq5igx5lgYcU18wdXRqEpGjBO9p8Cm2MKPTbNdo TEe67pHNKgDDhDgxjz4cmjjk3RS84kdUDRBjlKBI1sgrMMDU7NtCczyWk4oMqU9cVC3w I50ABYVemP/zwGEIbFWXOwQoqojwCBBhI92lIUAganvdENWOBrDXYIO7OYqhM5YBNCyr x4JA== X-Gm-Message-State: AOJu0Yy23Pv19tLqGlLWvviWwlhcF5nJGyMFmS5lERPAoUSPbs7Btyjz nHJrFo66teK/alSjOVd0UfCZdnY6r9UlHR9p+zQl+GXGjm8E3rdhEcp6GRuhFGuHXOQPJ5srPq6 hU8/TXTMoSkHavTAI+62R7Hpin/++/lfQ/XtCcCnhUQ2bQVvg+EfAa3wWew== X-Received: by 2002:ac8:5990:0:b0:417:eb3c:494e with SMTP id e16-20020ac85990000000b00417eb3c494emr16180655qte.59.1696318587824; Tue, 03 Oct 2023 00:36:27 -0700 (PDT) X-Received: by 2002:ac8:5990:0:b0:417:eb3c:494e with SMTP id e16-20020ac85990000000b00417eb3c494emr16180640qte.59.1696318587540; Tue, 03 Oct 2023 00:36:27 -0700 (PDT) Received: from 348282803490 named unknown by gmailapi.google.com with HTTPREST; Tue, 3 Oct 2023 00:36:27 -0700 From: Emil Renner Berthing In-Reply-To: <20231003042215.142678-2-shravan.chippa@microchip.com> References: <20231003042215.142678-1-shravan.chippa@microchip.com> <20231003042215.142678-2-shravan.chippa@microchip.com> Mime-Version: 1.0 Date: Tue, 3 Oct 2023 00:36:27 -0700 Message-ID: Subject: Re: [PATCH v2 1/4] dmaengine: sf-pdma: Support of_dma_controller_register() To: shravan chippa , green.wan@sifive.com, vkoul@kernel.org, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, palmer@dabbelt.com, paul.walmsley@sifive.com, conor+dt@kernel.org Cc: dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, nagasuresh.relli@microchip.com, praveen.kumar@microchip.com Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Tue, 03 Oct 2023 00:36:43 -0700 (PDT) shravan chippa wrote: > From: Shravan Chippa > > Update sf-pdma driver to adopt generic DMA device tree bindings. > It calls of_dma_controller_register() with sf-pdma specific > of_dma_xlate to get the generic DMA device tree helper support > and the DMA clients can look up the sf-pdma controller using > standard APIs. > > Signed-off-by: Shravan Chippa > --- > drivers/dma/sf-pdma/sf-pdma.c | 44 +++++++++++++++++++++++++++++++++++ > 1 file changed, 44 insertions(+) > > diff --git a/drivers/dma/sf-pdma/sf-pdma.c b/drivers/dma/sf-pdma/sf-pdma.c > index d1c6956af452..06a0912a12a1 100644 > --- a/drivers/dma/sf-pdma/sf-pdma.c > +++ b/drivers/dma/sf-pdma/sf-pdma.c > @@ -20,6 +20,7 @@ > #include > #include > #include > +#include > #include > > #include "sf-pdma.h" > @@ -490,6 +491,33 @@ static void sf_pdma_setup_chans(struct sf_pdma *pdma) > } > } > > +static struct dma_chan *sf_pdma_of_xlate(struct of_phandle_args *dma_spec, > + struct of_dma *ofdma) > +{ > + struct sf_pdma *pdma = ofdma->of_dma_data; > + struct device *dev = pdma->dma_dev.dev; > + struct sf_pdma_chan *chan; If you're respinning this series anyway, you have two spaces here. > + struct dma_chan *c; > + u32 channel_id; > + > + if (dma_spec->args_count != 1) { > + dev_err(dev, "Bad number of cells\n"); > + return NULL; > + } > + > + channel_id = dma_spec->args[0]; > + > + chan = &pdma->chans[channel_id]; > + > + c = dma_get_slave_channel(&chan->vchan.chan); > + if (!c) { > + dev_err(dev, "No more channels available\n"); > + return NULL; > + } > + > + return c; > +} > + > static int sf_pdma_probe(struct platform_device *pdev) > { > struct sf_pdma *pdma; > @@ -563,7 +591,20 @@ static int sf_pdma_probe(struct platform_device *pdev) > return ret; > } > > + ret = of_dma_controller_register(pdev->dev.of_node, > + sf_pdma_of_xlate, pdma); > + if (ret < 0) { > + dev_err(&pdev->dev, > + "Can't register SiFive Platform OF_DMA. (%d)\n", ret); > + goto err_unregister; > + } > + > return 0; > + > +err_unregister: > + dma_async_device_unregister(&pdma->dma_dev); > + > + return ret; > } > > static int sf_pdma_remove(struct platform_device *pdev) > @@ -583,6 +624,9 @@ static int sf_pdma_remove(struct platform_device *pdev) > tasklet_kill(&ch->err_tasklet); > } > > + if (pdev->dev.of_node) > + of_dma_controller_free(pdev->dev.of_node); > + > dma_async_device_unregister(&pdma->dma_dev); > > return 0; > -- > 2.34.1 > > > _______________________________________________ > linux-riscv mailing list > linux-riscv@lists.infradead.org > http://lists.infradead.org/mailman/listinfo/linux-riscv