Commit 6dad45f
ALSA: hda/tas2781: do not use regcache
There are two problems with using regcache in this module.
The amplifier has 3 addressing levels (BOOK, PAGE, REG). The firmware
contains blocks that must be written to BOOK 0x8C. The regcache doesn't
know anything about BOOK, so regcache_sync writes invalid values to the
actual BOOK.
The module handles 2 or more separate amplifiers. The amplifiers have
different register values, and the module uses only one regmap/regcache
for all the amplifiers. The regcache_sync only writes the last amplifier
used.
The module successfully restores all the written register values (RC
profile, program, configuration, calibration) without regcache.
Remove regcache functions and set regmap cache_type to REGCACHE_NONE.
Link: https://lore.kernel.org/r/21a183b5a08cb23b193af78d4b1114cc59419272.1701906455.git.soyer@irl.hu/
Fixes: 5be27f1 ("ALSA: hda/tas2781: Add tas2781 HDA driver")
Acked-by: Mark Brown <broonie@kernel.org>
CC: stable@vger.kernel.org
Signed-off-by: Gergo Koteles <soyer@irl.hu>
Link: https://lore.kernel.org/r/491aeed0e2eecc3b704ec856f815db21bad3ba0e.1703202126.git.soyer@irl.hu
Signed-off-by: Takashi Iwai <tiwai@suse.de>1 parent 916d051 commit 6dad45f
2 files changed
Lines changed: 2 additions & 17 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
717 | 717 | | |
718 | 718 | | |
719 | 719 | | |
720 | | - | |
721 | | - | |
722 | 720 | | |
723 | 721 | | |
724 | 722 | | |
| |||
730 | 728 | | |
731 | 729 | | |
732 | 730 | | |
733 | | - | |
734 | 731 | | |
735 | 732 | | |
736 | 733 | | |
737 | 734 | | |
738 | 735 | | |
739 | | - | |
740 | | - | |
741 | | - | |
742 | | - | |
743 | | - | |
744 | | - | |
745 | | - | |
746 | | - | |
747 | 736 | | |
748 | 737 | | |
749 | 738 | | |
| |||
752 | 741 | | |
753 | 742 | | |
754 | 743 | | |
755 | | - | |
756 | 744 | | |
757 | 745 | | |
758 | | - | |
| 746 | + | |
759 | 747 | | |
760 | 748 | | |
761 | 749 | | |
| |||
770 | 758 | | |
771 | 759 | | |
772 | 760 | | |
773 | | - | |
774 | 761 | | |
775 | | - | |
776 | | - | |
777 | 762 | | |
778 | 763 | | |
779 | 764 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
42 | | - | |
| 42 | + | |
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
| |||
0 commit comments