Merge "[Feature][T106]modify userdata partition to 341M"
diff --git a/ap/os/linux/linux-3.4.x/sound/soc/sanechips/zx297520v3_nau8810.c b/ap/os/linux/linux-3.4.x/sound/soc/sanechips/zx297520v3_nau8810.c
index 08db05c..b5a5715 100644
--- a/ap/os/linux/linux-3.4.x/sound/soc/sanechips/zx297520v3_nau8810.c
+++ b/ap/os/linux/linux-3.4.x/sound/soc/sanechips/zx297520v3_nau8810.c
@@ -373,6 +373,8 @@
 static int zx297520v3_nau8810_setup_pins(struct zx297520v3_nau8810_platform_data *codec_pins, char *fun)
 {
 	int ret;
+//xf.li@20230428 modify for codec start
+	u32 aon_clk_out2_sel = 0;
 
 	ret = gpio_request(ZX29_GPIO_17, "codec_refclk");
 	if (ret < 0) {
@@ -380,7 +382,11 @@
 		return ret;
 	}
 	zx29_gpio_config(ZX29_GPIO_17, GPIO17_CLK_OUT2);
+	aon_clk_out2_sel = ioread32(ZX_TOP_CRM_BASE+0x94);
 
+	aon_clk_out2_sel |= (1<<0) | (1<<2);
+	iowrite32(aon_clk_out2_sel,(ZX_TOP_CRM_BASE+0x94));
+//xf.li@20230428 modify for codec end
 return 0;
 
 }
diff --git a/ap/project/zx297520v3/prj_vehicle_dc/config/normal/config.linux b/ap/project/zx297520v3/prj_vehicle_dc/config/normal/config.linux
index 63b0ece..24d8cc3 100755
--- a/ap/project/zx297520v3/prj_vehicle_dc/config/normal/config.linux
+++ b/ap/project/zx297520v3/prj_vehicle_dc/config/normal/config.linux
@@ -1194,7 +1194,49 @@
 # CONFIG_I2C_DEBUG_CORE is not set
 # CONFIG_I2C_DEBUG_ALGO is not set
 # CONFIG_I2C_DEBUG_BUS is not set
-# CONFIG_SPI is not set
+#xf.li@20230410 add for spi debug start
+CONFIG_SPI=y
+
+# CONFIG_SPI_DEBUG is not set
+
+CONFIG_SPI_MASTER=y
+
+
+
+#
+
+# SPI Master Controller Drivers
+
+#
+
+# CONFIG_SPI_ALTERA is not set
+
+# CONFIG_SPI_BITBANG is not set
+
+# CONFIG_SPI_GPIO is not set
+
+# CONFIG_SPI_OC_TINY is not set
+
+# CONFIG_SPI_PXA2XX_PCI is not set
+
+# CONFIG_SPI_XILINX is not set
+
+# CONFIG_SPI_DESIGNWARE is not set
+
+CONFIG_SPI_ZX29=y
+
+
+
+#
+
+# SPI Protocol Masters
+
+#
+
+# CONFIG_SPI_SPIDEV is not set
+
+# CONFIG_SPI_TLE62X0 is not set
+#xf.li@20230410 add for spi debug end
 # CONFIG_HSI is not set
 
 #
@@ -1355,7 +1397,93 @@
 # CONFIG_FB is not set
 # CONFIG_EXYNOS_VIDEO is not set
 # CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-# CONFIG_SOUND is not set
