From patchwork Thu Mar 24 14:44:32 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Shannon Zhao X-Patchwork-Id: 64380 Delivered-To: patch@linaro.org Received: by 10.112.199.169 with SMTP id jl9csp698057lbc; Thu, 24 Mar 2016 07:49:28 -0700 (PDT) X-Received: by 10.66.65.201 with SMTP id z9mr3098139pas.143.1458830921111; Thu, 24 Mar 2016 07:48:41 -0700 (PDT) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 4si12639928pfn.223.2016.03.24.07.48.40; Thu, 24 Mar 2016 07:48:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757776AbcCXOsb (ORCPT + 29 others); Thu, 24 Mar 2016 10:48:31 -0400 Received: from mail-pf0-f174.google.com ([209.85.192.174]:36516 "EHLO mail-pf0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757687AbcCXOsM (ORCPT ); Thu, 24 Mar 2016 10:48:12 -0400 Received: by mail-pf0-f174.google.com with SMTP id u190so59617044pfb.3 for ; Thu, 24 Mar 2016 07:48:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=XR6ymZ8RWWhOIaT+lup2UmB35hJzYksfwcdn9REV2Ss=; b=Y5rRKDkzeNzkjG/+Isb/rEXqGoh0Xg+Yziu4eFURTO7vdVjGOpMr1yWbbaN+NNxIhO P8JCOysIe7N182YbMEnvcc0a1MqEcTfmdEHHyi/IitzesYdj9ZOgL8OsUSfxsmsNiFMs YIA3VP6sGP3IyzTvS39B+N9lVGoYuqri7paS4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=XR6ymZ8RWWhOIaT+lup2UmB35hJzYksfwcdn9REV2Ss=; b=BWYKtIvgSNFVG8HD3pMd7ysAg3SxPhIifohNF+sdy7Jkmqe6OTW6c1xZYSrl29FiKX qcelKz9zgcmKTA5KhtIYBxHQFcbWK7PDzv/u4A8zHxIswt09WGKgi6H1Rd4eVbpRiK0K 2WNqbDEEYSbjcRkGpS90YD0/NrkiVlTOitUF8pRJyGKqJQhft+nSFUI8xMH8wpeJWrJF SdcyYQoKhzJ4wICTh4GK8dtvrPxIn9Oe9XQu409NMRZibm/a6EYkGbs6EZeGP53UHohR cdZJ3swbowMCeUKspNEUsYZbs1vTt8SQQ763CUCIdcLrShxOscL5Pn8GsBZI8W/viZIs GnBw== X-Gm-Message-State: AD7BkJJupDcrMJnlPkwV/r364VcwhW4jcRv0UPk1HVYx9ZFEQvNHyY/10md6hcHiD90+31pR X-Received: by 10.98.72.213 with SMTP id q82mr13458811pfi.164.1458830890953; Thu, 24 Mar 2016 07:48:10 -0700 (PDT) Received: from localhost.localdomain ([104.238.45.135]) by smtp.gmail.com with ESMTPSA id lq10sm10780673pab.36.2016.03.24.07.47.58 (version=TLSv1/SSLv3 cipher=OTHER); Thu, 24 Mar 2016 07:48:09 -0700 (PDT) From: Shannon Zhao To: linux-arm-kernel@lists.infradead.org, stefano.stabellini@citrix.com, david.vrabel@citrix.com Cc: devicetree@vger.kernel.org, linux-efi@vger.kernel.org, linux-kernel@vger.kernel.org, catalin.marinas@arm.com, will.deacon@arm.com, julien.grall@arm.com, peter.huangpeng@huawei.com, xen-devel@lists.xen.org, zhaoshenglong@huawei.com, shannon.zhao@linaro.org, Rob Herring Subject: [PATCH v7 13/17] ARM: Xen: Document UEFI support on Xen ARM virtual platforms Date: Thu, 24 Mar 2016 22:44:32 +0800 Message-Id: <1458830676-27075-14-git-send-email-shannon.zhao@linaro.org> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1458830676-27075-1-git-send-email-shannon.zhao@linaro.org> References: <1458830676-27075-1-git-send-email-shannon.zhao@linaro.org> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add a "uefi" node under /hypervisor node in FDT, then Linux kernel could scan this to get the UEFI information. CC: Rob Herring Signed-off-by: Shannon Zhao Acked-by: Rob Herring Reviewed-by: Stefano Stabellini --- Documentation/devicetree/bindings/arm/xen.txt | 33 +++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) -- 2.1.4 diff --git a/Documentation/devicetree/bindings/arm/xen.txt b/Documentation/devicetree/bindings/arm/xen.txt index 0f7b9c2..6f83f76 100644 --- a/Documentation/devicetree/bindings/arm/xen.txt +++ b/Documentation/devicetree/bindings/arm/xen.txt @@ -15,6 +15,26 @@ the following properties: - interrupts: the interrupt used by Xen to inject event notifications. A GIC node is also required. +To support UEFI on Xen ARM virtual platforms, Xen populates the FDT "uefi" node +under /hypervisor with following parameters: + +________________________________________________________________________________ +Name | Size | Description +================================================================================ +xen,uefi-system-table | 64-bit | Guest physical address of the UEFI System + | | Table. +-------------------------------------------------------------------------------- +xen,uefi-mmap-start | 64-bit | Guest physical address of the UEFI memory + | | map. +-------------------------------------------------------------------------------- +xen,uefi-mmap-size | 32-bit | Size in bytes of the UEFI memory map + | | pointed to in previous entry. +-------------------------------------------------------------------------------- +xen,uefi-mmap-desc-size | 32-bit | Size in bytes of each entry in the UEFI + | | memory map. +-------------------------------------------------------------------------------- +xen,uefi-mmap-desc-ver | 32-bit | Version of the mmap descriptor format. +-------------------------------------------------------------------------------- Example (assuming #address-cells = <2> and #size-cells = <2>): @@ -22,4 +42,17 @@ hypervisor { compatible = "xen,xen-4.3", "xen,xen"; reg = <0 0xb0000000 0 0x20000>; interrupts = <1 15 0xf08>; + uefi { + xen,uefi-system-table = <0xXXXXXXXX>; + xen,uefi-mmap-start = <0xXXXXXXXX>; + xen,uefi-mmap-size = <0xXXXXXXXX>; + xen,uefi-mmap-desc-size = <0xXXXXXXXX>; + xen,uefi-mmap-desc-ver = <0xXXXXXXXX>; + }; }; + +The format and meaning of the "xen,uefi-*" parameters are similar to those in +Documentation/arm/uefi.txt, which are provided by the regular UEFI stub. However +they differ because they are provided by the Xen hypervisor, together with a set +of UEFI runtime services implemented via hypercalls, see +http://xenbits.xen.org/docs/unstable/hypercall/x86_64/include,public,platform.h.html.