Merge "[Feature][ZXW-195][AT]add autosuspend AT"
diff --git a/cap/zx297520v3/sources/meta-zxic-custom/recipes-lynq/lynq-qser-sms-demo/files/lynq-qser-sms-demo.cpp b/cap/zx297520v3/sources/meta-zxic-custom/recipes-lynq/lynq-qser-sms-demo/files/lynq-qser-sms-demo.cpp
index ba29e2d..0cb7976 100755
--- a/cap/zx297520v3/sources/meta-zxic-custom/recipes-lynq/lynq-qser-sms-demo/files/lynq-qser-sms-demo.cpp
+++ b/cap/zx297520v3/sources/meta-zxic-custom/recipes-lynq/lynq-qser-sms-demo/files/lynq-qser-sms-demo.cpp
@@ -30,7 +30,7 @@
int (*qser_sms_setsmscenteraddress)(sms_client_handle_type h_sms, QSER_sms_service_center_cfg_t *get_sca_cfg);
void qser_sms_handler(QSER_SMS_MsgRef msgRef, void* contextPtr) {
- printf("[%s-%d] sms handler, msgRef->sms_data = %s\n", __FUNCTION__, __LINE__, msgRef->sms_data);
+ printf("[%s-%d] sms handler, msgRef->sms_data = %s,addr =%s\n", __FUNCTION__, __LINE__, msgRef->sms_data, msgRef->src_addr);
}
bool isNumeric(char *phnum) {
diff --git a/cap/zx297520v3/src/lynq/lib/liblynq-led/lynq_led.cpp b/cap/zx297520v3/src/lynq/lib/liblynq-led/lynq_led.cpp
index 66ff18d..453a29c 100755
--- a/cap/zx297520v3/src/lynq/lib/liblynq-led/lynq_led.cpp
+++ b/cap/zx297520v3/src/lynq/lib/liblynq-led/lynq_led.cpp
@@ -15,6 +15,8 @@
{
char buf_netled[BUF_LEN] = "";
+ if(led_mode != 0 && led_mode != 1)
+ return -1;
sprintf(buf_netled,"%s.%s.%s=%d", LYNQ_UCI_FILE, LYNQ_UCI_SECTION, LYNQ_UCI_STATUSLED_KEY, led_mode);
lynq_uci_set(buf_netled);
@@ -25,8 +27,11 @@
{
char buf_statusled[BUF_LEN] = "";
+ if(led_mode != 0 && led_mode != 1)
+ return -1;
sprintf(buf_statusled,"%s.%s.%s=%d", LYNQ_UCI_FILE, LYNQ_UCI_SECTION, LYNQ_UCI_KEY, led_mode);
lynq_uci_set(buf_statusled);
+ system("/usr/bin/lynq-led-sev");
return 0;
}
\ No newline at end of file
diff --git a/cap/zx297520v3/src/lynq/lib/liblynq-qser-data/lynq-qser-data.cpp b/cap/zx297520v3/src/lynq/lib/liblynq-qser-data/lynq-qser-data.cpp
index 47b5562..2928d8d 100755
--- a/cap/zx297520v3/src/lynq/lib/liblynq-qser-data/lynq-qser-data.cpp
+++ b/cap/zx297520v3/src/lynq/lib/liblynq-qser-data/lynq-qser-data.cpp
@@ -990,6 +990,10 @@
if (NULL == data_call || NULL == err)
{
LYERRLOG("call start incoming paramters error");
+ if(err != NULL)
+ {
+ *err = QSER_DATA_CALL_ERROR_INVALID_PARAMS;
+ }
return ret;
}
if (data_call->profile_idx == 0)
@@ -1004,12 +1008,13 @@
if (ret != 0)
{
LYERRLOG("qser_apn_get error");
+ *err = QSER_DATA_CALL_ERROR_INVALID_PARAMS;
return ret;
}
judge_pdp_type(apn_info.pdp_type,pdptype);
ret = lynq_setup_data_call_sp(&handle,apn_info.apn_name,apn_info.apn_type,apn_info.username,apn_info.password,NULL,pdptype,pdptype);
}
- if (ret < 0)
+ if (ret != 0)
{
*err = QSER_DATA_CALL_ERROR_INVALID_PARAMS;
}
@@ -1026,12 +1031,18 @@
LYERRLOG("call stop incoming paramters error");
return ret;
}
- data_call_handle_get(profile_idx,&handle);
+ ret = data_call_handle_get(profile_idx,&handle);
+ if(ret != 0)
+ {
+ LYERRLOG("datacall handle get error");
+ *err = QSER_DATA_CALL_ERROR_INVALID_PARAMS;
+ return ret;
+ }
ret = lynq_deactive_data_call(&handle);
- if (ret < 0)
+ if (ret != 0)
{
*err = QSER_DATA_CALL_ERROR_INVALID_PARAMS;
- return *err;
+ return ret;
}
return ret;
}
diff --git a/cap/zx297520v3/src/lynq/lib/liblynq-qser-sms/lynq_qser_sms.cpp b/cap/zx297520v3/src/lynq/lib/liblynq-qser-sms/lynq_qser_sms.cpp
index fb8a686..a86d8a5 100755
--- a/cap/zx297520v3/src/lynq/lib/liblynq-qser-sms/lynq_qser_sms.cpp
+++ b/cap/zx297520v3/src/lynq/lib/liblynq-qser-sms/lynq_qser_sms.cpp
@@ -43,12 +43,17 @@
{
QSER_sms_info.storage_index = handle;
QSER_sms_info.format = (QSER_SMS_T)charset;
+ memset(QSER_sms_info.sms_data, 0, sizeof(QSER_sms_info.sms_data));
+ memset(QSER_sms_info.src_addr, 0, sizeof(QSER_sms_info.src_addr));
+ memcpy(QSER_sms_info.src_addr, teleNum, strlen(teleNum));
memcpy(QSER_sms_info.sms_data, message, smslen);
QSER_sms_info.sms_data[smslen] = '\0';
QSER_sms_info.sms_data_len = smslen;
if(total > 1)
{
QSER_sms_info.user_data_head_valid = 1;
+ QSER_sms_info.user_data_head.seg_number = current;
+ QSER_sms_info.user_data_head.total_segments = total;
}
else
{
diff --git a/cap/zx297520v3/src/lynq/packages/apps/Mobiletek_Tester_RDIT/data.cpp b/cap/zx297520v3/src/lynq/packages/apps/Mobiletek_Tester_RDIT/data.cpp
index b3d1971..01ba78e 100755
--- a/cap/zx297520v3/src/lynq/packages/apps/Mobiletek_Tester_RDIT/data.cpp
+++ b/cap/zx297520v3/src/lynq/packages/apps/Mobiletek_Tester_RDIT/data.cpp
@@ -167,6 +167,7 @@
memcpy(datacall.cdma_password, argv[5], QSER_APN_PASSWORD_SIZE);
ret = qser_data_call_start(&datacall, &err);
+ printf("LYNQ_QSER_SETUP_DATA_CALL err = %d\n", err);
printf("%s%d\n",TEST_RESULT,ret);
return ret;
}
@@ -197,6 +198,7 @@
}
ret = qser_data_call_stop(profile_idx_int, ip_family, &err);
+ printf("LYNQ_QSER_DEACTIVATE_DATA_CALL err = %d\n", err);
printf("%s%d\n",TEST_RESULT,ret);
return ret;
}
diff --git a/cap/zx297520v3/src/lynq/packages/apps/lynq-led-demo/lynq_led-demo.c b/cap/zx297520v3/src/lynq/packages/apps/lynq-led-demo/lynq_led-demo.c
index 706aa6f..f86f8e0 100755
--- a/cap/zx297520v3/src/lynq/packages/apps/lynq-led-demo/lynq_led-demo.c
+++ b/cap/zx297520v3/src/lynq/packages/apps/lynq-led-demo/lynq_led-demo.c
@@ -9,12 +9,12 @@
int main(int argc, const char *argv[])
{
int ret = 0;
- ret = lynq_set_netled_on(1);
+ ret = lynq_set_netled_on(atoi(argv[1]));
if(ret){
printf("[%s-%d] lynq_set_netled_on error\n", __FUNCTION__, __LINE__);
return -1;
}
- ret = lynq_set_statusled_on(1);
+ ret = lynq_set_statusled_on(atoi(argv[1]));
if(ret){
printf("[%s-%d] lynq_set_statusled_on error\n", __FUNCTION__, __LINE__);
return -1;
diff --git a/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/sound/soc/codecs/tlv320aic3x.c b/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/sound/soc/codecs/tlv320aic3x.c
index 09ef085..c1fd5d4 100755
--- a/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/sound/soc/codecs/tlv320aic3x.c
+++ b/cap/zx297520v3/zxic_code/zxic_source/linux-5.10/sound/soc/codecs/tlv320aic3x.c
@@ -1018,15 +1018,6 @@
struct aic3x_priv *info = dev_get_drvdata(dev);
struct device_node *np = dev->of_node;
- #if 1
- unsigned tmp;
- void __iomem *reg_base;
- reg_base = ioremap(0x13B000+0x94 ,4);
- tmp = ioread32(reg_base);
- tmp |= (1<<0)|(1<<2);
- iowrite32(tmp,reg_base);
- #endif
-
dev_info(dev, "%s:start!\n", __func__);
if(dev == NULL){
@@ -2068,6 +2059,39 @@
return 0;
}
+static int component_open(struct snd_soc_component *component,
+ struct snd_pcm_substream *substream)
+{
+ int ret = 0;
+ struct aic3x_priv *info = snd_soc_component_get_drvdata(component);
+ printk("Enter into %s()\n", __func__);
+
+ if(info->clk != NULL) {
+ ret = clk_enable(info->clk);
+ if(ret) {
+ pr_err("failed to enable clkout");
+ }
+ }
+ pr_info("%s:clk en end!\n", __func__);
+
+ return ret;
+}
+
+static int component_close(struct snd_soc_component *component,
+ struct snd_pcm_substream *substream)
+{
+ int ret = 0;
+ struct aic3x_priv *info = snd_soc_component_get_drvdata(component);
+ printk("Enter into %s()\n", __func__);
+
+ if(info->clk != NULL) {
+ clk_disable(info->clk);
+ }
+ pr_info("%s:clk dis end!\n", __func__);
+
+ return ret;
+}
+
static const struct snd_soc_component_driver soc_component_dev_aic3x = {
.set_bias_level = aic3x_set_bias_level,
.probe = aic3x_probe,
@@ -2080,6 +2104,8 @@
.use_pmdown_time = 1,
.endianness = 1,
.non_legacy_dai_naming = 1,
+ .open = component_open,
+ .close = component_close,
};
static void aic3x_configure_ocmv(struct i2c_client *client)
diff --git a/update_version.sh b/update_version.sh
index 0c38314..83fa9b8 100644
--- 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="T106CN-ZS03.V2.01.01.02P52U02.AP.09.01"
-LYNQ_CAP_INSIDE_VERSION="CAP.09.01"
-LYNQ_CAP_VERSION="CAP.09.01"
+LYNQ_AP_VERSION="T106CN-ZS03.V2.01.01.02P52U02.AP.09.02"
+LYNQ_CAP_INSIDE_VERSION="CAP.09.02"
+LYNQ_CAP_VERSION="CAP.09.02"
COMMIT_ID="$(git rev-parse HEAD)"
LYNQ_SW_INSIDE_VERSION="LYNQ_CONFIG_VERSION = \"${LYNQ_AP_VERSION}_${LYNQ_CAP_INSIDE_VERSION}\""