Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ASoC: codecs: wcd939x: Unify define used for MIC bias VOUT registers

All four microphone bias registers have similar layout: VOUT control
mask is exactly the same. Use one define, just like older driver
wcd938x is doing, to make the code a bit simpler.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://msgid.link/r/20240523125049.43713-1-krzysztof.kozlowski@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Krzysztof Kozlowski and committed by
Mark Brown
fe243a54 4ac0f06c

+7 -15
+6 -11
sound/soc/codecs/wcd939x.c
··· 1933 1933 int req_volt, int micb_num) 1934 1934 { 1935 1935 struct wcd939x_priv *wcd939x = snd_soc_component_get_drvdata(component); 1936 - unsigned int micb_vout_ctl_field; 1937 1936 unsigned int micb_reg, cur_vout_ctl, micb_en; 1938 1937 int req_vout_ctl; 1939 1938 int ret = 0; ··· 1940 1941 switch (micb_num) { 1941 1942 case MIC_BIAS_1: 1942 1943 micb_reg = WCD939X_ANA_MICB1; 1943 - micb_vout_ctl_field = WCD939X_MICB1_VOUT_CTL; 1944 1944 break; 1945 1945 case MIC_BIAS_2: 1946 1946 micb_reg = WCD939X_ANA_MICB2; 1947 - micb_vout_ctl_field = WCD939X_MICB2_VOUT_CTL; 1948 1947 break; 1949 1948 case MIC_BIAS_3: 1950 1949 micb_reg = WCD939X_ANA_MICB3; 1951 - micb_vout_ctl_field = WCD939X_MICB1_VOUT_CTL; 1952 1950 break; 1953 1951 case MIC_BIAS_4: 1954 1952 micb_reg = WCD939X_ANA_MICB4; 1955 - micb_vout_ctl_field = WCD939X_MICB2_VOUT_CTL; 1956 1953 break; 1957 1954 default: 1958 1955 return -EINVAL; ··· 1966 1971 micb_en = snd_soc_component_read_field(component, micb_reg, 1967 1972 WCD939X_MICB_ENABLE); 1968 1973 cur_vout_ctl = snd_soc_component_read_field(component, micb_reg, 1969 - micb_vout_ctl_field); 1974 + WCD939X_MICB_VOUT_CTL); 1970 1975 1971 1976 req_vout_ctl = wcd939x_get_micb_vout_ctl_val(req_volt); 1972 1977 if (req_vout_ctl < 0) { ··· 1989 1994 MICB_BIAS_PULL_DOWN); 1990 1995 1991 1996 snd_soc_component_write_field(component, micb_reg, 1992 - micb_vout_ctl_field, req_vout_ctl); 1997 + WCD939X_MICB_VOUT_CTL, req_vout_ctl); 1993 1998 1994 1999 if (micb_en == MICB_BIAS_ENABLE) { 1995 2000 snd_soc_component_write_field(component, micb_reg, ··· 2907 2912 return -EINVAL; 2908 2913 2909 2914 regmap_update_bits(wcd939x->regmap, WCD939X_ANA_MICB1, 2910 - WCD939X_MICB1_VOUT_CTL, vout_ctl_1); 2915 + WCD939X_MICB_VOUT_CTL, vout_ctl_1); 2911 2916 regmap_update_bits(wcd939x->regmap, WCD939X_ANA_MICB2, 2912 - WCD939X_MICB2_VOUT_CTL, vout_ctl_2); 2917 + WCD939X_MICB_VOUT_CTL, vout_ctl_2); 2913 2918 regmap_update_bits(wcd939x->regmap, WCD939X_ANA_MICB3, 2914 - WCD939X_MICB3_VOUT_CTL, vout_ctl_3); 2919 + WCD939X_MICB_VOUT_CTL, vout_ctl_3); 2915 2920 regmap_update_bits(wcd939x->regmap, WCD939X_ANA_MICB4, 2916 - WCD939X_MICB4_VOUT_CTL, vout_ctl_4); 2921 + WCD939X_MICB_VOUT_CTL, vout_ctl_4); 2917 2922 2918 2923 return 0; 2919 2924 }
+1 -4
sound/soc/codecs/wcd939x.h
··· 92 92 #define WCD939X_MBHC_BTN7_VTH GENMASK(7, 2) 93 93 #define WCD939X_ANA_MICB1 (0x3022) 94 94 #define WCD939X_MICB_ENABLE GENMASK(7, 6) 95 - #define WCD939X_MICB1_VOUT_CTL GENMASK(5, 0) 95 + #define WCD939X_MICB_VOUT_CTL GENMASK(5, 0) 96 96 #define WCD939X_ANA_MICB2 (0x3023) 97 - #define WCD939X_MICB2_VOUT_CTL GENMASK(5, 0) 98 97 #define WCD939X_ANA_MICB2_RAMP (0x3024) 99 98 #define WCD939X_MICB2_RAMP_RAMP_ENABLE BIT(7) 100 99 #define WCD939X_MICB2_RAMP_MB2_IN2P_SHORT_ENABLE BIT(6) ··· 101 102 #define WCD939X_MICB2_RAMP_SHIFT_CTL GENMASK(4, 2) 102 103 #define WCD939X_MICB2_RAMP_USB_MGDET_MICB2_RAMP GENMASK(1, 0) 103 104 #define WCD939X_ANA_MICB3 (0x3025) 104 - #define WCD939X_MICB3_VOUT_CTL GENMASK(5, 0) 105 105 #define WCD939X_ANA_MICB4 (0x3026) 106 - #define WCD939X_MICB4_VOUT_CTL GENMASK(5, 0) 107 106 #define WCD939X_BIAS_CTL (0x3028) 108 107 #define WCD939X_BIAS_VBG_FINE_ADJ (0x3029) 109 108 #define WCD939X_LDOL_VDDCX_ADJUST (0x3040)