+#xf.li@20230428 add for codec start
+CONFIG_SOUND=y
+
+# CONFIG_SOUND_OSS_CORE is not set
+
+CONFIG_SND=y
+
+CONFIG_SND_TIMER=y
+
+CONFIG_SND_PCM=y
+
+CONFIG_SND_JACK=y
+
+# CONFIG_SND_SEQUENCER is not set
+
+# CONFIG_SND_MIXER_OSS is not set
+
+# CONFIG_SND_PCM_OSS is not set
+
+# CONFIG_SND_HRTIMER is not set
+
+# CONFIG_SND_DYNAMIC_MINORS is not set
+
+CONFIG_SND_SUPPORT_OLD_API=y
+
+CONFIG_SND_VERBOSE_PROCFS=y
+
+# CONFIG_SND_VERBOSE_PRINTK is not set
+
+# CONFIG_SND_DEBUG is not set
+
+# CONFIG_SND_RAWMIDI_SEQ is not set
+
+# CONFIG_SND_OPL3_LIB_SEQ is not set
+
+# CONFIG_SND_OPL4_LIB_SEQ is not set
+
+# CONFIG_SND_SBAWE_SEQ is not set
+
+# CONFIG_SND_EMU10K1_SEQ is not set
+
+CONFIG_SND_DRIVERS=y
+
+# CONFIG_SND_DUMMY is not set
+
+# CONFIG_SND_ALOOP is not set
+
+# CONFIG_SND_MTPAV is not set
+
+# CONFIG_SND_SERIAL_U16550 is not set
+
+# CONFIG_SND_MPU401 is not set
+
+CONFIG_SND_ARM=y
+
+CONFIG_SND_SPI=y
+
+CONFIG_SND_SOC=y
+
+CONFIG_SND_SOC_SANECHIPS=y
+
+# CONFIG_SND_SOC_ZX297520V3_TI3100 is not set
+
+CONFIG_SND_SOC_ZX297520V3_NAU8810=y
+
+# CONFIG_SND_SOC_ZX297520V3_ES8374 is not set
+
+# CONFIG_SND_SOC_ZX297520V3_ES8312 is not set
+
+CONFIG_SND_SOC_ZX_VOICE=y
+
+CONFIG_SND_SOC_ZX297520V3=y
+
+CONFIG_SND_SOC_ZX_I2S=y
+
+CONFIG_SND_SOC_ZX_PCM=y
+
+CONFIG_SND_SOC_NAU8810=y
+
+# CONFIG_SND_EXTRA_CTRL is not set
+
+CONFIG_SND_SOC_I2C_AND_SPI=y
+
+# CONFIG_SND_SOC_ALL_CODECS is not set
+
+# CONFIG_SOUND_PRIME is not set
+#xf.li@20230428 add for codec end
 # CONFIG_HID_SUPPORT is not set
 # CONFIG_USB_ARCH_HAS_OHCI is not set
 # CONFIG_USB_ARCH_HAS_EHCI is not set
@@ -1593,7 +1721,11 @@
 #
 # ZX297520 volte driver
 #
-# CONFIG_VOLTE_DRV is not set
+#xf.li@20230428 add for add voice config start
+CONFIG_VOLTE_DRV=y
+
+CONFIG_VOICE_DRV=y
+#xf.li@20230428 add for add voice config end
 
 #
 # ZX297520V3 camera driver
@@ -2003,4 +2135,4 @@
 # CONFIG_CORDIC is not set
 # CONFIG_VOLTE_DRV is not set
 CONFIG_AMR_DRV=y
-# CONFIG_VOICE_BUFFER_DRV is not set
\ No newline at end of file
+# CONFIG_VOICE_BUFFER_DRV is not set
diff --git a/boot/common/src/uboot/drivers/peripheral/peripheral.c b/boot/common/src/uboot/drivers/peripheral/peripheral.c
index 564c2ca..4b0d8fe 100644
--- a/boot/common/src/uboot/drivers/peripheral/peripheral.c
+++ b/boot/common/src/uboot/drivers/peripheral/peripheral.c
@@ -33,7 +33,9 @@
 ****************************************************************************/

 #define SD1_IO_1V8_EN	0x13c830

 #define REG32(x)			    (*(volatile u32*)(x))

-

+//xf.li@20230412 add for enable GNSS start

+#define ZX_TOP_CRM_BASE	0x0013B000

+//xf.li@20230412 add for enable GNSS end

 /****************************************************************************

 *											   Local Types

 ****************************************************************************/

@@ -79,6 +81,20 @@
 	

 	REG32(SD1_IO_1V8_EN) |=(1<<1);

 #endif

+//xf.li@20230412 add for enable GNSS start

+#if 1 //enable GNSS

+	REG32(ZX_TOP_CRM_BASE + 0x34) |= (0x1<<5);

+	zDrvGpio_SetFunc(GPIO15,GPIO15_CLK_OUT0);

+

+	zDrvGpio_SetFunc(GPIO86,GPIO86_GPIO86);

+	zDrvGpio_SetDirection(GPIO86,GPIO_OUT);

+	zDrvGpio_SetOutputValue(GPIO86,GPIO_HIGH);

+

+	zDrvGpio_SetFunc(GPIO126,GPIO126_GPIO126);

+	zDrvGpio_SetDirection(GPIO126,GPIO_OUT);

+	zDrvGpio_SetOutputValue(GPIO126,GPIO_LOW);

+#endif

