On Mon, Apr 18, 2016 at 04:17:31PM +0800, Xing Zheng wrote:
In most cases, many codecs already supports jack detection, previouslly, we need to create a customized machine driver every time.
Hence, the simple-card need to support use them dynamically via parse dts file for better flexibility.
Signed-off-by: Xing Zheng zhengxing@rock-chips.com
.../devicetree/bindings/sound/simple-card.txt | 17 +++ sound/soc/generic/simple-card.c | 126 +++++++++++++++++++- 2 files changed, 140 insertions(+), 3 deletions(-)
diff --git a/Documentation/devicetree/bindings/sound/simple-card.txt b/Documentation/devicetree/bindings/sound/simple-card.txt index cf3979e..d25c8eb 100644 --- a/Documentation/devicetree/bindings/sound/simple-card.txt +++ b/Documentation/devicetree/bindings/sound/simple-card.txt @@ -22,6 +22,23 @@ Optional properties: headphones are attached.
- simple-audio-card,mic-det-gpio : Reference to GPIO that signals when a microphone is attached.
+- simple-audio-card,codec-jack : A list of the codec supports jack detection.
The jack types which are supported refer to include/sound/jack.h.
All of the jack types:
"JACK_HEADPHONE",
"JACK_MICROPHONE",
"JACK_HEADSET",
"JACK_LINEOUT",
"JACK_MECHANICAL",
"JACK_VIDEOOUT",
"JACK_AVOUT",
"JACK_LINEIN",
"JACK_BTN_0",
"JACK_BTN_1",
"JACK_BTN_2",
"JACK_BTN_3",
"JACK_BTN_4",
"JACK_BTN_5".
simple-card is not so simple...
I think this information be part of the codec node if the codec provides the functionality. The binding should not be different whether a codec is part of simple-card or not. Also, I would make all these just boolean props.
Rob