Hello, I'm working on a DM and DT compatible driver for the TI TPS65910 PMIC. The regulators for this PMIC are defined in arch/arm/dts/tps65910.dtsi and named 'regulator@0' through 'regulator@13'. Using for example the prefix 'regulator@1' in pmic_child_info[] will match to 'regualtor@1' and 'regulator@10' through 'regulator@13'. Hence, in my case, a BUCK driver instead of a LDO driver will be bound to regulators 11 through 13 by pmic_bind_children() which is not correct.
Reflecting on the problem I see the following two solutions: 1) rename the nodes in arch/arm/dts/tps65910.dtsi or 2) modify pmic_bind_children() Solution 1), rename the nodes in arch/arm/dts/tps65910.dtsi. The nodes in the device tree include file will be renamed allowing pmic_bind_children() to distinguish them unambiguously. Pros: - simple and fast Cons: - file tps65910.dtsi will divert from the LINUX kernel version of the same file - other device tree source files like am335x-evmsk.dts, am335x-icev2.dts and am335x-pxm50.dts will be affected - the boards using those device tree source files may also be affected - the solution is not sustainable as it is kind of fix for the problem with the TPS65910 only Solution 2), modify pmic_bind_children() Pros: - will eventually help in similar cases with other PMICs - does not affect other, existing designs that are using pmic_bind_children() as intended since it is implements using some fallback strategy Cons: - modifications to pmic_bind_children() (not really a con) I personally favor solution 2 and suggest to modify the function pmic_bind_children() as follows: if it fails to match the prefix against the node-name it should try to match it against the node property 'regulator-name' before failing. This retains the entire logic of pmic_bind_children() and should not produce any collateral damage. The modifications in the device tree source file are made for a specific board only, i.e. in its dts file and not in some common include (dtsi) file, hence not affecting other designs. Any feedback is appreciate before I start the patch. -- Felix _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot