@@ -161,6 +161,9 @@ static void cs35l41_hda_playback_hook(struct device *dev, int action)
161
161
if (reg_seq -> close )
162
162
ret = regmap_multi_reg_write (reg , reg_seq -> close , reg_seq -> num_close );
163
163
break ;
164
+ default :
165
+ ret = - EINVAL ;
166
+ break ;
164
167
}
165
168
166
169
if (ret )
@@ -227,6 +230,8 @@ static int cs35l41_hda_apply_properties(struct cs35l41_hda *cs35l41,
227
230
internal_boost = true;
228
231
229
232
switch (hw_cfg -> gpio1_func ) {
233
+ case CS35L41_NOT_USED :
234
+ break ;
230
235
case CS35l41_VSPK_SWITCH :
231
236
regmap_update_bits (cs35l41 -> regmap , CS35L41_GPIO_PAD_CONTROL ,
232
237
CS35L41_GPIO1_CTRL_MASK , 1 << CS35L41_GPIO1_CTRL_SHIFT );
@@ -235,13 +240,21 @@ static int cs35l41_hda_apply_properties(struct cs35l41_hda *cs35l41,
235
240
regmap_update_bits (cs35l41 -> regmap , CS35L41_GPIO_PAD_CONTROL ,
236
241
CS35L41_GPIO1_CTRL_MASK , 2 << CS35L41_GPIO1_CTRL_SHIFT );
237
242
break ;
243
+ default :
244
+ dev_err (cs35l41 -> dev , "Invalid function %d for GPIO1\n" , hw_cfg -> gpio1_func );
245
+ return - EINVAL ;
238
246
}
239
247
240
248
switch (hw_cfg -> gpio2_func ) {
249
+ case CS35L41_NOT_USED :
250
+ break ;
241
251
case CS35L41_INTERRUPT :
242
252
regmap_update_bits (cs35l41 -> regmap , CS35L41_GPIO_PAD_CONTROL ,
243
253
CS35L41_GPIO2_CTRL_MASK , 2 << CS35L41_GPIO2_CTRL_SHIFT );
244
254
break ;
255
+ default :
256
+ dev_err (cs35l41 -> dev , "Invalid function %d for GPIO2\n" , hw_cfg -> gpio2_func );
257
+ return - EINVAL ;
245
258
}
246
259
247
260
if (internal_boost ) {
0 commit comments