{"id":817664,"url":"http://patchwork.ozlabs.org/api/patches/817664/?format=json","web_url":"http://patchwork.ozlabs.org/project/devicetree-bindings/patch/20170922182614.27885-7-james.morse@arm.com/","project":{"id":37,"url":"http://patchwork.ozlabs.org/api/projects/37/?format=json","name":"Devicetree Bindings","link_name":"devicetree-bindings","list_id":"devicetree.vger.kernel.org","list_email":"devicetree@vger.kernel.org","web_url":"","scm_url":"","webscm_url":"","list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20170922182614.27885-7-james.morse@arm.com>","list_archive_url":null,"date":"2017-09-22T18:26:07","name":"[v3,06/13] Docs: dt: add devicetree binding for describing arm64 SDEI firmware","commit_ref":null,"pull_url":null,"state":"not-applicable","archived":true,"hash":"21a15c0ace9d9780581a9d019d45d96eb1e726b2","submitter":{"id":66575,"url":"http://patchwork.ozlabs.org/api/people/66575/?format=json","name":"James Morse","email":"james.morse@arm.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/devicetree-bindings/patch/20170922182614.27885-7-james.morse@arm.com/mbox/","series":[{"id":4687,"url":"http://patchwork.ozlabs.org/api/series/4687/?format=json","web_url":"http://patchwork.ozlabs.org/project/devicetree-bindings/list/?series=4687","date":"2017-09-22T18:26:01","name":"arm64/firmware: Software Delegated Exception Interface","version":3,"mbox":"http://patchwork.ozlabs.org/series/4687/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/817664/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/817664/checks/","tags":{},"related":[],"headers":{"Return-Path":"<devicetree-owner@vger.kernel.org>","X-Original-To":"incoming-dt@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-dt@bilbo.ozlabs.org","Authentication-Results":"ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=devicetree-owner@vger.kernel.org; receiver=<UNKNOWN>)","Received":["from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xzMRc3NZ0z9t32\n\tfor <incoming-dt@patchwork.ozlabs.org>;\n\tSat, 23 Sep 2017 04:28:12 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1751907AbdIVS2L (ORCPT\n\t<rfc822;incoming-dt@patchwork.ozlabs.org>);\n\tFri, 22 Sep 2017 14:28:11 -0400","from usa-sjc-mx-foss1.foss.arm.com ([217.140.101.70]:60130 \"EHLO\n\tfoss.arm.com\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP\n\tid S1751795AbdIVS2L (ORCPT <rfc822;devicetree@vger.kernel.org>);\n\tFri, 22 Sep 2017 14:28:11 -0400","from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249])\n\tby usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2952E169F;\n\tFri, 22 Sep 2017 11:28:11 -0700 (PDT)","from melchizedek.cambridge.arm.com (melchizedek.cambridge.arm.com\n\t[10.1.207.55])\n\tby usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id\n\t38B4E3F58C; Fri, 22 Sep 2017 11:28:09 -0700 (PDT)"],"From":"James Morse <james.morse@arm.com>","To":"linux-arm-kernel@lists.infradead.org","Cc":"kvmarm@lists.cs.columbia.edu, devicetree@vger.kernel.org,\n\tWill Deacon <will.deacon@arm.com>,\n\tCatalin Marinas <catalin.marinas@arm.com>,\n\tMark Rutland <mark.rutland@arm.com>, Rob Herring <robh+dt@kernel.org>,\n\tMarc Zyngier <marc.zyngier@arm.com>,\n\tChristoffer Dall <christoffer.dall@linaro.org>,\n\tLorenzo Pieralisi <lorenzo.pieralisi@arm.com>, Loc Ho <lho@apm.com>","Subject":"[PATCH v3 06/13] Docs: dt: add devicetree binding for describing\n\tarm64 SDEI firmware","Date":"Fri, 22 Sep 2017 19:26:07 +0100","Message-Id":"<20170922182614.27885-7-james.morse@arm.com>","X-Mailer":"git-send-email 2.13.3","In-Reply-To":"<20170922182614.27885-1-james.morse@arm.com>","References":"<20170922182614.27885-1-james.morse@arm.com>","Sender":"devicetree-owner@vger.kernel.org","Precedence":"bulk","List-ID":"<devicetree.vger.kernel.org>","X-Mailing-List":"devicetree@vger.kernel.org"},"content":"The Software Delegated Exception Interface (SDEI) is an ARM standard\nfor registering callbacks from the platform firmware into the OS.\nThis is typically used to implement RAS notifications, or from an\nIRQ that has been promoted to a firmware-assisted NMI.\n\nAdd a new devicetree binding to describe the SDE firmware interface.\n\nSigned-off-by: James Morse <james.morse@arm.com>\nAcked-by: Rob Herring <robh@kernel.org>\n---\nChanges since v2:\n * Added Rob's Ack\n * Fixed 'childe node' typo\n\nChanges since v1:\n* Added bound IRQ description for binding,\n* Reference SMC-CC, not 'AAPCS like'\n* Move sdei node under firmware node (and the file path)\n\n .../devicetree/bindings/arm/firmware/sdei.txt      | 42 ++++++++++++++++++++++\n 1 file changed, 42 insertions(+)\n create mode 100644 Documentation/devicetree/bindings/arm/firmware/sdei.txt","diff":"diff --git a/Documentation/devicetree/bindings/arm/firmware/sdei.txt b/Documentation/devicetree/bindings/arm/firmware/sdei.txt\nnew file mode 100644\nindex 000000000000..ee3f0ff49889\n--- /dev/null\n+++ b/Documentation/devicetree/bindings/arm/firmware/sdei.txt\n@@ -0,0 +1,42 @@\n+* Software Delegated Exception Interface (SDEI)\n+\n+Firmware implementing the SDEI functions described in ARM document number\n+ARM DEN 0054A (\"Software Delegated Exception Interface\") can be used by\n+Linux to receive notification of events such as those generated by\n+firmware-first error handling, or from an IRQ that has been promoted to\n+a firmware-assisted NMI.\n+\n+The interface provides a number of API functions for registering callbacks\n+and enabling/disabling events. Functions are invoked by trapping to the\n+privilege level of the SDEI firmware (specified as part of the binding\n+below) and passing arguments in a manner specified by the \"SMC Calling\n+Convention (ARM DEN 0028B):\n+\n+\t r0\t\t=> 32-bit Function ID / return value\n+\t{r1 - r3}\t=> Parameters\n+\n+Note that the immediate field of the trapping instruction must be set\n+to #0.\n+\n+The SDEI_EVENT_REGISTER function registers a callback in the kernel\n+text to handle the specified event number.\n+\n+The sdei node should be a child node of '/firmware' and have required\n+properties:\n+\n+ - compatible    : should contain:\n+\t* \"arm,sdei-1.0\" : For implementations complying to SDEI version 1.x.\n+\n+ - method        : The method of calling the SDEI firmware. Permitted\n+                   values are:\n+\t* \"smc\" : SMC #0, with the register assignments specified in this\n+\t          binding.\n+\t* \"hvc\" : HVC #0, with the register assignments specified in this\n+\t          binding.\n+Example:\n+\tfirmware {\n+\t\tsdei {\n+\t\t\tcompatible\t= \"arm,sdei-1.0\";\n+\t\t\tmethod\t\t= \"smc\";\n+\t\t};\n+\t};\n","prefixes":["v3","06/13"]}