.. | .. |
---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
---|
1 | 2 | /* |
---|
2 | 3 | * Copyright (C) ST-Ericsson SA 2012 |
---|
3 | 4 | * |
---|
.. | .. |
---|
13 | 14 | * for ST-Ericsson. |
---|
14 | 15 | * |
---|
15 | 16 | * License terms: |
---|
16 | | - * |
---|
17 | | - * This program is free software; you can redistribute it and/or modify it |
---|
18 | | - * under the terms of the GNU General Public License version 2 as published |
---|
19 | | - * by the Free Software Foundation. |
---|
20 | 17 | */ |
---|
21 | 18 | |
---|
22 | 19 | #include <linux/kernel.h> |
---|
.. | .. |
---|
1062 | 1059 | snd_soc_component_update_bits(component, AB8500_ANCCONF1, |
---|
1063 | 1060 | BIT(AB8500_ANCCONF1_ANCIIRINIT), |
---|
1064 | 1061 | BIT(AB8500_ANCCONF1_ANCIIRINIT)); |
---|
1065 | | - usleep_range(AB8500_ANC_SM_DELAY, AB8500_ANC_SM_DELAY); |
---|
| 1062 | + usleep_range(AB8500_ANC_SM_DELAY, AB8500_ANC_SM_DELAY*2); |
---|
1066 | 1063 | snd_soc_component_update_bits(component, AB8500_ANCCONF1, |
---|
1067 | 1064 | BIT(AB8500_ANCCONF1_ANCIIRINIT), 0); |
---|
1068 | | - usleep_range(AB8500_ANC_SM_DELAY, AB8500_ANC_SM_DELAY); |
---|
| 1065 | + usleep_range(AB8500_ANC_SM_DELAY, AB8500_ANC_SM_DELAY*2); |
---|
1069 | 1066 | } else { |
---|
1070 | 1067 | snd_soc_component_update_bits(component, AB8500_ANCCONF1, |
---|
1071 | 1068 | BIT(AB8500_ANCCONF1_ANCIIRUPDATE), |
---|
.. | .. |
---|
1103 | 1100 | if (apply_fir) |
---|
1104 | 1101 | for (bnk = 0; bnk < AB8500_NR_OF_ANC_COEFF_BANKS; bnk++) |
---|
1105 | 1102 | for (par = 0; par < AB8500_ANC_FIR_COEFFS; par++) { |
---|
1106 | | - val = snd_soc_component_read32(component, |
---|
| 1103 | + val = snd_soc_component_read(component, |
---|
1107 | 1104 | drvdata->anc_fir_values[par]); |
---|
1108 | 1105 | anc_fir(component, bnk, par, val); |
---|
1109 | 1106 | } |
---|
.. | .. |
---|
1111 | 1108 | if (apply_iir) |
---|
1112 | 1109 | for (bnk = 0; bnk < AB8500_NR_OF_ANC_COEFF_BANKS; bnk++) |
---|
1113 | 1110 | for (par = 0; par < AB8500_ANC_IIR_COEFFS; par++) { |
---|
1114 | | - val = snd_soc_component_read32(component, |
---|
| 1111 | + val = snd_soc_component_read(component, |
---|
1115 | 1112 | drvdata->anc_iir_values[par]); |
---|
1116 | 1113 | anc_iir(component, bnk, par, val); |
---|
1117 | 1114 | } |
---|
.. | .. |
---|
1156 | 1153 | |
---|
1157 | 1154 | mutex_lock(&drvdata->ctrl_lock); |
---|
1158 | 1155 | |
---|
1159 | | - sidconf = snd_soc_component_read32(component, AB8500_SIDFIRCONF); |
---|
| 1156 | + sidconf = snd_soc_component_read(component, AB8500_SIDFIRCONF); |
---|
1160 | 1157 | if (((sidconf & BIT(AB8500_SIDFIRCONF_FIRSIDBUSY)) != 0)) { |
---|
1161 | 1158 | if ((sidconf & BIT(AB8500_SIDFIRCONF_ENFIRSIDS)) == 0) { |
---|
1162 | 1159 | dev_err(component->dev, "%s: Sidetone busy while off!\n", |
---|
.. | .. |
---|
1171 | 1168 | snd_soc_component_write(component, AB8500_SIDFIRADR, 0); |
---|
1172 | 1169 | |
---|
1173 | 1170 | for (param = 0; param < AB8500_SID_FIR_COEFFS; param++) { |
---|
1174 | | - val = snd_soc_component_read32(component, drvdata->sid_fir_values[param]); |
---|
| 1171 | + val = snd_soc_component_read(component, drvdata->sid_fir_values[param]); |
---|
1175 | 1172 | snd_soc_component_write(component, AB8500_SIDFIRCOEF1, val >> 8 & 0xff); |
---|
1176 | 1173 | snd_soc_component_write(component, AB8500_SIDFIRCOEF2, val & 0xff); |
---|
1177 | 1174 | } |
---|
.. | .. |
---|
2129 | 2126 | dev_err(dai->component->dev, |
---|
2130 | 2127 | "%s: ERROR: The device is either a master or a slave.\n", |
---|
2131 | 2128 | __func__); |
---|
| 2129 | + fallthrough; |
---|
2132 | 2130 | default: |
---|
2133 | 2131 | dev_err(dai->component->dev, |
---|
2134 | 2132 | "%s: ERROR: Unsupporter master mask 0x%x\n", |
---|