This patchset provides ASoC support for the latest family of Cirrus Logic multichannel, high performance audio ADCs. The devices that are supported are CS5302 (2 channel ADC), CS5304 (4 channel ADC), and CS5308 (8 channel ADC). v2 changes: - Use sizeof(*) instead of sizeof(struct cs530x_priv) - Utilize i2c_get_match_data to simpify code. - Use unintptr_t instead of enum cs530x_type to typecast match->data. - Use dev_err_probe instead of dev_err in probe. - Fix gpiod_set_vale for reset to the correct logical value. - Provided full name for maintainer in DT binding. - Remove | from after "discription" in DT binding. - Removed unneeded discription of #sound-dai-cells. - Changed supply discriptions in DT binding. - Changeed underscores to dashes for DT property names. - Added ref for dai-common for DT binding. - Changed additionalProperties to unevaluatedProperties in DT binding. - Changed the DT example to have the compatible property first and the reg second. - Removed typos and blank lines in DT binding. - Changed adc to cs5304 in DT example. v3 changes: - Changed cs5304 back to adc for device name in DT example. - Removed dev_info for device id and rev id and added revid to dev_dbg along with device id. - Set ret = dev_err_probe and passed PTR_ERR value into dev_err_probe insead of assigning PTR_ERR to ret and passing ret into dev_err_probe. - Moved dev_dai allocation to the beginning of probe. v4 changes: - Remove regmap volatile_reg callback since it is not needed. v5 changes: - Add MODULE_LICENSE to cs530x-i2c.c v6 changes: - Added missing Reviewed-by for DT Binding. - Updated changelog. Paul Handrigan (2): ASoC: dt-bindings: cirrus,cs530x: Add initial DT binding ASoC: cs530x: Support for cs530x ADCs .../bindings/sound/cirrus,cs530x.yaml | 85 ++ sound/soc/codecs/Kconfig | 14 + sound/soc/codecs/Makefile | 4 + sound/soc/codecs/cs530x-i2c.c | 72 ++ sound/soc/codecs/cs530x.c | 966 ++++++++++++++++++ sound/soc/codecs/cs530x.h | 223 ++++ 6 files changed, 1364 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/cirrus,cs530x.yaml create mode 100644 sound/soc/codecs/cs530x-i2c.c create mode 100644 sound/soc/codecs/cs530x.c create mode 100644 sound/soc/codecs/cs530x.h -- 2.34.1