[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] Design doc of adding ACPI support for arm64 on Xen - version 2



Hi Julien,

On 2015/8/7 18:33, Julien Grall wrote:
> Hi Shannon,
> 
> Just some clarification questions.
> 
> On 07/08/15 03:11, Shannon Zhao wrote:
>> 3. Dom0 gets grant table and event channel irq information
>> -----------------------------------------------------------
>> As said above, we assign the hypervisor_id be "XenVMM" to tell Dom0 that
>> it runs on Xen hypervisor.
>>
>> For grant table, add two new HVM_PARAMs: HVM_PARAM_GNTTAB_START_ADDRESS
>> and HVM_PARAM_GNTTAB_SIZE.
>>
>> For event channel irq, reuse HVM_PARAM_CALLBACK_IRQ and add a new
>> delivery type:
>> val[63:56] == 3: val[15:8] is flag: val[7:0] is a PPI (ARM and ARM64
>> only)
> 
> Can you describe the content of flag?
> 

This needs definition as well. I think it could use the definition of
xenv table. Bit 0 stands interrupt mode and bit 1 stands interrupt
polarity. And explain it in the comment of HVM_PARAM_CALLBACK_IRQ.

>> When constructing Dom0 in Xen, save these values. Then Dom0 could get
>> them through hypercall HVMOP_get_param.
>>
>> 4. Map MMIO regions
>> -------------------
>> Register a bus_notifier for platform and amba bus in Linux. Add a new
>> XENMAPSPACE "XENMAPSPACE_dev_mmio". Within the register, check if the
>> device is newly added, then call hypercall XENMEM_add_to_physmap to map
>> the mmio regions.
>>
>> 5. Route device interrupts to Dom0
>> ----------------------------------
>> Route all the SPI interrupts to Dom0 before Dom0 booting.
> 
> Not all the SPI will be routed to DOM0. Some are used by Xen and should
> never be used by any guest. I have in mind the UART and SMMU interrupts.
> 
> You will have to find away to skip them nicely. Note that not all the
> IRQs used by Xen are properly registered when we build DOM0 (see the SMMU).
> 
To uart, we can get the interrupt information from SPCR table and hide
it from Dom0.

IIUC, currently Xen (as well as Linux) doesn't support use SMMU when
booting with ACPI. When it supports, it could read the interrupts
information from IORT table and Hide them from Dom0.

-- 
Shannon


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.