projects
/
linux-2.6-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
fe04d16
)
ASoC: cs42l43: Use fls to calculate the pre-divider for the PLL
author
Charles Keepax
<ckeepax@opensource.cirrus.com>
Thu, 25 Jan 2024 10:31:17 +0000
(10:31 +0000)
committer
Mark Brown
<broonie@kernel.org>
Fri, 26 Jan 2024 14:47:00 +0000
(14:47 +0000)
Use fls to calculate the pre-divider and input frequency for the PLL,
this is marginally faster than the previous loop.
Suggested-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link:
https://msgid.link/r/20240125103117.2622095-7-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/cs42l43.c
patch
|
blob
|
blame
|
history
diff --git
a/sound/soc/codecs/cs42l43.c
b/sound/soc/codecs/cs42l43.c
index 23e9557494afaf7103917841362bfba8e502457e..2c402086924d33418f10064b2fd333384574d92f 100644
(file)
--- a/
sound/soc/codecs/cs42l43.c
+++ b/
sound/soc/codecs/cs42l43.c
@@
-1338,10
+1338,9
@@
static int cs42l43_enable_pll(struct cs42l43_codec *priv)
dev_dbg(priv->dev, "Enabling PLL at %uHz\n", freq);
- while (freq > cs42l43_pll_configs[ARRAY_SIZE(cs42l43_pll_configs) - 1].freq) {
- div++;
- freq /= 2;
- }
+ div = fls(freq) -
+ fls(cs42l43_pll_configs[ARRAY_SIZE(cs42l43_pll_configs) - 1].freq);
+ freq >>= div;
if (div <= CS42L43_PLL_REFCLK_DIV_MASK) {
int i;