Support for CS42L83 on Apple machines
authorMark Brown <broonie@kernel.org>
Tue, 20 Sep 2022 11:26:03 +0000 (12:26 +0100)
committerMark Brown <broonie@kernel.org>
Tue, 20 Sep 2022 11:26:03 +0000 (12:26 +0100)
commit9f27530a7357c69865da6177db02d3eb230c33a1
treef44b7013f9d4c6ab16c693331788071cec602100
parent3c193b5f530e32dfb4aeb845678ed30aa60b67c1
parentac088c31d496b885d8268bd1c9746c3c76bf7078
Support for CS42L83 on Apple machines

Merge series from Martin PoviĊĦer <povik+lin@cutebit.org>:

there's a CS42L83 headphone jack codec found in Apple computers (in the
recent 'Apple Silicon' ones as well as in earlier models, one example
[1]). The part isn't publicly documented, but it appears almost
identical to CS42L42, for which we have a driver in kernel. This series
adapts the CS42L42 driver to the new part, and makes one change in
anticipation of a machine driver for the Apple computers.

Patch 1 adds new compatible to the cs42l42 schema.

Patches 2 to 7 are taken from Richard's recent series [2] adding
soundwire support to cs42l42. They are useful refactorings to build on
in the later patches, and also this way our work doesn't diverge.
(I fixed missing free_irq path in cs42l42_init, did
 s/Soundwire/SoundWire/ in changelogs, rebased.)

Patch 8 exports some regmap-related symbols from cs42l42.c so they can
be used to create cs42l83 regmap in cs42l83-i2c.c later.

Patch 9 is the cs42l83 support proper.

Patch 10 implements 'set_bclk_ratio' on the cs42l42 core. This will be
called by the upcoming ASoC machine driver for 'Apple Silicon' Macs.
(We have touched on this change to be made in earlier discussion, see
 [3] and replies.)

Patch 11 brings cs42l42-i2c.c in sync with cs42l83-i2c.c on
dev_err_probe() usage.
MAINTAINERS