Home
last modified time | relevance | path

Searched refs:vgic (Results 1 – 11 of 11) sorted by relevance

/xen-4.10.0-shim-comet/xen/arch/arm/
A Dvgic.c98 switch ( d->arch.vgic.version ) in domain_vgic_register()
124 d->arch.vgic.ctlr = 0; in domain_vgic_init()
130 d->arch.vgic.nr_spis = nr_spis; in domain_vgic_init()
134 d->arch.vgic.shared_irqs = in domain_vgic_init()
139 d->arch.vgic.pending_irqs = in domain_vgic_init()
155 d->arch.vgic.allocated_irqs = in domain_vgic_init()
169 d->arch.vgic.handler = ops; in register_vgic_ops()
190 if ( d->arch.vgic.handler ) in domain_vgic_free()
192 xfree(d->arch.vgic.shared_irqs); in domain_vgic_free()
193 xfree(d->arch.vgic.pending_irqs); in domain_vgic_free()
[all …]
A Dvgic-v3.c178 if ( !v->domain->arch.vgic.has_its ) in __vgic_v3_rdistr_rd_mmio_read()
210 if ( v->domain->arch.vgic.has_its ) in __vgic_v3_rdistr_rd_mmio_read()
244 if ( !v->domain->arch.vgic.has_its ) in __vgic_v3_rdistr_rd_mmio_read()
257 if ( !v->domain->arch.vgic.has_its ) in __vgic_v3_rdistr_rd_mmio_read()
493 if ( !v->domain->arch.vgic.has_its ) in __vgic_v3_rdistr_rd_mmio_write()
545 if ( !v->domain->arch.vgic.has_its ) in __vgic_v3_rdistr_rd_mmio_write()
1625 v->arch.vgic.rdist_base = rdist_base; in vgic_v3_vcpu_init()
1659 d->arch.vgic.nr_regions = rdist_count; in vgic_v3_domain_init()
1681 if ( !d->arch.vgic.rdist_stride ) in vgic_v3_domain_init()
1721 d->arch.vgic.intid_bits = 10; in vgic_v3_domain_init()
[all …]
A Dgic.c391 ASSERT(spin_is_locked(&v->arch.vgic.lock)); in gic_add_to_lr_pending()
409 ASSERT(spin_is_locked(&v->arch.vgic.lock)); in gic_remove_from_lr_pending()
416 ASSERT(spin_is_locked(&v->arch.vgic.lock)); in gic_remove_irq_from_queues()
431 ASSERT(spin_is_locked(&v->arch.vgic.lock)); in gic_raise_inflight_irq()
464 ASSERT(spin_is_locked(&v->arch.vgic.lock)); in gic_find_unused_lr()
490 ASSERT(spin_is_locked(&v->arch.vgic.lock)); in gic_raise_guest_irq()
516 ASSERT(spin_is_locked(&v->arch.vgic.lock)); in gic_update_one_lr()
611 spin_lock_irqsave(&v->arch.vgic.lock, flags); in gic_clear_lrs()
633 if ( list_empty(&v->arch.vgic.lr_pending) ) in gic_restore_pending_irqs()
636 inflight_r = &v->arch.vgic.inflight_irqs; in gic_restore_pending_irqs()
[all …]
A Dvgic-v3-its.c373 spin_lock_irqsave(&vcpu->arch.vgic.lock, flags); in its_handle_clear()
413 if ( !d->arch.vgic.rdists_enabled ) in update_lpi_property()
443 ASSERT(spin_is_locked(&v->arch.vgic.lock)); in update_lpi_vgic_status()
472 if ( !d->arch.vgic.rdists_enabled ) in its_handle_inv()
489 spin_lock_irqsave(&vcpu->arch.vgic.lock, flags); in its_handle_inv()
539 if ( !its->d->arch.vgic.rdists_enabled ) in its_handle_invall()
546 spin_lock_irqsave(&vcpu->arch.vgic.lock, flags); in its_handle_invall()
607 spin_lock_irqsave(&vcpu->arch.vgic.lock, flags); in its_discard_event()
1522 INIT_LIST_HEAD(&d->arch.vgic.vits_list); in vgic_v3_its_init_domain()
1524 d->arch.vgic.its_devices = RB_ROOT; in vgic_v3_its_init_domain()
[all …]
A DMakefile49 obj-y += vgic.o
50 obj-y += vgic-v2.o
51 obj-$(CONFIG_HAS_GICV3) += vgic-v3.o
52 obj-$(CONFIG_HAS_ITS) += vgic-v3-its.o
A Dvgic-v2.c172 int gicd_reg = (int)(info->gpa - v->domain->arch.vgic.dbase); in vgic_v2_distr_mmio_read()
182 *r = vreg_reg32_extract(v->domain->arch.vgic.ctlr, info); in vgic_v2_distr_mmio_read()
194 | DIV_ROUND_UP(v->domain->arch.vgic.nr_spis, 32); in vgic_v2_distr_mmio_read()
415 int gicd_reg = (int)(info->gpa - v->domain->arch.vgic.dbase); in vgic_v2_distr_mmio_write()
427 vreg_reg32_update(&v->domain->arch.vgic.ctlr, r, info); in vgic_v2_distr_mmio_write()
428 v->domain->arch.vgic.ctlr &= GICD_CTL_ENABLE; in vgic_v2_distr_mmio_write()
661 d->arch.vgic.dbase = vgic_v2_hw.dbase; in vgic_v2_domain_init()
675 d->arch.vgic.dbase = GUEST_GICD_BASE; in vgic_v2_domain_init()
697 register_mmio_handler(d, &vgic_v2_distr_mmio_handler, d->arch.vgic.dbase, in vgic_v2_domain_init()
A Dgic-v3-its.c645 struct rb_node **new = &d->arch.vgic.its_devices.rb_node, *parent = NULL; in gicv3_its_map_guest_device()
670 spin_lock(&d->arch.vgic.its_devices_lock); in gicv3_its_map_guest_device()
683 rb_erase(&temp->rbnode, &d->arch.vgic.its_devices); in gicv3_its_map_guest_device()
685 spin_unlock(&d->arch.vgic.its_devices_lock); in gicv3_its_map_guest_device()
750 rb_insert_color(&dev->rbnode, &d->arch.vgic.its_devices); in gicv3_its_map_guest_device()
752 spin_unlock(&d->arch.vgic.its_devices_lock); in gicv3_its_map_guest_device()
792 spin_unlock(&d->arch.vgic.its_devices_lock); in gicv3_its_map_guest_device()
810 struct rb_node *node = d->arch.vgic.its_devices.rb_node; in get_its_device()
813 ASSERT(spin_is_locked(&d->arch.vgic.its_devices_lock)); in get_its_device()
843 spin_lock(&d->arch.vgic.its_devices_lock); in get_event_pending_irq()
[all …]
A Dgic-v3.c389 if ( v->domain->arch.vgic.version == GIC_V2 ) in gicv3_restore_state()
979 if ( current->domain->arch.vgic.version == GIC_V3 ) in gicv3_update_lr()
1163 d->arch.vgic.rdist_stride); in gicv3_make_hwdom_dt_node()
1168 d->arch.vgic.nr_regions); in gicv3_make_hwdom_dt_node()
1178 len = len * (d->arch.vgic.nr_regions + 1); in gicv3_make_hwdom_dt_node()
1185 dt_set_range(&tmp, gic, d->arch.vgic.dbase, SZ_64K); in gicv3_make_hwdom_dt_node()
1187 for ( i = 0; i < d->arch.vgic.nr_regions; i++ ) in gicv3_make_hwdom_dt_node()
1189 d->arch.vgic.rdist_regions[i].size); in gicv3_make_hwdom_dt_node()
1415 for ( i = 0; i < d->arch.vgic.nr_regions; i++ ) in gicv3_make_hwdom_madt()
1421 gicr->length = d->arch.vgic.rdist_regions[i].size; in gicv3_make_hwdom_madt()
[all …]
A Ddomain.c613 d->arch.vgic.version = GIC_V2; in arch_domain_create()
618 d->arch.vgic.version = GIC_V3; in arch_domain_create()
627 d->arch.vgic.version = GIC_V2; in arch_domain_create()
631 d->arch.vgic.version = GIC_V3; in arch_domain_create()
977 if ( !d->arch.vgic.handler ) in domain_max_vcpus()
981 d->arch.vgic.handler->max_vcpus); in domain_max_vcpus()
/xen-4.10.0-shim-comet/xen/include/asm-arm/
A Dvgic.h154 #define DOMAIN_NR_RANKS(d) (((d)->arch.vgic.nr_spis+31)/32)
156 #define vgic_lock(v) spin_lock_irq(&(v)->domain->arch.vgic.lock)
157 #define vgic_unlock(v) spin_unlock_irq(&(v)->domain->arch.vgic.lock)
199 #define vgic_num_irqs(d) ((d)->arch.vgic.nr_spis + 32)
A Ddomain.h127 } vgic; member
281 } vgic; member

Completed in 24 milliseconds