• Stephan Gerhold's avatar
    ASoC: qcom: common: Respect status = "disabled" on DAI link nodes · 4b29d5a0
    Stephan Gerhold authored
    At the moment, the DAI link nodes in the device tree always have to be
    specified completely in each device tree. However, the available
    interfaces (e.g. Primary/Secondary/Tertiary/Quaternary MI2S) are common
    for all devices of a SoC, so the majority of the definitions can be
    placed in a common device tree include to reduce boilerplate.
    
    Make it possible to define such stubs in device tree includes by
    respecting the "status" property for the DAI link nodes. This is
    a trivial change that just requires switching to the _available_
    OF functions that check the "status" property additionally.
    
    This allows defining a stub like:
    
    	sound_dai_quaternary: dai-link-quaternary {
    		link-name = "Quaternary MI2S";
    		status = "disabled"; /* Needs extra codec configuration */
    		cpu {
    			sound-dai = <&q6afedai QUATERNARY_MI2S_RX>;
    		};
    		platform {
    			sound-dai = <&q6routing>;
    		};
    	};
    
    where the codec would be filled in by the device-specific device tree.
    
    For existing device trees this change does not make any difference.
    A missing "status" property is treated like status = "okay".
    
    Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
    Signed-off-by: default avatarStephan Gerhold <stephan@gerhold.net>
    Reviewed-by: default avatarSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
    Link: https://lore.kernel.org/r/20211025105503.49444-1-stephan@gerhold.netSigned-off-by: default avatarMark Brown <broonie@kernel.org>
    4b29d5a0
common.c 4.01 KB