Received: by 2002:a25:683:0:0:0:0:0 with SMTP id 125csp560488ybg; Wed, 3 Jun 2020 07:52:11 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxjJQ8Xfki9FF9fch7w7TbtAG1F/g3jWVJUUhzRbn7oDoJhp0kIxLEBHnJuWqaTZ1+Hkie8 X-Received: by 2002:a50:fc0d:: with SMTP id i13mr29662782edr.260.1591195931717; Wed, 03 Jun 2020 07:52:11 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1591195931; cv=pass; d=google.com; s=arc-20160816; b=x4Jaum03pRebRvwrwWhFXkJYf7yibsqFAs3QynF398v4AuWOQ8rFL9ce1qL3x1rDWq DtQxi3upj1re/pLHmXfJfPER3VP46VRh43d4ODoCgaFs9BdevgFhcjO4xaAdsHgdFdbT 5p6frzJCYLt1QSd6HEuUiJjzAWyeab0XbMMDLkUEttioO+yDnAYYdF7CZlc8dRNeg5nn Ro4CkjbhufzZrrOAALilHTGMqIaukkxFzp9BCdS1nz8AQ6zIgW9YWtgY5VAR3zxaOMad skoMG9LlnFvJk++JA4WjJidBIgks0UHaZVyNwb6oXx7JX+AewPeGFghhu9DmzxrAOKDu 4xfA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:subject:cc :to:from:dkim-signature; bh=ZCpM65CewYisrkWp7fZipWZ113RLvwQy7sFbztUNZT8=; b=paybS0Ozafefh6MNMe3qZcSIqzf677V9L6Gt8LgCImCXWxhTCM/r/2aPOGFP4DsgT7 l5ypN+QPitlZKfa4B3HbZPvF17b4tZwYlemAr/KYIw10ChREY7taIIhiWnV0uEs4C4jq akSD0peDpS3ccf7t+4B6Lr4hq/tqVTzxa9aZ6KU/m4pJjDwxF5WEpuvOek3EvY6EPUeh GLzZ74bkpL1ZDu8nnJcvsKJN8uYGwdrZ8/t3XcjlXqbjYgH77PefQKfnx2B+n0Yuvjyy m95X5KbkrI4958KcUl0EtQ52C9PZ3fL9s+WH7LbcWEGQAZf1u1n9v7BQXHX+inxCV1Xy TTkQ== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@xilinx.onmicrosoft.com header.s=selector2-xilinx-onmicrosoft-com header.b=MFeykc2j; arc=pass (i=1 spf=pass spfdomain=xilinx.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g22si1359005eds.26.2020.06.03.07.51.48; Wed, 03 Jun 2020 07:52:11 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-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=@xilinx.onmicrosoft.com header.s=selector2-xilinx-onmicrosoft-com header.b=MFeykc2j; arc=pass (i=1 spf=pass spfdomain=xilinx.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726192AbgFCOtw (ORCPT + 99 others); Wed, 3 Jun 2020 10:49:52 -0400 Received: from mail-dm6nam10on2049.outbound.protection.outlook.com ([40.107.93.49]:63200 "EHLO NAM10-DM6-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726144AbgFCOtv (ORCPT ); Wed, 3 Jun 2020 10:49:51 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=MQNH4n4ssZG1xk0zz8+FDrfQ0Fd5PDnssubA5tw8LVMJ94Sk0QceMQw/pNV9woYTtu8NazA2qxumjlUdBJqSap18tFMSrd/pq15RALHGC7UDrgQ0iu9pfnOjfaH4TnTVMego+4n2GPbbMjBYwIltUqioNBaIlyCFTJFrQ9FLtdDM1Syx4BCU7gJOzqs+/dU1cx72nRbHdaz0sAc1MKHENjJbo0Wt/W/jPE8DNER2jotfDkqxFgFyx5SsD+TcX9B/7o/23yFywj0rEH6x9P1845Q2rGNMNRYTob1TmuKoUBOiD6sjSD6ynhbLJ0eqRsWNpUBxVvordwZvZmpqUUgFIQ== 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=ZCpM65CewYisrkWp7fZipWZ113RLvwQy7sFbztUNZT8=; b=QWgNuFV36JZudAwXgb4xTJYpVUC+pxVtiRG9JFC1btax9BDNOKSANPZBfuVzk7WAo0WRTTfuHudHYj44DZWrugzyFAjlHEuK5s1J6UIYYyoCoNGqdhn3iirMhk04MNL/ZUOPsse8HmWKg3kiwcnzOgdpRyE1/IbyHqxKoO8SC65ONByZTlusJ7gBRzVyxfROGQNIHBAV6dW7KVyJewfgJeVh2L5P+EFO376q8dvwFRe+sV2ZuzxzEKuIWys4cHSr3n4S20w9r3Fv0gDM8I6dErOjewOlnO1qSdYy/pn2BvS2kYPdgYo0sS4C60uWIGXjdBWvwXb2DWBL2oQ7h8MqMQ== 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=ZCpM65CewYisrkWp7fZipWZ113RLvwQy7sFbztUNZT8=; b=MFeykc2jBp2y/oisnDFF7kSaKYWEQIpk68ZjVnk3youSlf9StU8UGMk6fxZK5UYTQbC0XFZbApUgQVvPGYe8NA/6uEmPG6dtJlefidsB10rWNwJZRSeLJxX90RlhSbr2qQdKA3M/LyLhE5pen/bfkljii82d6Zmbow5CvQwcMyY= Received: from SA9PR10CA0021.namprd10.prod.outlook.com (2603:10b6:806:a7::26) by BYAPR02MB4215.namprd02.prod.outlook.com (2603:10b6:a02:f4::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3045.25; Wed, 3 Jun 2020 14:49:48 +0000 Received: from SN1NAM02FT019.eop-nam02.prod.protection.outlook.com (2603:10b6:806:a7:cafe::b7) by SA9PR10CA0021.outlook.office365.com (2603:10b6:806:a7::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3045.17 via Frontend Transport; Wed, 3 Jun 2020 14:49:48 +0000 X-MS-Exchange-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 SN1NAM02FT019.mail.protection.outlook.com (10.152.72.130) with Microsoft SMTP Server id 15.20.3045.17 via Frontend Transport; Wed, 3 Jun 2020 14:49:48 +0000 Received: from [149.199.38.66] (port=60688 helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw01 with esmtp (Exim 4.90) (envelope-from ) id 1jgUhR-0007G4-Nw; Wed, 03 Jun 2020 07:49:01 -0700 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1jgUiB-000515-HL; Wed, 03 Jun 2020 07:49:47 -0700 Received: from xsj-pvapsmtp01 (xsj-mail.xilinx.com [149.199.38.66]) by xsj-smtp-dlp1.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id 053Enh5s015305; Wed, 3 Jun 2020 07:49:43 -0700 Received: from [172.19.2.206] (helo=xsjblevinsk50.xilinx.com) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1jgUi7-00050a-6C; Wed, 03 Jun 2020 07:49:43 -0700 From: Ben Levinsky To: ohad@wizery.com, bjorn.andersson@linaro.org, michals@xilinx.com, jollys@xilinx.com, rajanv@xilinx.com, robh+dt@kernel.org, mark.rutland@arm.com Cc: linux-remoteproc@vger.kernel.org, linux-arm-kernell@lists.infradead.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v5 0/5] remoteproc: Add zynqmp_r5 driver Date: Wed, 3 Jun 2020 07:49:38 -0700 Message-Id: <1591195783-10290-1-git-send-email-ben.levinsky@xilinx.com> X-Mailer: git-send-email 2.7.4 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:(346002)(376002)(39860400002)(396003)(136003)(46966005)(4326008)(478600001)(316002)(47076004)(186003)(8936002)(82740400003)(8676002)(2906002)(36756003)(7696005)(26005)(9786002)(81166007)(356005)(2616005)(82310400002)(83380400001)(336012)(426003)(70586007)(70206006)(44832011)(5660300002)(6666004);DIR:OUT;SFP:1101; X-MS-PublicTrafficType: Email MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: eafe4e0e-4e08-4251-58e3-08d807cd5ced X-MS-TrafficTypeDiagnostic: BYAPR02MB4215: X-Microsoft-Antispam-PRVS: X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-MS-Oob-TLC-OOBClassifiers: OLM:10000; X-Forefront-PRVS: 04238CD941 X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: t6m2CW8B6/gWQvaoMaqws3XUT0OtEPYwMX10Wu4uYK2zNAY0vE0KfYrQhe1n549g1r76nSy2sp/RbXY+WH+HM7nxlWb6ySUSXBBqpkQydwRzvSCOZE3IIve2XBH6MBXAtPO0BE1mpCfVehbfYgL9micd8Wl2vYOXltJFyoHhKsiuN6Z1+P+W76uWaTpbVbW4rAfYoqbQXSrRNVQUkuqd+K36ZLbrdioZU2UL3jzLMgNwQyBVCAsGA0wwFmlrGuWkagn2oCVh5qyZwOhwa88GJiETqPwm4eL5cFjPYlj9mofNznbk0YUg/mqb4Ixk4mWPkcJ19YCUZaOJMYH1S3/mxUhm3GR45pnOdxrX3shqGsGod+rRNwh5B9IHxonWxDB4qXzKhNA7wyQgIUKfGJduRQ== X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Jun 2020 14:49:48.1524 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: eafe4e0e-4e08-4251-58e3-08d807cd5ced 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: BYAPR02MB4215 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Provide basic driver to control Arm R5 co-processor found on Xilinx ZynqMP UltraScale+ and Versal MPSoC's. Currently it is able to start, stop and load elf on to the processor. The driver was tested on Xilinx ZynqMP and Versal. v2: - remove domain struct as per review from Mathieu v3: - add xilinx-related platform mgmt fn's instead of wrapping around function pointer in xilinx eemi ops struct - 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. v4: - add default values for enums - fix formatting as per checkpatch.pl --strict. Note that 1 warning and 1 check are still raised as each is due to fixing the warning results in that particular line going over 80 characters. - remove warning '/example-0/rpu@ff9a0000/r5@0: node has a unit name, but no reg or ranges property' by adding reg to r5 node. v5: - update device tree sample and yaml parsing to not raise any warnings - description for memory-region in yaml parsing - compatible string in yaml parsing for TCM - parse_fw change from use of rproc_of_resm_mem_entry_init to rproc_mem_entry_init and use of alloc/release - var's of type zynqmp_r5_pdata all have same local variable name - use dev_dbg instead of dev_info Ben Levinsky (5): firmware: xilinx: Add ZynqMP firmware ioctl enums for RPU configuration. firmware: xilinx: Add shutdown/wakeup APIs firmware: xilinx: Add RPU configuration APIs dt-bindings: remoteproc: Add documentation for ZynqMP R5 rproc bindings remoteproc: Add initial zynqmp R5 remoteproc driver .../remoteproc/xilinx,zynqmp-r5-remoteproc.yaml | 126 +++ drivers/firmware/xilinx/zynqmp.c | 134 +++ drivers/remoteproc/Kconfig | 10 + drivers/remoteproc/Makefile | 1 + drivers/remoteproc/zynqmp_r5_remoteproc.c | 902 +++++++++++++++++++++ include/linux/firmware/xlnx-zynqmp.h | 75 ++ 6 files changed, 1248 insertions(+) create mode 100644 Documentation/devicetree/bindings/remoteproc/xilinx,zynqmp-r5-remoteproc.yaml create mode 100644 drivers/remoteproc/zynqmp_r5_remoteproc.c -- 2.7.4