From patchwork Thu Nov 19 14:08:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Grzegorz Jaszczyk X-Patchwork-Id: 328413 Delivered-To: patch@linaro.org Received: by 2002:a05:6e02:5ce:0:0:0:0 with SMTP id l14csp448248ils; Thu, 19 Nov 2020 06:09:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJwexreBjF/BDbKKtrIIkig9e1DpScyLVoSwB/P818wI10qVk5B/8Sh7X4asr7mAjqexJdjn X-Received: by 2002:a05:6402:1245:: with SMTP id l5mr30715222edw.68.1605794989742; Thu, 19 Nov 2020 06:09:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1605794989; cv=none; d=google.com; s=arc-20160816; b=NonJsUO0LfPaRkmozb4sb1zdoso+Q3ndKjy146ynTuJPLkjkM71bp+5Em4AADLlIc1 3HE0dpgg9D01hQXxGnS7WV+M7LWPlf7oOeIUt7JlPX9aM3/f0wKJ+qLL1Bl+osMv3mzp cH/p2X+3nTmBaheMtfrvPaGCxseif1Ns9ckfAG8gKF5JDqAtl4hioFY1XQ8h/6Xnnu+E V9mCanckwXXMxrwQiRQGdPCP6lk3DT1CCrOBVZIU3GXmPkX9VEWTMQ8DbptyggvbG+R4 WjEuPPzBBlbQxl77d0s/4xguCjjwN7yPc/0cOZjcH4iGZMfx6fd8qfxFs/67e4AP9olL dbKQ== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=UF6cB4y26/1x+ilSgxNaVWPYjbbYhd7kb0SvD73E4kU=; b=vw0ZAi+lxJMCCHdIfJflw+un1vdZD4zqSEjisMIQxeV1fQwxptx3AQVDSrZFqPMYxR qVdUzgZUryutHF8kwVnHXiAu4bt0aPiBYBH8/X/2XBgocbmvZg6Y9I7w2qM2iPUtDJ8r TS14a3tn+5nfKx+0mENDRxVWFqbL9Ih82UnEymoj3hlPl20xZabT1PySkDuo84B7JF/5 3jIWozzavpCQNJYyew5iKB7/pp9kecnC5G5mI3WKfNqeLTesO4tm5stK2FR8rGWpxr/l UaaeHH7eb3x2ge9dsuWRIbGJWZ+JUoCkKg/pcK99ITs/hzn/uQjxYNds4nluSvqMCWsy tTUw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ui9Fzug9; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id q1si15950495edr.229.2020.11.19.06.09.49; Thu, 19 Nov 2020 06:09:49 -0800 (PST) Received-SPF: pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=ui9Fzug9; spf=pass (google.com: domain of devicetree-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=devicetree-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 S1727383AbgKSOJA (ORCPT + 6 others); Thu, 19 Nov 2020 09:09:00 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727356AbgKSOI7 (ORCPT ); Thu, 19 Nov 2020 09:08:59 -0500 Received: from mail-lj1-x244.google.com (mail-lj1-x244.google.com [IPv6:2a00:1450:4864:20::244]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 93D42C0613CF for ; Thu, 19 Nov 2020 06:08:58 -0800 (PST) Received: by mail-lj1-x244.google.com with SMTP id r17so6367243ljg.5 for ; Thu, 19 Nov 2020 06:08:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=UF6cB4y26/1x+ilSgxNaVWPYjbbYhd7kb0SvD73E4kU=; b=ui9Fzug9MSbXWblCAU0MDz8kBmjHpPOA+hoxmzbFgaHhog5Uei7ieNNzC17jJC5xXk OgmaTyHT+6hLr5dzjkIyJ+MVA+gMjtMjOPPVwKlsKNdgckM0bXlqwsmnMKwhrBxl939N bWMtMzLSp4CmWBTlibdc83mY3I5xQH1kg5hLJ5Y05IDhp94ygaK5NUvc5ay2VXX5VcEW 4mhHwhsr4Wi9rNZw7INdbzqllPp3rpMAfeRBHp8vR9XQLe+KC0PpCSWf/ec2kbsYwVek Y7XJWjtDXAayJ9/h7GrTvJqHMWdz/a8nYd5Jb17bxrUaSvQmseoNUzeHdOhp8XewYOQg SLfA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=UF6cB4y26/1x+ilSgxNaVWPYjbbYhd7kb0SvD73E4kU=; b=BC479U3G17gLhGmPovGOkpbxIdERmAwLOkvXFJzDdGnrZSHtX232URtilUhruoT+3D CRAdyotiAmKN/MufouRhOZKc7fKDZv4wT6IOODeD1W9Mfxun6Hup7SVIxPYaF+uBeT9P QWEUuKDJby9Lthya7kqU0e3DrPDh8LFwD9cJCxk9AI2FreKZRAwHBMDuBIHyijErnmPQ sWvru0LMbzyQ6UDbI7oaOfYlywBgsoUPDxTnJ39w8eMF1YJ3XwIQaehXv/MQGCHdb2cy TBkrsUDeFRYKMD5MKxiQb5c25/keZGQmBsSjYIju4ypeQ7mcVIt5RnxMd/ZQcmPC0mBX NNcQ== X-Gm-Message-State: AOAM5334tO8Yp4oWXrRgWhkMR86hvdQ9gMEr1eOZYIQ72fceqa9Jsq6U HT+Mi7U/VZeTdduJcgOSGJOGLg== X-Received: by 2002:a2e:90cb:: with SMTP id o11mr6356318ljg.465.1605794936946; Thu, 19 Nov 2020 06:08:56 -0800 (PST) Received: from gilgamesh.semihalf.com (193-106-246-138.noc.fibertech.net.pl. [193.106.246.138]) by smtp.gmail.com with ESMTPSA id h12sm4024706lfl.74.2020.11.19.06.08.55 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 19 Nov 2020 06:08:56 -0800 (PST) From: Grzegorz Jaszczyk To: ohad@wizery.com, bjorn.andersson@linaro.org, mathieu.poirier@linaro.org, s-anna@ti.com Cc: grzegorz.jaszczyk@linaro.org, linux-remoteproc@vger.kernel.org, robh+dt@kernel.org, lee.jones@linaro.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org, praneeth@ti.com, rogerq@ti.com Subject: [PATCH v2 0/6] Add a PRU remoteproc driver Date: Thu, 19 Nov 2020 15:08:44 +0100 Message-Id: <20201119140850.12268-1-grzegorz.jaszczyk@linaro.org> X-Mailer: git-send-email 2.29.0 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org 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. The K3 AM65x amd J721E SoCs have the next generation of the PRU-ICSS IP, commonly called ICSSG. The ICSSG IP on AM65x SoCs has two PRU cores, two auxiliary custom PRU cores called Real Time Units (RTUs). The K3 AM65x SR2.0 and J721E SoCs have a revised version of the ICSSG IP, and include two additional custom auxiliary PRU cores called Transmit PRUs (Tx_PRUs). This series contains the PRUSS remoteproc driver together with relevant dt-binding. This is the 3rd foundation component for PRUSS subsystem, the previous two were already 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 The following is a v2 version of the series. Please see the individual patches for exact changes in each patch, following are the main changes from v1: - Patch #1: fix two yamllint warnings. - Patch #2: address Suman comments: minor style improvements and fix for optional resource table handling (moved from patch #3). - Patch #3: address Suman comment: minor style, comments and trace improvements (no functional changes). - Patch #4: No changes. - Patch #5: Update documentation of pru_rproc_memcpy() function and is_k3 flag. - Patch #6: No changes. Best regards, Grzegorz Grzegorz Jaszczyk (1): remoteproc/pru: Add support for PRU specific interrupt configuration Suman Anna (5): dt-bindings: remoteproc: Add binding doc for PRU cores in the PRU-ICSS remoteproc/pru: Add a PRU remoteproc driver remoteproc/pru: Add pru-specific debugfs support remoteproc/pru: Add support for various PRU cores on K3 AM65x SoCs remoteproc/pru: Add support for various PRU cores on K3 J721E SoCs .../bindings/remoteproc/ti,pru-rproc.yaml | 214 +++++ drivers/remoteproc/Kconfig | 12 + drivers/remoteproc/Makefile | 1 + drivers/remoteproc/pru_rproc.c | 877 ++++++++++++++++++ drivers/remoteproc/pru_rproc.h | 46 + 5 files changed, 1150 insertions(+) create mode 100644 Documentation/devicetree/bindings/remoteproc/ti,pru-rproc.yaml create mode 100644 drivers/remoteproc/pru_rproc.c create mode 100644 drivers/remoteproc/pru_rproc.h -- 2.29.0