Merge "[Bugfix][T106BUG-520]Fix the problem of not being able to ping ipv4 addresses"
diff --git a/ap/app/zte_comm/at_ctl/src/atctrl/at_rcvmsg.c b/ap/app/zte_comm/at_ctl/src/atctrl/at_rcvmsg.c
index a40fd61..94c081f 100755
--- a/ap/app/zte_comm/at_ctl/src/atctrl/at_rcvmsg.c
+++ b/ap/app/zte_comm/at_ctl/src/atctrl/at_rcvmsg.c
@@ -898,7 +898,7 @@
 			ptr = PsmIndAtCmdPrefix;

 			while(NULL != (ptr1 =  at_strstr(ptr, temp_prefix)))

 			{

-				len_start += (int)(ptr1-PsmIndAtCmdPrefix);

+				len_start = (int)(ptr1-PsmIndAtCmdPrefix);//jb.qi change for while list SMS cant resume on 20240223

 				len_end = len_start+strlen(temp_prefix);

 				if(0 == len_start){

 					if(!isdigit(PsmIndAtCmdPrefix[len_end]) && !isalpha(PsmIndAtCmdPrefix[len_end])){

diff --git a/ap/app/zte_mdl/zte_mdl.c b/ap/app/zte_mdl/zte_mdl.c
index 1142fb0..e3d50ce 100755
--- a/ap/app/zte_mdl/zte_mdl.c
+++ b/ap/app/zte_mdl/zte_mdl.c
@@ -88,7 +88,9 @@
 }
 void wlan_entry(char *arg)
 {
+#if (defined _USE_VEHICLE_DC_REF)&&(defined _USE_VEHICLE_DC_REF_MMC0) //jb.qi add for wifi config on 20240301
 	wlan_main(0,NULL);
+#endif
 	return;
 }
 void fota_dm_entry(char *arg)
diff --git a/ap/build/libps_libs.mk b/ap/build/libps_libs.mk
index 1283364..3d23159 100755
--- a/ap/build/libps_libs.mk
+++ b/ap/build/libps_libs.mk
@@ -135,6 +135,9 @@
 
 ifeq ($(USE_VEHICLE_DC_REF),yes)
 KERNEL_EXT_CFLAGS   += -D_USE_VEHICLE_DC_REF
+#jb.qi add for wifi config on 20240301 start
+#KERNEL_EXT_CFLAGS   += -D_USE_VEHICLE_DC_REF_MMC0
+#jb.qi add for wifi config on 20240301 end
 endif
 
 KERNEL_EXT_CFLAGS   += -DDDR_BASE_ADDR_LINUX_VA
@@ -177,4 +180,4 @@
 
 ifeq ($(ALSA_CODEC_IN_CAP),yes)
 KERNEL_EXT_CFLAGS += -D_ALSA_CODEC_IN_CAP
-endif
\ No newline at end of file
+endif
diff --git a/cap/zx297520v3/sources/meta-zxic/recipes-kernel/linux/files/zx297520v3/linux-5_10-vehicle_dc_ref-normal-defconfig b/cap/zx297520v3/sources/meta-zxic/recipes-kernel/linux/files/zx297520v3/linux-5_10-vehicle_dc_ref-normal-defconfig
index ad47afa..3e5ab07 100755
--- a/cap/zx297520v3/sources/meta-zxic/recipes-kernel/linux/files/zx297520v3/linux-5_10-vehicle_dc_ref-normal-defconfig
+++ b/cap/zx297520v3/sources/meta-zxic/recipes-kernel/linux/files/zx297520v3/linux-5_10-vehicle_dc_ref-normal-defconfig
@@ -1398,6 +1398,9 @@
 CONFIG_MDIO_BUS=y
 CONFIG_OF_MDIO=y
 CONFIG_MDIO_DEVRES=y
+# zw.wang Customer chooses phy c22/c45 issues on 20240301 start
+CONFIG_MDIO_C45=y
+# zw.wang Customer chooses phy c22/c45 issues on 20240301 end
 # CONFIG_MDIO_BITBANG is not set
 # CONFIG_MDIO_BCM_UNIMAC is not set
 # CONFIG_MDIO_HISI_FEMAC is not set
diff --git a/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/ethernet/zte/zx29_gmac.c b/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/ethernet/zte/zx29_gmac.c
index 556f9c4..797ec4d 100644
--- a/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/ethernet/zte/zx29_gmac.c
+++ b/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/ethernet/zte/zx29_gmac.c
@@ -1647,7 +1647,7 @@
 	ret = gpio_request(prv->gpio_power[0], "gmac_power"); /* gpio 83/124 */

 	gpio_direction_output(prv->gpio_power[0], 1);

 	mdelay(15);

-#ifdef _USE_VEHICLE_DC_REF

+#ifdef CONFIG_MDIO_C45 //zw.wang Customer chooses phy c22/c45 issues on 20240301
 	prv->gpio_power[1] = of_get_gpio_flags(pdev->dev.of_node, 1, &flags);

 	ret = gpio_request(prv->gpio_power[1], "phy_rst"); /* gpio 63 */

 	gpio_direction_output(prv->gpio_power[1], 0);

@@ -1854,7 +1854,7 @@
 		free_netdev(ndev);

 	    platform_set_drvdata(pdev, NULL);

 

-#ifdef _USE_VEHICLE_DC_REF

+#ifdef CONFIG_MDIO_C45 //zw.wang Customer chooses phy c22/c45 issues on 20240301
 		gpio_free(priv->gpio_power[1]);

 #endif

 		gpio_direction_output(priv->gpio_power[0], 0);

diff --git a/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/phy/Kconfig b/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/phy/Kconfig
index 7db7c8c..a0bf99d 100644
--- a/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/phy/Kconfig
+++ b/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/phy/Kconfig
@@ -314,6 +314,13 @@
 	  the Reduced Gigabit Media Independent Interface(RGMII) between
 	  Ethernet physical media devices and the Gigabit Ethernet controller.
 
+# zw.wang Customer chooses phy c22/c45 issues on 20240301 start
+config MDIO_C45
+	bool "Switch between c22 and c45"
+	default n
+	help
+	  It is disabled by default. The value is C45 if yes, and C22 if N.
+# zw.wang Customer chooses phy c22/c45 issues on 20240301 end
 endif # PHYLIB
 
 config MICREL_KS8995MA
diff --git a/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/phy/phy_device.c b/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/phy/phy_device.c
index da7365f..a868814 100644
--- a/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/phy/phy_device.c
+++ b/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/drivers/net/phy/phy_device.c
@@ -793,7 +793,7 @@
 
 	/* Grab the bits from PHYIR1, and put them in the upper half */
 //	phy_reg = mdiobus_read(bus, addr, MII_PHYSID1);
-#ifdef _USE_VEHICLE_DC_REF
+#ifdef CONFIG_MDIO_C45 //zw.wang Customer chooses phy c22/c45 issues on 20240301
     mdiobus_write(bus, addr, 0x0d, 1);
     mdiobus_write(bus, addr, 0x0e, 2);
     mdiobus_write(bus, addr, 0x0d, 0x4000 | 1);
@@ -810,7 +810,7 @@
 
 	/* Grab the bits from PHYIR2, and put them in the lower half */
 //	phy_reg = mdiobus_read(bus, addr, MII_PHYSID2);
-#ifdef _USE_VEHICLE_DC_REF	
+#ifdef CONFIG_MDIO_C45	
     mdiobus_write(bus, addr, 0x0d, 1);
     mdiobus_write(bus, addr, 0x0e, 3);
     mdiobus_write(bus, addr, 0x0d, 0x4000 | 1);
@@ -825,7 +825,7 @@
 
 	*phy_id |= phy_reg;
 
-#ifdef _USE_VEHICLE_DC_REF	
+#ifdef CONFIG_MDIO_C45	
     printk("[%s] read with c45 phy id:0x%x\n", __func__, *phy_id);
 #else
     printk("[%s] read with c22 phy id:0x%x\n", __func__, *phy_id);
diff --git a/cap/zx297520v3/zxic_code/zxic_source/zxic_app_open/sdk/ril/reference-ril/ril_mm.c b/cap/zx297520v3/zxic_code/zxic_source/zxic_app_open/sdk/ril/reference-ril/ril_mm.c
index 7bbbb3f..84375d3 100755
--- a/cap/zx297520v3/zxic_code/zxic_source/zxic_app_open/sdk/ril/reference-ril/ril_mm.c
+++ b/cap/zx297520v3/zxic_code/zxic_source/zxic_app_open/sdk/ril/reference-ril/ril_mm.c
@@ -1501,7 +1501,12 @@
 

 	err = at_send_command_singleline("AT+ZEMSCIQ?", "+ZEMSCIQ:", &p_response);

 	if (err < 0 || p_response->success == 0) {

-		RIL_onRequestComplete(t, RIL_E_GENERIC_FAILURE, NULL, 0);

+		//xy.he add for T106BUG-545 start

+		if(NULL!=t)

+		{

+			RIL_onRequestComplete(t, RIL_E_GENERIC_FAILURE, NULL, 0);

+		}

+		//xy.he add for T106BUG-545 end

 		at_response_free(p_response);

 		return;

 	}

diff --git a/update_version.sh b/update_version.sh
index 74d4cf2..718b937 100755
--- a/update_version.sh
+++ b/update_version.sh
@@ -1,8 +1,8 @@
 #!/bin/bash
 #export LYNQ_VERSION="T106_lynq_version_ap_build_sh"
-LYNQ_AP_VERSION="T106-ZS03.V2.01.01.02P54U03.AP.11.00"
-LYNQ_CAP_INSIDE_VERSION="CAP.11.00"
-LYNQ_CAP_VERSION="CAP.11.00"
+LYNQ_AP_VERSION="T106-V2.01.01.02P54U03.AP.11.01"
+LYNQ_CAP_INSIDE_VERSION="CAP.11.01"
+LYNQ_CAP_VERSION="CAP.11.01"
 COMMIT_ID="$(git rev-parse HEAD)"
 
 LYNQ_SW_INSIDE_VERSION="LYNQ_CONFIG_VERSION = \"${LYNQ_AP_VERSION}_${LYNQ_CAP_INSIDE_VERSION}\""