[<prev] [next>] [day] [month] [year] [list]
Message-ID: <alpine.DEB.2.02.1603041615200.17938@kaball.uk.xensource.com>
Date: Fri, 4 Mar 2016 16:28:10 +0000
From: Stefano Stabellini <stefano.stabellini@...citrix.com>
To: Shannon Zhao <shannon.zhao@...aro.org>
CC: Stefano Stabellini <stefano.stabellini@...citrix.com>,
Shannon Zhao <zhaoshenglong@...wei.com>,
<linux-arm-kernel@...ts.infradead.org>,
<ard.biesheuvel@...aro.org>, <stefano.stabellini@...rix.com>,
<david.vrabel@...rix.com>, <catalin.marinas@....com>,
<will.deacon@....com>, <mark.rutland@....com>,
<xen-devel@...ts.xen.org>, <devicetree@...r.kernel.org>,
<linux-efi@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<hangaohuai@...wei.com>, "Rafael J. Wysocki" <rjw@...ysocki.net>,
Len Brown <lenb@...nel.org>, open list:;
Subject: Re: [PATCH v5 01/17] Xen: ACPI: Hide UART used by Xen
On Fri, 4 Mar 2016, Shannon Zhao wrote:
> On 2016/3/4 20:24, Stefano Stabellini wrote:
> > On Fri, 4 Mar 2016, Shannon Zhao wrote:
> > > >From: Shannon Zhao<shannon.zhao@...aro.org>
> > > >
> > > >ACPI 6.0 introduces a new table STAO to list the devices which are used
> > > >by Xen and can't be used by Dom0. On Xen virtual platforms, the physical
> > > >UART is used by Xen. So here it hides UART from Dom0.
> > > >
> > > >Signed-off-by: Shannon Zhao<shannon.zhao@...aro.org>
> > > >---
> > > >CC: "Rafael J. Wysocki"<rjw@...ysocki.net> (supporter:ACPI)
> > > >CC: Len Brown<lenb@...nel.org> (supporter:ACPI)
> > > >CC:linux-acpi@...r.kernel.org (open list:ACPI)
> > > >---
> > > > drivers/acpi/scan.c | 68
> > > +++++++++++++++++++++++++++++++++++++++++++++++++++++
> > > > 1 file changed, 68 insertions(+)
> > > >
> > > >diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c
> > > >index 407a376..31d794c 100644
> > > >--- a/drivers/acpi/scan.c
> > > >+++ b/drivers/acpi/scan.c
> > > >@@ -45,6 +45,7 @@ static LIST_HEAD(acpi_scan_handlers_list);
> > > > DEFINE_MUTEX(acpi_device_lock);
> > > > LIST_HEAD(acpi_wakeup_device_list);
> > > > static DEFINE_MUTEX(acpi_hp_context_lock);
> > > >+static u64 spcr_uart_addr;
> > > >
> > > > struct acpi_dep_data {
> > > > struct list_head node;
> > > >@@ -1453,6 +1454,47 @@ static int acpi_add_single_object(struct
> > > acpi_device **child,
> > > > return 0;
> > > > }
> > > >
> > > >+static acpi_status acpi_get_resource_fixed_memory32(struct acpi_resource
> > > *res,
> > > >+ void *context)
> > > >+{
> > > >+ struct acpi_resource_fixed_memory32 *fixed_memory32;
> > > >+
> > > >+ if (res->type != ACPI_RESOURCE_TYPE_FIXED_MEMORY32)
> > > >+ return AE_OK;
> > > >+
> > > >+ fixed_memory32 = &res->data.fixed_memory32;
> > Should we call acpi_resource_to_address64 instead?
> > Aside from this the rest looks good.
> >
> You mean the resource type could be other types? like
> ACPI_RESOURCE_TYPE_ADDRESS64 or ACPI_RESOURCE_TYPE_ADDRESS32? So it needs to
> convert them to ACPI_RESOURCE_TYPE_ADDRESS64 firstly?
I meant to ask whether we need to check for other types of resources, in
addition to ACPI_RESOURCE_TYPE_FIXED_MEMORY32. So maybe call an
existing function that already does the check for us.
acpi_dev_resource_memory is actually what I meant to suggest.
Powered by blists - more mailing lists