diff options
| author | Mizuno Miotsuki <founder@crepuse.com> | 2026-09-18 12:57:19 +0000 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2026-10-05 15:06:44 +0200 |
| commit | 157f7cba77a9dd3c3de9219c0d0fa2bb93d1a144 (patch) | |
| tree | db229e0908d42bac8e52e6957a41f009c178422a /tools/lib/python/kdoc | |
| parent | 58e7bca5cf264e910ad9199cfc40246e0a2834f4 (diff) | |
ASoC: codecs: rk3308: add support for codec revision B
The RK3308 codec driver detects codec revision B (chip ID 0x3308),
but currently rejects it during probe. Revision B needs an additional
DAC output VCM charge and depop sequence using DAC_ANA_CON14 and
DAC_ANA_CON15.
Model the shared revision-B DAC output VCM as a playback-only DAPM
supply used by both HPOUT and LINEOUT. Charge the reference while both
CON15 channels are connected to VCM, then establish DC_FROM_INTERNAL as
the playback baseline. LINEOUT events switch each enabled channel to
LINEOUT_FROM_INTERNAL after its output driver is enabled and return it
to DC_FROM_INTERNAL after disable. When the last analogue output powers
down, return both channels to VCM and disable the shared reference.
All new register writes are conditional on codec revision B.
Capture-only streams do not traverse the new supply, so they do not
touch DAC_ANA_CON14 or DAC_ANA_CON15. Revisions A and C gain no
additional MMIO writes.
For HPOUT-only playback, keep CON15 at DC_FROM_INTERNAL, matching the
newer Rockchip 6.1 downstream driver. Physical HPOUT validation is still
needed.
Tested on a DFRobot UNIHIKER M10 V1.2 with codec revision B.
Revision-B probe, the board MICBIAS1 route, and physical onboard
microphone capture passed. A short capture-startup transient is also
present with the Rockchip vendor driver unless a longer wait is added,
so it is not treated as a regression and no generic 250 ms mute delay is
added here. Capture-only isolation from DAC_ANA_CON14/15 and playback
PCM, DAPM, and LINEOUT register endpoints were verified with the
preceding clean LINEOUT-only candidate. The shared-output revision is
compile-tested only. Physical LINEOUT and HPOUT audio were not tested
because suitable hardware endpoints were unavailable.
Signed-off-by: Mizuno Miotsuki <founder@crepuse.com>
Link: https://patch.msgid.link/20260918125711.94361-2-founder@crepuse.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'tools/lib/python/kdoc')
0 files changed, 0 insertions, 0 deletions
