• H. Nikolaus Schaller's avatar
    omap5-board-common: remove not physically existing vdds_1v8_main fixed-regulator · c68ef4ad
    H. Nikolaus Schaller authored
    This device tree include file describes a fixed-regulator
    connecting smps7_reg output (1.8V) to some 1.8V rail and
    consumers (vdds_1v8_main).
    
    This regulator does not physically exist.
    
    I assume it was introduced as a wrapper around smps7_reg
    to provide a speaking signal name "vdds_1v8_main" as label.
    
    This fixed-regulator without real function was not an issue
    in driver code until
    
      Commit 98e48cd9 ("regulator: core: resolve supply for boot-on/always-on regulators")
    
    introduced a new check for regulator initialization which
    makes Palmas regulator registration fail:
    
    [    5.407712] ldo1: supplied by vsys_cobra
    [    5.412748] ldo2: supplied by vsys_cobra
    [    5.417603] palmas-pmic 48070000.i2c:palmas@48:palmas_pmic: failed to register 48070000.i2c:palmas@48:palmas_pmic regulator
    
    The reason is that the supply-chain of regulators is too
    long and goes from ldo3 through the virtual vdds_1v8_main
    regulator and then back to smps7. This adds a cross-dependency
    of probing Palmas regulators and the fixed-regulator which
    leads to probe deferral by the new check and is no longer
    resolved.
    
    Since we do not control what device tree files including this
    one reference (either &vdds_1v8_main or &smps7_reg or both)
    we keep both labels for smps7 for compatibility.
    
    Fixes: 98e48cd9 ("regulator: core: resolve supply for boot-on/always-on regulators")
    Signed-off-by: default avatarH. Nikolaus Schaller <hns@goldelico.com>
    Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
    c68ef4ad
omap5-board-common.dtsi 18.2 KB