From patchwork Fri Dec 11 18:48:05 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Grzegorz Jaszczyk X-Patchwork-Id: 341974 Delivered-To: patch@linaro.org Received: by 2002:a02:85a7:0:0:0:0:0 with SMTP id d36csp808889jai; Fri, 11 Dec 2020 10:50:18 -0800 (PST) X-Google-Smtp-Source: ABdhPJwxTj+QF3zKBN2Ch4oHdS/UHOr/fF80LAOolhQlaUond8kSRRa1RE5SVyiuU2w87y9R8Qo3 X-Received: by 2002:a17:906:1393:: with SMTP id f19mr12102935ejc.431.1607712618655; Fri, 11 Dec 2020 10:50:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607712618; cv=none; d=google.com; s=arc-20160816; b=HnDyb52PKM0yH17gIdXcoKtjl1hv0ICvfPe1EZRT2UeikH2icUr+6Cs8Lhb1QL3P42 bzERBwWNoimkqP03ujggSVfwXwQSUzU7eNAtTqPRdr+4XmNM4JT4SQN4yZb5FogR+cIP Qn58uYyLiPw9ftGs3uyi53b+adU45viRK9KQytxGyDKDiBQfGe0JFE5p+qU7C4Vq1aZ+ v3seteUgC6SNV491JCFjCLX2tiWXzCSfhGLlLKGwK6muwmp/hnryUoI9WtWkQ1L5DlFA UgmViQuhH029+vu5oTQbkkB2TuNjsfcmtgRssGIvHso4yCypQmNUoLt5czNciS7ePAQ+ bzRA== 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=wMhTDsg70Yk7T7X6CYibQwNaCnRI/oxGvYkjMkZKbJ8=; b=G5C0u17rbpUKm/k6xnIPgs9axCfiYKtKd+knIvNs+BiRw3CxDz8kKh7EYDf3w/TdBE /6TR7hneoMCDr80SrqEkPz6lmdUsh1WBd+0Ybf7zNPll1WWxibT/0N9PJZunFxKftPsv CD0JQbjxsqGX9hzSr57iA0/eO3YxaW0B78elGkzPXHi7QHHP4ntPtPLl54enQp8BDQHD XOMosqOXYWy9HiHQDbwQCm7RcLA1MzFslas8SweTpzWoZOs8XCqA544HKrFq2F2IGU83 4KT9l6tIwi5xxsO5hV1VxqCo9O7TLb8yIaNSyXc9Eh4UIZSVdt9FHAXuHHAIrZ6FCI3G 9K3w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="DaV9D4/F"; spf=pass (google.com: domain of linux-omap-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-omap-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 c26si4785760eja.409.2020.12.11.10.50.18; Fri, 11 Dec 2020 10:50:18 -0800 (PST) Received-SPF: pass (google.com: domain of linux-omap-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="DaV9D4/F"; spf=pass (google.com: domain of linux-omap-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-omap-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 S2391150AbgLKStp (ORCPT + 3 others); Fri, 11 Dec 2020 13:49:45 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56258 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2436756AbgLKStD (ORCPT ); Fri, 11 Dec 2020 13:49:03 -0500 Received: from mail-lf1-x144.google.com (mail-lf1-x144.google.com [IPv6:2a00:1450:4864:20::144]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0360EC061793 for ; Fri, 11 Dec 2020 10:48:31 -0800 (PST) Received: by mail-lf1-x144.google.com with SMTP id r24so14687285lfm.8 for ; Fri, 11 Dec 2020 10:48:30 -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=wMhTDsg70Yk7T7X6CYibQwNaCnRI/oxGvYkjMkZKbJ8=; b=DaV9D4/FqG17M7EXWFR471nJTqUGOj/F0eo2+aMEbbmv7/mnjFvgixtxEqLl/b23d4 O2IlW6ZhoQONLWTJ8k1wOY4zK65HJtMseKh1kpVibf717YL8HbFlzKSBf0mlTxAp7RKK EzZ5hj46G8ji1+RXN1oxW2x4RBZ/X7Lbram9oczoFknjgoC6StoYT2WWzN6183uHYx4s LLpTW284FQweuL5ejqIV1ySICnkIQijrk69ZOO4afvjn5IU95dVXmTDYThprbkPjXM9u vJgYWx7t547yjdC8cczuR/+UUGudsCut2rvADOZqlO3HLsYLA0SBgFbIy6pVMGIrOPPF YT1w== 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=wMhTDsg70Yk7T7X6CYibQwNaCnRI/oxGvYkjMkZKbJ8=; b=lS07cdMSl3nK7e+rjlZN7x4aTkRxLISxO0DpHPkA+9TfU2dBcCzfcIeoDVBMn0FGCc WyiCxISu9RZYF6Cztf5CDX0tqD2V2XrCcVq/+u7EbhyQ7AMP2hcGnd51/GwcGBWqbs0P IuPvtGK40dhklVG8uD46ya8no3MkdAhGqdFPSrRYGyqrTg/B1WoaVD0YMM6EQTHlvqsq cpKxBcmxsJsQ7eJwkY6OWMvkXsjD6uLPiqHZktw9E/aovj9UVbikQQt/Cegv9RS957hj mknbPGrygj44havhAtHSY7sYbtN70fAS2w+KSQJkkoCvzCeR2CgCJR5PZmOBCXfdn5xJ 1Vww== X-Gm-Message-State: AOAM533wkbHK4+vjF4oSeplC+soa0e+/vuNMaTFyKCRpDSSOxUrf2zBf CdB4l2L/ObbYuiXZhqt9iBFPMA== X-Received: by 2002:ac2:4ecd:: with SMTP id p13mr5541265lfr.430.1607712509514; Fri, 11 Dec 2020 10:48:29 -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 b12sm903316lfb.139.2020.12.11.10.48.28 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 11 Dec 2020 10:48:28 -0800 (PST) From: Grzegorz Jaszczyk To: ssantosh@kernel.org, s-anna@ti.com Cc: grzegorz.jaszczyk@linaro.org, santosh.shilimkar@oracle.com, lee.jones@linaro.org, linux-kernel@vger.kernel.org, linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org, praneeth@ti.com, tony@atomide.com, linux-remoteproc@vger.kernel.org, mathieu.poirier@linaro.org Subject: [PATCH 0/6] Introduce PRU platform consumer API Date: Fri, 11 Dec 2020 19:48:05 +0100 Message-Id: <20201211184811.6490-1-grzegorz.jaszczyk@linaro.org> X-Mailer: git-send-email 2.29.0 MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: linux-omap@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. There are 3 foundation components for TI PRUSS subsystem: the PRUSS platform driver, the PRUSS INTC driver and the PRUSS remoteproc driver. Two first 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 third one [1] was accepted and applied to andersson/remoteproc.git (refs/heads/for-next): [2] but is not merged yet. The programmable nature of the PRUs provide flexibility to implement custom peripheral interfaces, fast real-time responses, or specialized data handling. 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 drivers to configure the PRU hardware for specific usage the PRU API is introduced. This patch set depends on "Introduce PRU remoteproc consumer API" set [3], which is complementary to this one but goes for different, remoteproc sub-system. [1] https://patchwork.kernel.org/project/linux-arm-kernel/cover/20201208141002.17777-1-grzegorz.jaszczyk@linaro.org/ [2] https://git.kernel.org/pub/scm/linux/kernel/git/andersson/remoteproc.git/commit/?h=for-next&id=b44786c9bdc46eac8388843f0a6116369cb18bca [3] https://patchwork.kernel.org/project/linux-arm-kernel/cover/20201211142933.25784-1-grzegorz.jaszczyk@linaro.org/ Best regards, Grzegorz Andrew F. Davis (1): soc: ti: pruss: Add pruss_{request,release}_mem_region() API Suman Anna (3): soc: ti: pruss: Add pruss_cfg_read()/update() API soc: ti: pruss: Add helper functions to set GPI mode, MII_RT_event and XFR soc: ti: pruss: Add helper function to enable OCP master ports Tero Kristo (2): soc: ti: pruss: Add pruss_get()/put() API soc: ti: pruss: Add helper functions to get/set PRUSS_CFG_GPMUX drivers/soc/ti/pruss.c | 257 ++++++++++++++++++++++++++++++++++- include/linux/pruss.h | 221 ++++++++++++++++++++++++++++++ include/linux/pruss_driver.h | 72 +++++++--- 3 files changed, 526 insertions(+), 24 deletions(-) -- 2.29.0