From patchwork Mon Apr 20 22:27:05 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ben Levinsky X-Patchwork-Id: 201721 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id D2C9BC55181 for ; Mon, 20 Apr 2020 22:27:27 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id B1389206DD for ; Mon, 20 Apr 2020 22:27:27 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=xilinx.onmicrosoft.com header.i=@xilinx.onmicrosoft.com header.b="C6t2oN39" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728097AbgDTW10 (ORCPT ); Mon, 20 Apr 2020 18:27:26 -0400 Received: from mail-dm6nam11on2074.outbound.protection.outlook.com ([40.107.223.74]:30771 "EHLO NAM11-DM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728025AbgDTW1Y (ORCPT ); Mon, 20 Apr 2020 18:27:24 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KDp9X6nM8PFBgMfQAWZFaI86GnQE+nJjjvj9mb1tFQ040AS0BCcjnVt2h7U8ylNmjcFlYhGp45BWg7hnikxJQVwSUDCO5HbPbQjcxbG2GBqXl68EchWWxKsnLV8Bcq4ey4AIii/v2VEugvJFFExPLFt8FZVD5WZ4z1Y92org5MW623/yHqec5hwOSH3sTDKCAw9WBTTn9i4NOsdalJoy3POvUT+Z6UZSHiFucxT0D7G7hDSuTiytF1SvPzvzn9mNoPxxTbRUTcre8ly4k2LEgBKGP+cTTvQ4XMNZs+3531TwdHMUD6N6Kx0KOHWT4t6YqRp4pNoTarSxC8QyBRYzlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=roz9wI1ufrWkq6jN5pjC6kpqV8Ab8puozveoIWPA/RY=; b=T2kKIzLBdNhVja7RYruvrnutuRFmNVoBMQPlsaijPAcufGjAUJRX6QnCFqwq2c0wT0dicic25w6rOgnS+VK3tFGo3ePsQTy9alsGApPIJ7K0kI5HpIHDbI+BXGwZ6CDBXuudbIa2C6pdQa9tPOc5w1670FamcCPkQkPa6WEvuEUYVIN4WwnaihHP+9pJ0KhTvYowd0foelg39Qv4tuX0K4aRm4MDxMLkdpdL7zENQ0EV9Ll0qtc1Ium96E/1P0zLCEVt5D0i/wdXDQ2b9R3SiVWLcofnPrQRJHFTsgPz5Fk+n2zfBkD55eC48DNgge1XaRl2QfjrTXA8QaLktX94Cw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 149.199.60.83) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=xilinx.com; dmarc=bestguesspass action=none header.from=xilinx.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector2-xilinx-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=roz9wI1ufrWkq6jN5pjC6kpqV8Ab8puozveoIWPA/RY=; b=C6t2oN39GSkq2qGSd8CteN/ozKTL7jwInCRF13Ec61g5amMkT/WVsU8VDpoHAosAUQejE/kgKGvtgLgK4OcA+kgDFNmx62FZgIiV02b9+AQL1upiKA31OgCNreQyRLy35dkGOx+LEJ/StYDY9qO3mZ6pXk0mUdLiY5VEhaX2HxQ= Received: from BL0PR01CA0012.prod.exchangelabs.com (2603:10b6:208:71::25) by BL0PR02MB6482.namprd02.prod.outlook.com (2603:10b6:208:1ce::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.27; Mon, 20 Apr 2020 22:27:20 +0000 Received: from BL2NAM02FT018.eop-nam02.prod.protection.outlook.com (2603:10b6:208:71:cafe::7a) by BL0PR01CA0012.outlook.office365.com (2603:10b6:208:71::25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.25 via Frontend Transport; Mon, 20 Apr 2020 22:27:20 +0000 Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=xilinx.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=bestguesspass action=none header.from=xilinx.com; Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.60.83 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.83; helo=xsj-pvapsmtpgw01; Received: from xsj-pvapsmtpgw01 (149.199.60.83) by BL2NAM02FT018.mail.protection.outlook.com (10.152.77.170) with Microsoft SMTP Server id 15.20.2921.25 via Frontend Transport; Mon, 20 Apr 2020 22:27:19 +0000 Received: from [149.199.38.66] (port=33639 helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw01 with esmtp (Exim 4.90) (envelope-from ) id 1jQerr-0000SX-Vo; Mon, 20 Apr 2020 15:26:19 -0700 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1jQesp-0008OD-4m; Mon, 20 Apr 2020 15:27:19 -0700 Received: from xsj-pvapsmtp01 (smtp2.xilinx.com [149.199.38.66]) by xsj-smtp-dlp1.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id 03KMR9JL006352; Mon, 20 Apr 2020 15:27:09 -0700 Received: from [172.19.2.206] (helo=xsjblevinsk50.xilinx.com) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1jQesf-0008MN-7D; Mon, 20 Apr 2020 15:27:09 -0700 From: Ben Levinsky To: ohad@wizery.com, bjorn.andersson@linaro.org, michal.simek@xilinx.com, jollys@xilinx.com, rajan.vaja@xilinx.com, robh+dt@kernel.org, mark.rutland@arm.com Cc: linux-remoteproc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 1/5] firmware: xilinx: Add ZynqMP firmware ioctl enums for RPU configuration. Date: Mon, 20 Apr 2020 15:27:05 -0700 Message-Id: <1587421629-914-2-git-send-email-ben.levinsky@xilinx.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1587421629-914-1-git-send-email-ben.levinsky@xilinx.com> References: <1587421629-914-1-git-send-email-ben.levinsky@xilinx.com> X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.2.0.1013-23620.005 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:xsj-pvapsmtpgw01; PTR:unknown-60-83.xilinx.com; CAT:NONE; SFTY:; SFS:(10009020)(4636009)(396003)(376002)(136003)(346002)(39860400002)(46966005)(7696005)(82740400003)(9786002)(356005)(4326008)(81166007)(8676002)(44832011)(81156014)(8936002)(2906002)(336012)(426003)(26005)(36756003)(5660300002)(2616005)(478600001)(70586007)(316002)(6666004)(186003)(70206006)(47076004); DIR:OUT; SFP:1101; MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a6a73f9e-65ec-4c6f-5e84-08d7e579fd1b X-MS-TrafficTypeDiagnostic: BL0PR02MB6482: X-Microsoft-Antispam-PRVS: X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-MS-Oob-TLC-OOBClassifiers: OLM:525; X-Forefront-PRVS: 03793408BA X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: emHRRVBWcip2GeGSF9fGkMseNBa4rVS6P0SwY60htwFbLEXchkDdyNLI/jPv5yh1oMmHPKzxeggrJ9t5IXJXVUA273Bz0oNH+n0xWopOh7d3rMANlj+Qou3ztFX1ENwIay3wQyYtjkd9rxS8eIPP7bzFOQNTlIw4/OCvs2zT8URtZI0jNcDlzvvJQIm4vvvOGAq5U8V1YI8C4y2pWdCadWJtv+KtybcYLI1/WnN1mjnJ2DF/zp+ew9Sjgo+N4fDnARQCQA5sk+XJk53VjkT+/Q5Jt9PU/qd//TeDEHZ+k2rirRo41R9NGthDgRxuipC+AT1Fo5liM4ZwyJjWR7MU3r5qr9GZ/JfTkTEr+sInoHQUQXjz/LqnHtpvo2fBtwB/bmtary8BbKxOYel6HJ3hcLt57romb66Wg3KE1EYqqQianwQVMP0s0htqTRXltGuxYkZvSdUOr7wSZi33WBQkGdU9JkObzh5OGM6W1qC0qvw21yLYvPUGbb46cwgsrdlWNPbSgGsR79cHh11tYvyARw== X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2020 22:27:19.6317 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a6a73f9e-65ec-4c6f-5e84-08d7e579fd1b X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c; Ip=[149.199.60.83]; Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR02MB6482 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Add ZynqMP firmware ioctl enums for RPU configuration. Signed-off-by: Ben Levinsky --- include/linux/firmware/xlnx-zynqmp.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/include/linux/firmware/xlnx-zynqmp.h b/include/linux/firmware/xlnx-zynqmp.h index 5968df8..074ad71 100644 --- a/include/linux/firmware/xlnx-zynqmp.h +++ b/include/linux/firmware/xlnx-zynqmp.h @@ -104,6 +104,10 @@ enum pm_ret_status { }; enum pm_ioctl_id { + IOCTL_GET_RPU_OPER_MODE = 0, + IOCTL_SET_RPU_OPER_MODE, + IOCTL_RPU_BOOT_ADDR_CONFIG, + IOCTL_TCM_COMB_CONFIG, IOCTL_SD_DLL_RESET = 6, IOCTL_SET_SD_TAPDELAY, IOCTL_SET_PLL_FRAC_MODE, @@ -129,6 +133,21 @@ enum pm_query_id { PM_QID_CLOCK_GET_MAX_DIVISOR, }; +enum rpu_oper_mode { + PM_RPU_MODE_LOCKSTEP, + PM_RPU_MODE_SPLIT, +}; + +enum rpu_boot_mem { + PM_RPU_BOOTMEM_LOVEC, + PM_RPU_BOOTMEM_HIVEC, +}; + +enum rpu_tcm_comb { + PM_RPU_TCM_SPLIT, + PM_RPU_TCM_COMB, +}; + enum zynqmp_pm_reset_action { PM_RESET_ACTION_RELEASE, PM_RESET_ACTION_ASSERT, From patchwork Mon Apr 20 22:27:06 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ben Levinsky X-Patchwork-Id: 201720 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4B9FBC55182 for ; Mon, 20 Apr 2020 22:27:38 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 2737320857 for ; Mon, 20 Apr 2020 22:27:38 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=xilinx.onmicrosoft.com header.i=@xilinx.onmicrosoft.com header.b="F3S7VFzb" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728131AbgDTW11 (ORCPT ); Mon, 20 Apr 2020 18:27:27 -0400 Received: from mail-mw2nam10on2050.outbound.protection.outlook.com ([40.107.94.50]:8288 "EHLO NAM10-MW2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728019AbgDTW1Y (ORCPT ); Mon, 20 Apr 2020 18:27:24 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=PUkIaapcN8s1zddoi6kVxtoyDIQu/zlVPG+UnhLLpi2F4QyZbjUxy4+r8W6D0DeEybphWfCX9ewjIgomF/g9MFDIXrUNrCbDW03Pyj0Scpzt8qZVXmQR3Ed0ANgfByS+o7uI/rY8YVwwtgQJi4U4eNOpcTft51E/f0J3SX22C9htoabU8orpc6r7gI9KEI0eADvtBS+ALQlv140d29mEKBFDf89+7D87JnoZ8teQF/1tZZx4xz2iqQ9SYNnm8PgZF5QE4ZFpFS8lQjkG3mFfQuhQ2BY6iF1wjgC71GeV/Dx2ihKspPv/KZaVKrj6v3JPB/r0DZF8n9P4m1TK4UGcGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8Y+GJAwFske+LJFmpBtV0A6pyU67g9nbtYpxtOFkzBg=; b=QkFsdd5i44tczhPi8akl3B7jaRh6hK0e9HGLkyfY0J698JqRQIO3sQHj11ot9PsRQtYfJzYlu5uP4NiBRMt/229H/ashDcXE4LYZQ5fUJw0BXpuuzWddPxkHe0N32mMsYNuI43znwxV3JuwDgKk1CIHUQ41StjBs3jPLGlQZcXDmcad+kVqTbNw43CJA6U1Xk9qX1GkVD1+qskq82XZlK91BKKXsyyaVAFPljp0hOHGNy9bmQtouuSsykqlpO6xLaKvoN3bkWv0Oz2ATxaisjqSmKWdFt8zh7qvI6/ZRgFbGZ+wQ6GJyhOggw1Q/U8ZZ6srs9ggF5Aimi46ApFKrtw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 149.199.60.83) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=xilinx.com; dmarc=bestguesspass action=none header.from=xilinx.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector2-xilinx-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8Y+GJAwFske+LJFmpBtV0A6pyU67g9nbtYpxtOFkzBg=; b=F3S7VFzbXsAuc/GfLu9iv/Dev+cOmPy76zLyDYpuh+dFfCya50C0eSVxvhrva7cZS8/oEfAKNv9IUs9/9cbMbKcBebgbPTz03hmr/3UXtFd9vEtqVSFAD25tTwDtc2gN4ha7UnjZKEGV9ShS9zsimpb+kA4WvclE3c3NDxuFTZ8= Received: from SN4PR0601CA0002.namprd06.prod.outlook.com (2603:10b6:803:2f::12) by BL0PR02MB5633.namprd02.prod.outlook.com (2603:10b6:208:84::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.29; Mon, 20 Apr 2020 22:27:20 +0000 Received: from SN1NAM02FT009.eop-nam02.prod.protection.outlook.com (2603:10b6:803:2f:cafe::23) by SN4PR0601CA0002.outlook.office365.com (2603:10b6:803:2f::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.25 via Frontend Transport; Mon, 20 Apr 2020 22:27:20 +0000 Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=xilinx.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=bestguesspass action=none header.from=xilinx.com; Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.60.83 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.83; helo=xsj-pvapsmtpgw01; Received: from xsj-pvapsmtpgw01 (149.199.60.83) by SN1NAM02FT009.mail.protection.outlook.com (10.152.73.32) with Microsoft SMTP Server id 15.20.2921.25 via Frontend Transport; Mon, 20 Apr 2020 22:27:19 +0000 Received: from [149.199.38.66] (port=33644 helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw01 with esmtp (Exim 4.90) (envelope-from ) id 1jQers-0000Sa-1E; Mon, 20 Apr 2020 15:26:20 -0700 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1jQesp-0008OD-6G; Mon, 20 Apr 2020 15:27:19 -0700 Received: from xsj-pvapsmtp01 (maildrop.xilinx.com [149.199.38.66]) by xsj-smtp-dlp1.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id 03KMR9lw006354; Mon, 20 Apr 2020 15:27:09 -0700 Received: from [172.19.2.206] (helo=xsjblevinsk50.xilinx.com) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1jQesf-0008MN-90; Mon, 20 Apr 2020 15:27:09 -0700 From: Ben Levinsky To: ohad@wizery.com, bjorn.andersson@linaro.org, michal.simek@xilinx.com, jollys@xilinx.com, rajan.vaja@xilinx.com, robh+dt@kernel.org, mark.rutland@arm.com Cc: linux-remoteproc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v3 2/5] firmware: xilinx: Add shutdown/wakeup APIs Date: Mon, 20 Apr 2020 15:27:06 -0700 Message-Id: <1587421629-914-3-git-send-email-ben.levinsky@xilinx.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1587421629-914-1-git-send-email-ben.levinsky@xilinx.com> References: <1587421629-914-1-git-send-email-ben.levinsky@xilinx.com> X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.2.0.1013-23620.005 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:xsj-pvapsmtpgw01; PTR:unknown-60-83.xilinx.com; CAT:NONE; SFTY:; SFS:(10009020)(4636009)(346002)(396003)(136003)(376002)(39860400002)(46966005)(70206006)(478600001)(82740400003)(47076004)(356005)(81166007)(36756003)(70586007)(4326008)(8936002)(81156014)(9786002)(8676002)(2906002)(186003)(5660300002)(7696005)(336012)(2616005)(316002)(6666004)(44832011)(26005)(426003); DIR:OUT; SFP:1101; MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: fe490bee-1505-491c-b253-08d7e579fd09 X-MS-TrafficTypeDiagnostic: BL0PR02MB5633: X-Microsoft-Antispam-PRVS: X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-MS-Oob-TLC-OOBClassifiers: OLM:2512; X-Forefront-PRVS: 03793408BA X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: /GgEjo84TbQmcbnIJogXnw3tbf9d5s4b6nIkrL5Fo+JFescILbpPo8PUwxTVNkuq580V9UPACJQrZxY/QileV5OY3N7Jqmvwc0sZ26AvwloJzBO3WG35BeifYT/qV15OxXEA/w8ksst6NyKE1CF9CBPVtUVcqm/89C7I+A5qbW9//iKeawUukYb2DwwShLz6o1bqJFFw2W6i5E24Y+DckYUTHHEU3WoHBo+WJH7PE3LsvgSu5Iw9UOzxBnHqiPWs4HhbCP3PfFsOPn7hJvjJkFYbQGG2fwyx4/xKBhxei2JLHXsVGTB0SIYuJDzkKk7dm5KNeDwgmDSUAcNPf3eWLtK/8+ZCTQkDBbEKVOWs/krAPQGCHbv5EDd+4fAUrbsIoKxydXayvujyDVmKgqJRh58IacIBR0Xje6fgfiGU/Hbkxz45KUz1cTZ71M6n8dPfpMqlbeFT0qANR5rd8Yuru17EdmbVayFtTIeFsJpOb4bn+k4WMNemODLN1YXdM85jaMs7qIHbUTMerr9Bvrpc+Q== X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2020 22:27:19.5169 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: fe490bee-1505-491c-b253-08d7e579fd09 X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c; Ip=[149.199.60.83]; Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL0PR02MB5633 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Add shutdown/wakeup a resource eemi operations to shutdown or bringup a resource. Signed-off-by: Ben Levinsky --- changes since v2: - add xilinx-related platform mgmt fn's instead of wrapping around function pointer in xilinx eemi ops struct --- drivers/firmware/xilinx/zynqmp.c | 35 +++++++++++++++++++++++++++++++++++ include/linux/firmware/xlnx-zynqmp.h | 20 ++++++++++++++++++++ 2 files changed, 55 insertions(+) diff --git a/drivers/firmware/xilinx/zynqmp.c b/drivers/firmware/xilinx/zynqmp.c index bfaf29a..b0d140f 100644 --- a/drivers/firmware/xilinx/zynqmp.c +++ b/drivers/firmware/xilinx/zynqmp.c @@ -845,6 +845,41 @@ int zynqmp_pm_release_node(const u32 node) EXPORT_SYMBOL_GPL(zynqmp_pm_release_node); /** + * zynqmp_pm_force_powerdown - PM call to request for another PU or subsystem to + * be powered down forcefully + * @target: Node ID of the targeted PU or subsystem + * @ack: Flag to specify whether acknowledge is requested + * + * Return: Returns status, either success or error+reason + */ +int zynqmp_pm_force_powerdown(const u32 target, + const enum zynqmp_pm_request_ack ack) +{ + return zynqmp_pm_invoke_fn(PM_FORCE_POWERDOWN, target, ack, 0, 0, NULL); +} +EXPORT_SYMBOL_GPL(zynqmp_pm_force_powerdown); + +/** + * zynqmp_pm_request_wakeup - PM call to wake up selected master or subsystem + * @node: Node ID of the master or subsystem + * @set_addr: Specifies whether the address argument is relevant + * @address: Address from which to resume when woken up + * @ack: Flag to specify whether acknowledge requested + * + * Return: Returns status, either success or error+reason + */ +int zynqmp_pm_request_wakeup(const u32 node, + const bool set_addr, + const u64 address, + const enum zynqmp_pm_request_ack ack) +{ + /* set_addr flag is encoded into 1st bit of address */ + return zynqmp_pm_invoke_fn(PM_REQUEST_WAKEUP, node, address | set_addr, + address >> 32, ack, NULL); +} +EXPORT_SYMBOL_GPL(zynqmp_pm_request_wakeup); + +/** * zynqmp_pm_set_requirement() - PM call to set requirement for PM slaves * @node: Node ID of the slave * @capabilities: Requested capabilities of the slave diff --git a/include/linux/firmware/xlnx-zynqmp.h b/include/linux/firmware/xlnx-zynqmp.h index 074ad71..1235923 100644 --- a/include/linux/firmware/xlnx-zynqmp.h +++ b/include/linux/firmware/xlnx-zynqmp.h @@ -64,6 +64,8 @@ enum pm_api_id { PM_GET_API_VERSION = 1, + PM_FORCE_POWERDOWN = 8, + PM_REQUEST_WAKEUP = 10, PM_SYSTEM_SHUTDOWN = 12, PM_REQUEST_NODE = 13, PM_RELEASE_NODE, @@ -376,6 +378,12 @@ int zynqmp_pm_write_pggs(u32 index, u32 value); int zynqmp_pm_read_pggs(u32 index, u32 *value); int zynqmp_pm_system_shutdown(const u32 type, const u32 subtype); int zynqmp_pm_set_boot_health_status(u32 value); +int zynqmp_pm_force_powerdown(const u32 target, + const enum zynqmp_pm_request_ack ack); +int zynqmp_pm_request_wakeup(const u32 node, + const bool set_addr, + const u64 address, + const enum zynqmp_pm_request_ack ack); #else static inline struct zynqmp_eemi_ops *zynqmp_pm_get_eemi_ops(void) { @@ -526,6 +534,18 @@ static inline int zynqmp_pm_set_boot_health_status(u32 value) { return -ENODEV; } +static inline int zynqmp_pm_force_powerdown(const u32 target, + const enum zynqmp_pm_request_ack ack) +{ + return -ENODEV; +} +static inline int zynqmp_pm_request_wakeup(const u32 node, + const bool set_addr, + const u64 address, + const enum zynqmp_pm_request_ack ack) +{ + return -ENODEV; +} #endif #endif /* __FIRMWARE_ZYNQMP_H__ */ From patchwork Mon Apr 20 22:27:08 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ben Levinsky X-Patchwork-Id: 201719 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id AE0B6C55182 for ; Mon, 20 Apr 2020 22:28:02 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 831F7206DD for ; Mon, 20 Apr 2020 22:28:02 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=xilinx.onmicrosoft.com header.i=@xilinx.onmicrosoft.com header.b="NRS0c1VG" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726224AbgDTW17 (ORCPT ); Mon, 20 Apr 2020 18:27:59 -0400 Received: from mail-dm6nam10on2054.outbound.protection.outlook.com ([40.107.93.54]:39602 "EHLO NAM10-DM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727066AbgDTW16 (ORCPT ); Mon, 20 Apr 2020 18:27:58 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UpiLRtsGTaFzZMAvAd3OqcelqpDNI2JfyyenhKJzKXg7AtATanVxzsMpSfv67q/wnfxIirwcBjXPE53JYuUrRxA2ZlZXW0ItWvCgSotpUre4o2TUYU0j+VK8w4f2IMaQ7Rhlrbp5VlD5xWrUVitT1PiAzK+b6VQ/1fmX2DIOLEg7QAAI7M/iyTjj9r2u0m1AoiR/QGCuxJGF5AfwLnS8/QoYrHOysq3LmixyEfPzTHI7D3YeAQx641DRWKPla9tsOSG8/lOCVDhvEZZJJR4NWKaYKEckH4DSdtz3x7JQeFmTCBsMZb9eXQu1FEc2nopD4kxLJ37J13VZdiq60t+ywA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Uf62ckIJXUHEvdiJURQrlEdK1oQIW9gQCt5kukF+r1g=; b=Tg9N3C5qo13Wncoohdy2tYVGhq+Cp6csBGGaKLcVQbz7OH2zOI5WmrYuTmFAcTU4upavCqf0KXDaND449Sdz7vjAw3WyomcR/c1RkveCilWx2QI4iTMr0iRCXdQuKlXYm4VlNaoU1C0fQevcOu5R/jHpBw1vOXCyqOxlpLzJ077KryTuBMCA7iCZ2FOSB3r1DZBzuNFDU1fUV0Yrwm2OWxSuFl6LZ4zZNe69VOciE++YTY5474lFNbY1yaFPht6flq6n8vIH/D+lFuhhWmAsA6S6C91yZMlKnynXHa5Cy6ZlR5BgaLDY479vLTNwNsaAofzF3eCifTgyXuu+ngdGgg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 149.199.60.83) smtp.rcpttodomain=vger.kernel.org smtp.mailfrom=xilinx.com; dmarc=bestguesspass action=none header.from=xilinx.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector2-xilinx-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Uf62ckIJXUHEvdiJURQrlEdK1oQIW9gQCt5kukF+r1g=; b=NRS0c1VGRkqZ/oH8jfak6BfriATjSxc/dnfDmGj9og2MxILRTLzA8FlnL97c/VGJ2K2rwd46n51SuClGv/F4b8IVak35cFIMjZbTIopLuuUISqGOJJU1/aTFw4AMGxEOas0HlAp0LuSP64bHXubzxYQHVrORGWAXwVExMZZxEY4= Received: from CY1PR03CA0018.namprd03.prod.outlook.com (2603:10b6:600::28) by CY4PR02MB2200.namprd02.prod.outlook.com (2603:10b6:903:13::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.27; Mon, 20 Apr 2020 22:27:20 +0000 Received: from CY1NAM02FT039.eop-nam02.prod.protection.outlook.com (2603:10b6:600:0:cafe::e2) by CY1PR03CA0018.outlook.office365.com (2603:10b6:600::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2921.25 via Frontend Transport; Mon, 20 Apr 2020 22:27:19 +0000 Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=xilinx.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=bestguesspass action=none header.from=xilinx.com; Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.60.83 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.83; helo=xsj-pvapsmtpgw01; Received: from xsj-pvapsmtpgw01 (149.199.60.83) by CY1NAM02FT039.mail.protection.outlook.com (10.152.75.140) with Microsoft SMTP Server id 15.20.2921.25 via Frontend Transport; Mon, 20 Apr 2020 22:27:19 +0000 Received: from [149.199.38.66] (port=33649 helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw01 with esmtp (Exim 4.90) (envelope-from ) id 1jQers-0000Sd-2d; Mon, 20 Apr 2020 15:26:20 -0700 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1jQesp-0008OD-7k; Mon, 20 Apr 2020 15:27:19 -0700 Received: from xsj-pvapsmtp01 (smtp3.xilinx.com [149.199.38.66]) by xsj-smtp-dlp1.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id 03KMR9gB006358; Mon, 20 Apr 2020 15:27:09 -0700 Received: from [172.19.2.206] (helo=xsjblevinsk50.xilinx.com) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1jQesf-0008MN-Cr; Mon, 20 Apr 2020 15:27:09 -0700 From: Ben Levinsky To: ohad@wizery.com, bjorn.andersson@linaro.org, michal.simek@xilinx.com, jollys@xilinx.com, rajan.vaja@xilinx.com, robh+dt@kernel.org, mark.rutland@arm.com Cc: linux-remoteproc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jason Wu , Wendy Liang Subject: [PATCH v3 4/5] dt-bindings: remoteproc: Add documentation for ZynqMP R5 rproc bindings Date: Mon, 20 Apr 2020 15:27:08 -0700 Message-Id: <1587421629-914-5-git-send-email-ben.levinsky@xilinx.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1587421629-914-1-git-send-email-ben.levinsky@xilinx.com> References: <1587421629-914-1-git-send-email-ben.levinsky@xilinx.com> X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.2.0.1013-23620.005 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:xsj-pvapsmtpgw01; PTR:unknown-60-83.xilinx.com; CAT:NONE; SFTY:; SFS:(10009020)(4636009)(376002)(136003)(346002)(39860400002)(396003)(46966005)(7696005)(9786002)(82740400003)(54906003)(356005)(4326008)(81166007)(81156014)(8676002)(44832011)(478600001)(336012)(2906002)(426003)(8936002)(107886003)(26005)(36756003)(2616005)(5660300002)(316002)(47076004)(70206006)(186003)(70586007); DIR:OUT; SFP:1101; MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 6d557720-a012-4628-f616-08d7e579fd0d X-MS-TrafficTypeDiagnostic: CY4PR02MB2200: X-Microsoft-Antispam-PRVS: X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-MS-Oob-TLC-OOBClassifiers: OLM:9508; X-Forefront-PRVS: 03793408BA X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0+NuoUunW2uRGnL3iyTuz6jbCLoDtLF9Vsh4FpRWP/4cxuuXaklFymDsK7q4AIb99/HUCm2731CmPSXt9V4NBk7wq965OAzpSSvJp4RQyE338oz0Kx2b+rGM/uVdoc7NTqJL4J4IjMp2O7yzvvcB+K3o/pfIVev9PHltBeZbxmvzAExDGwJCGXt0y/e8MgAvUWmny9dFijebN5MChzNqSUAaGUK7isAyXdJGTili02k0/TRXwfy7dhESwjizZ5Rn8uQC/+1GK1uhCTfWb1CfcdYx0Tvs01iLdlvJGz5NkRlvr9MGQ/FtMXqqNBzG1u5hOYA0MP4KtFVILy2Hc4IJNNAnEH2ifwIRpctd6ZQjEAHkg6dBLxrVhAAcyoR2w5RtUa2o7VTqKhxMUEEyAU9d/o34hMLABvzmH6j4sZjJDfTXHPe4FbILyoAOL6MdPhpgObSAStnDH2C+F9+cbYZrFDp5TOJa6NLtBMBUZYxbYYOeH/ozqdh2TRbsUNsab1hnDW6OgQcPCyeUqHEfcY35z+opA6Wtl+rnnEJVNbOW+n1uthnPIyNvgBQ57xZtel+oBvWJzC801lGQhLtOXBhZFg== X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2020 22:27:19.5448 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6d557720-a012-4628-f616-08d7e579fd0d X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c; Ip=[149.199.60.83]; Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR02MB2200 Sender: devicetree-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Add binding for ZynqMP R5 OpenAMP. Represent the RPU domain resources in one device node. Each RPU processor is a subnode of the top RPU domain node. Signed-off-by: Ben Levinsky Signed-off-by: Jason Wu Signed-off-by: Wendy Liang Signed-off-by: Michal Simek --- Changes since v2: - update zynqmp_r5 yaml parsing to not raise warnings for extra information in children of R5 node. The warning "node has a unit name, but no reg or ranges property" will still be raised though as this particular node is needed to describe the '#address-cells' and '#size-cells' information. --- .../remoteproc/xilinx,zynqmp-r5-remoteproc.yaml | 126 +++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 Documentation/devicetree/bindings/remoteproc/xilinx,zynqmp-r5-remoteproc.yaml diff --git a/Documentation/devicetree/bindings/remoteproc/xilinx,zynqmp-r5-remoteproc.yaml b/Documentation/devicetree/bindings/remoteproc/xilinx,zynqmp-r5-remoteproc.yaml new file mode 100644 index 0000000..e7d1496 --- /dev/null +++ b/Documentation/devicetree/bindings/remoteproc/xilinx,zynqmp-r5-remoteproc.yaml @@ -0,0 +1,126 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: "http://devicetree.org/schemas/remoteproc/xilinx,zynqmp-r5-remoteproc.yaml#" +$schema: "http://devicetree.org/meta-schemas/core.yaml#" + +title: Xilinx R5 remote processor controller bindings + +description: + This document defines the binding for the remoteproc component that loads and + boots firmwares on the Xilinx Zynqmp and Versal family chipset. + +maintainers: + - Ed Mooring + - Ben Levinsky + +properties: + compatible: + const: "xlnx,zynqmp-r5-remoteproc-1.0" + + core_conf: + description: + R5 core configuration (valid string - split or lock-step) + maxItems: 1 + + interrupts: + description: + Interrupt mapping for remoteproc IPI. It is required if the + user uses the remoteproc driver with the RPMsg kernel driver. + maxItems: 6 + + memory-region: + maxItems: 4 + minItems: 4 + pnode-id: + maxItems: 1 + mboxes: + maxItems: 2 + mbox-names: + maxItems: 2 + + r5@0: + type: object + required: + - '#address-cells' + - '#size-cells' + - pnode-id +examples: + - | + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + rpu0vdev0vring0: rpu0vdev0vring0@3ed40000 { + no-map; + reg = <0x3ed40000 0x4000>; + }; + rpu0vdev0vring1: rpu0vdev0vring1@3ed44000 { + no-map; + reg = <0x3ed44000 0x4000>; + }; + rpu0vdev0buffer: rpu0vdev0buffer@3ed48000 { + no-map; + reg = <0x3ed48000 0x100000>; + }; + rproc_0_reserved: rproc@3ed000000 { + no-map; + reg = <0x3ed00000 0x40000>; + }; + }; + rpu: rpu@ff9a0000 { + compatible = "xlnx,zynqmp-r5-remoteproc-1.0"; + #address-cells = <1>; + #size-cells = <1>; + ranges; + core_conf = "split"; + reg = <0xFF9A0000 0x10000>; + r5_0: r5@0 { + ranges; + #address-cells = <1>; + #size-cells = <1>; + memory-region = <&rproc_0_reserved>, <&rpu0vdev0buffer>, <&rpu0vdev0vring0>, <&rpu0vdev0vring1>; + pnode-id = <0x7>; + mboxes = <&ipi_mailbox_rpu0 0>, <&ipi_mailbox_rpu0 1>; + mbox-names = "tx", "rx"; + tcm_0_a: tcm_0@0 { + #address-cells = <1>; + #size-cells = <1>; + reg = <0xFFE00000 0x10000>; + pnode-id = <0xf>; + }; + tcm_0_b: tcm_0@1 { + #address-cells = <2>; + #size-cells = <2>; + reg = <0xFFE20000 0x10000>; + pnode-id = <0x10>; + }; + }; + }; + + + zynqmp_ipi1 { + compatible = "xlnx,zynqmp-ipi-mailbox"; + interrupt-parent = <&gic>; + interrupts = <0 29 4>; + xlnx,ipi-id = <7>; + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* APU<->RPU0 IPI mailbox controller */ + ipi_mailbox_rpu0: mailbox@ff90000 { + reg = <0xff990600 0x20>, + <0xff990620 0x20>, + <0xff9900c0 0x20>, + <0xff9900e0 0x20>; + reg-names = "local_request_region", + "local_response_region", + "remote_request_region", + "remote_response_region"; + #mbox-cells = <1>; + xlnx,ipi-id = <1>; + }; + }; + +...