ASoC: add devicetree support for WM8961 codec

Merge series from Doug Brown <doug@schmorgal.com>:

This series adds devicetree support for the Wolfson WM8961 codec. The
first patch adds a schema, the second patch hooks it up in the code, and
the third patch allows it to be selected in Kconfig.
This commit is contained in:
Mark Brown 2022-10-18 13:01:34 +01:00
commit a474dce8aa
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0
3 changed files with 48 additions and 1 deletions

View File

@ -0,0 +1,40 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/wlf,wm8961.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Wolfson WM8961 Ultra-Low Power Stereo CODEC
maintainers:
- patches@opensource.cirrus.com
properties:
compatible:
const: wlf,wm8961
reg:
maxItems: 1
'#sound-dai-cells':
const: 0
required:
- compatible
- reg
- '#sound-dai-cells'
additionalProperties: false
examples:
- |
i2c {
#address-cells = <1>;
#size-cells = <0>;
wm8961: codec@4a {
compatible = "wlf,wm8961";
reg = <0x4a>;
#sound-dai-cells = <0>;
};
};

View File

@ -1930,7 +1930,7 @@ config SND_SOC_WM8960
depends on I2C
config SND_SOC_WM8961
tristate
tristate "Wolfson Microelectronics WM8961 CODEC"
depends on I2C
config SND_SOC_WM8962

View File

@ -971,9 +971,16 @@ static const struct i2c_device_id wm8961_i2c_id[] = {
};
MODULE_DEVICE_TABLE(i2c, wm8961_i2c_id);
static const struct of_device_id wm8961_of_match[] __maybe_unused = {
{ .compatible = "wlf,wm8961", },
{ }
};
MODULE_DEVICE_TABLE(of, wm8961_of_match);
static struct i2c_driver wm8961_i2c_driver = {
.driver = {
.name = "wm8961",
.of_match_table = of_match_ptr(wm8961_of_match),
},
.probe_new = wm8961_i2c_probe,
.id_table = wm8961_i2c_id,