|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v10 1/3] of: Add convenience wrappers for of_map_id()
On 3/10/2026 2:46 AM, Dmitry Baryshkov wrote:
> On Mon, Mar 09, 2026 at 01:03:37AM +0530, Vijayanand Jitta wrote:
>> From: Robin Murphy <robin.murphy@xxxxxxx>
>>
>> Since we now have quite a few users parsing "iommu-map" and "msi-map"
>> properties, give them some wrappers to conveniently encapsulate the
>> appropriate sets of property names. This will also make it easier to
>> then change of_map_id() to correctly account for specifier cells.
>>
>> Reviewed-by: Rob Herring (Arm) <robh@xxxxxxxxxx>
>> Reviewed-by: Frank Li <Frank.Li@xxxxxxx>
>> Signed-off-by: Robin Murphy <robin.murphy@xxxxxxx>
>> Signed-off-by: Vijayanand Jitta <vijayanand.jitta@xxxxxxxxxxxxxxxx>
>> ---
>> drivers/cdx/cdx_msi.c | 3 +--
>> drivers/iommu/of_iommu.c | 4 +---
>> drivers/irqchip/irq-gic-its-msi-parent.c | 2 +-
>> drivers/of/base.c | 36
>> ++++++++++++++++++++++++++++++++
>> drivers/of/irq.c | 3 +--
>> drivers/pci/controller/dwc/pci-imx6.c | 6 ++----
>> drivers/pci/controller/pcie-apple.c | 3 +--
>> drivers/xen/grant-dma-ops.c | 3 +--
>> include/linux/of.h | 18 ++++++++++++++++
>> 9 files changed, 62 insertions(+), 16 deletions(-)
>>
>> +
>> +/**
>> + * of_map_msi_id - Translate an ID using "msi-map" bindings.
>
> Which ID are we talking about wrt. MSI interrupts?
>
id refers to the device’s requester ID (RID/BDF or platform stream ID),
not an MSI interrupt number; it is the key used in msi-map to obtain
the translated MSI device ID (id_out).
I'll update the kernel doc as below to clarify.
* @id: Requester ID of the device (e.g. PCI RID/BDF or a platform
* stream/device ID) used as the lookup key in the msi-map table.
Thanks,
Vijay
>> + * @np: root complex device node.
>> + * @id: device ID to map.
>> + * @target: optional pointer to a target device node.
>> + * @id_out: optional pointer to receive the translated ID.
>> + *
>> + * Convenience wrapper around of_map_id() using "msi-map" and
>> "msi-map-mask".
>> + *
>> + * Return: 0 on success or a standard error code on failure.
>> + */
>> +int of_map_msi_id(const struct device_node *np, u32 id,
>> + struct device_node **target, u32 *id_out)
>> +{
>> + return of_map_id(np, id, "msi-map", "msi-map-mask", target, id_out);
>> +}
>> +EXPORT_SYMBOL_GPL(of_map_msi_id);
>
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |