• Krzysztof Kozlowski's avatar
    clk: s2mps11: Fix matching when built as module and DT node contains compatible · 8985167e
    Krzysztof Kozlowski authored
    When driver is built as module and DT node contains clocks compatible
    (e.g. "samsung,s2mps11-clk"), the module will not be autoloaded because
    module aliases won't match.
    
    The modalias from uevent: of:NclocksT<NULL>Csamsung,s2mps11-clk
    The modalias from driver: platform:s2mps11-clk
    
    The devices are instantiated by parent's MFD.  However both Device Tree
    bindings and parent define the compatible for clocks devices.  In case
    of module matching this DT compatible will be used.
    
    The issue will not happen if this is a built-in (no need for module
    matching) or when clocks DT node does not contain compatible (not
    correct from bindings perspective but working for driver).
    
    Note when backporting to stable kernels: adjust the list of device ID
    entries.
    
    Cc: <stable@vger.kernel.org>
    Fixes: 53c31b34 ("mfd: sec-core: Add of_compatible strings for clock MFD cells")
    Signed-off-by: default avatarKrzysztof Kozlowski <krzk@kernel.org>
    Acked-by: default avatarStephen Boyd <sboyd@kernel.org>
    Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
    8985167e
clk-s2mps11.c 7.54 KB