Commit d50676f5 authored by Marc Zyngier's avatar Marc Zyngier

irqchip/gic-v4.1: Add VSGI property setup

Add the SGI configuration entry point for KVM to use.
Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
Reviewed-by: default avatarZenghui Yu <yuzenghui@huawei.com>
Link: https://lore.kernel.org/r/20200304203330.4967-16-maz@kernel.org
parent 6d31b6ff
...@@ -320,6 +320,19 @@ int its_prop_update_vlpi(int irq, u8 config, bool inv) ...@@ -320,6 +320,19 @@ int its_prop_update_vlpi(int irq, u8 config, bool inv)
return irq_set_vcpu_affinity(irq, &info); return irq_set_vcpu_affinity(irq, &info);
} }
int its_prop_update_vsgi(int irq, u8 priority, bool group)
{
struct its_cmd_info info = {
.cmd_type = PROP_UPDATE_VSGI,
{
.priority = priority,
.group = group,
},
};
return irq_set_vcpu_affinity(irq, &info);
}
int its_init_v4(struct irq_domain *domain, int its_init_v4(struct irq_domain *domain,
const struct irq_domain_ops *vpe_ops, const struct irq_domain_ops *vpe_ops,
const struct irq_domain_ops *sgi_ops) const struct irq_domain_ops *sgi_ops)
......
...@@ -134,6 +134,7 @@ int its_map_vlpi(int irq, struct its_vlpi_map *map); ...@@ -134,6 +134,7 @@ int its_map_vlpi(int irq, struct its_vlpi_map *map);
int its_get_vlpi(int irq, struct its_vlpi_map *map); int its_get_vlpi(int irq, struct its_vlpi_map *map);
int its_unmap_vlpi(int irq); int its_unmap_vlpi(int irq);
int its_prop_update_vlpi(int irq, u8 config, bool inv); int its_prop_update_vlpi(int irq, u8 config, bool inv);
int its_prop_update_vsgi(int irq, u8 priority, bool group);
struct irq_domain_ops; struct irq_domain_ops;
int its_init_v4(struct irq_domain *domain, int its_init_v4(struct irq_domain *domain,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment