ASoC: dt-bindings: simple-card: Add additional-devs subnode
The additional-devs subnode allows to declared some virtual devices as sound card children. These virtual devices can then be used by the sound card and so be present in the audio path. The first virtual device supported is the audio IIO auxiliary device in order to support an IIO device as an audio auxiliary device. Signed-off-by: Herve Codina <herve.codina@bootlin.com> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Christophe Leroy <christophe.leroy@©sgroup.eu> Reviewed-by: Christophe Leroy <christophe.leroy@csgroup.eu> Link: https://lore.kernel.org/r/20230623085830.749991-3-herve.codina@bootlin.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
cacff5e8a3
commit
b5f3484117
@ -148,6 +148,15 @@ definitions:
|
||||
required:
|
||||
- sound-dai
|
||||
|
||||
additional-devs:
|
||||
type: object
|
||||
description:
|
||||
Additional devices used by the simple audio card.
|
||||
patternProperties:
|
||||
'^iio-aux(-.+)?$':
|
||||
type: object
|
||||
$ref: audio-iio-aux.yaml#
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
contains:
|
||||
@ -187,6 +196,8 @@ properties:
|
||||
$ref: "#/definitions/mclk-fs"
|
||||
simple-audio-card,aux-devs:
|
||||
$ref: "#/definitions/aux-devs"
|
||||
simple-audio-card,additional-devs:
|
||||
$ref: "#/definitions/additional-devs"
|
||||
simple-audio-card,convert-rate:
|
||||
$ref: "#/definitions/convert-rate"
|
||||
simple-audio-card,convert-channels:
|
||||
@ -359,6 +370,48 @@ examples:
|
||||
};
|
||||
};
|
||||
|
||||
# --------------------
|
||||
# route audio to/from a codec through an amplifier
|
||||
# designed with a potentiometer driven by IIO:
|
||||
# --------------------
|
||||
- |
|
||||
sound {
|
||||
compatible = "simple-audio-card";
|
||||
|
||||
simple-audio-card,aux-devs = <&_in>, <&_out>;
|
||||
simple-audio-card,routing =
|
||||
"CODEC LEFTIN", "AMP_IN LEFT OUT",
|
||||
"CODEC RIGHTIN", "AMP_IN RIGHT OUT",
|
||||
"AMP_OUT LEFT IN", "CODEC LEFTOUT",
|
||||
"AMP_OUT RIGHT IN", "CODEC RIGHTOUT";
|
||||
|
||||
simple-audio-card,additional-devs {
|
||||
amp_out: iio-aux-out {
|
||||
compatible = "audio-iio-aux";
|
||||
io-channels = <&pot_out 0>, <&pot_out 1>;
|
||||
io-channel-names = "LEFT", "RIGHT";
|
||||
snd-control-invert-range = <1 1>;
|
||||
sound-name-prefix = "AMP_OUT";
|
||||
};
|
||||
|
||||
amp_in: iio_aux-in {
|
||||
compatible = "audio-iio-aux";
|
||||
io-channels = <&pot_in 0>, <&pot_in 1>;
|
||||
io-channel-names = "LEFT", "RIGHT";
|
||||
sound-name-prefix = "AMP_IN";
|
||||
};
|
||||
};
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&cpu>;
|
||||
};
|
||||
|
||||
simple-audio-card,codec {
|
||||
sound-dai = <&codec>;
|
||||
clocks = <&clocks>;
|
||||
};
|
||||
};
|
||||
|
||||
# --------------------
|
||||
# Sampling Rate Conversion
|
||||
# --------------------
|
||||
|
Loading…
x
Reference in New Issue
Block a user