Lines Matching +full:gic +full:- +full:v3 +full:- +full:its
1 // SPDX-License-Identifier: GPL-2.0-only
3 * Copyright (C) 2013-2015 ARM Limited, All Rights Reserved.
27 .name = "ITS-MSI",
62 return -EINVAL; in its_pci_msi_prepare()
64 msi_info = msi_get_domain_info(domain->parent); in its_pci_msi_prepare()
72 if (alias_dev != pdev && alias_dev->subordinate) in its_pci_msi_prepare()
73 pci_walk_bus(alias_dev->subordinate, its_pci_msi_vec_count, in its_pci_msi_prepare()
76 /* ITS specific DeviceID, as the core ITS ignores dev. */ in its_pci_msi_prepare()
77 info->scratchpad[0].ul = pci_msi_domain_get_msi_rid(domain, pdev); in its_pci_msi_prepare()
87 if (!info->scratchpad[0].ul) in its_pci_msi_prepare()
90 return msi_info->ops->msi_prepare(domain->parent, dev, nvec, info); in its_pci_msi_prepare()
105 { .compatible = "arm,gic-v3-its", },
116 pr_err("%s: Unable to locate ITS domain\n", name); in its_pci_msi_init_one()
117 return -ENXIO; in its_pci_msi_init_one()
123 return -ENOMEM; in its_pci_msi_init_one()
137 if (!of_property_read_bool(np, "msi-controller")) in its_pci_of_msi_init()
140 if (its_pci_msi_init_one(of_node_to_fwnode(np), np->full_name)) in its_pci_of_msi_init()
158 int err = -ENXIO; in its_pci_msi_parse_madt()
161 node_name = kasprintf(GFP_KERNEL, "ITS@0x%lx", in its_pci_msi_parse_madt()
162 (long)its_entry->base_address); in its_pci_msi_parse_madt()
163 dom_handle = iort_find_domain_token(its_entry->translation_id); in its_pci_msi_parse_madt()
165 pr_err("%s: Unable to locate ITS domain handle\n", node_name); in its_pci_msi_parse_madt()