On 1/9/26 10:55 AM, Krzysztof Kozlowski wrote:
On Thu, Jan 08, 2026 at 07:23:09PM +0100, Ivan Vecera wrote:
Add helper functions to the DPLL core to retrieve a DPLL pin's firmware
node handle based on the "dpll-pins" and "dpll-pin-names" properties.

* `fwnode_dpll_pin_node_get()`: matches the given name against the
   "dpll-pin-names" property to find the correct index, then retrieves
   the reference from "dpll-pins".
* `device_dpll_pin_node_get()`: a wrapper around the fwnode helper for
   convenience when using a `struct device`.

These helpers simplify the process for consumer drivers (such as Ethernet
controllers or PHYs) to look up their associated DPLL pins defined in
the DT or ACPI, which can then be passed to the DPLL subsystem to acquire
the pin object.

Signed-off-by: Ivan Vecera <[email protected]>
---
  drivers/dpll/dpll_core.c | 20 ++++++++++++++++++++
  include/linux/dpll.h     | 15 +++++++++++++++
  2 files changed, 35 insertions(+)


I don't see cells defined in your binding. Neither updated property.c.

And if the cells are not required? I mean that dpll-names only specifies
array of phandles without parameters...

e.g.
dpll-pin-names = "abc", "def";
dpll-pins = <&dpll_pin_abc>, <&dpll_pin_def>;

Should '#dpll-pin-cells' be defined as constantly equal to 0?

Thanks,
Ivan


Best regards,
Krzysztof


Reply via email to