From: Masami Hiramatsu <masami.hiramatsu@linaro.org>
To: Julien Grall <julien@xen.org>
Cc: xen-devel@lists.xenproject.org,
"Alex Bennée" <alex.bennee@linaro.org>,
ehem+xen@m5p.com, bertrand.marquis@arm.com,
andre.przywara@arm.com, "Julien Grall" <jgrall@amazon.com>,
"Stefano Stabellini" <sstabellini@kernel.org>,
"Volodymyr Babchuk" <Volodymyr_Babchuk@epam.com>,
"Andrew Cooper" <andrew.cooper3@citrix.com>,
"George Dunlap" <george.dunlap@citrix.com>,
"Ian Jackson" <iwj@xenproject.org>,
"Jan Beulich" <jbeulich@suse.com>, "Wei Liu" <wl@xen.org>,
"Roger Pau Monné" <roger.pau@citrix.com>
Subject: Re: [PATCH 0/4] xen/arm: Unbreak ACPI
Date: Mon, 28 Sep 2020 15:47:52 +0900 [thread overview]
Message-ID: <CAA93ih3-gTAEzV=yYS-9cHGyN9rfAC28Xeyk8Gsmi7D2BS_OWQ@mail.gmail.com> (raw)
In-Reply-To: <20200926205542.9261-1-julien@xen.org>
[-- Attachment #1: Type: text/plain, Size: 1375 bytes --]
Hello,
This made progress with my Xen boot on DeveloperBox (
https://www.96boards.org/product/developerbox/ ) with ACPI.
Thank you,
2020年9月27日(日) 5:56 Julien Grall <julien@xen.org>:
>
> From: Julien Grall <jgrall@amazon.com>
>
> Hi all,
>
> Xen on ARM has been broken for quite a while on ACPI systems. This
> series aims to fix it.
>
> Unfortunately I don't have a system with ACPI v6.0 or later (QEMU seems
> to only support 5.1). So I did only some light testing.
>
> I have only build tested the x86 side so far.
>
> Cheers,
>
> *** BLURB HERE ***
>
> Julien Grall (4):
> xen/acpi: Rework acpi_os_map_memory() and acpi_os_unmap_memory()
> xen/arm: acpi: The fixmap area should always be cleared during
> failure/unmap
> xen/arm: Check if the platform is not using ACPI before initializing
> Dom0less
> xen/arm: Introduce fw_unreserved_regions() and use it
>
> xen/arch/arm/acpi/lib.c | 79 ++++++++++++++++++++++++++++++-------
> xen/arch/arm/kernel.c | 2 +-
> xen/arch/arm/setup.c | 25 +++++++++---
> xen/arch/x86/acpi/lib.c | 18 +++++++++
> xen/drivers/acpi/osl.c | 34 ++++++++--------
> xen/include/asm-arm/setup.h | 2 +-
> xen/include/xen/acpi.h | 1 +
> 7 files changed, 123 insertions(+), 38 deletions(-)
>
> --
> 2.17.1
>
--
Masami Hiramatsu
[-- Attachment #2: xen-acpi-hide-uart-address --]
[-- Type: application/octet-stream, Size: 2134 bytes --]
xen: acpi: Hide UART address only if STAO table specified it
From: Masami Hiramatsu <masami.hiramatsu@linaro.org>
Since SPCR table may not exit if STAO->ignore_uart is not set
or STAO table does not exist, at first check the STAO table.
Signed-off-by: Masami Hiramatsu <masami.hiramatsu@linaro.org>
---
xen/arch/arm/acpi/domain_build.c | 29 +++++++++++++++++------------
1 file changed, 17 insertions(+), 12 deletions(-)
diff --git a/xen/arch/arm/acpi/domain_build.c b/xen/arch/arm/acpi/domain_build.c
index 1b1cfabb00..97d1cddfb6 100644
--- a/xen/arch/arm/acpi/domain_build.c
+++ b/xen/arch/arm/acpi/domain_build.c
@@ -28,8 +28,9 @@
static int __init acpi_iomem_deny_access(struct domain *d)
{
- acpi_status status;
+ struct acpi_table_stao *stao = NULL;
struct acpi_table_spcr *spcr = NULL;
+ acpi_status status;
unsigned long mfn;
int rc;
@@ -39,21 +40,25 @@ static int __init acpi_iomem_deny_access(struct domain *d)
return rc;
/* TODO: Deny MMIO access for SMMU, GIC ITS */
- status = acpi_get_table(ACPI_SIG_SPCR, 0,
+ status = acpi_get_table(ACPI_SIG_STAO, 0,
+ (struct acpi_table_header **)&stao);
+ if ( ACPI_SUCCESS(status) && stao->ignore_uart) {
+ /* Deny UART access only when STAO specified it */
+ status = acpi_get_table(ACPI_SIG_SPCR, 0,
(struct acpi_table_header **)&spcr);
+ if ( ACPI_FAILURE(status) )
+ {
+ printk("Failed to get SPCR table\n");
+ return -EINVAL;
+ }
- if ( ACPI_FAILURE(status) )
- {
- printk("Failed to get SPCR table\n");
- return -EINVAL;
+ mfn = spcr->serial_port.address >> PAGE_SHIFT;
+ /* Deny MMIO access for UART */
+ rc = iomem_deny_access(d, mfn, mfn + 1);
+ if ( rc )
+ return rc;
}
- mfn = spcr->serial_port.address >> PAGE_SHIFT;
- /* Deny MMIO access for UART */
- rc = iomem_deny_access(d, mfn, mfn + 1);
- if ( rc )
- return rc;
-
/* Deny MMIO access for GIC regions */
return gic_iomem_deny_access(d);
}
next prev parent reply other threads:[~2020-09-28 6:48 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-26 20:55 [PATCH 0/4] xen/arm: Unbreak ACPI Julien Grall
2020-09-26 20:55 ` [PATCH 1/4] xen/acpi: Rework acpi_os_map_memory() and acpi_os_unmap_memory() Julien Grall
2020-09-28 8:18 ` Jan Beulich
2020-09-28 9:58 ` Julien Grall
2020-09-28 10:09 ` Jan Beulich
2020-09-28 10:39 ` Julien Grall
2020-10-10 9:49 ` Julien Grall
2020-10-10 10:04 ` Julien Grall
2020-09-29 11:10 ` Rahul Singh
2020-10-01 0:06 ` Stefano Stabellini
2020-10-01 15:09 ` Julien Grall
2020-09-26 20:55 ` [PATCH 2/4] xen/arm: acpi: The fixmap area should always be cleared during failure/unmap Julien Grall
2020-09-29 11:13 ` Rahul Singh
2020-10-01 0:30 ` Stefano Stabellini
2020-10-01 15:14 ` Julien Grall
2020-09-26 20:55 ` [PATCH 3/4] xen/arm: Check if the platform is not using ACPI before initializing Dom0less Julien Grall
2020-09-29 11:17 ` Rahul Singh
2020-09-30 23:26 ` Stefano Stabellini
2020-09-26 20:55 ` [PATCH 4/4] xen/arm: Introduce fw_unreserved_regions() and use it Julien Grall
2020-09-30 23:40 ` Stefano Stabellini
2020-10-01 15:34 ` Julien Grall
2020-09-27 1:47 ` [PATCH 0/4] xen/arm: Unbreak ACPI Elliott Mitchell
2020-09-29 15:28 ` Elliott Mitchell
2020-09-28 6:47 ` Masami Hiramatsu [this message]
2020-09-28 12:41 ` [PATCH] xen: acpi: Hide UART address only if SPCR exists Masami Hiramatsu
2020-09-28 12:42 ` Masami Hiramatsu
2021-01-19 7:25 ` Elliott Mitchell
2021-01-20 18:05 ` Julien Grall
2020-09-28 13:00 ` [PATCH 0/4] xen/arm: Unbreak ACPI Masami Hiramatsu
2020-10-16 22:33 ` Xen-ARM EFI/ACPI problems (was: Re: [PATCH 0/4] xen/arm: Unbreak ACPI) Elliott Mitchell
2020-10-17 5:12 ` Elliott Mitchell
2020-10-08 18:39 ` [PATCH 0/4] xen/arm: Unbreak ACPI Elliott Mitchell
2020-10-09 9:39 ` Julien Grall
2020-10-09 14:22 ` Elliott Mitchell
2020-10-09 18:15 ` Julien Grall
2020-10-09 22:36 ` Elliott Mitchell
2020-10-09 21:49 ` Elliott Mitchell
2020-10-10 11:02 ` Julien Grall
2020-10-12 19:02 ` Stefano Stabellini
2020-10-12 21:34 ` Elliott Mitchell
2020-10-14 1:06 ` Stefano Stabellini
2020-10-14 1:37 ` Elliott Mitchell
2020-10-14 17:47 ` Julien Grall
2020-10-15 18:00 ` Stefano Stabellini
2020-10-14 17:44 ` Julien Grall
2020-09-29 11:10 ` Rahul Singh
2020-09-29 15:29 ` Alex Bennée
2020-09-29 17:07 ` Julien Grall
2020-09-29 21:11 ` Alex Bennée
2020-09-29 23:39 ` André Przywara
2020-09-30 8:51 ` Alex Bennée
2020-09-30 10:35 ` Julien Grall
2020-09-30 9:42 ` Julien Grall
2020-09-30 10:38 ` Alex Bennée
2020-09-30 11:10 ` Julien Grall
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAA93ih3-gTAEzV=yYS-9cHGyN9rfAC28Xeyk8Gsmi7D2BS_OWQ@mail.gmail.com' \
--to=masami.hiramatsu@linaro.org \
--cc=Volodymyr_Babchuk@epam.com \
--cc=alex.bennee@linaro.org \
--cc=andre.przywara@arm.com \
--cc=andrew.cooper3@citrix.com \
--cc=bertrand.marquis@arm.com \
--cc=ehem+xen@m5p.com \
--cc=george.dunlap@citrix.com \
--cc=iwj@xenproject.org \
--cc=jbeulich@suse.com \
--cc=jgrall@amazon.com \
--cc=julien@xen.org \
--cc=roger.pau@citrix.com \
--cc=sstabellini@kernel.org \
--cc=wl@xen.org \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).