From d3acb07ae52cd1e07661d853cb07895d324a847f Mon Sep 17 00:00:00 2001
From: huangcm <1263938474@qq.com>
Date: Sat, 12 Oct 2024 02:36:04 +0000
Subject: [PATCH] feat(board): fix poweroff & eth & hp pro

---
 longan/kernel/linux-4.9/sound/soc/sunxi/sun50iw10-sndcodec.c |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/longan/kernel/linux-4.9/sound/soc/sunxi/sun50iw10-sndcodec.c b/longan/kernel/linux-4.9/sound/soc/sunxi/sun50iw10-sndcodec.c
index 6f621e8..f13f240 100644
--- a/longan/kernel/linux-4.9/sound/soc/sunxi/sun50iw10-sndcodec.c
+++ b/longan/kernel/linux-4.9/sound/soc/sunxi/sun50iw10-sndcodec.c
@@ -364,7 +364,8 @@
 		regval &= ~(0x1 << JACK_DET_IIN_ST);
 		regval |= 0x1 << JACK_DET_OUT_ST;
 		snd_soc_write(priv->codec, SUNXI_HMIC_STS, regval);
-		priv->detect_state = PLUG_OUT;
+		// priv->detect_state = PLUG_OUT;
+		priv->detect_state = PLUG_IN; // always plugin
 		schedule_delayed_work(&priv->hs_detect_work,
 				msecs_to_jiffies(10));
 	}
@@ -815,7 +816,7 @@
 	 * initial the parameters for judge switch state
 	 */
 	priv->HEADSET_DATA = 0x10;
-	priv->detect_state = PLUG_OUT;
+	priv->detect_state = PLUG_IN;
 	INIT_DELAYED_WORK(&priv->hs_detect_work, sunxi_check_hs_detect_status);
 	INIT_DELAYED_WORK(&priv->hs_button_work, sunxi_check_hs_button_status);
 	INIT_DELAYED_WORK(&priv->hs_init_work, sunxi_hs_init_work);
@@ -838,6 +839,8 @@
 
 	dev_warn(&pdev->dev, "[%s] register card finished.\n", __func__);
 
+	schedule_delayed_work(&priv->hs_detect_work, msecs_to_jiffies(10));
+
 	return 0;
 
 err_devm_kfree:

--
Gitblit v1.6.2