Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp2126519rwl; Thu, 6 Apr 2023 06:17:18 -0700 (PDT) X-Google-Smtp-Source: AKy350ZK+9sDDD3V87KBvGGooBNMWSmQN7wSLjmh/8Uygzp+3uhHcJ5Fp+7c7rGcyPwGOYjvBrON X-Received: by 2002:a05:6402:1a54:b0:4fb:b0ce:3f63 with SMTP id bf20-20020a0564021a5400b004fbb0ce3f63mr5242406edb.28.1680787038623; Thu, 06 Apr 2023 06:17:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680787038; cv=none; d=google.com; s=arc-20160816; b=gB0aPDIsf/cVDX5uKCSoLi2w3PMaVgn4PUfUpOfU9bjTiIyXsYA8TEdfboWXb1F1W1 xvaGHZ3893dN614dqqsiukGBwNOoo8bsunSbxUlcx4vn/RrsCIjgbxBGNnNlCDs2eieT +pMpnWYjDgi3NBnRMrKVq3LYoQjEhg9gwpFlmVsOes2OvJg57n84GvQ401qjKmetFaxx R1sQ6qX2PY698Fl5jwLlRA7CiQxtCU4Nr8tP8df0C01rmzPdqpBD7jMGe8vlGpBZXJrk 39NzAR2YJC4hwt8CAsEcJDEXCpoDX3u1cHtmwI+v+VIHIuyOW1r4hZXSaFEZkYmN59K0 2Kkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=z8jl2u7ZgIomwOzSs9gTkCTnXd22WXIrlnSqWMsc6pk=; b=aP53EJr5m3zBy0cPWPvDWi0JLnJ/zLt9mgblYXhfsFxQV6QSCSczq5dURRpT5jjQnu fVcyRBEAwJQTJRKOECVm6ztggvEKwpJcz5RFJz2sm/VkFzL/b45wkrtTklPlYYqLBM26 FqUXoOQ5FjT314q0wpfMES0vT+at+3fNFBeUgIDGLFoq4Rbgv7UxtJbE033ZQ4sPVJCq +h5rH4kjhmEDnovORp+9oZu2oF37sAbVc01tM4vJVU52wG19qn//Tdapa4/LR4og6s0T dGOwlr7KRpZeEMtNku6U+t23GWuiN+cNmGiY4JfTRod7H4F2WdcbIqcpEWNn9KMS7ArH O4GA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="kDBn/dmC"; 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=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n7-20020aa7c687000000b004ad6d2941efsi1206287edq.478.2023.04.06.06.16.42; Thu, 06 Apr 2023 06:17:18 -0700 (PDT) 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=@linaro.org header.s=google header.b="kDBn/dmC"; 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=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237148AbjDFNP3 (ORCPT + 99 others); Thu, 6 Apr 2023 09:15:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42118 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S236684AbjDFNP0 (ORCPT ); Thu, 6 Apr 2023 09:15:26 -0400 Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [IPv6:2a00:1450:4864:20::430]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 20E8B5FDB for ; Thu, 6 Apr 2023 06:15:25 -0700 (PDT) Received: by mail-wr1-x430.google.com with SMTP id j1so158412wrb.0 for ; Thu, 06 Apr 2023 06:15:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1680786923; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=z8jl2u7ZgIomwOzSs9gTkCTnXd22WXIrlnSqWMsc6pk=; b=kDBn/dmCu985IQTLBWCcwWI4Q9kXEIZSWrO1xFMeJQadLDT4SmbNj2tA7fAkrtBVEx 190VkK3IKSdOk7aMZx7xCFQ17vXvjKmyYziqzMMhWweLUjvgVB9szl7TjqmcN/k1BHGH Wl4moR+0SxMj4ggSdodfBomBhH659fuLkjeRgVLewmGkGz9hzH44HXr40SiMWV1wLqX0 NNZoziQBeyroM3nmA1mh/FNGhcQPe2xKWjbF1m39mZBBwkduYncrQDySUTdu9QEUrjRg zrojhwYu+SMIaYU30i2GwOA6ne+96eUz6nZHRrDdYjOTJ1th/biVY5IPD2t64JDzwsmS GIPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680786923; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=z8jl2u7ZgIomwOzSs9gTkCTnXd22WXIrlnSqWMsc6pk=; b=ozKabMqRAr7XOZ6+hIGNgt3SxLSEpVDBz5tr9gmsKYCt+r041lbC1MIng/07S4jW0w vl7z6MUdZBYqFgOJIn+pwwIPEjw4d+fJFXjo3bW81M8SjQ9xRepMwX8ABBEuCzcj5cek IBD/8ij4zxB/1nibAFFUGp+3MSf1rSBX1liP0DRmUl+y1hHYUbGvAv3px6Xg3bIqKHYq WCo53TKKwYLaWClgOp0Wy6Qv/vCB21xUOP88BopeaKV5j0oY6VSp5S2QN9diLwqUgVvk vqfjxLEGsJH44m4e110SHmtOzWxgqNkq1uEXnbrd9JXQl3rODmBw8aOlCNvvhAtPIvLH Ne3g== X-Gm-Message-State: AAQBX9f+IsSvFWXCXfJg5ASFkgw14aPp1M/HG9lE8AtzU268Mb78GSov 5KDxvfu4gqd3Z9+QFZcOCm3OHu/itA1mgfO7hBOCgA== X-Received: by 2002:a5d:47a7:0:b0:2ee:b548:c64f with SMTP id 7-20020a5d47a7000000b002eeb548c64fmr803994wrb.3.1680786923515; Thu, 06 Apr 2023 06:15:23 -0700 (PDT) MIME-Version: 1.0 References: <20230404115336.599430-1-danishanwar@ti.com> <86ee5333-6d65-d28b-0dd5-40dfe485d48b@ti.com> In-Reply-To: <86ee5333-6d65-d28b-0dd5-40dfe485d48b@ti.com> From: Mathieu Poirier Date: Thu, 6 Apr 2023 07:15:12 -0600 Message-ID: Subject: Re: [PATCH v7 0/4] Introduce PRU platform consumer API To: Md Danish Anwar Cc: MD Danish Anwar , "Andrew F. Davis" , Suman Anna , Roger Quadros , Vignesh Raghavendra , Tero Kristo , Bjorn Andersson , Santosh Shilimkar , Nishanth Menon , linux-remoteproc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-omap@vger.kernel.org, srk@ti.com, devicetree@vger.kernel.org, netdev@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,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 lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 6 Apr 2023 at 00:54, Md Danish Anwar wrote: > > On 04/04/23 17:23, MD Danish Anwar wrote: > > Hi All, > > The Programmable Real-Time Unit and Industrial Communication Subsystem = (PRU-ICSS > > or simply PRUSS) on various TI SoCs consists of dual 32-bit RISC cores > > (Programmable Real-Time Units, or PRUs) for program execution. > > > > There are 3 foundation components for TI PRUSS subsystem: the PRUSS pla= tform > > driver, the PRUSS INTC driver and the PRUSS remoteproc driver. All of t= hem have > > already been merged and can be found under: > > 1) drivers/soc/ti/pruss.c > > Documentation/devicetree/bindings/soc/ti/ti,pruss.yaml > > 2) drivers/irqchip/irq-pruss-intc.c > > Documentation/devicetree/bindings/interrupt-controller/ti,pruss-intc= .yaml > > 3) drivers/remoteproc/pru_rproc.c > > Documentation/devicetree/bindings/remoteproc/ti,pru-consumer.yaml > > > > The programmable nature of the PRUs provide flexibility to implement cu= stom > > peripheral interfaces, fast real-time responses, or specialized data ha= ndling. > > Example of a PRU consumer drivers will be: > > - Software UART over PRUSS > > - PRU-ICSS Ethernet EMAC > > > > In order to make usage of common PRU resources and allow the consumer d= rivers > > to configure the PRU hardware for specific usage the PRU API is introdu= ced. > > > > This is the v7 of the old patch series [9]. > > > > Hi Mathieu, Can you please review this series. I have addressed comments = made > by you in v5. I have also addressed Simon's comment in v6 and removed red= undant > macros from pruss.h header file. > You are pushing me to review your code 19 hours after sending the last revision? Are you serious? > > Changes from v6 [9] to v7: > > *) Addressed Simon's comment on patch 3 of this series and dropped unne= cassary > > macros from the patch. > > > > Changes from v5 [1] to v6: > > *) Added Reviewed by tags of Roger and Tony to the patches. > > *) Added Acked by tag of Mathieu to patch 2 of this series. > > *) Added NULL check for @mux in pruss_cfg_get_gpmux() API. > > *) Added comment to the pruss_get() function documentation mentioning i= t is > > expected the caller will have done a pru_rproc_get() on @rproc. > > *) Fixed compilation warning "warning: =E2=80=98pruss_cfg_update=E2=80= =99 defined but not used" > > in patch 3 by squashing patch 3 [7] and patch 5 [8] of previous revisio= n > > together. Squashed patch 5 instead of patch 4 with patch 3 because patc= h 5 uses > > both read() and update() APIs where as patch 4 only uses update() API. > > Previously pruss_cfg_read()/update() APIs were intoroduced in patch 3 > > and used in patch 4 and 5. Now these APIs are introduced as well as use= d in > > patch 3. > > > > > -- > Thanks and Regards, > Danish.