Merge series "Use clocks property in a device node" from Sameer Pujar <spujar@nvidia.com>:
It is recommended to not specifiy clocks property in an endpoint subnode. This series moves clocks to device node. However after moving the clocks to device node, the audio playback or capture fails. The specified clock is not actually getting enabled and hence the failure is seen. There seems to be a bug in simple-card-utils.c where clock handle is not assigned when parsing clocks from device node. Fix the same and revert original change which actually added clocks property in endpoint subnode. Also update Jetson AGX Xavier DT where the usage is found. Sameer Pujar (3): ASoC: simple-card-utils: Fix device module clock Revert "ASoC: audio-graph-card: Add clocks property to endpoint node" arm64: tegra: Move clocks from RT5658 endpoint to device node .../devicetree/bindings/sound/audio-graph-port.yaml | 3 --- arch/arm64/boot/dts/nvidia/tegra194-p2972-0000.dts | 2 +- sound/soc/generic/simple-card-utils.c | 13 ++++++------- 3 files changed, 7 insertions(+), 11 deletions(-) -- 2.7.4
This commit is contained in:
commit
ec9d68508f
@ -33,9 +33,6 @@ properties:
|
||||
properties:
|
||||
remote-endpoint:
|
||||
maxItems: 1
|
||||
clocks:
|
||||
maxItems: 1
|
||||
description: Describes the clock used by audio component.
|
||||
mclk-fs:
|
||||
description: |
|
||||
Multiplication factor between stream rate and codec mclk.
|
||||
|
@ -172,16 +172,15 @@ int asoc_simple_parse_clk(struct device *dev,
|
||||
* or device's module clock.
|
||||
*/
|
||||
clk = devm_get_clk_from_child(dev, node, NULL);
|
||||
if (!IS_ERR(clk)) {
|
||||
simple_dai->sysclk = clk_get_rate(clk);
|
||||
|
||||
simple_dai->clk = clk;
|
||||
} else if (!of_property_read_u32(node, "system-clock-frequency", &val)) {
|
||||
simple_dai->sysclk = val;
|
||||
} else {
|
||||
if (IS_ERR(clk))
|
||||
clk = devm_get_clk_from_child(dev, dlc->of_node, NULL);
|
||||
if (!IS_ERR(clk))
|
||||
simple_dai->sysclk = clk_get_rate(clk);
|
||||
|
||||
if (!IS_ERR(clk)) {
|
||||
simple_dai->clk = clk;
|
||||
simple_dai->sysclk = clk_get_rate(clk);
|
||||
} else if (!of_property_read_u32(node, "system-clock-frequency",
|
||||
&val)) {
|
||||
simple_dai->sysclk = val;
|
||||
}
|
||||
|
||||
if (of_property_read_bool(node, "system-clock-direction-out"))
|
||||
|
Loading…
Reference in New Issue
Block a user