Messages in this thread | | | From | Andy Shevchenko <> | Date | Wed, 12 Jan 2022 17:53:45 +0200 | Subject | Re: [PATCH v2 1/3] device property: Add device_irq_get_byname |
| |
On Wed, Jan 12, 2022 at 4:14 PM Akhil R <akhilrajeev@nvidia.com> wrote:
In the subject line: device_irq_get_byname()
> Get interrupt by name from ACPI table as well.
an interrupt the ACPI
> Add option to use 'interrupt-names' in _DSD which can map to interrupt by
can be mapped Interrupt() resource
(The last one is very important to point out this is only about Interrupt() resources for now).
> index. The implementation is similar to 'interrupt-names' in devicetree.
the Device Tree
> Also add a common routine to get irq by name from devicetree and ACPI
IRQ Device Tree
> table.
...
> /** > + * fwnode_irq_get_byname - Get IRQ from a fwnode using its name > + * @fwnode: Pointer to the firmware node > + * @name: IRQ name in interrupt-names property in fwnode > + * > + * Returns Linux IRQ number on success, errno otherwise.
negative errno
> + */ > +int fwnode_irq_get_byname(const struct fwnode_handle *fwnode, const char *name) > +{ > + int index;
> + if (unlikely(!name))
Don't use unlikely() here.
> + return -EINVAL; > + > + index = fwnode_property_match_string(fwnode, "interrupt-names", name); > + if (index < 0) > + return index; > + > + return fwnode_irq_get(fwnode, index); > +}
-- With Best Regards, Andy Shevchenko
| |