Re: [PATCH 2/7] ASoC: codec: lpass-rx-macro: add support for lpass rx macro

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks Mark for quick review,

On 28/01/2021 16:07, Mark Brown wrote:
On Thu, Jan 28, 2021 at 02:19:24PM +0000, Srinivas Kandagatla wrote:

  snd-soc-lpass-wsa-macro-objs := lpass-wsa-macro.o
  snd-soc-lpass-va-macro-objs := lpass-va-macro.o
+snd-soc-lpass-rx-macro-objs := lpass-rx-macro.o

Please keep things sorted.

@@ -0,0 +1,2020 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/* Copyright (c) 2018-2020, The Linux Foundation. All rights reserved.
+ */

Please make the entire comment a C++ one so things look more
intentional.
Will fix this in next version!


+static const char *const rx_macro_ear_mode_text[] = {"OFF", "ON"};
+static const struct soc_enum rx_macro_ear_mode_enum =
+	SOC_ENUM_SINGLE_EXT(2, rx_macro_ear_mode_text);

On/off controls should be standard Switch controls.

I agree!

+		if (rx->rx_mclk_users == 0) {
+			regcache_mark_dirty(regmap);
+			regcache_sync(regmap);

I'd expect this to be joined up with whatever caused the register state
to become invalid, this looks like it's inviting bugs.  This also seems
to have only one caller...

Few lines below we are moving the digital clock from OFF to ON which will change the state of registers. There are two callers, one from DAPM RX CLK widget and other from soundwire clock gate! We will potentially enter this path when we are resuming from clk pause state!


+	SOC_ENUM_EXT("RX_HPH HD2 Mode", rx_macro_hph_hd2_mode_enum,
+		rx_macro_get_hph_hd2_mode, rx_macro_put_hph_hd2_mode),
+
+	SOC_ENUM_EXT("RX_HPH_PWR_MODE", rx_macro_hph_pwr_mode_enum,
+		rx_macro_get_hph_pwr_mode, rx_macro_put_hph_pwr_mode),

The naming seems a bit random here.

Will try to clean this up in next spin!


+static int rx_swrm_clock(struct rx_macro *rx, bool enable)
+{

+static int swclk_gate_enable(struct clk_hw *hw)
+{
+	return rx_swrm_clock(to_rx_macro(hw), true);
+}
+
+static void swclk_gate_disable(struct clk_hw *hw)
+{
+	rx_swrm_clock(to_rx_macro(hw), false);
+}

This all seems very redundant and like it'll get in the way of grepping
for users.  It would be better to just inline the operation into the clk
API functions.

Sure!

--srini




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux