|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3 8/8] xen/arm: Handle translated addresses for hardware domains
Hi Frediano,
On 11/05/2014 09:41 AM, Frediano Ziglio wrote:
> Translated address could have an offset applied to them.
> Replicate same value for device node to avoid improper address
> computation in the OS.
>
> Signed-off-by: Frediano Ziglio <frediano.ziglio@xxxxxxxxxx>
> ---
> xen/arch/arm/gic-v2.c | 23 +++++++++++++++++++++--
> 1 file changed, 21 insertions(+), 2 deletions(-)
>
> diff --git a/xen/arch/arm/gic-v2.c b/xen/arch/arm/gic-v2.c
> index 2f6bbd5..271074d 100644
> --- a/xen/arch/arm/gic-v2.c
> +++ b/xen/arch/arm/gic-v2.c
> @@ -67,8 +67,10 @@
> /* Global state */
> static struct {
> paddr_t dbase; /* Address of distributor registers */
> + paddr_t dbase_raw; /* Untranslated address of distributor
> registers */
> void __iomem * map_dbase; /* IO mapped Address of distributor registers
> */
> paddr_t cbase; /* Address of CPU interface registers */
> + paddr_t cbase_raw; /* Untranslated address of CPU interface
> registers */
> void __iomem * map_cbase[2]; /* IO mapped Address of CPU interface
> registers */
> paddr_t hbase; /* Address of virtual interface registers */
> void __iomem * map_hbase; /* IO Address of virtual interface registers */
> @@ -671,8 +673,17 @@ static int gicv2_make_dt_node(const struct domain *d,
> return -FDT_ERR_XEN(ENOMEM);
>
> tmp = new_cells;
> - dt_set_range(&tmp, node, d->arch.vgic.dbase, PAGE_SIZE);
> - dt_set_range(&tmp, node, d->arch.vgic.cbase, PAGE_SIZE * 2);
> +
> + if ( is_hardware_domain(d) )
> + {
This check is pointless, as said on an earlier version of this series,
gicv2_make_dt_node is only used to create DOM0 (hardware domain) device
tree.
Regards,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |