[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Xen: Support for mapping OperationRegion in ACPI ASL
On Thu, 22 Dec 2016, Jan Beulich wrote: > >>> On 20.12.16 at 23:50, <sstabellini@xxxxxxxxxx> wrote: > > On Tue, 20 Dec 2016, Jan Beulich wrote: > >> >>> On 20.12.16 at 00:01, <sstabellini@xxxxxxxxxx> wrote: > >> > This is actually not an ARM specific question, so changing the subject > >> > and CC'ing more people. > >> > > >> > On Wed, 14 Dec 2016, Konrad Rzeszutek Wilk wrote: > >> >> On Tue, Dec 13, 2016 at 07:14:27PM -0600, Jiandi An wrote: > >> >> > Xen currently does not handle mapping of MMIO regions specified under > >> > OperationRegion in ACPI ASL. OperationRegion is well defined in ACPI > >> > specification. I'm seeking for architectural direction on adding > >> > support > > for > >> > mapping OperationRegion. > >> >> > > >> >> > Some context here. Mapping of resources specificed under _CRS in > >> >> > ACPI is > >> > handled by dom0 requesting Xen to map as platform devices are added. > >> > https://lwn.net/Articles/674666/ provided service xen_map_device_mmio() > >> > in > >> > dom0 to call Xen to map and it's done so by registering > >> > xen_platform_notifier() platform bus driver. This covers the platform > >> > devices. > >> >> > > >> >> > The OperationRegion access in dom0 is in acpica path. The following > >> >> > is a > >> > stack of the code path where OperationRegion is parsed. > >> > >> But aren't such regions required to be claimed by resource > >> declarations elsewhere? I don't think the mapping (into the p2m) > >> should happen during an access attempt, but much earlier. But > >> perhaps I'm missing some context ... > > > > Please correct me if I am wrong, but we are talking about ACPI > > initialization here. In fact, acpi_init was one of the first functions > > in the callstack of the previous email. So yes, we are trying to map the > > regions when they are discovered during ACPI initialization, which is as > > early as possible I think. > > Yes and no: Yes - we are in the context of acpi_init(). But no, the > mapping did not get established prior to the first access, or else > the call stack wouldn't include > > acpi_ex_system_memory_space_handler+0x378/0x424 > acpi_ev_address_space_dispatch+0x294/0x310 > acpi_ex_access_region+0x3c0/0x468 > acpi_ex_field_datum_io+0x14c/0x380 > acpi_ex_extract_from_field+0xe8/0x2f4 > acpi_ex_read_data_from_field+0x330/0x38c > > I would expect resource claiming to precede this, and that would > then be where the mapping should also be requested. Good point. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |