On Mon, Dec 25, 2017 at 07:10:10AM -0800, Ryan Lee wrote:
Needs a commit message.
Signed-off-by: Ryan Lee ryans.lee@maximintegrated.com
Changes since v1:
- Removed 'codec' from 'max98373_priv' structure : Now 'max98373_set_clock' function use 'dai->codec.dev' instead of using 'max98373->codec.dev'.
- Removed 'max98373_dai_set_sysclk' function : This function is not necessary. Removed 'sysclk' from 'max98373_priv' as well.
- Removed 'iface' from 'max98373_priv' structure : There is no function who refer max98373->iface variable.
- Added SPDX-License-Identifier
.../devicetree/bindings/sound/max98373.txt | 43 +
Please split bindings to separate patch.
sound/soc/codecs/Kconfig | 5 + sound/soc/codecs/Makefile | 2 + sound/soc/codecs/max98373.c | 974 +++++++++++++++++++++ sound/soc/codecs/max98373.h | 212 +++++ 5 files changed, 1236 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/max98373.txt create mode 100644 sound/soc/codecs/max98373.c create mode 100644 sound/soc/codecs/max98373.h
diff --git a/Documentation/devicetree/bindings/sound/max98373.txt b/Documentation/devicetree/bindings/sound/max98373.txt new file mode 100644 index 0000000..22cd259 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/max98373.txt @@ -0,0 +1,43 @@ +Maxim Integrated MAX98373 Speaker Amplifier
+This device supports I2C.
+Required properties:
- compatible : should be one of the following
- "maxim,max98373"
- reg : the I2C address of the device.
+Optional properties:
- maxim,vmon-slot-no : slot number used to send voltage information
or in inteleave mode this will be used as
interleave slot.
slot range : 0 ~ 15, Default : 0
- maxim,imon-slot-no : slot number used to send current information
slot range : 0 ~ 15, Default : 0
- maxim,spkfb-slot-no : slot number used to send speaker feedback information
slot range : 0 ~ 15, Default : 0
- maxim,interleave-mode : When using two MAX98373 in a system it is
possible to create ADC data that that will
overflow the frame size. Digital Audio Interleave
mode provides a means to output VMON and IMON data
from two devices on a single DOUT line when running
smaller frames sizes such as 32 BCLKS per LRCLK or
48 BCLKS per LRCLK.
Range : 0 (off), 1 (on), Default : 0
This can be boolean instead.
+Example:
+codec: max98373@31 {
- compatible = "maxim,max98373";
- reg = <0x31>;
- maxim,vmon-slot-no = <0>;
- maxim,imon-slot-no = <1>;
- maxim,spkfb-slot-no = <2>;
- maxim,interleave-mode = <0>;
+};