ANDROID: virt: gunyah: Do not allocate irq for GH_RM_RESOURCE_NO_VIRQ

Resource manager can now return GH_RM_RESOURCE_NO_VIRQ (-1) instead of 0
as the value to mean "there's no vIRQ for this resource".

Bug: 297100131
Change-Id: I93c4f41b881bfc9e094fa6115df7ba6fcdaa7e6e
Signed-off-by: Elliot Berman <quic_eberman@quicinc.com>
Signed-off-by: Prakruthi Deepak Heragu <quic_pheragu@quicinc.com>
This commit is contained in:
Prakruthi Deepak Heragu 2023-08-22 17:15:50 -07:00 committed by Treehugger Robot
parent 2d1d3be2ba
commit 4db95aa21a
2 changed files with 2 additions and 1 deletions

View File

@ -300,7 +300,7 @@ struct gh_resource *gh_rm_alloc_resource(struct gh_rm *rm, struct gh_rm_hyp_reso
ghrsc->capid = le64_to_cpu(hyp_resource->cap_id);
ghrsc->irq = IRQ_NOTCONNECTED;
ghrsc->rm_label = le32_to_cpu(hyp_resource->resource_label);
if (hyp_resource->virq) {
if (hyp_resource->virq && hyp_resource->virq != GH_RM_RESOURCE_NO_VIRQ) {
struct gh_irq_chip_data irq_data = {
.gh_virq = le32_to_cpu(hyp_resource->virq),
};

View File

@ -139,6 +139,7 @@ struct gh_rm_hyp_resource {
__le32 resource_label;
__le64 cap_id;
__le32 virq_handle;
#define GH_RM_RESOURCE_NO_VIRQ 0xFFFFFFFF
__le32 virq;
__le64 base;
__le64 size;