ChiYuan Huang
80b949f332
ASoC: rt9120: Use pm_runtime and regcache to optimize 'pwdnn' logic
...
From the datasheet, the only way to meet the lowest power consumption is
to pull low the 'pwdnn' gpio. But if it is low, IC will keep in
reset state, all registers reset to default.
And the power consumption is listed below
1. amp off and 'pwdnn' high => idle state, PVDD = 1mA, DVDD = 7mA
2. amp off and 'pwdnn' low => shutdown state, PVDD < 20uA, DVDD < 15uA
It's the large difference for the consumption current
This fix is to use pm_runtime and regcache to handle 'pwdnn' gpio
control.
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com >
Link: https://lore.kernel.org/r/1652926418-8519-3-git-send-email-u0084500@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-05-19 16:47:12 +01:00
ChiYuan Huang
57f68f2168
ASoC: rt9120: Fix 3byte read, valule offset typo
...
For RG 3byte read, the value order is offset [0], [1], and [2].
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com >
Link: https://lore.kernel.org/r/1652926418-8519-2-git-send-email-u0084500@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-05-19 16:47:11 +01:00
Charles Keepax
80827c123f
ASoC: rt9120: Add endianness flag in snd_soc_component_driver
...
The endianness flag is used on the CODEC side to specify an
ambivalence to endian, typically because it is lost over the hardware
link. This device receives audio over an I2S DAI and as such should
have endianness applied.
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com >
Link: https://lore.kernel.org/r/20220504170905.332415-24-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-05-09 12:46:37 +01:00
ChiYuan Huang
87c18514bb
ASoC: rt9120: Correct the reg 0x09 size to one byte
...
Correct the reg 0x09 size to one byte.
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com >
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/1650608810-3829-1-git-send-email-u0084500@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2022-04-22 12:37:20 +01:00
ChiYuan Huang
dbe638f71e
ASoC: rt9120: Add the compatibility with rt9120s
...
Use device id reg to be compatible with rt9120 and rt9120s.
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com >
Link: https://lore.kernel.org/r/1636515921-31694-4-git-send-email-u0084500@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-11-12 18:16:39 +00:00
ChiYuan Huang
8f1f1846d7
ASoC: rt9120: Fix clock auto sync issue when fs is the multiple of 48
...
If fs is divided by 48, to make audio clock sync rate correct, internal
sync function have be disabled.
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com >
Link: https://lore.kernel.org/r/1636515921-31694-3-git-send-email-u0084500@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-11-12 18:16:37 +00:00
ChiYuan Huang
9bb4e4bae5
ASoC: rt9120: Update internal ocp level to the correct value
...
Update internal ocp level to correct value.
Even the wrong ocp setting can also make the sound output, but the power
cannot match the IC capability.
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com >
Link: https://lore.kernel.org/r/1636515921-31694-2-git-send-email-u0084500@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-11-12 18:16:35 +00:00
ChiYuan Huang
7228d83531
ASoC: rt9120: Add rt9210 audio amplifier support
...
Add Richtek rt9120 audio amplifier support.
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com >
Link: https://lore.kernel.org/r/1634088519-995-3-git-send-email-u0084500@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-10-13 12:59:41 +01:00
Mark Brown
916f2ce39d
ASoC: rt9120: Drop rt9210 audio amplifier support
...
This drops the rt9210 support due to a race with a new version being
sent out for some incremental changes.
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-10-13 12:58:31 +01:00
ChiYuan Huang
f218b5e266
ASoC: rt9120: Add rt9210 audio amplifier support
...
Add Richtek rt9120 audio amplifier support.
Signed-off-by: ChiYuan Huang <cy_huang@richtek.com >
[Fix a Gain->Volume -- broonie]
Message-Id: <1633668612-25524-3-git-send-email-u0084500@gmail.com >
Signed-off-by: Mark Brown <broonie@kernel.org >
2021-10-08 13:50:37 +01:00