[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 14/17] xen/arm: ITS: Add domain specific ITS initialization
Hi Vijay, On 10/07/2015 09:42, vijay.kilari@xxxxxxxxx wrote: +void its_domain_init(struct domain *d) +{ + struct its_node *its; + + if ( is_hardware_domain(d) ) + { + /* + * Only one virtual ITS is provided to domain. + * Assign first physical ITS address to Dom0 virtual ITS. + */ + its = list_first_entry(&its_nodes, struct its_node, entry); + d->arch.vits->gits_base = its->phys_base; + d->arch.vits->gits_size = its->phys_size; + } + /* TODO: DomU */ +} + With the new vGIC infrastructure, anything related to domain initialization is done in the vGIC. static int its_probe(struct dt_device_node *node) { paddr_t its_addr, its_size; diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 06f8e54..3bd1f2e 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -776,7 +776,9 @@ void __init start_xen(unsigned long boot_phys_offset, init_xen_time(); gic_init(); - +#ifdef CONFIG_ARM_64 + vgic_its_init(); +#endif p2m_vmid_allocator_init(); softirq_init(); [...] +void vgic_its_init(void) +{ + if ( gic_lpi_supported() ) + its_lpi_init(gic_nr_id_bits()); +} + As said on patch #3 its_lpi_init can be called in its_init. In any anycase, it's not the goal of the vGIC to initialize the ITS driver. [...] diff --git a/xen/include/asm-arm/gic_v3_defs.h b/xen/include/asm-arm/gic_v3_defs.h index 368ebb3..24ef547 100644 --- a/xen/include/asm-arm/gic_v3_defs.h +++ b/xen/include/asm-arm/gic_v3_defs.h @@ -243,6 +243,8 @@ #define GITS_BASER_TYPE_RESERVED5 5 #define GITS_BASER_TYPE_RESERVED6 6 #define GITS_BASER_TYPE_RESERVED7 7 +#define GITS_BASER_INIT_VAL ((1UL << GITS_BASER_TYPE_SHIFT) | \ + (0x7UL << GITS_BASER_ENTRY_SIZE_SHIFT)) Please keep this define within the vgic ITS code. 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 |