asoc: sm6150: Fix logic in comparison of sound card name
Use strlen instead of sizeof in strnstr operations
to return the exact size of sound card name.
Change-Id: Id579a41ed79d4443dac7dd2e709784e9dfa186ac
Signed-off-by: Aditya Bavanari <abavanar@codeaurora.org>
diff --git a/asoc/sm6150.c b/asoc/sm6150.c
index c59da4c..4e084e3 100644
--- a/asoc/sm6150.c
+++ b/asoc/sm6150.c
@@ -8766,8 +8766,8 @@
__func__, found);
codec_aux_dev:
- if (!strnstr(card->name, "tavil", sizeof("tavil")) &&
- !strnstr(card->name, "tasha", sizeof("tasha"))) {
+ if (!strnstr(card->name, "tavil", strlen(card->name)) &&
+ !strnstr(card->name, "tasha", strlen(card->name))) {
/* Get maximum aux codec device count for this platform */
ret = of_property_read_u32(pdev->dev.of_node,
"qcom,codec-max-aux-devs",
@@ -9002,8 +9002,8 @@
goto err;
}
- if (strnstr(card->name, "tavil", sizeof("tavil")) ||
- strnstr(card->name, "tasha", sizeof("tasha"))) {
+ if (strnstr(card->name, "tavil", strlen(card->name)) ||
+ strnstr(card->name, "tasha", strlen(card->name))) {
pdata = snd_soc_card_get_drvdata(card);
if (!pdata->is_afe_config_done) {
const char *be_dl_name = LPASS_BE_SLIMBUS_0_RX;
@@ -9053,8 +9053,8 @@
dev_dbg(dev, "%s: setting snd_card to OFFLINE\n", __func__);
snd_soc_card_change_online_state(card, 0);
- if (strnstr(card->name, "tavil", sizeof("tavil")) ||
- strnstr(card->name, "tasha", sizeof("tasha"))) {
+ if (strnstr(card->name, "tavil", strlen(card->name)) ||
+ strnstr(card->name, "tasha", strlen(card->name))) {
pdata = snd_soc_card_get_drvdata(card);
msm_afe_clear_config();
pdata->is_afe_config_done = false;
@@ -9280,8 +9280,8 @@
}
msm_i2s_auxpcm_init(pdev);
- if (!strnstr(card->name, "tavil", sizeof("tavil")) &&
- !strnstr(card->name, "tasha", sizeof("tasha"))) {
+ if (!strnstr(card->name, "tavil", strlen(card->name)) &&
+ !strnstr(card->name, "tasha", strlen(card->name))) {
pdata->dmic01_gpio_p = of_parse_phandle(pdev->dev.of_node,
"qcom,cdc-dmic01-gpios",
0);