+//xf.li@20230412 add for enable GNSS end

 	zx234502_charger_enable();

 

 	return ret ;

diff --git a/cap/zx297520v3/sources/meta-zxic/recipes-kernel/linux/files/zx297520v3/linux-5_10-vehicle_dc-normal-defconfig b/cap/zx297520v3/sources/meta-zxic/recipes-kernel/linux/files/zx297520v3/linux-5_10-vehicle_dc-normal-defconfig
index f2fdb7a..32c7701 100755
--- a/cap/zx297520v3/sources/meta-zxic/recipes-kernel/linux/files/zx297520v3/linux-5_10-vehicle_dc-normal-defconfig
+++ b/cap/zx297520v3/sources/meta-zxic/recipes-kernel/linux/files/zx297520v3/linux-5_10-vehicle_dc-normal-defconfig
@@ -2100,6 +2100,11 @@
 CONFIG_MMC=y
 CONFIG_MMC_DW=y
 CONFIG_MMC_DW_ZX29=y
+#xf.li@20230428 add for emmc test start
+CONFIG_MMC_TEST=y
+CONFIG_MMC_DEBUG=y
+COMFIG_DEBUG_FS=y
+#xf.li@20230428 add for emmc test end
 # CONFIG_MEMSTICK is not set
 # CONFIG_NEW_LEDS is not set
 # CONFIG_ACCESSIBILITY is not set
diff --git a/cap/zx297520v3/zxic_code/zxic_source/zxic_app_open/at_ctl/src/atctrl/at_context.c b/cap/zx297520v3/zxic_code/zxic_source/zxic_app_open/at_ctl/src/atctrl/at_context.c
index bbadca5..2b34dda 100755
--- a/cap/zx297520v3/zxic_code/zxic_source/zxic_app_open/at_ctl/src/atctrl/at_context.c
+++ b/cap/zx297520v3/zxic_code/zxic_source/zxic_app_open/at_ctl/src/atctrl/at_context.c
@@ -242,8 +242,9 @@
 		if(timeout > 0 && timeout < INT_MAX/1000)//kw 3

 			g_farps_select_timeout = timeout;

 	}

-

-	g_farps_fd0 = at_open("/dev/ttyS2",O_RDWR);	

+	//xf.li@20230417 modify for enable GNSS start

+	//g_farps_fd0 = at_open("/dev/ttyS2",O_RDWR);	

+	//xf.li@20230417 modify for enable GNSS end

 	at_print(AT_ERR,"init open ttyS2 => fd: %d er_no: %d\n", g_farps_fd0, errno);

 	if(g_farps_fd0 >= 0){

 		if(at_portmng_set_state_proc("/dev/ttyS2",1,g_farps_fd0) != 0){

diff --git a/cp/ps/project/zx297520v3/prj_evb/source/drv/inc/drvs_ref_cfg.h b/cp/ps/project/zx297520v3/prj_evb/source/drv/inc/drvs_ref_cfg.h
index aa56e97..4250541 100644
--- a/cp/ps/project/zx297520v3/prj_evb/source/drv/inc/drvs_ref_cfg.h
+++ b/cp/ps/project/zx297520v3/prj_evb/source/drv/inc/drvs_ref_cfg.h
@@ -215,10 +215,16 @@
 #define UICC_GPIO_FUN_GPIO	GPIO49_GPIO49

 #define UICC_GPIO_EXT_INT	GPIO49_EXT_INT2

 #define UICC_EXT_INT		EX2_INT

-#define SIM_IN				GPIO_HIGH

-#define SIM_OUT				GPIO_LOW

-#define SIM_IN_LEVEL		INT_HIGHLEVEL

-#define	SIM_OUT_LEVEL		INT_LOWLEVEL

+//xf.li@20230410 add for sim hot-swappable start

+#define SIM_IN				GPIO_LOW

+#define SIM_OUT				GPIO_HIGH

+#define SIM_IN_LEVEL		INT_LOWLEVEL

+#define	SIM_OUT_LEVEL		INT_HIGHLEVEL

+//#define SIM_IN				GPIO_HIGH

+//#define SIM_OUT				GPIO_LOW

+//#define SIM_IN_LEVEL		INT_HIGHLEVEL

+//#define	SIM_OUT_LEVEL		INT_LOWLEVEL

+//xf.li@20230410 add for sim hot-swappable end

 #else 

 #define UICC_GPIO			ZX29_GPIO_50

 #define UICC_GPIO_FUN_GPIO	GPIO50_GPIO50