Message ID | 20250215-apple-codec-changes-v1-0-723569b21b19@gmail.com (mailing list archive) |
---|---|
Headers | show |
Series | ASoC: tas27{64,70}: improve support for Apple codec variants | expand |
On Fri, Feb 14, 2025 at 7:04 PM James Calligeros <jcalligeros99@gmail.com> wrote: > > Hi all, > > This series introduces a number of changes to the drivers for > the Texas Instruments TAS2764 and TAS2770 amplifiers in order to > introduce (and improve in the case of TAS2770) support for the > variants of these amps found in Apple Silicon Macs. > > Apple's variant of TAS2764 is known as SN012776, and as always with > Apple is a subtly incompatible variant with a number of quirks. It > is not publicly available. The TAS2770 variant is known as TAS5770L, > and does not require incompatible handling. > > Much as with the Cirrus codec patches, I do not > expect that we will get any official acknowledgement that these parts > exist from TI, however I would be delighted to be proven wrong. > > This series has been living in the downstream Asahi kernel tree[1] > for over two years, and has been tested by many thousands of users > by this point[2]. > > Regards, > James > > [1] https://github.com/AsahiLinux/linux/tree/asahi-wip > [2] https://stats.asahilinux.org/ > > --- > Hector Martin (14): > ASoC: tas2764: Enable main IRQs > ASoC: tas2764: Power up/down amp on mute ops > ASoC: tas2764: Add SDZ regulator > ASoC: tas2764: Add reg defaults for TAS2764_INT_CLK_CFG > ASoC: tas2764: Mark SW_RESET as volatile > ASoC: tas2764: Fix power control mask > ASoC: tas2764: Wait for ramp-down after shutdown > ASoC: tas2770: Add SDZ regulator > ASoC: tas2770: Power cycle amp on ISENSE/VSENSE change > ASoC: tas2770: Add zero-fill and pull-down controls > ASoC: tas2770: Support setting the PDM TX slot > ASoC: tas2770: Fix volume scale > ASoC: tas2764: Set the SDOUT polarity correctly > ASoC: tas2770: Set the SDOUT polarity correctly > > James Calligeros (2): > ASoC: dt-bindings: tas27xx: add compatible for SN012776 > ASoC: dt-bindings: tas2770: add compatible for TAS5770L > > Martin Povišer (11): > ASoC: tas2764: Extend driver to SN012776 > ASoC: tas2764: Add control concerning overcurrent events > ASoC: tas2770: Factor out set_ivsense_slots > ASoC: tas2770: Fix and redo I/V sense TDM slot setting logic > ASoC: tas2764: Reinit cache on part reset > ASoC: tas2764: Configure zeroing of SDOUT slots > ASoC: tas2764: Apply Apple quirks > ASoC: tas2764: Raise regmap range maximum > ASoC: tas2770: Export 'die_temp' to sysfs > ASoC: tas2764: Export 'die_temp' to sysfs > ASoC: tas2764: Crop SDOUT zero-out mask based on BCLK ratio > > .../bindings/sound/ti,tas2770.yaml | 1 + > .../bindings/sound/ti,tas27xx.yaml | 1 + > sound/soc/codecs/Kconfig | 1 + > sound/soc/codecs/tas2764-quirks.h | 188 +++++++++++++++ > sound/soc/codecs/tas2764.c | 302 +++++++++++++++++++++---- > sound/soc/codecs/tas2764.h | 29 ++- > sound/soc/codecs/tas2770.c | 264 +++++++++++++++++---- > sound/soc/codecs/tas2770.h | 20 ++ > 8 files changed, 711 insertions(+), 95 deletions(-) > --- > base-commit: cc7708ae5e2aab296203fcec774695fc9d995f48 > change-id: 20250214-apple-codec-changes-6e656dc1e24d > > Best regards, > -- > James Calligeros <jcalligeros99@gmail.com> > > After years of iterations, I think this series looks good to me. :) Reviewed-by: Neal Gompa <neal@gompa.dev>
This looks much better than the v0 I eyeballed last week, good stuff :-) Will leave the technical review on this to people who know more audio than me but it /looks/ just about right to me. Thanks for getting this into shape and submitting it, James :-) Le Sat, Feb 15, 2025 at 10:02:33AM +1000, James Calligeros a écrit : > Hi all, > > This series introduces a number of changes to the drivers for > the Texas Instruments TAS2764 and TAS2770 amplifiers in order to > introduce (and improve in the case of TAS2770) support for the > variants of these amps found in Apple Silicon Macs. > > Apple's variant of TAS2764 is known as SN012776, and as always with > Apple is a subtly incompatible variant with a number of quirks. It > is not publicly available. The TAS2770 variant is known as TAS5770L, > and does not require incompatible handling. > > Much as with the Cirrus codec patches, I do not > expect that we will get any official acknowledgement that these parts > exist from TI, however I would be delighted to be proven wrong. > > This series has been living in the downstream Asahi kernel tree[1] > for over two years, and has been tested by many thousands of users > by this point[2]. > > Regards, > James > > [1] https://github.com/AsahiLinux/linux/tree/asahi-wip > [2] https://stats.asahilinux.org/ > > --- > Hector Martin (14): > ASoC: tas2764: Enable main IRQs > ASoC: tas2764: Power up/down amp on mute ops > ASoC: tas2764: Add SDZ regulator > ASoC: tas2764: Add reg defaults for TAS2764_INT_CLK_CFG > ASoC: tas2764: Mark SW_RESET as volatile > ASoC: tas2764: Fix power control mask > ASoC: tas2764: Wait for ramp-down after shutdown > ASoC: tas2770: Add SDZ regulator > ASoC: tas2770: Power cycle amp on ISENSE/VSENSE change > ASoC: tas2770: Add zero-fill and pull-down controls > ASoC: tas2770: Support setting the PDM TX slot > ASoC: tas2770: Fix volume scale > ASoC: tas2764: Set the SDOUT polarity correctly > ASoC: tas2770: Set the SDOUT polarity correctly > > James Calligeros (2): > ASoC: dt-bindings: tas27xx: add compatible for SN012776 > ASoC: dt-bindings: tas2770: add compatible for TAS5770L > > Martin Povišer (11): > ASoC: tas2764: Extend driver to SN012776 > ASoC: tas2764: Add control concerning overcurrent events > ASoC: tas2770: Factor out set_ivsense_slots > ASoC: tas2770: Fix and redo I/V sense TDM slot setting logic > ASoC: tas2764: Reinit cache on part reset > ASoC: tas2764: Configure zeroing of SDOUT slots > ASoC: tas2764: Apply Apple quirks > ASoC: tas2764: Raise regmap range maximum > ASoC: tas2770: Export 'die_temp' to sysfs > ASoC: tas2764: Export 'die_temp' to sysfs > ASoC: tas2764: Crop SDOUT zero-out mask based on BCLK ratio > > .../bindings/sound/ti,tas2770.yaml | 1 + > .../bindings/sound/ti,tas27xx.yaml | 1 + > sound/soc/codecs/Kconfig | 1 + > sound/soc/codecs/tas2764-quirks.h | 188 +++++++++++++++ > sound/soc/codecs/tas2764.c | 302 +++++++++++++++++++++---- > sound/soc/codecs/tas2764.h | 29 ++- > sound/soc/codecs/tas2770.c | 264 +++++++++++++++++---- > sound/soc/codecs/tas2770.h | 20 ++ > 8 files changed, 711 insertions(+), 95 deletions(-) > --- > base-commit: cc7708ae5e2aab296203fcec774695fc9d995f48 > change-id: 20250214-apple-codec-changes-6e656dc1e24d > > Best regards, > -- > James Calligeros <jcalligeros99@gmail.com> >