Merge "[Feature][API-794]when a/b slot broken, rollback and repair it.-1.boot partition rollback" into MR3.0-merge
diff --git a/meta-sdk/meta/meta-lynqSDK-T800/classes/md-fitimage.bbclass b/meta-sdk/meta/meta-lynqSDK-T800/classes/md-fitimage.bbclass
index 782c417..1a48a6e 100644
--- a/meta-sdk/meta/meta-lynqSDK-T800/classes/md-fitimage.bbclass
+++ b/meta-sdk/meta/meta-lynqSDK-T800/classes/md-fitimage.bbclass
@@ -69,7 +69,7 @@
type = "kernel";
arch = "arm";
os = "linux";
- compression = "${MODEM_COMPRESS}";
+ compression = "none";
load = <${MD_LOADADDRESS}>;
entry = <${MD_ENTRYPOINT}>;
hash_1 {
@@ -119,7 +119,7 @@
fitimage_emit_section_maint imagestart
- fitimage_emit_section_md ${WORKDIR}/modem.img
+ fitimage_emit_section_md ${WORKDIR}/modem-org.img
fitimage_emit_section_maint sectend
@@ -137,11 +137,12 @@
#
# Step 3: Assemble the image
#
- uboot-mkimage -f ${WORKDIR}/fit-image.its ${WORKDIR}/${MD_DST_IMAGE}
+ ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -f ${WORKDIR}/fit-image.its ${WORKDIR}/${MD_IMAGE}
+
if [ "${SECURE_BOOT_ENABLE}" = "yes" ]; then
mkdir -p ${WORKDIR}/mykeys
cp ${MTK_KEY_DIR}/${VERIFIED_KEY}.crt ${WORKDIR}/mykeys/dev.crt
cp ${MTK_KEY_DIR}/${VERIFIED_KEY}.pem ${WORKDIR}/mykeys/dev.key
- ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -D "-I dts -O dtb -p 1024" -k ${WORKDIR}/mykeys -f ${WORKDIR}/fit-image.its -r ${WORKDIR}/${MD_DST_IMAGE}
+ ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -D "-I dts -O dtb -p 1024" -k ${WORKDIR}/mykeys -f ${WORKDIR}/fit-image.its -r ${WORKDIR}/${MD_IMAGE}
fi
}
\ No newline at end of file
diff --git a/meta-sdk/meta/meta-lynqSDK-T800/classes/mddsp-fitimage.bbclass b/meta-sdk/meta/meta-lynqSDK-T800/classes/mddsp-fitimage.bbclass
index e32ada4..593df1c 100644
--- a/meta-sdk/meta/meta-lynqSDK-T800/classes/mddsp-fitimage.bbclass
+++ b/meta-sdk/meta/meta-lynqSDK-T800/classes/mddsp-fitimage.bbclass
@@ -69,7 +69,7 @@
type = "kernel";
arch = "arm";
os = "linux";
- compression = "${DSP_COMPRESS}";
+ compression = "none";
load = <${MDDSP_LOADADDRESS}>;
entry = <${MDDSP_ENTRYPOINT}>;
hash_1 {
@@ -118,7 +118,7 @@
fitimage_emit_section_maint imagestart
- fitimage_emit_section_dsp ${WORKDIR}/dsp.bin
+ fitimage_emit_section_dsp ${WORKDIR}/dsp-org.bin
fitimage_emit_section_maint sectend
@@ -136,12 +136,12 @@
#
# Step 3: Assemble the image
#
- uboot-mkimage -f ${WORKDIR}/fit-image.its ${WORKDIR}/${DSP_DST_IMAGE}
+ ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -f ${WORKDIR}/fit-image.its ${WORKDIR}/${MDDSP_IMAGE}
if [ "${SECURE_BOOT_ENABLE}" = "yes" ]; then
mkdir -p ${WORKDIR}/mykeys
cp ${MTK_KEY_DIR}/${VERIFIED_KEY}.crt ${WORKDIR}/mykeys/dev.crt
cp ${MTK_KEY_DIR}/${VERIFIED_KEY}.pem ${WORKDIR}/mykeys/dev.key
- ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -D "-I dts -O dtb -p 1024" -k ${WORKDIR}/mykeys -f ${WORKDIR}/fit-image.its -r ${WORKDIR}/${DSP_DST_IMAGE}
+ ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -D "-I dts -O dtb -p 1024" -k ${WORKDIR}/mykeys -f ${WORKDIR}/fit-image.its -r ${WORKDIR}/${MDDSP_IMAGE}
fi
}
\ No newline at end of file
diff --git a/meta-sdk/meta/meta-lynqSDK-T800/conf/machine/auto2735evb-ivt-base.conf b/meta-sdk/meta/meta-lynqSDK-T800/conf/machine/auto2735evb-ivt-base.conf
index 336f1cc..e14d83b 100644
--- a/meta-sdk/meta/meta-lynqSDK-T800/conf/machine/auto2735evb-ivt-base.conf
+++ b/meta-sdk/meta/meta-lynqSDK-T800/conf/machine/auto2735evb-ivt-base.conf
@@ -173,15 +173,13 @@
SCATTER_PROJECT = "auto2735-ivt-mcp_nand"
# Modem
-MODEM_PROJECT = "MT2735_V02.MP1_MR3_NLWG_P2_20221219"
+MODEM_PROJECT = "MT2735_V02.MP1_MR3_NLWG_P5_20230531"
MODEM_INT = "${TOPDIR}/../prebuilt/modem/mt2735_internal"
MODEM_CUSTOM = "${TOPDIR}/../prebuilt/modem/mt2735"
MODEM_INT_EXIST = "${@ os.path.exists('${MODEM_INT}')}"
MODEM_CUSTOM_EXIST = "${@ os.path.exists('${MODEM_CUSTOM}')}"
MODEM_DIR = "${@'${MODEM_INT}/${MODEM_PROJECT}' if ${MODEM_INT_EXIST} == True else '${MODEM_CUSTOM}/${MODEM_PROJECT}'}"
EXTRA_IMAGEDEPENDS += "${@'modem' if ${MODEM_INT_EXIST} == True or ${MODEM_CUSTOM_EXIST} == True else ''}"
-MODEM_COMPRESS = "lz4"
-DSP_COMPRESS = "lz4"
# MIPC
MIPC_MODEM_PROJECT = "mt2735_ivt_nlwg_wide_temp"
MIPC_INT = "${TOPDIR}/../src/telephonyware/3.0/mipc_internal"
diff --git a/meta-sdk/meta/meta-lynqSDK-T800/recipes-customer/call-demo/files/call-demo.cpp b/meta-sdk/meta/meta-lynqSDK-T800/recipes-customer/call-demo/files/call-demo.cpp
index 80ede69..31613e1 100755
--- a/meta-sdk/meta/meta-lynqSDK-T800/recipes-customer/call-demo/files/call-demo.cpp
+++ b/meta-sdk/meta/meta-lynqSDK-T800/recipes-customer/call-demo/files/call-demo.cpp
@@ -311,7 +311,7 @@
int (*lynq_set_rtp_port)(const LYNQ_Rtp_Mode rtp_mode, const int port);
int (*lynq_set_rtp_param)(const int clock_rate,const int channels,const int latency); //only for client
/*get*/
-LYNQ_Audio_Mode (*lynq_get_voice_audio_mode)();
+int (*lynq_get_voice_audio_mode)(int*);
int (*lynq_get_remote_rtp_ip)(char* ip, const int ip_length);
int (*lynq_get_vlan_info)(char* vlan_info, const int vlan_info_length);
int (*lynq_get_rtp_port)(const LYNQ_Rtp_Mode rtp_mode, int* port);
@@ -341,11 +341,11 @@
}
printf("lynq_get_voice_audio_mode\n");
- lynq_get_voice_audio_mode = (LYNQ_Audio_Mode (*)())dlsym(dlHandle_call,"lynq_get_voice_audio_mode");
+ lynq_get_voice_audio_mode = (int (*)(int*))dlsym(dlHandle_call,"lynq_get_voice_audio_mode");
if(NULL != lynq_get_voice_audio_mode)
{
- get_audio_mode = lynq_get_voice_audio_mode();
- printf("lynq_get_voice_audio_mode, mode is %d\n",get_audio_mode);
+ ret = lynq_get_voice_audio_mode(&get_audio_mode);
+ printf("lynq_get_voice_audio_mode, ret is %d mode is %d\n",ret,get_audio_mode);
}
else
{
diff --git a/meta-sdk/meta/meta-lynqSDK-T800/recipes-modem/modem/modem_1.0.0.bb b/meta-sdk/meta/meta-lynqSDK-T800/recipes-modem/modem/modem_1.0.0.bb
index 69a6031..bcfec01 100644
--- a/meta-sdk/meta/meta-lynqSDK-T800/recipes-modem/modem/modem_1.0.0.bb
+++ b/meta-sdk/meta/meta-lynqSDK-T800/recipes-modem/modem/modem_1.0.0.bb
@@ -3,61 +3,39 @@
LIC_FILES_CHKSUM = "file://${MTK_LICENSE_DIR}/MediaTekProprietary;md5=c5d17c6905715d0948a3d6087602d12d"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-DEPENDS += "u-boot-mkimage-native bc-native dtc-native flashtool"
+DEPENDS += "u-boot-mkimage-native bc-native dtc-native"
inherit workonsrc deploy nopackages
inherit md-fitimage mddsp-fitimage hsm-sign-env staging-copyfile
WORKONSRC = "${MODEM_DIR}"
+do_compile[noexec] = "1"
do_install[noexec] = "1"
-MD_SRC_IMAGE = "modem.img"
-MD_DST_IMAGE = "md1img.img"
-DSP_SRC_IMAGE = "dsp.bin"
-DSP_DST_IMAGE = "md1dsp.img"
+MD_IMAGE = "md1img.img"
+MDDSP_IMAGE = "md1dsp.img"
MD_OUT = "${WORKDIR}"
-run_lz4_compression() {
- dec_size=0
- fsize=$(stat -c "%s" "${MD_OUT}/${1}")
- dec_size=$(expr $dec_size + $fsize)
- lz4 -l -c9 ${MD_OUT}/${1} > ${MD_OUT}/${1}.lz4
- mv -f ${MD_OUT}/${1}.lz4 ${MD_OUT}/${1}
- printf "%08x\n" $dec_size |
- sed 's/\(..\)/\1 /g' | {
- read ch0 ch1 ch2 ch3;
- for ch in $ch3 $ch2 $ch1 $ch0; do
- printf `printf '%s%03o' '\\' 0x$ch` >> ${MD_OUT}/${1};
- done;
- }
-}
-
-do_compile () {
- #mkdir -p ${MD_OUT}
-
- cp -f ${S}/${MD_SRC_IMAGE} ${MD_OUT}/${MD_SRC_IMAGE}
- cp -f ${S}/${DSP_SRC_IMAGE} ${MD_OUT}/${DSP_SRC_IMAGE}
-
- if [ "${MODEM_COMPRESS}" = "lz4" ]; then
- run_lz4_compression "${MD_SRC_IMAGE}"
- fi
- if [ "${DSP_COMPRESS}" = "lz4" ]; then
- run_lz4_compression "${DSP_SRC_IMAGE}"
- fi
-
- do_assemble_fitimage
- do_assemble_mdfitimage
-}
-
do_deploy () {
install -d ${DEPLOYDIR}
find . -type d -exec install -d ${DEPLOYDIR}/{} \;
find . -type f -exec install -m 755 {} ${DEPLOYDIR}/{} \;
- install ${MD_OUT}/${MD_DST_IMAGE} ${DEPLOYDIR}/${MD_DST_IMAGE}
- install ${MD_OUT}/${DSP_DST_IMAGE} ${DEPLOYDIR}/${DSP_DST_IMAGE}
+ if [ "${SECURE_BOOT_ENABLE}" = "yes" ] ; then
+ cp ${DEPLOYDIR}/dsp.bin ${WORKDIR}/dsp-org.bin
+ cp ${DEPLOYDIR}/modem.img ${WORKDIR}/modem-org.img
+
+ do_assemble_fitimage
+ do_assemble_mdfitimage
+
+ else
+ cp ${DEPLOYDIR}/dsp.bin ${MD_OUT}/${MDDSP_IMAGE}
+ cp ${DEPLOYDIR}/modem.img ${MD_OUT}/${MD_IMAGE}
+ fi
+ install ${MD_OUT}/${MD_IMAGE} ${DEPLOYDIR}/${MD_IMAGE}
+ install ${MD_OUT}/${MDDSP_IMAGE} ${DEPLOYDIR}/${MDDSP_IMAGE}
}
-addtask deploy after do_compile
+addtask deploy after do_configure
diff --git a/meta/meta-mediatek-mt2735/classes/md-fitimage.bbclass b/meta/meta-mediatek-mt2735/classes/md-fitimage.bbclass
index 782c417..1a48a6e 100644
--- a/meta/meta-mediatek-mt2735/classes/md-fitimage.bbclass
+++ b/meta/meta-mediatek-mt2735/classes/md-fitimage.bbclass
@@ -69,7 +69,7 @@
type = "kernel";
arch = "arm";
os = "linux";
- compression = "${MODEM_COMPRESS}";
+ compression = "none";
load = <${MD_LOADADDRESS}>;
entry = <${MD_ENTRYPOINT}>;
hash_1 {
@@ -119,7 +119,7 @@
fitimage_emit_section_maint imagestart
- fitimage_emit_section_md ${WORKDIR}/modem.img
+ fitimage_emit_section_md ${WORKDIR}/modem-org.img
fitimage_emit_section_maint sectend
@@ -137,11 +137,12 @@
#
# Step 3: Assemble the image
#
- uboot-mkimage -f ${WORKDIR}/fit-image.its ${WORKDIR}/${MD_DST_IMAGE}
+ ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -f ${WORKDIR}/fit-image.its ${WORKDIR}/${MD_IMAGE}
+
if [ "${SECURE_BOOT_ENABLE}" = "yes" ]; then
mkdir -p ${WORKDIR}/mykeys
cp ${MTK_KEY_DIR}/${VERIFIED_KEY}.crt ${WORKDIR}/mykeys/dev.crt
cp ${MTK_KEY_DIR}/${VERIFIED_KEY}.pem ${WORKDIR}/mykeys/dev.key
- ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -D "-I dts -O dtb -p 1024" -k ${WORKDIR}/mykeys -f ${WORKDIR}/fit-image.its -r ${WORKDIR}/${MD_DST_IMAGE}
+ ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -D "-I dts -O dtb -p 1024" -k ${WORKDIR}/mykeys -f ${WORKDIR}/fit-image.its -r ${WORKDIR}/${MD_IMAGE}
fi
}
\ No newline at end of file
diff --git a/meta/meta-mediatek-mt2735/classes/mddsp-fitimage.bbclass b/meta/meta-mediatek-mt2735/classes/mddsp-fitimage.bbclass
index e32ada4..593df1c 100644
--- a/meta/meta-mediatek-mt2735/classes/mddsp-fitimage.bbclass
+++ b/meta/meta-mediatek-mt2735/classes/mddsp-fitimage.bbclass
@@ -69,7 +69,7 @@
type = "kernel";
arch = "arm";
os = "linux";
- compression = "${DSP_COMPRESS}";
+ compression = "none";
load = <${MDDSP_LOADADDRESS}>;
entry = <${MDDSP_ENTRYPOINT}>;
hash_1 {
@@ -118,7 +118,7 @@
fitimage_emit_section_maint imagestart
- fitimage_emit_section_dsp ${WORKDIR}/dsp.bin
+ fitimage_emit_section_dsp ${WORKDIR}/dsp-org.bin
fitimage_emit_section_maint sectend
@@ -136,12 +136,12 @@
#
# Step 3: Assemble the image
#
- uboot-mkimage -f ${WORKDIR}/fit-image.its ${WORKDIR}/${DSP_DST_IMAGE}
+ ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -f ${WORKDIR}/fit-image.its ${WORKDIR}/${MDDSP_IMAGE}
if [ "${SECURE_BOOT_ENABLE}" = "yes" ]; then
mkdir -p ${WORKDIR}/mykeys
cp ${MTK_KEY_DIR}/${VERIFIED_KEY}.crt ${WORKDIR}/mykeys/dev.crt
cp ${MTK_KEY_DIR}/${VERIFIED_KEY}.pem ${WORKDIR}/mykeys/dev.key
- ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -D "-I dts -O dtb -p 1024" -k ${WORKDIR}/mykeys -f ${WORKDIR}/fit-image.its -r ${WORKDIR}/${DSP_DST_IMAGE}
+ ${HSM_ENV} HSM_KEY_NAME=${VERIFIED_KEY} uboot-mkimage -D "-I dts -O dtb -p 1024" -k ${WORKDIR}/mykeys -f ${WORKDIR}/fit-image.its -r ${WORKDIR}/${MDDSP_IMAGE}
fi
}
\ No newline at end of file
diff --git a/meta/meta-mediatek-mt2735/conf/machine/auto2735evb-ivt-base.conf b/meta/meta-mediatek-mt2735/conf/machine/auto2735evb-ivt-base.conf
index 27853bf..17ea920 100755
--- a/meta/meta-mediatek-mt2735/conf/machine/auto2735evb-ivt-base.conf
+++ b/meta/meta-mediatek-mt2735/conf/machine/auto2735evb-ivt-base.conf
@@ -147,15 +147,13 @@
SCATTER_PROJECT = "auto2735-ivt-mcp_nand"
# Modem
-MODEM_PROJECT = "MT2735_V02.MP1_MR3_NLWG_P2_20221219"
+MODEM_PROJECT = "MT2735_V02.MP1_MR3_NLWG_P5_20230531"
MODEM_INT = "${TOPDIR}/../prebuilt/modem/mt2735_internal"
MODEM_CUSTOM = "${TOPDIR}/../prebuilt/modem/mt2735"
MODEM_INT_EXIST = "${@ os.path.exists('${MODEM_INT}')}"
MODEM_CUSTOM_EXIST = "${@ os.path.exists('${MODEM_CUSTOM}')}"
MODEM_DIR = "${@'${MODEM_INT}/${MODEM_PROJECT}' if ${MODEM_INT_EXIST} == True else '${MODEM_CUSTOM}/${MODEM_PROJECT}'}"
EXTRA_IMAGEDEPENDS += "${@'modem' if ${MODEM_INT_EXIST} == True or ${MODEM_CUSTOM_EXIST} == True else ''}"
-MODEM_COMPRESS = "lz4"
-DSP_COMPRESS = "lz4"
# MIPC
MIPC_MODEM_PROJECT = "mt2735_ivt_nlwg_wide_temp"
MIPC_INT = "${TOPDIR}/../src/telephonyware/3.0/mipc_internal"
diff --git a/meta/meta-mediatek-mt2735/conf/machine/auto2735evb-ivt-main.conf b/meta/meta-mediatek-mt2735/conf/machine/auto2735evb-ivt-main.conf
index e6d3f7b..0d37d9c 100755
--- a/meta/meta-mediatek-mt2735/conf/machine/auto2735evb-ivt-main.conf
+++ b/meta/meta-mediatek-mt2735/conf/machine/auto2735evb-ivt-main.conf
@@ -87,3 +87,6 @@
#MOBILETEK_RTK_CFG:"enable","disable"
MOBILETEK_RTK_CFG = "disable"
+
+#MOBILETEK_QSER_CFG:"enable","disable"
+MOBILETEK_QSER_CFG = "enable"
\ No newline at end of file
diff --git a/meta/meta-mediatek-mt2735/recipes-core/images/mtk-image-2735.bb b/meta/meta-mediatek-mt2735/recipes-core/images/mtk-image-2735.bb
index eebe5f4..78c93ab 100755
--- a/meta/meta-mediatek-mt2735/recipes-core/images/mtk-image-2735.bb
+++ b/meta/meta-mediatek-mt2735/recipes-core/images/mtk-image-2735.bb
@@ -89,7 +89,9 @@
audio-ctrl-service \
audio-ctrl-service-bin \
mtk-phonecall-ioplugin \
- connman \
+ ${@bb.utils.contains("CONNMAN_SUPPORT", "no", "", "connman", d)} \
+ ${@bb.utils.contains("CONNMAN_SUPPORT", "no", "dnsmasq", "", d)} \
+ ${@bb.utils.contains("CONNMAN_SUPPORT", "no", "dhcpcd", "", d)} \
python3-cffi \
tel-demo \
libvendor-ril \
@@ -211,6 +213,7 @@
TARGET=${TOPDIR}/tmp/work/auto2735evb_ivt_main-poky-linux/mtk-image-2735/1.0-r0/rootfs
mkdir ${TARGET}/data_backup
cp ${TARGET}/etc/config/radio_property ${TARGET}/data_backup/
+ cp ${TARGET}/etc/config/lynq_uci ${TARGET}/data_backup/
cp ${TARGET}/data/atsvc/lynq_atsvc_plugin.xml ${TARGET}/data_backup/
cp ${TARGET}/data/atsvc/terminal_controller.conf ${TARGET}/data_backup/
cd ${SOURCE}
diff --git a/meta/meta-mediatek-mt2735/recipes-core/initial/files/cpu_sched.service b/meta/meta-mediatek-mt2735/recipes-core/initial/files/cpu_sched.service
deleted file mode 100644
index 45108b7..0000000
--- a/meta/meta-mediatek-mt2735/recipes-core/initial/files/cpu_sched.service
+++ /dev/null
@@ -1,13 +0,0 @@
-[Unit]
-Description=CPU governor change to schedutil to avoid thermal issue
-Requires=init_mount.service
-After=init_mount.service
-
-[Service]
-Type=oneshot
-StandardOutput=kmsg+console
-RemainAfterExit=yes
-ExecStart=/bin/sh -c '/bin/echo schedutil > sys/devices/system/cpu/cpufreq/policy0/scaling_governor'
-
-[Install]
-WantedBy=sysinit.target
diff --git a/meta/meta-mediatek-mt2735/recipes-core/initial/files/lynq_data_recover_wom b/meta/meta-mediatek-mt2735/recipes-core/initial/files/lynq_data_recover_wom
new file mode 100644
index 0000000..a46a3bf
--- /dev/null
+++ b/meta/meta-mediatek-mt2735/recipes-core/initial/files/lynq_data_recover_wom
@@ -0,0 +1,139 @@
+#!/bin/busybox sh
+TAG=[DATA_BACKUP_RECOVER]
+echo "$TAG: === Initial: LYNQ MOUNT Abnomal Judge Start ===" > /dev/kmsg
+FilePath=/data/lynq-low-power.sh
+
+detect_read(){
+ a=1
+ while [ $a -le 3 ]
+ do
+ if [ -r "$FilePath" ]
+ then
+ echo "$TAG a=$a can read" > /dev/kmsg
+ return 0
+ else
+ echo "$TAG a=$a can't read" > /dev/kmsg
+ fi
+ a=$[$a+1]
+ done
+ return 1
+}
+detect_write(){
+ a=1
+ while [ $a -le 3 ]
+ do
+ if [ -w "$FilePath" ]
+ then
+ echo "$TAG a=$a can write" > /dev/kmsg
+ return 0
+ else
+ echo "$TAG a=$a can't write" > /dev/kmsg
+ fi
+ a=$[$a+1]
+ done
+ return 1
+}
+
+format_ubi(){
+ ubidetach -m 38
+ echo "$TAG detach over" > /dev/kmsg
+ echo y | ubiformat /dev/mtd38
+ echo "$TAG format over" > /dev/kmsg
+ ubiattach /dev/ubi_ctrl -m 38 -d 31
+ echo "$TAG attach over" > /dev/kmsg
+ ubimkvol /dev/ubi31 -m -N data_recover
+ echo "$TAG mkvol over" > /dev/kmsg
+ mount -t ubifs /dev/ubi31_0 /STATE
+}
+
+mount_read_only(){
+ echo "$TAG: umount start" > /dev/kmsg
+
+ umount /usr/lib/tmpfiles.d
+ umount /etc/firmware
+ umount /etc/syslog
+ umount /home
+ umount /mnt/sncfg
+ umount /mnt/vendor/nvram
+ umount /mnt
+ umount /srv
+ umount /usr/local
+ umount /system/etc/firmware
+ umount /custom/etc/firmware
+ umount /var/lib
+ umount /data
+ umount /system/etc/tele
+ umount /system/etc/adr
+ umount /system/etc/agps
+ umount /system/etc/security
+ umount /etc/adr
+ umount /etc/gnss
+ umount /usr/share/gps
+ umount /etc/thermal
+ umount /etc/config
+ umount /STATE
+
+ echo "$TAG: after umount" > /dev/kmsg
+ mount | grep "ubi1" > /dev/kmsg
+ #some directories are not umount
+ if [ $(mount | grep "ubi1") != "" ];
+ then echo "$TAG: umount Fail!" > /dev/kmsg
+ reboot
+ exit
+ fi
+ format_ubi
+
+}
+cd /
+
+echo "$TAG: Before recover radio_property" > /dev/kmsg
+rm -rf /etc/config/.*.uci*
+cp /data_backup/radio_property /etc/config/radio_property
+cp /data_backup/lynq_uci /etc/config/lynq_uci
+mkdir -p /data/atsvc
+cp /data_backup/lynq_atsvc_plugin.xml /data/atsvc/lynq_atsvc_plugin.xml
+cp /data_backup/terminal_controller.conf /data/atsvc/terminal_controller.conf
+echo "$TAG: After recover radio_property" > /dev/kmsg
+
+IFRO="$(cat /sys/class/ubi/ubi1/ro_mode)"
+echo "$TAG the ro_mode:$IFRO" > /dev/kmsg
+
+echo "$TAG ubimount:" > /dev/kmsg
+echo "$(mount | grep "ubi1")" > /dev/kmsg
+#if ro_mode = 1, ubi1 in read-only mode
+if [ $IFRO = "1" ];
+ then echo "$TAG: [Read-Only]ubi1 ro_mode is readonly" > /dev/kmsg
+ mount_read_only
+ cd /data_backup
+ tar -zxvf userdata.tar.gz -C /STATE/
+ reboot
+else
+ detect_read
+ result_read=$?
+ detect_write
+ result_write=$?
+ #can't read the file, the file is lost
+ if [ $result_read -eq 1 ];
+ then echo "$TAG: File Lost!!!" > /dev/kmsg
+ exit
+ fi
+ #ubi1 is not in read-only mode, but no directory is mounted on ubi1
+ if [ $(mount | grep "ubi1") = ""];
+ then echo "$TAG: [Unmount]Unmount!!!" > /dev/kmsg
+ format_ubi
+ cd /data_backup
+ tar -zxvf userdata.tar.gz -C /STATE/
+ reboot
+ else
+ #ubi1 is not in read-only mode, directories mounted on ubi1, but the file can't write
+ #/data is mounted in read-only mode
+ if [ $result_write -eq 1 ];
+ then echo "$TAG: [Read-only]/data is Readonly!!!" > /dev/kmsg
+ mount_read_only
+ cd /data_backup
+ tar -zxvf userdata.tar.gz -C /STATE/
+ reboot
+ fi
+ fi
+fi
+echo "$TAG === Initial: LYNQ MOUNT Abnomal End ===" > /dev/kmsg
diff --git a/meta/meta-mediatek-mt2735/recipes-core/initial/init-2735_1.0.0.bb b/meta/meta-mediatek-mt2735/recipes-core/initial/init-2735_1.0.0.bb
old mode 100644
new mode 100755
index 2b87044..8d87332
--- a/meta/meta-mediatek-mt2735/recipes-core/initial/init-2735_1.0.0.bb
+++ b/meta/meta-mediatek-mt2735/recipes-core/initial/init-2735_1.0.0.bb
@@ -11,9 +11,12 @@
SRC_URI += "${@bb.utils.contains("MOBILETEK_OEMAPP_CFG", "PLATFORM", "file://init_mount_nand", "", d)}"
SRC_URI += "${@bb.utils.contains("MOBILETEK_USB_CFG", "PLATFORM", "file://usb_switch", "", d)}"
SRC_URI += "${@bb.utils.contains("MOBILETEK_USB_CFG", "GSW", "file://usb_switch_gsw", "", d)}"
+#xf.li@20230530 add for wom rndis start
+SRC_URI += "${@bb.utils.contains("MOBILETEK_RNDIS_CFG", "PLATFORM", "file://lynq_data_recover", "", d)}"
+SRC_URI += "${@bb.utils.contains("MOBILETEK_RNDIS_CFG", "WOM", "file://lynq_data_recover_wom", "", d)}"
+#xf.li@20230530 add for wom rndis end
SRC_URI += "file://init_network.service"
SRC_URI += "file://init_mount.service"
-SRC_URI += "file://cpu_sched.service"
SRC_URI += "file://nvram_daemon.service"
SRC_URI += "file://ccci_fsd.service"
SRC_URI += "file://ccci_mdinit.service"
@@ -72,7 +75,6 @@
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE_${PN} = "init_network.service \
init_mount.service \
- cpu_sched.service \
nvram_daemon.service \
ccci_fsd.service \
ccci_mdinit.service \
@@ -93,7 +95,6 @@
#xf.li 2022.11.17 modify for userdata recover start
FILES_${PN} += "${systemd_unitdir}/system/init_network.service \
${systemd_unitdir}/system/init_mount.service \
- ${systemd_unitdir}/system/cpu_sched.service \
${systemd_unitdir}/system/nvram_daemon.service \
${systemd_unitdir}/system/ccci_fsd.service \
${systemd_unitdir}/system/ccci_mdinit.service \
@@ -126,9 +127,15 @@
if [ "${MOBILETEK_USB_CFG}" = "GSW" ]; then
install -m 0755 init_usb_gsw ${D}${datadir}/init/init_usb
fi
+#xf.li@20230530 add for wom rndis start
+ if [ "${MOBILETEK_RNDIS_CFG}" = "WOM" ]; then
+ install -m 0755 lynq_data_recover_wom ${D}${datadir}/init/lynq_data_recover
+ else
+ install -m 0755 lynq_data_recover ${D}${datadir}/init/lynq_data_recover
+ fi
+#xf.li@20230530 add for wom rndis end
install -m 0755 smp.sh ${D}${datadir}/init/smp.sh
#xf.li 2022.11.17 modify for userdata recover start
- install -m 0755 lynq_data_recover ${D}${datadir}/init/lynq_data_recover
install -m 0755 lynq_ubi1_wmtd ${D}${datadir}/init/lynq_ubi1_wmtd
#xf.li 2022.11.17 modify for userdata recover end
#dongyu@2022.7.15 delete for Slow loading of ETS port start
@@ -157,7 +164,6 @@
install -d ${D}${systemd_unitdir}/system/
install -m 0644 init_network.service ${D}${systemd_unitdir}/system
install -m 0644 init_mount.service ${D}${systemd_unitdir}/system
- install -m 0644 cpu_sched.service ${D}${systemd_unitdir}/system
install -m 0644 nvram_daemon.service ${D}${systemd_unitdir}/system
install -m 0644 ccci_fsd.service ${D}${systemd_unitdir}/system
install -m 0644 ccci_mdinit.service ${D}${systemd_unitdir}/system
diff --git a/meta/meta-mediatek-mt2735/recipes-kernel/linux/files/boot_time.cfg b/meta/meta-mediatek-mt2735/recipes-kernel/linux/files/boot_time.cfg
deleted file mode 100644
index b020174..0000000
--- a/meta/meta-mediatek-mt2735/recipes-kernel/linux/files/boot_time.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
-# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
diff --git a/meta/meta-mediatek-mt2735/recipes-kernel/linux/files/user_build.cfg b/meta/meta-mediatek-mt2735/recipes-kernel/linux/files/user_build.cfg
index 28b0ce9..826968f 100644
--- a/meta/meta-mediatek-mt2735/recipes-kernel/linux/files/user_build.cfg
+++ b/meta/meta-mediatek-mt2735/recipes-kernel/linux/files/user_build.cfg
@@ -4,7 +4,7 @@
# CONFIG_PSTORE_FTRACE is not set
# CONFIG_PSTORE_RAM is not set
# CONFIG_MTK_WATCHDOG is not set
-CONFIG_CONSOLE_LOGLEVEL_DEFAULT=1
+CONFIG_CONSOLE_LOGLEVEL_DEFAULT=4
# CONFIG_PAGE_OWNER is not set
# CONFIG_SLUB_DEBUG is not set
# CONFIG_SLUB_DEBUG_ON is not set
diff --git a/meta/meta-mediatek-mt2735/recipes-kernel/linux/linux-mtk-extension_4.19.bbappend b/meta/meta-mediatek-mt2735/recipes-kernel/linux/linux-mtk-extension_4.19.bbappend
index 4ed7ff1..54cebb5 100755
--- a/meta/meta-mediatek-mt2735/recipes-kernel/linux/linux-mtk-extension_4.19.bbappend
+++ b/meta/meta-mediatek-mt2735/recipes-kernel/linux/linux-mtk-extension_4.19.bbappend
@@ -28,7 +28,6 @@
SRC_URI += "\
${@bb.utils.contains('BUILD_TYPE', 'user', ' file://user_build.cfg', '', d)} \
- file://boot_time.cfg \
"
SRC_URI += "\
diff --git a/meta/meta-mediatek-mt2735/recipes-kernel/modules/files/wifi/wg870/0926.clm_blob b/meta/meta-mediatek-mt2735/recipes-kernel/modules/files/wifi/wg870/0926.clm_blob
index 0f3fc7f..f52e6e0 100755
--- a/meta/meta-mediatek-mt2735/recipes-kernel/modules/files/wifi/wg870/0926.clm_blob
+++ b/meta/meta-mediatek-mt2735/recipes-kernel/modules/files/wifi/wg870/0926.clm_blob
Binary files differ
diff --git a/meta/meta-mediatek-mt2735/recipes-kernel/modules/files/wifi/wg870/cyw989570fcref_rev1.58.txt b/meta/meta-mediatek-mt2735/recipes-kernel/modules/files/wifi/wg870/cyw989570fcref_rev1.58.txt
index ebdbd7e..1e62d0f 100755
--- a/meta/meta-mediatek-mt2735/recipes-kernel/modules/files/wifi/wg870/cyw989570fcref_rev1.58.txt
+++ b/meta/meta-mediatek-mt2735/recipes-kernel/modules/files/wifi/wg870/cyw989570fcref_rev1.58.txt
@@ -10,7 +10,7 @@
macaddr=00:90:4c:2f:70:01
#Regulatory specific
-ccode=CN
+ccode=EU
regrev=0
# Board specific
diff --git a/meta/meta-mediatek-mt2735/recipes-kernel/modules/wg870-drv-insmod.bb b/meta/meta-mediatek-mt2735/recipes-kernel/modules/wg870-drv-insmod.bb
index 13f034c..3df3928 100755
--- a/meta/meta-mediatek-mt2735/recipes-kernel/modules/wg870-drv-insmod.bb
+++ b/meta/meta-mediatek-mt2735/recipes-kernel/modules/wg870-drv-insmod.bb
@@ -32,4 +32,8 @@
install -m 755 ${WORKDIR}/wg870_drv_insmod.sh ${D}/etc/wg870/
install -m 755 ${WORKDIR}/wg870_drv_insmod.service ${D}${systemd_unitdir}/system/
+ if [ "${CONNMAN_SUPPORT}" = "no" ]; then
+ eval sed -i "s/\-dd\ \-t\ \-u/\-dd\ \-t/g" ${D}/etc/wg870/wg870_drv_insmod.sh
+ eval sed -i "/connmanctl/d" ${D}/etc/wg870/wg870_drv_insmod.sh
+ fi
}
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-call/liblynq-call.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-call/liblynq-call.bb
index dab2902..40e0714 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-call/liblynq-call.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-call/liblynq-call.bb
@@ -7,6 +7,9 @@
inherit workonsrc
WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-call"
+WORKONSRC_2= "${TOPDIR}/../src/lynq/common_file/ril/lib_common \
+ ${TOPDIR}/../src/lynq/common_file/ril/lib_service_common"
+
TARGET_CC_ARCH += "${LDFLAGS}"
BB_INCLUDE_ADD = "--sysroot=${STAGING_DIR_HOST}"
BB_LDFLAGS_ADD = "--sysroot=${STAGING_DIR_HOST} -Wl,--hash-style=gnu"
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-data/liblynq-data.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-data/liblynq-data.bb
index cdcf634..49244e3 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-data/liblynq-data.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-data/liblynq-data.bb
@@ -15,6 +15,8 @@
'MTK_MULTI_SIM_SUPPORT = ${MTK_MULTI_SIM_SUPPORT}'\
'TARGET_PLATFORM = ${TARGET_PLATFORM}'"
+EXTRA_OEMAKE += "'MOBILETEK_RIL_CFG = ${MOBILETEK_RIL_CFG}'"
+
FILES_${PN} = "${base_libdir}/*.so \
${base_bindir}\
${base_sbindir} \
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-gnss/liblynq-gnss.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-gnss/liblynq-gnss.bb
index bc8c208..011c71d 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-gnss/liblynq-gnss.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-gnss/liblynq-gnss.bb
@@ -5,7 +5,7 @@
LICENSE = "MediaTekProprietary"
#LIC_FILES_CHKSUM = "file://LICENSE;md5=e1696b147d49d491bcb4da1a57173fff"
inherit workonsrc
-DEPENDS += "platform-libs gpshal6635 openssl curl liblynq-log"
+DEPENDS += "platform-libs gpshal6635 openssl curl liblynq-log liblynq-uci"
WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-gnss/"
TARGET_CC_ARCH += "${LDFLAGS}"
@@ -62,4 +62,4 @@
addtask bachclean
do_bachclean () {
oe_runmake clean
-}
\ No newline at end of file
+}
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-network/liblynq-network.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-network/liblynq-network.bb
index 144a2fb..fd593de 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-network/liblynq-network.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-network/liblynq-network.bb
@@ -7,6 +7,9 @@
inherit workonsrc
WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-network/"
+WORKONSRC_2= "${TOPDIR}/../src/lynq/common_file/ril/lib_common \
+ ${TOPDIR}/../src/lynq/common_file/ril/lib_service_common"
+
TARGET_CC_ARCH += "${LDFLAGS}"
BB_INCLUDE_ADD = "--sysroot=${STAGING_DIR_HOST}"
BB_LDFLAGS_ADD = "--sysroot=${STAGING_DIR_HOST} -Wl,--hash-style=gnu"
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-adc/liblynq-qser-adc.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-adc/liblynq-qser-adc.bb
new file mode 100755
index 0000000..47f9644
--- /dev/null
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-adc/liblynq-qser-adc.bb
@@ -0,0 +1,45 @@
+inherit externalsrc package
+
+DESCRIPTION = "lynq-qser-adc.so demo"
+LICENSE = "MobileTekProprietary"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b1e07e8d88e26263e71d3a9e2aa9a2ff"
+DEPENDS += "liblynq-log"
+inherit workonsrc
+WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-qser-adc"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+BB_INCLUDE_ADD = "--sysroot=${STAGING_DIR_HOST}"
+BB_LDFLAGS_ADD = "--sysroot=${STAGING_DIR_HOST} -Wl,--hash-style=gnu"
+#Parameters passed to do_compile()
+EXTRA_OEMAKE = "'RAT_CONFIG_C2K_SUPPORT = ${RAT_CONFIG_C2K_SUPPORT}'\
+ 'MTK_MULTI_SIM_SUPPORT = ${MTK_MULTI_SIM_SUPPORT}'\
+ 'TARGET_PLATFORM = ${TARGET_PLATFORM}'"
+
+FILES_${PN} = "${base_libdir}/*.so \
+ ${base_bindir}\
+ ${base_sbindir} \
+ /etc/dbus-1/system.d/"
+FILES_${PN}-dev = "/test \
+ ${includedir}"
+FILES_${PN}-doc = "/doc"
+FILES_${PN}-dbg ="${base_bindir}/.debug \
+ ${base_libdir}/.debug \
+ ${base_sbindir}/.debug"
+INSANE_SKIP_${PN} += "already-stripped"
+INSANE_SKIP_${PN} += "installed-vs-shipped"
+#INHIBIT_PACKAGE_STRIP = "1"
+do_compile () {
+ if [ "${PACKAGE_ARCH}" = "cortexa7hf-vfp-vfpv4-neon" ]; then
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -Os -mfpu=neon-vfpv4 -mhard-float -Wl,--hash-style=gnu -DTELEPHONYWARE"
+ elif [ "${PACKAGE_ARCH}" = "cortexa7hf-neon-vfpv4" ]; then
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -Os -mfpu=neon-vfpv4 -mhard-float -Wl,--hash-style=gnu -DTELEPHONYWARE"
+ elif [ "${PACKAGE_ARCH}" = "cortexa53hf-neon-fp-armv8" ]; then
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -Os -mfpu=neon-vfpv4 -mhard-float -Wl,--hash-style=gnu -DTELEPHONYWARE -mhard-float -mfpu=neon-fp-armv8 -mfloat-abi=hard -mcpu=cortex-a53 -mtune=cortex-a53"
+ else
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -Os -Wl,--hash-style=gnu -DTELEPHONYWARE"
+ fi
+}
+
+do_install() {
+ oe_runmake install ROOT=${D}
+}
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-data/liblynq-qser-data.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-data/liblynq-qser-data.bb
new file mode 100644
index 0000000..f830a3a
--- /dev/null
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-data/liblynq-qser-data.bb
@@ -0,0 +1,49 @@
+inherit externalsrc package
+
+DESCRIPTION = "liblynq-qser-data"
+LICENSE = "CLOSED"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e1696b147d49d491bcb4da1a57173fff"
+DEPENDS += "liblynq-log liblynq-data libxml2"
+inherit workonsrc
+WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-qser-data/"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+BB_INCLUDE_ADD = "--sysroot=${STAGING_DIR_HOST}"
+BB_LDFLAGS_ADD = "--sysroot=${STAGING_DIR_HOST} -Wl,--hash-style=gnu"
+
+FILES_${PN} = "${base_libdir}/*.so "
+
+FILES_${PN}-dev = "/test \
+ ${includedir}"
+
+FILES_${PN}-doc = "/doc"
+
+FILES_${PN}-dbg ="${base_bindir}/.debug \
+ ${base_libdir}/.debug \
+ ${base_sbindir}/.debug"
+FILES_${PN} += "${bindir}/ /data"
+
+INSANE_SKIP_${PN} += "already-stripped"
+INSANE_SKIP_${PN} += "installed-vs-shipped"
+
+
+#INHIBIT_PACKAGE_STRIP = "1"
+do_compile () {
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -Os -Wl,--hash-style=gnu -DTELEPHONYWARE"
+}
+
+do_install () {
+ oe_runmake install ROOT=${D}
+
+ if [ -d "${WORKONSRC}" ] ; then
+ install -d ${D}${includedir}/
+ cp -af ${S}include/ ${D}${includedir}/
+ fi
+ install -d ${D}/data/
+ cp -R ${WORKONSRC}/lynq_qser_data_apn.xml ${D}/data/
+}
+
+addtask bachclean
+do_bachclean () {
+ oe_runmake clean
+}
\ No newline at end of file
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-network/liblynq-qser-network.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-network/liblynq-qser-network.bb
new file mode 100644
index 0000000..fb57263
--- /dev/null
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-network/liblynq-qser-network.bb
@@ -0,0 +1,47 @@
+inherit externalsrc package
+
+DESCRIPTION = "liblynq-qser-network"
+LICENSE = "CLOSED"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e1696b147d49d491bcb4da1a57173fff"
+DEPENDS += "liblynq-log liblynq-network"
+inherit workonsrc
+WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-qser-network/"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+BB_INCLUDE_ADD = "--sysroot=${STAGING_DIR_HOST}"
+BB_LDFLAGS_ADD = "--sysroot=${STAGING_DIR_HOST} -Wl,--hash-style=gnu"
+
+FILES_${PN} = "${base_libdir}/*.so "
+
+FILES_${PN}-dev = "/test \
+ ${includedir}"
+
+FILES_${PN}-doc = "/doc"
+
+FILES_${PN}-dbg ="${base_bindir}/.debug \
+ ${base_libdir}/.debug \
+ ${base_sbindir}/.debug"
+FILES_${PN} += "${bindir}/ /data"
+
+INSANE_SKIP_${PN} += "already-stripped"
+INSANE_SKIP_${PN} += "installed-vs-shipped"
+
+
+#INHIBIT_PACKAGE_STRIP = "1"
+do_compile () {
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -Os -Wl,--hash-style=gnu -DTELEPHONYWARE"
+}
+
+do_install () {
+ oe_runmake install ROOT=${D}
+
+ if [ -d "${WORKONSRC}" ] ; then
+ install -d ${D}${includedir}/
+ cp -af ${S}include/ ${D}${includedir}/
+ fi
+}
+
+addtask bachclean
+do_bachclean () {
+ oe_runmake clean
+}
\ No newline at end of file
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-voice/liblynq-qser-voice.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-voice/liblynq-qser-voice.bb
new file mode 100644
index 0000000..1265fc0
--- /dev/null
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-qser-voice/liblynq-qser-voice.bb
@@ -0,0 +1,46 @@
+inherit externalsrc package
+
+DESCRIPTION = "liblynq-qser-voice"
+LICENSE = "CLOSED"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e1696b147d49d491bcb4da1a57173fff"
+DEPENDS += "liblynq-log liblynq-call"
+inherit workonsrc
+WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-qser-voice/"
+
+TARGET_CC_ARCH += "${LDFLAGS}"
+BB_INCLUDE_ADD = "--sysroot=${STAGING_DIR_HOST}"
+BB_LDFLAGS_ADD = "--sysroot=${STAGING_DIR_HOST} -Wl,--hash-style=gnu"
+#Parameters passed to do_compile()
+FILES_${PN} = "${base_libdir}/*.so "
+
+FILES_${PN}-dev = "/test \
+ ${includedir}"
+
+FILES_${PN}-doc = "/doc"
+
+FILES_${PN}-dbg ="${base_bindir}/.debug \
+ ${base_libdir}/.debug \
+ ${base_sbindir}/.debug"
+
+INSANE_SKIP_${PN} += "already-stripped"
+INSANE_SKIP_${PN} += "installed-vs-shipped"
+
+
+#INHIBIT_PACKAGE_STRIP = "1"
+do_compile () {
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -Os -Wl,--hash-style=gnu -DTELEPHONYWARE"
+}
+
+do_install () {
+ oe_runmake install ROOT=${D}
+
+ if [ -d "${WORKONSRC}" ] ; then
+ install -d ${D}${includedir}/
+ cp -af ${S}include/ ${D}${includedir}/
+ fi
+}
+
+addtask bachclean
+do_bachclean () {
+ oe_runmake clean
+}
\ No newline at end of file
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/liblynq-rtk.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/liblynq-rtk.bb
index 168fef5..59bf7f7 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/liblynq-rtk.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/liblynq-rtk.bb
@@ -2,12 +2,14 @@
SUMMARY = "RTK Library"
LICENSE = "CLOSED"
#LIC_FILES_CHKSUM = "file://LICENSE;md5=e1696b147d49d491bcb4da1a57173fff"
+DEPENDS += "liblynq-log gpshal6635"
+inherit workonsrc
+WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-rtk"
-SRC_URI = "file://libRTKFUN.so \
- file://libcmcc_sdk.so \
- file://rtk_fun.h"
TARGET_CC_ARCH += "${LDFLAGS}"
+BB_INCLUDE_ADD = "--sysroot=${STAGING_DIR_HOST}"
+BB_LDFLAGS_ADD = "--sysroot=${STAGING_DIR_HOST} -Wl,--hash-style=gnu"
FILES_${PN} = "${base_libdir}/*.so \
${base_bindir}\
@@ -27,15 +29,25 @@
INSANE_SKIP_${PN} += "already-stripped"
INSANE_SKIP_${PN} += "installed-vs-shipped"
-
-INHIBIT_PACKAGE_STRIP = "1"
-INHIBIT_SYSROOT_STRIP = "1"
-INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
+do_compile () {
+ oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -Os -Wl,--hash-style=gnu -DTELEPHONYWARE"
+}
do_install () {
- install -d ${D}${libdir}
+ oe_runmake install ROOT=${D}
+
+ if [ -d "${WORKONSRC}" ] ; then
+ install -d ${D}${includedir}/
+ cp -af ${S}include/ ${D}${includedir}/
+ fi
+ install -d ${D}${base_libdir}
install -d ${D}${includedir}
- cp -arf ${S}/../rtk_fun.h ${D}${includedir}/
- install -m 0755 ${S}/../libRTKFUN.so ${D}${libdir}/
- install -m 0755 ${S}/../libcmcc_sdk.so ${D}${libdir}/
+ cp -arf ${S}/rtk_fun.h ${D}${includedir}/
+ install ${S}/libRTKFUN.so ${D}${base_libdir}/
+ install ${S}/libcmcc_sdk.so ${D}${base_libdir}/
}
+
+addtask bachclean
+do_bachclean () {
+ oe_runmake clean
+}
\ No newline at end of file
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-sms/liblynq-sms.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-sms/liblynq-sms.bb
index fe7e00b..14e8453 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-sms/liblynq-sms.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-sms/liblynq-sms.bb
@@ -7,6 +7,9 @@
inherit workonsrc
WORKONSRC = "${TOPDIR}/../src/lynq/lib/liblynq-sms/"
+WORKONSRC_2= "${TOPDIR}/../src/lynq/common_file/ril/lib_common \
+ ${TOPDIR}/../src/lynq/common_file/ril/lib_service_common"
+
TARGET_CC_ARCH += "${LDFLAGS}"
BB_INCLUDE_ADD = "--sysroot=${STAGING_DIR_HOST}"
BB_LDFLAGS_ADD = "--sysroot=${STAGING_DIR_HOST} -Wl,--hash-style=gnu"
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-wifi6/liblynq-wifi6.bb b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-wifi6/liblynq-wifi6.bb
index 40e9441..0d374ae 100644
--- a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-wifi6/liblynq-wifi6.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-wifi6/liblynq-wifi6.bb
@@ -22,7 +22,8 @@
FILES_${PN} = "${base_libdir}/*.so \
${base_bindir}\
- ${base_sbindir}"
+ ${base_sbindir} \
+ /etc/wg870/*"
FILES_${PN}-dev = "/test \
@@ -58,6 +59,15 @@
install -d ${D}${includedir}/
cp -af ${S}/include/ ${D}${includedir}/
fi
+
+ install -d ${D}/etc/wg870
+ if [ "${CONNMAN_SUPPORT}" != "no" ];then
+ cp -af ${S}/scripts_connman ${D}/etc/wg870/scripts
+ else
+ cp -af ${S}/scripts ${D}/etc/wg870/scripts
+ fi
+
+ chmod -R +x ${D}/etc/wg870/scripts/
}
addtask bachclean
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/lynq-ril-service/lynq-ril-service.bb b/meta/meta-mediatek-mt2735/recipes-lynq/lynq-ril-service/lynq-ril-service.bb
index df58646..58de0bf 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/lynq-ril-service/lynq-ril-service.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/lynq-ril-service/lynq-ril-service.bb
@@ -7,6 +7,8 @@
inherit workonsrc
WORKONSRC = "${TOPDIR}/../src/lynq/framework/lynq-ril-service/src"
+WORKONSRC_2= "${TOPDIR}/../src/lynq/common_file/ril/lib_service_common"
+
TARGET_CC_ARCH += "${LDFLAGS}"
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE_${PN} = "lynq_ril_service.service"
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/lynq-wg870/lynq-wg870.bb b/meta/meta-mediatek-mt2735/recipes-lynq/lynq-wg870/lynq-wg870.bb
index 9cc57f3..83bef6e 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/lynq-wg870/lynq-wg870.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/lynq-wg870/lynq-wg870.bb
@@ -3,17 +3,19 @@
DESCRIPTION = "wpa_supplicant test"
LICENSE = "CLOSED"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e1696b147d49d491bcb4da1a57173fff"
-DEPENDS += "platform-libs glib-2.0 openssl libnl dbus"
+DEPENDS += "platform-libs glib-2.0 openssl libnl"
+DEPENDS += "${@bb.utils.contains("CONNMAN_SUPPORT", "no", "", "dbus", d)}"
+
inherit workonsrc
WORKONSRC = "${TOPDIR}/../src/lynq/packages/thirdpart/lynq-wg870"
-LDFLAGS = "-L${STAGING_LIBDIR} -ldbus-1"
+LDFLAGS = "${@bb.utils.contains("CONNMAN_SUPPORT", "no", "", "-L${STAGING_LIBDIR} -ldbus-1", d)}"
TARGET_CC_ARCH += "${LDFLAGS}"
CFLAGS = "-I${STAGING_INCDIR}/libnl3"
-CFLAGS += "-I${STAGING_INCDIR}/dbus-${PV}"
-CFLAGS += "-I${STAGING_LIBDIR}/dbus-${PV}/include/"
+CFLAGS += "${@bb.utils.contains("CONNMAN_SUPPORT", "no", "", "-I${STAGING_INCDIR}/dbus-${PV}", d)}"
+CFLAGS += "${@bb.utils.contains("CONNMAN_SUPPORT", "no", "", "-I${STAGING_LIBDIR}/dbus-${PV}/include/", d)}"
#Parameters passed to do_compile()
@@ -43,6 +45,12 @@
export CONFIG_DRIVER_NL80211_IFX=y
export CONFIG_WEP=y
+ if [ "${CONNMAN_SUPPORT}" = "no" ]; then
+ sed -i "s/^CONFIG_CTRL_IFACE_DBUS_NEW=y/#CONFIG_CTRL_IFACE_DBUS_NEW=y/" ${S}wpa_supplicant/.config
+ else
+ sed -i "s/^#CONFIG_CTRL_IFACE_DBUS_NEW=y/CONFIG_CTRL_IFACE_DBUS_NEW=y/" ${S}wpa_supplicant/.config
+ fi
+
if test "${PACKAGE_ARCH}" = "cortexa7hf-vfp-vfpv4-neon" || test "${PACKAGE_ARCH}" = "cortexa7hf-neon-vfpv4"; then
oe_runmake all ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST} -mhard-float"
else
@@ -63,8 +71,10 @@
install -m 0644 ${S}conf/wpa_supplicant_ap.conf ${D}/data/wifi/wg870/
install -m 0644 ${S}conf/p2p_supplicant.conf ${D}/data/wifi/wg870/
- install -d ${D}/etc/dbus-1/system.d/
- install -m 0644 ${S}wpa_supplicant/dbus/dbus-wpa_supplicant.conf ${D}/etc/dbus-1/system.d/
+ if [ "${CONNMAN_SUPPORT}" != "no" ]; then
+ install -d ${D}/etc/dbus-1/system.d/
+ install -m 0644 ${S}wpa_supplicant/dbus/dbus-wpa_supplicant.conf ${D}/etc/dbus-1/system.d/
+ fi
install -d ${D}${includedir}/
install -m 0644 ${S}src/common/wpa_ctrl.h ${D}${includedir}/
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/packagegroups/packagegroup-lync-mt2735.bb b/meta/meta-mediatek-mt2735/recipes-lynq/packagegroups/packagegroup-lync-mt2735.bb
index 1adce6a..55cb0c6 100755
--- a/meta/meta-mediatek-mt2735/recipes-lynq/packagegroups/packagegroup-lync-mt2735.bb
+++ b/meta/meta-mediatek-mt2735/recipes-lynq/packagegroups/packagegroup-lync-mt2735.bb
@@ -4,6 +4,7 @@
inherit packagegroup
RDEPENDS_packagegroup-lync-mt2735 = "\
+ liblynq-qser-adc\
libautosuspend \
libpoweralarm \
lynq-autosuspend \
@@ -68,4 +69,8 @@
RDEPENDS_packagegroup-lync-mt2735 += "\
${@bb.utils.contains('MOBILETEK_RTK_CFG', 'enable', ' liblynq-rtk', '', d)} \
"
+
+RDEPENDS_packagegroup-lync-mt2735 += "\
+ ${@bb.utils.contains('MOBILETEK_QSER_CFG', 'enable', ' liblynq-qser-data liblynq-qser-sms liblynq-qser-sim liblynq-qser-voice liblynq-qser-network', '', d)} \
+"
diff --git a/meta/meta-mediatek-mt2735/recipes-modem/modem/modem_1.0.0.bb b/meta/meta-mediatek-mt2735/recipes-modem/modem/modem_1.0.0.bb
index 69a6031..bcfec01 100644
--- a/meta/meta-mediatek-mt2735/recipes-modem/modem/modem_1.0.0.bb
+++ b/meta/meta-mediatek-mt2735/recipes-modem/modem/modem_1.0.0.bb
@@ -3,61 +3,39 @@
LIC_FILES_CHKSUM = "file://${MTK_LICENSE_DIR}/MediaTekProprietary;md5=c5d17c6905715d0948a3d6087602d12d"
PACKAGE_ARCH = "${MACHINE_ARCH}"
-DEPENDS += "u-boot-mkimage-native bc-native dtc-native flashtool"
+DEPENDS += "u-boot-mkimage-native bc-native dtc-native"
inherit workonsrc deploy nopackages
inherit md-fitimage mddsp-fitimage hsm-sign-env staging-copyfile
WORKONSRC = "${MODEM_DIR}"
+do_compile[noexec] = "1"
do_install[noexec] = "1"
-MD_SRC_IMAGE = "modem.img"
-MD_DST_IMAGE = "md1img.img"
-DSP_SRC_IMAGE = "dsp.bin"
-DSP_DST_IMAGE = "md1dsp.img"
+MD_IMAGE = "md1img.img"
+MDDSP_IMAGE = "md1dsp.img"
MD_OUT = "${WORKDIR}"
-run_lz4_compression() {
- dec_size=0
- fsize=$(stat -c "%s" "${MD_OUT}/${1}")
- dec_size=$(expr $dec_size + $fsize)
- lz4 -l -c9 ${MD_OUT}/${1} > ${MD_OUT}/${1}.lz4
- mv -f ${MD_OUT}/${1}.lz4 ${MD_OUT}/${1}
- printf "%08x\n" $dec_size |
- sed 's/\(..\)/\1 /g' | {
- read ch0 ch1 ch2 ch3;
- for ch in $ch3 $ch2 $ch1 $ch0; do
- printf `printf '%s%03o' '\\' 0x$ch` >> ${MD_OUT}/${1};
- done;
- }
-}
-
-do_compile () {
- #mkdir -p ${MD_OUT}
-
- cp -f ${S}/${MD_SRC_IMAGE} ${MD_OUT}/${MD_SRC_IMAGE}
- cp -f ${S}/${DSP_SRC_IMAGE} ${MD_OUT}/${DSP_SRC_IMAGE}
-
- if [ "${MODEM_COMPRESS}" = "lz4" ]; then
- run_lz4_compression "${MD_SRC_IMAGE}"
- fi
- if [ "${DSP_COMPRESS}" = "lz4" ]; then
- run_lz4_compression "${DSP_SRC_IMAGE}"
- fi
-
- do_assemble_fitimage
- do_assemble_mdfitimage
-}
-
do_deploy () {
install -d ${DEPLOYDIR}
find . -type d -exec install -d ${DEPLOYDIR}/{} \;
find . -type f -exec install -m 755 {} ${DEPLOYDIR}/{} \;
- install ${MD_OUT}/${MD_DST_IMAGE} ${DEPLOYDIR}/${MD_DST_IMAGE}
- install ${MD_OUT}/${DSP_DST_IMAGE} ${DEPLOYDIR}/${DSP_DST_IMAGE}
+ if [ "${SECURE_BOOT_ENABLE}" = "yes" ] ; then
+ cp ${DEPLOYDIR}/dsp.bin ${WORKDIR}/dsp-org.bin
+ cp ${DEPLOYDIR}/modem.img ${WORKDIR}/modem-org.img
+
+ do_assemble_fitimage
+ do_assemble_mdfitimage
+
+ else
+ cp ${DEPLOYDIR}/dsp.bin ${MD_OUT}/${MDDSP_IMAGE}
+ cp ${DEPLOYDIR}/modem.img ${MD_OUT}/${MD_IMAGE}
+ fi
+ install ${MD_OUT}/${MD_IMAGE} ${DEPLOYDIR}/${MD_IMAGE}
+ install ${MD_OUT}/${MDDSP_IMAGE} ${DEPLOYDIR}/${MDDSP_IMAGE}
}
-addtask deploy after do_compile
+addtask deploy after do_configure
diff --git a/meta/meta-mediatek-mt2735/recipes-telephonyware/atcid/atci_1.0.0.bb b/meta/meta-mediatek-mt2735/recipes-telephonyware/atcid/atci_1.0.0.bb
index c614084..9022fdd 100755
--- a/meta/meta-mediatek-mt2735/recipes-telephonyware/atcid/atci_1.0.0.bb
+++ b/meta/meta-mediatek-mt2735/recipes-telephonyware/atcid/atci_1.0.0.bb
@@ -21,8 +21,8 @@
-I${STAGING_DIR_HOST}/${libdir}\
-DENABLE_TRM \
"
-
-EXTRA_OEMAKE = "'LYNQ_ATSVC_SUPPORT = ${LYNQ_ATSVC_SUPPORT}'"
+EXTRA_OEMAKE = "'LYNQ_ATSVC_SUPPORT = ${LYNQ_ATSVC_SUPPORT}'\
+ 'MOBILETEK_ATCID_CFG = ${MOBILETEK_ATCID_CFG}'"
CFLAGS_append = "${ATCID_CFLAGS_ADD}"
CXXFLAGS_append = "${ATCID_CFLAGS_ADD}"
diff --git a/meta/meta-mediatek/classes/workonsrc.bbclass b/meta/meta-mediatek/classes/workonsrc.bbclass
old mode 100644
new mode 100755
index 1137e98..16e427f
--- a/meta/meta-mediatek/classes/workonsrc.bbclass
+++ b/meta/meta-mediatek/classes/workonsrc.bbclass
@@ -243,6 +243,14 @@
ret = subprocess.call(cmd, shell=True)
if ret != 0:
bb.fatal("rsync -aL %s %s/* %s failed." % (workonsrc_rsync_appended_flag, workonsrc, workonsrcbuild))
+
+ work_dirs = (d.getVar('WORKONSRC_2') or '').split()
+ for entry in work_dirs:
+ cmd = "rsync -aL %s %s/* %s" % (workonsrc_rsync_appended_flag, entry, workonsrcbuild)
+ ret = subprocess.call(cmd, shell=True)
+ if ret != 0:
+ bb.fatal("rsync -aL %s %s/* %s failed." % (workonsrc_rsync_appended_flag, entry, workonsrcbuild))
+
d.setVar('S', workonsrcbuild)
def srctree_hash_files(d, srcdir=None):
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MCF_OTA_FILES.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MCF_OTA_FILES.tar.gz
deleted file mode 100755
index a8f2f8f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MCF_OTA_FILES.tar.gz
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.MCF.ODB.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.MCF.ODB.tar.gz
deleted file mode 100755
index 5fd6395..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.MCF.ODB.tar.gz
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.XML.GZ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.XML.GZ
deleted file mode 100755
index 8176df1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.XML.GZ
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.EDB
deleted file mode 100755
index fb49e69..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.EDB
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.EDB
deleted file mode 100755
index b21bfb2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P2_T800_20221219.EDB
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/dsp.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/dsp.bin
deleted file mode 100755
index f7c3d0e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/dsp.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/modem.img b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/modem.img
deleted file mode 100755
index fc5fb51..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/modem.img
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MCF_OTA_FILES.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MCF_OTA_FILES.tar.gz
deleted file mode 100644
index 03dced8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MCF_OTA_FILES.tar.gz
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.MCF.ODB.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.MCF.ODB.tar.gz
deleted file mode 100644
index 3977d03..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.MCF.ODB.tar.gz
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.XML.GZ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.XML.GZ
deleted file mode 100644
index 57a5195..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.XML.GZ
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.XML.GZ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.XML.GZ
deleted file mode 100644
index 56989aa..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.XML.GZ
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.EDB
deleted file mode 100644
index ce52d0c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.EDB
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.EDB
deleted file mode 100644
index 1137bdf..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.EDB
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.EDB
deleted file mode 100644
index 18c7efc..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4.EDB
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.EDB
deleted file mode 100644
index d60d8bd..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230328.EDB
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/modem.img b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/modem.img
deleted file mode 100644
index 3857613..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/modem.img
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MCF_OTA_FILES.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MCF_OTA_FILES.tar.gz
new file mode 100644
index 0000000..d0d7a99
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MCF_OTA_FILES.tar.gz
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.MCF.ODB.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.MCF.ODB.tar.gz
new file mode 100644
index 0000000..be9beca
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.MCF.ODB.tar.gz
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.XML.GZ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.XML.GZ
new file mode 100644
index 0000000..7e91b56
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.XML.GZ
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.EDB
new file mode 100644
index 0000000..66bdf92
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.EDB
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.EDB
new file mode 100644
index 0000000..d36a997
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P4_T800_20230511.EDB
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter.bin
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_1_Moderate.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_1_Moderate.bin
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_1_Moderate.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_1_Moderate.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_2_Standard.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_2_Standard.bin
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_2_Standard.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_2_Standard.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_3_Slim.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_3_Slim.bin
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_3_Slim.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_3_Slim.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_4_UltraSlim.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_4_UltraSlim.bin
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_4_UltraSlim.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_4_UltraSlim.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_LowPowerMonitor.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_LowPowerMonitor.bin
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_LowPowerMonitor.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_LowPowerMonitor.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_PLS_PS_ONLY.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_PLS_PS_ONLY.bin
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/catcher_filter_PLS_PS_ONLY.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/catcher_filter_PLS_PS_ONLY.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/dsp.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/dsp.bin
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/dsp.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/dsp.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/202_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/202_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_16.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_16.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_16.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_69.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_69.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/204_69.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/204_69.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/206_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/206_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/206_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/206_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/206_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/206_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/206_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/206_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/206_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/206_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/206_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/206_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_88.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/208_88.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/208_88.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/214_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/214_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/216_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/216_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/216_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/216_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/216_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/216_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/216_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/216_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/216_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/216_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/216_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/216_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/216_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/216_70.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/216_70.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/216_70.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/219_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/219_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/219_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/219_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/219_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/219_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/219_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/219_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/220_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/220_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/220_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/220_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/222_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/222_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/222_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/222_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/222_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/222_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/222_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/222_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/222_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/222_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/222_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/222_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/222_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/222_88.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/222_88.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/222_88.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/226_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/226_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/228_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/228_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/228_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/228_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/228_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/228_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/228_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/228_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/230_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/230_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/230_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/230_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/230_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/230_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/230_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/230_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/230_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/230_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/230_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/230_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/231_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/231_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/231_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/231_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/231_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/231_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/231_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/231_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/231_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/231_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/231_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/231_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/231_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/231_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/231_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/231_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/232_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/232_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_31.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_31.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_31.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_32.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_32.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_32.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_32.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_33.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_33.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_33.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_33.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_34.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_34.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_34.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_86.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_86.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/234_86.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/234_86.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/235_91.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/235_91.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/235_91.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/235_91.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/235_94.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/235_94.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/235_94.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/235_94.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_77.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/238_77.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/238_77.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_99.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/240_99.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/240_99.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/242_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/242_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/242_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/242_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/242_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/242_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/242_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/242_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/242_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/242_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/242_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/242_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/242_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/242_14.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/242_14.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/242_14.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_12.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_12.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_12.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_13.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_13.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_13.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_21.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_21.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_21.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_21.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_91.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_91.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/244_91.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/244_91.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/246_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/246_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/246_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/246_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/248_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/248_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/248_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/248_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_99.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/250_99.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/250_99.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/259_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/259_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/259_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/259_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_34.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_34.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_34.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_98.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_98.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/260_98.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/260_98.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_77.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_77.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_77.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_80.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/262_80.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/262_80.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/268_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/268_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/268_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/268_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/268_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/268_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/268_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/268_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/268_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/268_89.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/268_89.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/268_89.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/272_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/272_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/272_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/272_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/276_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/276_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/276_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/276_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/284_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/284_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/284_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/284_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/284_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/284_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/284_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/284_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/286_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/286_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/286_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/286_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/286_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/286_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/286_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/286_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/286_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/286_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/286_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/286_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/293_41.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/293_41.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/293_41.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/293_41.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/294_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/294_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/294_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/294_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/294_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/294_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/294_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/294_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/295_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/295_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/295_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/295_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/297_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/297_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/297_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/297_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_220.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_220.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_220.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_221.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_221.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_221.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_221.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_370.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_370.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_370.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_370.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_490.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_490.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_490.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_610.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_610.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_610.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_610.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_630.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_630.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_630.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_630.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_640.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_640.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_640.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_640.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_660.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_660.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_660.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_660.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_690.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_690.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_690.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_690.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_720.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_720.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/302_720.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/302_720.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_030.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_030.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_030.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_070.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_070.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_070.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_070.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_090.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_090.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_090.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_090.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_120.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_120.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_120.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_120.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_150.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_150.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_150.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_150.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_160.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_160.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_160.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_160.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_170.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_170.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_170.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_170.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_200.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_200.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_200.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_200.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_210.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_210.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_210.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_210.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_220.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_220.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_220.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_230.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_230.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_230.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_230.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_240.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_240.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_240.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_240.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_250.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_250.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_250.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_250.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_260.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_260.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_260.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_260.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_270.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_270.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_270.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_270.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_280.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_280.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_280.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_280.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_300.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_300.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_300.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_300.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_310.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_310.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_310.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_310.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_380.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_380.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_380.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_380.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_410.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_410.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_410.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_410.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_490.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_490.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_490.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_530.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_530.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_530.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_530.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_560.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_560.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_560.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_560.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_590.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_590.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_590.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_590.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_640.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_640.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_640.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_640.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_660.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_660.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_660.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_660.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_680.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_680.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_680.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_680.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_800.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_800.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_800.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_800.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_950.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_950.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/310_950.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/310_950.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_180.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_180.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_180.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_180.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_220.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_220.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_220.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_221.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_221.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_221.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_221.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_222.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_222.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_222.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_222.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_223.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_223.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_223.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_223.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_224.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_224.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_224.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_224.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_225.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_225.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_225.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_225.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_226.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_226.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_226.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_226.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_227.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_227.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_227.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_227.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_228.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_228.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_228.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_228.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_229.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_229.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_229.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_229.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_270.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_270.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_270.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_270.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_390.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_390.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_390.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_390.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_480.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_480.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_480.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_480.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_490.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_490.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_490.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_580.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_580.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_580.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_580.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_581.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_581.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_581.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_581.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_582.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_582.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_582.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_582.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_583.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_583.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_583.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_583.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_584.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_584.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_584.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_584.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_585.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_585.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_585.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_585.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_586.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_586.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_586.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_586.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_587.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_587.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_587.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_587.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_588.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_588.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_588.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_588.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_589.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_589.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_589.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_589.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_870.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_870.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/311_870.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/311_870.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/312_530.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/312_530.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/312_530.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/312_530.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/312_670.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/312_670.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/312_670.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/312_670.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/312_770.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/312_770.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/312_770.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/312_770.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_100.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_100.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_100.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_100.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_110.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_110.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_110.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_110.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_120.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_120.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_120.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_120.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_130.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_130.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_130.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_130.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_140.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_140.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/313_140.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/313_140.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/330_110.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/330_110.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/330_110.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/330_110.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_020.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_020.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_020.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_020.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_030.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_030.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_030.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_050.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_050.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_050.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_050.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_090.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_090.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_090.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_090.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_140.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_140.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/334_140.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/334_140.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/370_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/370_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/370_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/370_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_12.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_12.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_12.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_13.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_13.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_13.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_14.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_14.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_14.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_16.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_16.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_16.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_19.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_19.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_19.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_19.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_22.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_22.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_22.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_22.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_24.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_24.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_24.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_24.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_27.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_27.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_27.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_27.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_31.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_31.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_31.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_34.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_34.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_34.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_38.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_38.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_38.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_38.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_40.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_40.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_40.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_40.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_43.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_43.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_43.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_43.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_44.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_44.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_44.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_44.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_45.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_45.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_45.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_45.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_46.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_46.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_46.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_46.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_49.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_49.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_49.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_49.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_51.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_51.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_51.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_53.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_53.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_53.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_53.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_54.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_54.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_54.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_55.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_55.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_55.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_55.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_56.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_56.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_56.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_56.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_57.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_57.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_57.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_57.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_58.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_58.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_58.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_58.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_59.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_59.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_59.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_59.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_60.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_60.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_60.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_60.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_62.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_62.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_62.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_62.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_64.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_64.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_64.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_64.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_66.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_66.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_66.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_70.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_70.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_70.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_71.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_71.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_71.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_71.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_72.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_72.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_72.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_72.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_73.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_73.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_73.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_73.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_74.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_74.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_74.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_74.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_75.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_75.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_75.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_75.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_76.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_76.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_76.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_76.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_77.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_77.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_77.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_78.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_78.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_78.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_78.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_79.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_79.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_79.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_79.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_80.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_80.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_80.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_81.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_81.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_81.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_81.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_82.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_82.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_82.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_82.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_84.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_84.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_84.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_84.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_86.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_86.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_86.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_86.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_87.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_87.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_87.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_87.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_88.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_88.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_88.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_89.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_89.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_89.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_90.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_90.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_90.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_90.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_92.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_92.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_92.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_92.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_93.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_93.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_93.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_93.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_94.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_94.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_94.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_94.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_95.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_95.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_95.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_95.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_96.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_96.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_96.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_96.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_97.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_97.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_97.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_97.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_98.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_98.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/404_98.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/404_98.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_030.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_030.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_030.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_035.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_035.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_035.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_035.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_036.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_036.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_036.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_036.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_037.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_037.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_037.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_037.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_038.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_038.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_038.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_038.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_039.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_039.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_039.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_039.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_044.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_044.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_044.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_044.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_51.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_51.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_51.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_52.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_52.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_52.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_52.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_53.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_53.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_53.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_53.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_54.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_54.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_54.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_55.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_55.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_55.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_55.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_56.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_56.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_56.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_56.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_66.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_66.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_66.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_67.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_67.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_67.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_67.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_70.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_70.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_70.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_750.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_750.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_750.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_750.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_751.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_751.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_751.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_751.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_752.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_752.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_752.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_752.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_753.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_753.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_753.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_753.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_754.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_754.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_754.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_754.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_755.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_755.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_755.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_755.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_756.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_756.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_756.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_756.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_799.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_799.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_799.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_799.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_818.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_818.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_818.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_818.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_819.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_819.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_819.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_819.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_840.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_840.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_840.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_840.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_845.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_845.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_845.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_845.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_846.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_846.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_846.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_846.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_847.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_847.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_847.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_847.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_848.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_848.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_848.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_848.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_849.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_849.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_849.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_849.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_850.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_850.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_850.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_850.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_851.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_851.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_851.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_851.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_852.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_852.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_852.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_852.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_853.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_853.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_853.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_853.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_854.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_854.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_854.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_854.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_855.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_855.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_855.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_855.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_856.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_856.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_856.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_856.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_857.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_857.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_857.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_857.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_858.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_858.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_858.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_858.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_859.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_859.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_859.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_859.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_860.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_860.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_860.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_860.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_861.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_861.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_861.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_861.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_862.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_862.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_862.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_862.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_863.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_863.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_863.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_863.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_864.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_864.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_864.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_864.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_865.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_865.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_865.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_865.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_866.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_866.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_866.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_866.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_867.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_867.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_867.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_867.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_868.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_868.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_868.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_868.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_869.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_869.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_869.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_869.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_870.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_870.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_870.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_870.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_871.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_871.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_871.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_871.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_872.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_872.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_872.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_872.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_873.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_873.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_873.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_873.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_874.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_874.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_874.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_874.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_876.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_876.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_876.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_876.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_879.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_879.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_879.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_879.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_908.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_908.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_908.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_908.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_909.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_909.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_909.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_909.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_910.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_910.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_910.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_910.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_911.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_911.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_911.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_911.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_927.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_927.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_927.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_927.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_929.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_929.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/405_929.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/405_929.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/410_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/410_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/410_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/410_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/410_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/410_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/410_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/410_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/413_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/413_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/413_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/413_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/413_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/413_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/413_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/413_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/414_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/414_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/414_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/414_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/414_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/414_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/414_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/414_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/418_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/418_66.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/418_66.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/418_66.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/419_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/419_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/419_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/419_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/419_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/419_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/419_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/419_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/419_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/419_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/419_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/419_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/420_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/420_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/420_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/420_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/420_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/420_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/420_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/420_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/424_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/424_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/424_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/424_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/424_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/424_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/424_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/424_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/426_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/426_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/426_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/426_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/426_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/426_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/426_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/426_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/427_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/427_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/427_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/427_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/440_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/440_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/440_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/440_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/440_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/440_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/440_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/440_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/440_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/440_51.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/440_51.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/440_51.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/440_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/440_54.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/440_54.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/440_54.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/450_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/450_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/450_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/450_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/450_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/450_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/450_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/450_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/450_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/450_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/450_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/450_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/452_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/452_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/452_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/452_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/452_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/452_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/452_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/452_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_00.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_00.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_00.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_12.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_12.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_12.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_13.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_13.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_13.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_14.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_14.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_14.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_16.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_16.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_16.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_17.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_17.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_17.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_17.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_18.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_18.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_18.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_18.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_19.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_19.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_19.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_19.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_29.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_29.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_29.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_29.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_31.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/454_31.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/454_31.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/455_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/455_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/456_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/456_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/456_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/456_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/456_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/456_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/456_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/456_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/456_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/456_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/456_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/456_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_00.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_00.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_00.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_12.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_12.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_12.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_13.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/460_13.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/460_13.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_89.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_89.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_89.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_92.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_92.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_92.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_92.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_93.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_93.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_93.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_93.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_97.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_97.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_97.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_97.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_99.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/466_99.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/466_99.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/470_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/470_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/470_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/470_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/470_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/470_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/470_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/470_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/470_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/470_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/470_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/470_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_152.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_152.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_152.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_152.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_153.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_153.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_153.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_153.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_16.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_16.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_16.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_18.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_18.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/502_18.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/502_18.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_39.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_39.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_39.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_39.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_71.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_71.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_71.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_71.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_72.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_72.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_72.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_72.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_90.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_90.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/505_90.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/505_90.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/510_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/510_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/510_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/510_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/510_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/510_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/510_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/510_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/510_28.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/510_28.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/510_28.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/510_28.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/515_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/515_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/515_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/515_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/515_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/515_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/515_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/515_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/520_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/520_00.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/520_00.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/520_00.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/520_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/520_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/520_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/520_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/520_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/520_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/520_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/520_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/520_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/520_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/520_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/520_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/525_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/525_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/525_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/525_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/525_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/525_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/525_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/525_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/525_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/525_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/525_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/525_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/525_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/525_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/525_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/525_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_001.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_001.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_001.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_001.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_099.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_099.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_099.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_099.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_24.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_24.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/530_24.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/530_24.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/602_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/602_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/602_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/602_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/602_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/602_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/602_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/602_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/602_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/602_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/602_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/602_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/621_27.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/621_27.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/621_27.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/621_27.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/621_40.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/621_40.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/621_40.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/621_40.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/639_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/639_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/639_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/639_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/639_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/639_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/639_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/639_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/640_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/640_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/640_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/640_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/641_33.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/641_33.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/641_33.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/641_33.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/645_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/645_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/645_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/645_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/653_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/653_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/653_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/653_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/655_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/655_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/655_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/655_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/655_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/655_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/655_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/655_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/655_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/655_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/655_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/655_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/655_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/655_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/655_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/655_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/704_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/704_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/704_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/704_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/704_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/704_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/704_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/704_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/704_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/704_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/704_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/704_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/706_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/706_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/706_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/706_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/706_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/706_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/706_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/706_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/708_001.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/708_001.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/708_001.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/708_001.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/710_21.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/710_21.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/710_21.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/710_21.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/710_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/710_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/710_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/710_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/710_300.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/710_300.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/710_300.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/710_300.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/712_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/712_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/712_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/712_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/712_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/712_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/712_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/712_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/714_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/714_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/714_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/714_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/714_020.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/714_020.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/714_020.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/714_020.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/714_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/714_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/714_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/714_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/716_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/716_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/716_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/716_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/716_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/716_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/716_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/716_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/716_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/716_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/716_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/716_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/716_17.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/716_17.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/716_17.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/716_17.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/722_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/722_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/722_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/722_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/722_310.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/722_310.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/722_310.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/722_310.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/722_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/722_34.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/722_34.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/722_34.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_23.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_23.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_23.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_23.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_80.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/724_80.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/724_80.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_23.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_23.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/730_23.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/730_23.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_101.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_101.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_101.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_101.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_103.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_103.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_103.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_103.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_111.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_111.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_111.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_111.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_123.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_123.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_123.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_123.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_130.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_130.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/732_130.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/732_130.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/734_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/734_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/734_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/734_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/740_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/740_00.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/740_00.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/740_00.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/744_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/744_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/744_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/744_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/748_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/748_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/748_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/748_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/748_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/748_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/apncfg/748_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/apncfg/748_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/GlobalSign_root_CA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/GlobalSign_root_CA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/GlobalSign_root_CA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/GlobalSign_root_CA.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/Root-R3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/Root-R3.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/Root-R3.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/Root-R3.cer
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/Root_CA_1003.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/Root_CA_1003.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/Root_CA_1003.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/Root_CA_1003.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/VeriSignClass3G4.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/VeriSignClass3G4.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/VeriSignClass3G4.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/VeriSignClass3G4.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/VeriSignClass3G5.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/VeriSignClass3G5.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/VeriSignClass3G5.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/VeriSignClass3G5.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/thawte.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/thawte.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/ikev2/thawte.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/ikev2/thawte.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/AAACertificateServices.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/AAACertificateServices.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/AAACertificateServices.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/AAACertificateServices.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/CertumCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/CertumCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/CertumCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/CertumCA.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/CertumTrustedNetworkCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/CertumTrustedNetworkCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/CertumTrustedNetworkCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/CertumTrustedNetworkCA.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/DigiCertGlobalRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/DigiCertGlobalRootCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/DigiCertGlobalRootCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/DigiCertGlobalRootCA.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/04.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/04.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/04.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/06.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/06.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/06.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/08.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/08.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/08.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/13.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/13.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/13.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/16.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/16.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/16.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/18.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/18.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/18.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/19.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/19.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/19.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/20.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/20.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/20.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/21.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/21.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/21.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/22.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/22.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/22.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/26.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/26.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/26.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/28.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/28.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/28.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/31.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/31.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/31.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/31.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/32.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/32.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/32.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/42.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/42.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/42.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/44.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/44.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/44.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/47.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/47.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/47.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/55.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/55.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/55.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/57.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/57.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/57.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/59.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/59.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/59.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/59.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/60.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/60.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/60.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/62.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/62.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/62.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/62.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/66.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/66.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/66.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/68.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/68.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/68.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/68.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/70.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/70.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/70.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/72.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/72.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/72.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/74.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/74.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/74.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/74.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/76.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/76.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/76.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/76.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/78.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/78.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/78.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/78.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/80.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/80.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/80.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/80.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/82.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/82.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/82.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/82.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/83.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/83.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/83.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/83.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/84.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/84.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/84.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/84.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/86.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/86.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/86.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/86.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/88.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/88.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/88.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/88.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/90.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/90.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/90.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/90.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/93.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/93.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/93.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/93.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/94.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/94.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/94.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/94.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/95.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/95.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/95.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/95.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/97.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/97.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/2/97.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/2/97.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/08.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/08.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/08.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/11.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/11.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/11.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/11.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/13.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/13.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/13.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/42.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/42.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/42.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/44.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/44.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/44.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/52.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/52.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/52.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/54.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/54.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/54.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/56.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/56.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/56.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/56.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/58.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/58.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/58.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/58.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/60.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/60.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/60.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/62.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/62.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/62.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/62.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/63.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/63.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/63.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/63.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/64.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/64.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/64.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/64.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/65.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/65.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/65.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/65.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/66.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/66.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/66.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/68.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/68.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/68.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/68.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/70.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/70.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/70.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/72.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/72.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/72.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/74.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/74.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/74.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/74.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/76.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/76.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/3/76.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/3/76.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/00.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/00.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/00.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/00.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/01.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/01.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/01.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/01.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/04.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/04.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/04.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/05.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/05.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/05.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/13.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/13.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/13.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/15.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/15.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/15.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/16.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/16.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/16.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/17.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/17.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/17.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/17.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/18.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/18.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/18.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/19.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/19.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/19.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/20.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/20.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/20.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/21.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/21.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/21.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/22.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/22.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/22.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/24.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/24.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/24.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/25.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/25.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/25.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/26.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/26.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/26.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/27.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/27.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/27.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/27.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/28.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/28.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/28.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/29.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/29.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/29.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/29.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/36.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/36.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/36.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/37.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/37.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/37.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/52.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/52.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/52.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/54.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/54.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/54.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/55.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/55.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/55.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/56.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/56.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/56.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/56.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/57.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/57.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/57.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/60.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/60.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/60.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/66.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/66.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/66.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/70.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/70.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/70.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/72.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/4/72.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/4/72.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/05.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/05.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/05.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/15.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/15.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/15.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/20.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/20.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/20.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/25.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/25.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/25.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/28.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/28.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/28.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/36.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/36.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/36.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/37.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/37.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/37.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/39.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/39.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/39.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/39.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/41.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/41.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/41.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/41.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/42.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/42.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/42.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/43.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/43.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/43.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/43.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/44.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/44.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/44.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/47.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/47.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/47.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/49.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/49.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/49.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/49.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/52.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/52.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/52.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/54.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/5/54.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/5/54.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/03.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/03.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/03.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/03.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/04.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/04.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/04.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/05.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/05.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/05.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/06.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/06.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/06.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/07.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/07.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/07.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/07.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/08.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/08.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/08.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/09.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/09.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/09.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/09.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/11.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/11.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/11.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/11.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/13.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/13.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/13.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/15.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/15.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/15.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/16.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/16.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/16.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/17.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/17.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/17.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/17.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/18.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/18.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/18.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/19.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/19.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/19.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/20.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/20.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/20.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/21.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/21.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/21.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/22.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/22.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/22.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/23.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/23.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/23.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/23.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/24.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/24.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/24.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/25.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/25.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/25.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/26.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/26.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/26.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/27.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/27.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/27.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/27.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/28.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/28.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/28.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/29.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/29.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/29.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/29.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/31.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/31.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/31.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/31.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/32.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/32.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/32.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/33.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/33.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/33.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/33.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/35.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/35.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/35.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/35.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/36.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/36.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/36.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/37.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/37.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/37.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/39.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/39.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/39.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/39.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/41.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/41.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/41.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/41.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/42.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/42.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/42.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/43.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/43.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/43.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/43.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/45.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/45.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/45.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/45.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/47.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/47.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/47.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/49.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/49.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/49.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/49.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/51.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/51.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/51.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/51.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/52.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/52.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/52.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/53.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/53.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/53.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/53.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/54.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/54.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/54.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/55.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/55.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/55.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/57.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/57.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/57.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/58.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/58.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/58.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/58.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/59.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/59.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/6/59.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/6/59.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/04.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/04.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/04.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/06.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/06.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/06.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/08.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/08.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/08.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/16.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/16.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/16.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/22.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/22.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/22.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/24.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/24.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/24.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/32.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/32.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/32.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/36.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/36.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/36.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/44.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/44.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/44.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/7/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/7/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/9/01.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/9/01.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230328/mddata/plmn/TS25/9/01.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/mddata/plmn/TS25/9/01.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/modem.img b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/modem.img
new file mode 100644
index 0000000..b855015
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P4_20230511/modem.img
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MCF_OTA_FILES.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MCF_OTA_FILES.tar.gz
new file mode 100644
index 0000000..cd10a00
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MCF_OTA_FILES.tar.gz
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.MCF.ODB.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.MCF.ODB.tar.gz
new file mode 100644
index 0000000..67c98bf
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.MCF.ODB.tar.gz
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.XML.GZ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.XML.GZ
new file mode 100644
index 0000000..c714b64
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.XML.GZ
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.EDB
new file mode 100644
index 0000000..2ce43f5
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.EDB
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.EDB
new file mode 100644
index 0000000..5011380
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_P5_T800_230531.EDB
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter.bin
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_1_Moderate.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_1_Moderate.bin
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_1_Moderate.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_1_Moderate.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_2_Standard.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_2_Standard.bin
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_2_Standard.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_2_Standard.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_3_Slim.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_3_Slim.bin
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_3_Slim.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_3_Slim.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_4_UltraSlim.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_4_UltraSlim.bin
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_4_UltraSlim.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_4_UltraSlim.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_LowPowerMonitor.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_LowPowerMonitor.bin
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_LowPowerMonitor.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_LowPowerMonitor.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_PLS_PS_ONLY.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_PLS_PS_ONLY.bin
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/catcher_filter_PLS_PS_ONLY.bin
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/catcher_filter_PLS_PS_ONLY.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/dsp.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/dsp.bin
new file mode 100644
index 0000000..0953e97
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/dsp.bin
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/202_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/202_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_16.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_16.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_16.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_69.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_69.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/204_69.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/204_69.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/206_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/206_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/206_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/206_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/206_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/206_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/206_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/206_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/206_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/206_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/206_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/206_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_88.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/208_88.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/208_88.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/214_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/214_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/216_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/216_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/216_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/216_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/216_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/216_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/216_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/216_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/216_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/216_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/216_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/216_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/216_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/216_70.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/216_70.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/216_70.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/219_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/219_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/219_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/219_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/219_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/219_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/219_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/219_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/220_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/220_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/220_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/220_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/222_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/222_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/222_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/222_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/222_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/222_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/222_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/222_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/222_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/222_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/222_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/222_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/222_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/222_88.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/222_88.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/222_88.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/226_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/226_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/228_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/228_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/228_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/228_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/228_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/228_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/228_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/228_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/230_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/230_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/230_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/230_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/230_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/230_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/230_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/230_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/230_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/230_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/230_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/230_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/231_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/231_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/231_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/231_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/231_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/231_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/231_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/231_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/231_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/231_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/231_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/231_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/231_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/231_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/231_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/231_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/232_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/232_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_31.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_31.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_31.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_32.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_32.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_32.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_32.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_33.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_33.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_33.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_33.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_34.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_34.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_34.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_86.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_86.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/234_86.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/234_86.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/235_91.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/235_91.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/235_91.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/235_91.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/235_94.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/235_94.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/235_94.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/235_94.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_77.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/238_77.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/238_77.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_99.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/240_99.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/240_99.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/242_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/242_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/242_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/242_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/242_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/242_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/242_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/242_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/242_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/242_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/242_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/242_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/242_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/242_14.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/242_14.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/242_14.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_12.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_12.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_12.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_13.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_13.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_13.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_21.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_21.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_21.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_21.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_91.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_91.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/244_91.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/244_91.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/246_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/246_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/246_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/246_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/248_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/248_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/248_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/248_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_99.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/250_99.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/250_99.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/259_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/259_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/259_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/259_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_34.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_34.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_34.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_98.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_98.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/260_98.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/260_98.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_77.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_77.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_77.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_80.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/262_80.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/262_80.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/268_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/268_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/268_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/268_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/268_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/268_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/268_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/268_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/268_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/268_89.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/268_89.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/268_89.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/272_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/272_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/272_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/272_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/276_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/276_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/276_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/276_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/284_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/284_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/284_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/284_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/284_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/284_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/284_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/284_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/286_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/286_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/286_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/286_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/286_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/286_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/286_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/286_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/286_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/286_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/286_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/286_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/293_41.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/293_41.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/293_41.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/293_41.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/294_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/294_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/294_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/294_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/294_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/294_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/294_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/294_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/295_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/295_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/295_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/295_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/297_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/297_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/297_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/297_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_220.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_220.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_220.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_221.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_221.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_221.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_221.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_370.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_370.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_370.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_370.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_490.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_490.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_490.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_610.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_610.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_610.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_610.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_630.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_630.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_630.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_630.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_640.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_640.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_640.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_640.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_660.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_660.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_660.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_660.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_690.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_690.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_690.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_690.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_720.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_720.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/302_720.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/302_720.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_030.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_030.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_030.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_070.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_070.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_070.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_070.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_090.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_090.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_090.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_090.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_120.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_120.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_120.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_120.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_150.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_150.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_150.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_150.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_160.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_160.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_160.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_160.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_170.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_170.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_170.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_170.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_200.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_200.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_200.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_200.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_210.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_210.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_210.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_210.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_220.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_220.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_220.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_230.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_230.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_230.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_230.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_240.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_240.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_240.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_240.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_250.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_250.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_250.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_250.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_260.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_260.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_260.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_260.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_270.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_270.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_270.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_270.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_280.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_280.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_280.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_280.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_300.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_300.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_300.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_300.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_310.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_310.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_310.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_310.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_380.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_380.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_380.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_380.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_410.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_410.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_410.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_410.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_490.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_490.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_490.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_530.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_530.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_530.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_530.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_560.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_560.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_560.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_560.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_590.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_590.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_590.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_590.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_640.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_640.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_640.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_640.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_660.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_660.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_660.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_660.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_680.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_680.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_680.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_680.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_800.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_800.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_800.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_800.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_950.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_950.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/310_950.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/310_950.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_180.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_180.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_180.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_180.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_220.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_220.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_220.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_221.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_221.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_221.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_221.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_222.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_222.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_222.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_222.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_223.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_223.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_223.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_223.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_224.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_224.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_224.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_224.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_225.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_225.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_225.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_225.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_226.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_226.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_226.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_226.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_227.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_227.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_227.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_227.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_228.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_228.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_228.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_228.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_229.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_229.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_229.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_229.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_270.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_270.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_270.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_270.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_390.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_390.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_390.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_390.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_480.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_480.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_480.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_480.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_490.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_490.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_490.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_580.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_580.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_580.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_580.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_581.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_581.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_581.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_581.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_582.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_582.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_582.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_582.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_583.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_583.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_583.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_583.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_584.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_584.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_584.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_584.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_585.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_585.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_585.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_585.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_586.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_586.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_586.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_586.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_587.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_587.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_587.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_587.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_588.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_588.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_588.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_588.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_589.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_589.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_589.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_589.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_870.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_870.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/311_870.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/311_870.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/312_530.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/312_530.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/312_530.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/312_530.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/312_670.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/312_670.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/312_670.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/312_670.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/312_770.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/312_770.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/312_770.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/312_770.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_100.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_100.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_100.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_100.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_110.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_110.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_110.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_110.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_120.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_120.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_120.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_120.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_130.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_130.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_130.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_130.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_140.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_140.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/313_140.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/313_140.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/330_110.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/330_110.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/330_110.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/330_110.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_020.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_020.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_020.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_020.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_030.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_030.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_030.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_050.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_050.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_050.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_050.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_090.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_090.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_090.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_090.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_140.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_140.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/334_140.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/334_140.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/370_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/370_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/370_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/370_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_12.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_12.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_12.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_13.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_13.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_13.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_14.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_14.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_14.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_16.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_16.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_16.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_19.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_19.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_19.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_19.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_22.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_22.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_22.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_22.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_24.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_24.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_24.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_24.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_27.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_27.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_27.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_27.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_31.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_31.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_31.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_34.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_34.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_34.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_38.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_38.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_38.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_38.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_40.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_40.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_40.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_40.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_43.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_43.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_43.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_43.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_44.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_44.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_44.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_44.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_45.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_45.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_45.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_45.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_46.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_46.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_46.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_46.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_49.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_49.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_49.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_49.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_51.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_51.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_51.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_53.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_53.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_53.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_53.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_54.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_54.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_54.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_55.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_55.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_55.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_55.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_56.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_56.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_56.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_56.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_57.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_57.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_57.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_57.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_58.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_58.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_58.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_58.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_59.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_59.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_59.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_59.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_60.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_60.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_60.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_60.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_62.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_62.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_62.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_62.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_64.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_64.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_64.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_64.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_66.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_66.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_66.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_70.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_70.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_70.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_71.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_71.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_71.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_71.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_72.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_72.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_72.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_72.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_73.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_73.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_73.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_73.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_74.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_74.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_74.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_74.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_75.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_75.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_75.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_75.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_76.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_76.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_76.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_76.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_77.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_77.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_77.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_78.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_78.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_78.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_78.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_79.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_79.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_79.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_79.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_80.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_80.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_80.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_81.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_81.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_81.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_81.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_82.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_82.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_82.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_82.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_84.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_84.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_84.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_84.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_86.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_86.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_86.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_86.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_87.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_87.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_87.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_87.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_88.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_88.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_88.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_89.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_89.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_89.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_90.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_90.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_90.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_90.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_92.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_92.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_92.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_92.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_93.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_93.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_93.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_93.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_94.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_94.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_94.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_94.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_95.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_95.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_95.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_95.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_96.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_96.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_96.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_96.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_97.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_97.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_97.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_97.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_98.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_98.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/404_98.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/404_98.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_030.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_030.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_030.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_035.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_035.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_035.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_035.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_036.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_036.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_036.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_036.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_037.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_037.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_037.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_037.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_038.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_038.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_038.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_038.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_039.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_039.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_039.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_039.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_044.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_044.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_044.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_044.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_51.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_51.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_51.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_52.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_52.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_52.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_52.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_53.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_53.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_53.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_53.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_54.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_54.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_54.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_55.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_55.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_55.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_55.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_56.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_56.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_56.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_56.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_66.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_66.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_66.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_67.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_67.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_67.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_67.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_70.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_70.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_70.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_750.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_750.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_750.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_750.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_751.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_751.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_751.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_751.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_752.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_752.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_752.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_752.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_753.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_753.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_753.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_753.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_754.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_754.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_754.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_754.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_755.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_755.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_755.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_755.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_756.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_756.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_756.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_756.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_799.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_799.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_799.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_799.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_818.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_818.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_818.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_818.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_819.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_819.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_819.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_819.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_840.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_840.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_840.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_840.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_845.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_845.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_845.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_845.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_846.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_846.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_846.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_846.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_847.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_847.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_847.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_847.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_848.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_848.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_848.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_848.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_849.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_849.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_849.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_849.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_850.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_850.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_850.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_850.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_851.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_851.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_851.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_851.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_852.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_852.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_852.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_852.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_853.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_853.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_853.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_853.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_854.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_854.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_854.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_854.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_855.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_855.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_855.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_855.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_856.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_856.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_856.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_856.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_857.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_857.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_857.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_857.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_858.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_858.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_858.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_858.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_859.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_859.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_859.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_859.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_860.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_860.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_860.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_860.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_861.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_861.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_861.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_861.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_862.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_862.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_862.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_862.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_863.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_863.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_863.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_863.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_864.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_864.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_864.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_864.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_865.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_865.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_865.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_865.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_866.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_866.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_866.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_866.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_867.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_867.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_867.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_867.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_868.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_868.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_868.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_868.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_869.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_869.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_869.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_869.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_870.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_870.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_870.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_870.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_871.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_871.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_871.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_871.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_872.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_872.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_872.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_872.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_873.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_873.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_873.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_873.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_874.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_874.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_874.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_874.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_876.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_876.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_876.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_876.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_879.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_879.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_879.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_879.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_908.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_908.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_908.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_908.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_909.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_909.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_909.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_909.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_910.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_910.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_910.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_910.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_911.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_911.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_911.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_911.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_927.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_927.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_927.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_927.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_929.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_929.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/405_929.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/405_929.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/410_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/410_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/410_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/410_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/410_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/410_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/410_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/410_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/413_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/413_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/413_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/413_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/413_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/413_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/413_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/413_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/414_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/414_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/414_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/414_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/414_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/414_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/414_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/414_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/418_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/418_66.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/418_66.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/418_66.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/419_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/419_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/419_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/419_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/419_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/419_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/419_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/419_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/419_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/419_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/419_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/419_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/420_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/420_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/420_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/420_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/420_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/420_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/420_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/420_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/424_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/424_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/424_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/424_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/424_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/424_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/424_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/424_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/426_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/426_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/426_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/426_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/426_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/426_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/426_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/426_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/427_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/427_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/427_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/427_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/440_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/440_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/440_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/440_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/440_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/440_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/440_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/440_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/440_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/440_51.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/440_51.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/440_51.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/440_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/440_54.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/440_54.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/440_54.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/450_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/450_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/450_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/450_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/450_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/450_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/450_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/450_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/450_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/450_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/450_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/450_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/452_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/452_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/452_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/452_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/452_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/452_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/452_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/452_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_00.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_00.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_00.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_12.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_12.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_12.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_13.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_13.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_13.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_14.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_14.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_14.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_15.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_15.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_15.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_16.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_16.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_16.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_17.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_17.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_17.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_17.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_18.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_18.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_18.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_18.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_19.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_19.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_19.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_19.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_20.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_20.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_20.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_29.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_29.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_29.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_29.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_31.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/454_31.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/454_31.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/455_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/455_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/456_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/456_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/456_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/456_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/456_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/456_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/456_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/456_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/456_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/456_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/456_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/456_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_00.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_00.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_00.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_12.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_12.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_12.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_13.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/460_13.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/460_13.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_89.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_89.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_89.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_92.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_92.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_92.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_92.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_93.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_93.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_93.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_93.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_97.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_97.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_97.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_97.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_99.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/466_99.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/466_99.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/470_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/470_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/470_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/470_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/470_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/470_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/470_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/470_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/470_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/470_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/470_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/470_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_08.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_08.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_08.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_152.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_152.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_152.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_152.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_153.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_153.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_153.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_153.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_16.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_16.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_16.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_18.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_18.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/502_18.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/502_18.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_39.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_39.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_39.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_39.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_71.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_71.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_71.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_71.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_72.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_72.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_72.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_72.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_90.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_90.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/505_90.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/505_90.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/510_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/510_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/510_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/510_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/510_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/510_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/510_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/510_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/510_28.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/510_28.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/510_28.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/510_28.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/515_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/515_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/515_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/515_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/515_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/515_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/515_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/515_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/520_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/520_00.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/520_00.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/520_00.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/520_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/520_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/520_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/520_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/520_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/520_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/520_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/520_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/520_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/520_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/520_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/520_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/525_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/525_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/525_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/525_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/525_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/525_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/525_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/525_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/525_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/525_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/525_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/525_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/525_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/525_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/525_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/525_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_001.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_001.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_001.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_001.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_099.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_099.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_099.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_099.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_24.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_24.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/530_24.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/530_24.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/602_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/602_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/602_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/602_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/602_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/602_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/602_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/602_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/602_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/602_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/602_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/602_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/621_27.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/621_27.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/621_27.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/621_27.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/621_40.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/621_40.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/621_40.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/621_40.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/639_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/639_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/639_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/639_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/639_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/639_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/639_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/639_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/640_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/640_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/640_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/640_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/641_33.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/641_33.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/641_33.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/641_33.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/645_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/645_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/645_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/645_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/653_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/653_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/653_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/653_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/655_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/655_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/655_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/655_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/655_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/655_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/655_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/655_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/655_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/655_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/655_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/655_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/655_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/655_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/655_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/655_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/704_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/704_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/704_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/704_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/704_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/704_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/704_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/704_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/704_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/704_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/704_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/704_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/706_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/706_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/706_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/706_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/706_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/706_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/706_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/706_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/708_001.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/708_001.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/708_001.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/708_001.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/710_21.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/710_21.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/710_21.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/710_21.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/710_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/710_30.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/710_30.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/710_30.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/710_300.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/710_300.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/710_300.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/710_300.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/712_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/712_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/712_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/712_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/712_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/712_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/712_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/712_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/714_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/714_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/714_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/714_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/714_020.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/714_020.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/714_020.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/714_020.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/714_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/714_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/714_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/714_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/716_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/716_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/716_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/716_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/716_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/716_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/716_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/716_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/716_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/716_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/716_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/716_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/716_17.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/716_17.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/716_17.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/716_17.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/722_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/722_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/722_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/722_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/722_310.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/722_310.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/722_310.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/722_310.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/722_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/722_34.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/722_34.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/722_34.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_05.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_05.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_05.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_06.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_06.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_06.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_11.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_11.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_11.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_23.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_23.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_23.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_23.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_80.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/724_80.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/724_80.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_01.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_01.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_01.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_03.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_03.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_03.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_09.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_09.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_09.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_23.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_23.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/730_23.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/730_23.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_101.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_101.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_101.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_101.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_103.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_103.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_103.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_103.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_111.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_111.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_111.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_111.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_123.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_123.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_123.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_123.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_130.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_130.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/732_130.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/732_130.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/734_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/734_04.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/734_04.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/734_04.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/740_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/740_00.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/740_00.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/740_00.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/744_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/744_02.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/744_02.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/744_02.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/748_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/748_07.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/748_07.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/748_07.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/748_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/748_10.conf
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/apncfg/748_10.conf
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/apncfg/748_10.conf
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/GlobalSign_root_CA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/GlobalSign_root_CA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/GlobalSign_root_CA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/GlobalSign_root_CA.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/Root-R3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/Root-R3.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/Root-R3.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/Root-R3.cer
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/Root_CA_1003.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/Root_CA_1003.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/Root_CA_1003.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/Root_CA_1003.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/VeriSignClass3G4.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/VeriSignClass3G4.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/VeriSignClass3G4.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/VeriSignClass3G4.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/VeriSignClass3G5.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/VeriSignClass3G5.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/VeriSignClass3G5.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/VeriSignClass3G5.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/thawte.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/thawte.der
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/ikev2/thawte.der
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/ikev2/thawte.der
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/AAACertificateServices.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/AAACertificateServices.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/AAACertificateServices.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/AAACertificateServices.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/CertumCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/CertumCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/CertumCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/CertumCA.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/CertumTrustedNetworkCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/CertumTrustedNetworkCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/CertumTrustedNetworkCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/CertumTrustedNetworkCA.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/DigiCertGlobalRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DigiCertGlobalRootCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/DigiCertGlobalRootCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DigiCertGlobalRootCA.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DigiCertGlobalRootG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DigiCertGlobalRootG2.crt
new file mode 100644
index 0000000..798e002
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DigiCertGlobalRootG2.crt
@@ -0,0 +1,22 @@
+-----BEGIN CERTIFICATE-----
+MIIDjjCCAnagAwIBAgIQAzrx5qcRqaC7KGSxHQn65TANBgkqhkiG9w0BAQsFADBh
+MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
+d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBH
+MjAeFw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAwMDBaMGExCzAJBgNVBAYTAlVT
+MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j
+b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcyMIIBIjANBgkqhkiG
+9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzfNNNx7a8myaJCtSnX/RrohCgiN9RlUyfuI
+2/Ou8jqJkTx65qsGGmvPrC3oXgkkRLpimn7Wo6h+4FR1IAWsULecYxpsMNzaHxmx
+1x7e/dfgy5SDN67sH0NO3Xss0r0upS/kqbitOtSZpLYl6ZtrAGCSYP9PIUkY92eQ
+q2EGnI/yuum06ZIya7XzV+hdG82MHauVBJVJ8zUtluNJbd134/tJS7SsVQepj5Wz
+tCO7TG1F8PapspUwtP1MVYwnSlcUfIKdzXOS0xZKBgyMUNGPHgm+F6HmIcr9g+UQ
+vIOlCsRnKPZzFBQ9RnbDhxSJITRNrw9FDKZJobq7nMWxM4MphQIDAQABo0IwQDAP
+BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUTiJUIBiV
+5uNu5g/6+rkS7QYXjzkwDQYJKoZIhvcNAQELBQADggEBAGBnKJRvDkhj6zHd6mcY
+1Yl9PMWLSn/pvtsrF9+wX3N3KjITOYFnQoQj8kVnNeyIv/iPsGEMNKSuIEyExtv4
+NeF22d+mQrvHRAiGfzZ0JFrabA0UWTW98kndth/Jsw1HKj2ZL7tcu7XUIOGZX1NG
+Fdtom/DzMNU+MeKNhJ7jitralj41E6Vf8PlwUHBHQRFXGU7Aj64GxJUTFy8bJZ91
+8rGOmaFvE7FBcf6IKshPECBV1/MUReXgRPTqh5Uykw7+U0b6LJ3/iyK5S9kJRaTe
+pLiaWN0bfVKfjllDiIGknibVb63dDcY3fe0Dkhvld1927jyNxF1WW6LZZm6zNTfl
+MrY=
+-----END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/04.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/04.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/04.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/06.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/06.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/06.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/08.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/08.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/08.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/13.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/13.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/13.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/16.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/16.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/16.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/18.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/18.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/18.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/19.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/19.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/19.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/20.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/20.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/20.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/21.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/21.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/21.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/22.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/22.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/22.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/26.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/26.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/26.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/28.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/28.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/28.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/31.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/31.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/31.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/31.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/32.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/32.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/32.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/42.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/42.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/42.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/44.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/44.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/44.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/47.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/47.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/47.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/55.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/55.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/55.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/57.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/57.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/57.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/59.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/59.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/59.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/59.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/60.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/60.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/60.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/62.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/62.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/62.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/62.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/66.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/66.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/66.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/68.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/68.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/68.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/68.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/70.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/70.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/70.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/72.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/72.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/72.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/74.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/74.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/74.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/74.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/76.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/76.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/76.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/76.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/78.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/78.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/78.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/78.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/80.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/80.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/80.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/80.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/82.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/82.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/82.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/82.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/83.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/83.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/83.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/83.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/84.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/84.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/84.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/84.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/86.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/86.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/86.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/86.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/88.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/88.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/88.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/88.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/90.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/90.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/90.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/90.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/93.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/93.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/93.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/93.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/94.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/94.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/94.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/94.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/95.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/95.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/95.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/95.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/97.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/97.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/2/97.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/2/97.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/08.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/08.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/08.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/11.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/11.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/11.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/11.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/13.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/13.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/13.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/42.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/42.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/42.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/44.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/44.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/44.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/52.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/52.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/52.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/54.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/54.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/54.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/56.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/56.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/56.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/56.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/58.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/58.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/58.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/58.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/60.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/60.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/60.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/62.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/62.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/62.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/62.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/63.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/63.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/63.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/63.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/64.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/64.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/64.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/64.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/65.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/65.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/65.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/65.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/66.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/66.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/66.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/68.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/68.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/68.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/68.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/70.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/70.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/70.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/72.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/72.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/72.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/74.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/74.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/74.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/74.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/76.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/76.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/3/76.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/3/76.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/00.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/00.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/00.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/00.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/01.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/01.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/01.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/01.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/04.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/04.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/04.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/05.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/05.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/05.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/13.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/13.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/13.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/15.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/15.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/15.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/16.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/16.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/16.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/17.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/17.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/17.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/17.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/18.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/18.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/18.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/19.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/19.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/19.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/20.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/20.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/20.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/21.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/21.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/21.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/22.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/22.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/22.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/24.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/24.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/24.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/25.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/25.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/25.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/26.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/26.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/26.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/27.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/27.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/27.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/27.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/28.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/28.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/28.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/29.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/29.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/29.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/29.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/36.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/36.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/36.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/37.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/37.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/37.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/52.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/52.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/52.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/54.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/54.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/54.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/55.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/55.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/55.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/56.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/56.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/56.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/56.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/57.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/57.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/57.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/60.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/60.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/60.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/66.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/66.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/66.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/70.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/70.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/70.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/72.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/4/72.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/4/72.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/05.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/05.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/05.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/15.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/15.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/15.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/20.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/20.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/20.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/25.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/25.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/25.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/28.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/28.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/28.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/36.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/36.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/36.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/37.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/37.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/37.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/39.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/39.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/39.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/39.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/41.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/41.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/41.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/41.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/42.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/42.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/42.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/43.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/43.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/43.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/43.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/44.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/44.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/44.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/47.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/47.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/47.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/49.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/49.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/49.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/49.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/52.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/52.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/52.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/54.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/5/54.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/5/54.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/03.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/03.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/03.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/03.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/04.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/04.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/04.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/05.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/05.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/05.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/06.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/06.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/06.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/07.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/07.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/07.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/07.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/08.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/08.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/08.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/09.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/09.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/09.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/09.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/11.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/11.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/11.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/11.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/13.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/13.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/13.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/15.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/15.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/15.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/16.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/16.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/16.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/17.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/17.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/17.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/17.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/18.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/18.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/18.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/19.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/19.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/19.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/20.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/20.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/20.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/21.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/21.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/21.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/22.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/22.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/22.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/23.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/23.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/23.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/23.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/24.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/24.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/24.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/25.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/25.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/25.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/26.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/26.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/26.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/27.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/27.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/27.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/27.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/28.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/28.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/28.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/29.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/29.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/29.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/29.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/31.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/31.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/31.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/31.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/32.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/32.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/32.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/33.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/33.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/33.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/33.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/35.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/35.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/35.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/35.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/36.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/36.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/36.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/37.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/37.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/37.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/39.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/39.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/39.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/39.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/41.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/41.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/41.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/41.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/42.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/42.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/42.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/43.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/43.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/43.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/43.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/45.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/45.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/45.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/45.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/47.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/47.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/47.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/49.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/49.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/49.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/49.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/51.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/51.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/51.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/51.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/52.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/52.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/52.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/53.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/53.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/53.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/53.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/54.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/54.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/54.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/55.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/55.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/55.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/57.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/57.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/57.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/58.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/58.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/58.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/58.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/59.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/59.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/6/59.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/6/59.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/02.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/02.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/02.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/04.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/04.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/04.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/06.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/06.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/06.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/08.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/08.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/08.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/10.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/10.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/10.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/12.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/12.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/12.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/14.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/14.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/14.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/16.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/16.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/16.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/22.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/22.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/22.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/24.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/24.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/24.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/30.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/30.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/30.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/32.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/32.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/32.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/34.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/34.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/34.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/36.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/36.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/36.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/38.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/38.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/38.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/40.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/40.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/40.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/44.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/44.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/44.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/46.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/46.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/46.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/48.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/48.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/48.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/50.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/7/50.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/7/50.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/9/01.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/9/01.txt
old mode 100755
new mode 100644
similarity index 100%
rename from prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P2_20221219/mddata/plmn/TS25/9/01.txt
rename to prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/mddata/plmn/TS25/9/01.txt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/modem.img b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/modem.img
new file mode 100644
index 0000000..790c53b
--- /dev/null
+++ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_P5_20230531/modem.img
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MCF_OTA_FILES.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MCF_OTA_FILES.tar.gz
deleted file mode 100755
index 7ce06d3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MCF_OTA_FILES.tar.gz
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.MCF.ODB.tar.gz b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.MCF.ODB.tar.gz
deleted file mode 100755
index 04a0656..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.MCF.ODB.tar.gz
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.XML.GZ b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.XML.GZ
deleted file mode 100755
index 146065b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.META.ODB_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.XML.GZ
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.EDB
deleted file mode 100755
index cd92bc5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB.META_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.EDB
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.EDB b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.EDB
deleted file mode 100755
index 220d042..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/MDDB_InfoCustomAppSrcP_MT2735_S00_MOLY_NR15_R3_MD700_MP_V75_T19_T800_20221118.EDB
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter.bin
deleted file mode 100755
index 48a9301..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_1_Moderate.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_1_Moderate.bin
deleted file mode 100755
index 570db68..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_1_Moderate.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_2_Standard.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_2_Standard.bin
deleted file mode 100755
index 5bbf894..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_2_Standard.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_3_Slim.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_3_Slim.bin
deleted file mode 100755
index 76e4798..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_3_Slim.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_4_UltraSlim.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_4_UltraSlim.bin
deleted file mode 100755
index af2f393..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_4_UltraSlim.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_LowPowerMonitor.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_LowPowerMonitor.bin
deleted file mode 100755
index 15732d8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_LowPowerMonitor.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_PLS_PS_ONLY.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_PLS_PS_ONLY.bin
deleted file mode 100755
index 9d524d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/catcher_filter_PLS_PS_ONLY.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/dsp.bin b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/dsp.bin
deleted file mode 100755
index c357e61..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/dsp.bin
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_02.conf
deleted file mode 100755
index f145903..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_05.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_09.conf
deleted file mode 100755
index 724ba0b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_09.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_10.conf
deleted file mode 100755
index 724ba0b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/202_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_02.conf
deleted file mode 100755
index 2b7345b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_08.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_08.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_16.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_16.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_20.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_20.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_69.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_69.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/204_69.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_10.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_20.conf
deleted file mode 100755
index a97d0eb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/206_20.conf
+++ /dev/null
@@ -1 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_01.conf
deleted file mode 100755
index 9700bc2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_01.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_10.conf
deleted file mode 100755
index 9700bc2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_10.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_15.conf
deleted file mode 100755
index 0f22202..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_15.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-free:default:IP:IP:::::::
\ No newline at end of file
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_20.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_20.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_88.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/208_88.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_01.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_04.conf
deleted file mode 100755
index a97d0eb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_07.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/214_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_01.conf
deleted file mode 100755
index 2b7345b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_30.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_30.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_70.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/216_70.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/219_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/219_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/219_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/219_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/219_10.conf
deleted file mode 100755
index a97d0eb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/219_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/220_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/220_05.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/220_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_01.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_06.conf
deleted file mode 100755
index 643b95f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_06.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_10.conf
deleted file mode 100755
index 9700bc2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_10.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_88.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/222_88.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_01.conf
deleted file mode 100755
index a97d0eb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_03.conf
deleted file mode 100755
index 58a2c37..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_03.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_05.conf
deleted file mode 100755
index ac7c524..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_06.conf
deleted file mode 100755
index 58a2c37..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_06.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_10.conf
deleted file mode 100755
index afcc748..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/226_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/228_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/228_01.conf
deleted file mode 100755
index afcc748..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/228_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/228_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/228_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/228_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_02.conf
deleted file mode 100755
index 724ba0b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/230_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_06.conf
deleted file mode 100755
index 4921cc1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/231_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_05.conf
deleted file mode 100755
index 2b7345b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_07.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_10.conf
deleted file mode 100755
index 2b7345b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/232_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_02.conf
deleted file mode 100755
index 8fe0b67..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_02.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-mobile.o2.co.uk:default,ia,supl,mms,xcap:IPV4V6:IPV4V6:1:o2:p:1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_08.conf
deleted file mode 100755
index 413b63b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_08.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:1:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IPV4V6:::::::
-SOS:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_10.conf
deleted file mode 100755
index 8fe0b67..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_10.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-mobile.o2.co.uk:default,ia,supl,mms,xcap:IPV4V6:IPV4V6:1:o2:p:1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_11.conf
deleted file mode 100755
index 8fe0b67..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_11.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-mobile.o2.co.uk:default,ia,supl,mms,xcap:IPV4V6:IPV4V6:1:o2:p:1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_15.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_15.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_20.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_20.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_30.conf
deleted file mode 100755
index 783b27b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_30.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV6:IPV4V6:1:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IPV4V6:1::::::
-SOS:emergency:IPV6:IPV4V6:1:::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_31.conf
deleted file mode 100755
index 783b27b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_31.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV6:IPV4V6:1:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IPV4V6:1::::::
-SOS:emergency:IPV6:IPV4V6:1:::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_32.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_32.conf
deleted file mode 100755
index 783b27b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_32.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV6:IPV4V6:1:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IPV4V6:1::::::
-SOS:emergency:IPV6:IPV4V6:1:::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_33.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_33.conf
deleted file mode 100755
index 783b27b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_33.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV6:IPV4V6:1:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IPV4V6:1::::::
-SOS:emergency:IPV6:IPV4V6:1:::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_34.conf
deleted file mode 100755
index 783b27b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_34.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV6:IPV4V6:1:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IPV4V6:1::::::
-SOS:emergency:IPV6:IPV4V6:1:::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_86.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_86.conf
deleted file mode 100755
index 2b7345b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/234_86.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/235_91.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/235_91.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/235_91.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/235_94.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/235_94.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/235_94.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_02.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_06.conf
deleted file mode 100755
index f145903..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_10.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_20.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_20.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_30.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_30.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_77.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/238_77.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_02.conf
deleted file mode 100755
index f145903..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_05.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_07.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_08.conf
deleted file mode 100755
index 8b13789..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_08.conf
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_99.conf
deleted file mode 100755
index f524693..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/240_99.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6::::18:::
-apn03.mtk:default,ia:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_01.conf
deleted file mode 100755
index 2b7345b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_05.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_14.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/242_14.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_05.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_12.conf
deleted file mode 100755
index afcc748..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_12.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_13.conf
deleted file mode 100755
index afcc748..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_13.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_21.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_21.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_21.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_91.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_91.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/244_91.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/246_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/246_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/246_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/248_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/248_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/248_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_11.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_11.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_20.conf
deleted file mode 100755
index 6c75109..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_20.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims.tele2.ru:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_99.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/250_99.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/259_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/259_15.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/259_15.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_06.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_34.conf
deleted file mode 100755
index bd546e1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_34.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_98.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_98.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/260_98.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_02.conf
deleted file mode 100755
index 9700bc2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_02.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_06.conf
deleted file mode 100755
index 32efdf7..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ia,ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_07.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_09.conf
deleted file mode 100755
index 9700bc2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_09.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_77.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_77.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_80.conf
deleted file mode 100755
index ab02885..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/262_80.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims01.epg78.ericsson.se:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_01.conf
deleted file mode 100755
index 643b95f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_01.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_06.conf
deleted file mode 100755
index a97d0eb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_89.conf
deleted file mode 100755
index 643b95f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/268_89.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/272_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/272_01.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/272_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/276_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/276_01.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/276_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/284_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/284_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/284_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/284_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/284_05.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/284_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_02.conf
deleted file mode 100755
index f145903..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/286_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/293_41.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/293_41.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/293_41.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/294_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/294_01.conf
deleted file mode 100755
index 58a2c37..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/294_01.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/294_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/294_03.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/294_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/295_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/295_01.conf
deleted file mode 100755
index afcc748..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/295_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/297_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/297_02.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/297_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_220.conf
deleted file mode 100755
index 7e2d716..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_220.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_221.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_221.conf
deleted file mode 100755
index 7e2d716..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_221.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_370.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_370.conf
deleted file mode 100755
index c6f918b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_370.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_490.conf
deleted file mode 100755
index ab708a2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_490.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-e911.mobilefrdm.ca:emergency:IPV4V6:IP:::::::
-volte.mobilefrdm.ca:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_610.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_610.conf
deleted file mode 100755
index 9169443..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_610.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_630.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_630.conf
deleted file mode 100755
index 9169443..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_630.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_640.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_640.conf
deleted file mode 100755
index 9169443..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_640.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_660.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_660.conf
deleted file mode 100755
index 9169443..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_660.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_690.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_690.conf
deleted file mode 100755
index 9169443..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_690.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_720.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_720.conf
deleted file mode 100755
index c6f918b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/302_720.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_030.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_030.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_070.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_070.conf
deleted file mode 100755
index 634d01d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_070.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
-:emergency:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_090.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_090.conf
deleted file mode 100755
index 1bee1d8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_090.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_120.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_120.conf
deleted file mode 100755
index 8b13789..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_120.conf
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_150.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_150.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_150.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_160.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_160.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_160.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_170.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_170.conf
deleted file mode 100755
index 1bee1d8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_170.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_200.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_200.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_200.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_210.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_210.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_210.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_220.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_220.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_230.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_230.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_230.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_240.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_240.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_240.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_250.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_250.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_250.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_260.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_260.conf
deleted file mode 100755
index 987a3c2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_260.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
-ims:ims:IPV6:IP:0:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:GID:6D38:
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_270.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_270.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_270.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_280.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_280.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_280.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_300.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_300.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_300.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_310.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_310.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_310.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_380.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_380.conf
deleted file mode 100755
index 1bee1d8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_380.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_410.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_410.conf
deleted file mode 100755
index 1a9bda3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_410.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|19|20:::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_490.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_490.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_530.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_530.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_530.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_560.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_560.conf
deleted file mode 100755
index 1bee1d8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_560.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_590.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_590.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_590.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_640.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_640.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_640.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_660.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_660.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_660.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_680.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_680.conf
deleted file mode 100755
index 1bee1d8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_680.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_800.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_800.conf
deleted file mode 100755
index dc47bc9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_800.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV6:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_950.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_950.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/310_950.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_180.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_180.conf
deleted file mode 100755
index 1bee1d8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_180.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_220.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_220.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_220.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_221.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_221.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_221.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_222.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_222.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_222.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_223.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_223.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_223.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_224.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_224.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_224.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_225.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_225.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_225.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_226.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_226.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_226.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_227.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_227.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_227.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_228.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_228.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_228.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_229.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_229.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_229.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_270.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_270.conf
deleted file mode 100755
index c72b622..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_270.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-IMS:ims,ia:IPV4V6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV6:::::::
-VZWEMERGENCY:emergency:IPV4V6:IPV6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_390.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_390.conf
deleted file mode 100755
index 64ebfb6..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_390.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-IMS:ims,ia:IPV4V6:IPV6:::::::
-:emergency:IPV4V6:IPV6:::::::
-VZWEMERGENCY:emergency:IPV4V6:IPV6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_480.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_480.conf
deleted file mode 100755
index 93d4407..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_480.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-IMS:ims,ia:IPV4V6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV6:::::::
-VZWEMERGENCY:emergency:IPV4V6:IPV6::::18:::
-VSBLIMS:ims,ia:IPV4V6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:GID:BAE1:
-:emergency:IPV4V6:IPV6:::::GID:BAE1:
-VZWEMERGENCY:emergency:IPV4V6:IPV6::::18:GID:BAE1:
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_490.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_490.conf
deleted file mode 100755
index 8b13789..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_490.conf
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_580.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_580.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_580.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_581.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_581.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_581.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_582.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_582.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_582.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_583.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_583.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_583.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_584.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_584.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_584.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_585.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_585.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_585.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_586.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_586.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_586.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_587.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_587.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_587.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_588.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_588.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_588.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_589.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_589.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_589.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_870.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_870.conf
deleted file mode 100755
index 8b13789..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/311_870.conf
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_530.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_530.conf
deleted file mode 100755
index 8b13789..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_530.conf
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_670.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_670.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_670.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_770.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_770.conf
deleted file mode 100755
index c72b622..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/312_770.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-IMS:ims,ia:IPV4V6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV6:::::::
-VZWEMERGENCY:emergency:IPV4V6:IPV6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_100.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_100.conf
deleted file mode 100755
index db6a912..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_100.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-:emergency:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|19|20:::
-sos:emergency:IPV4V6:IPV4V6::::18:::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_110.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_110.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_110.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_120.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_120.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_120.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_130.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_130.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_130.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_140.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_140.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/313_140.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/330_110.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/330_110.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/330_110.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_020.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_020.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_020.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_030.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_030.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_050.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_050.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_050.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_090.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_090.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_090.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_140.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_140.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/334_140.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/370_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/370_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/370_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_02.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_02.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_03.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_03.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_05.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_07.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_10.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_10.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_11.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_11.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_12.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_12.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_13.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_13.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_14.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_14.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_15.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_15.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_16.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_16.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_19.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_19.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_19.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_20.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_20.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_22.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_22.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_22.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_24.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_24.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_24.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_27.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_27.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_27.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_30.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_30.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_31.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_31.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_34.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_34.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_38.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_38.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_38.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_40.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_40.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_40.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_43.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_43.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_43.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_44.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_44.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_44.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_45.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_45.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_45.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_46.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_46.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_46.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_49.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_49.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_49.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_51.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_51.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_53.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_53.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_53.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_54.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_54.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_55.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_55.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_55.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_56.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_56.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_56.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_57.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_57.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_57.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_58.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_58.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_58.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_59.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_59.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_59.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_60.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_60.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_60.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_62.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_62.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_62.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_64.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_64.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_64.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_66.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_66.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_70.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_70.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_71.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_71.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_71.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_72.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_72.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_72.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_73.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_73.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_73.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_74.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_74.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_74.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_75.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_75.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_75.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_76.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_76.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_76.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_77.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_77.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_77.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_78.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_78.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_78.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_79.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_79.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_79.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_80.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_80.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_81.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_81.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_81.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_82.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_82.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_82.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_84.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_84.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_84.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_86.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_86.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_86.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_87.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_87.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_87.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_88.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_88.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_88.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_89.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_89.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_90.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_90.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_90.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_92.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_92.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_92.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_93.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_93.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_93.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_94.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_94.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_94.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_95.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_95.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_95.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_96.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_96.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_96.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_97.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_97.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_97.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_98.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_98.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/404_98.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_030.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_030.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_030.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_035.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_035.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_035.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_036.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_036.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_036.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_037.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_037.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_037.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_038.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_038.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_038.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_039.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_039.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_039.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_044.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_044.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_044.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_51.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_51.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_52.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_52.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_52.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_53.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_53.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_53.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_54.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_54.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_55.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_55.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_55.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_56.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_56.conf
deleted file mode 100755
index 6901f7b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_56.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-airtelgprs.com:default,supl,ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_66.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_66.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_67.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_67.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_67.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_70.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_70.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_70.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_750.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_750.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_750.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_751.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_751.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_751.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_752.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_752.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_752.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_753.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_753.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_753.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_754.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_754.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_754.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_755.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_755.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_755.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_756.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_756.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_756.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_799.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_799.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_799.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_818.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_818.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_818.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_819.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_819.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_819.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_840.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_840.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_840.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_845.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_845.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_845.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_846.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_846.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_846.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_847.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_847.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_847.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_848.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_848.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_848.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_849.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_849.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_849.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_850.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_850.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_850.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_851.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_851.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_851.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_852.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_852.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_852.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_853.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_853.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_853.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_854.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_854.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_854.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_855.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_855.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_855.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_856.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_856.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_856.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_857.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_857.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_857.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_858.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_858.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_858.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_859.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_859.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_859.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_860.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_860.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_860.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_861.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_861.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_861.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_862.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_862.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_862.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_863.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_863.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_863.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_864.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_864.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_864.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_865.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_865.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_865.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_866.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_866.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_866.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_867.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_867.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_867.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_868.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_868.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_868.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_869.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_869.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_869.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_870.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_870.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_870.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_871.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_871.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_871.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_872.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_872.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_872.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_873.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_873.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_873.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_874.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_874.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_874.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_876.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_876.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_876.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_879.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_879.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_879.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_908.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_908.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_908.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_909.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_909.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_909.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_910.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_910.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_910.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_911.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_911.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_911.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_927.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_927.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_927.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_929.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_929.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/405_929.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/410_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/410_04.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/410_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/410_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/410_06.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/410_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/413_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/413_01.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/413_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/413_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/413_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/413_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/414_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/414_06.conf
deleted file mode 100755
index e7f6ae5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/414_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/414_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/414_09.conf
deleted file mode 100755
index e1c6970..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/414_09.conf
+++ /dev/null
@@ -1 +0,0 @@
-mytel-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/418_66.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/418_66.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/418_66.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_02.conf
deleted file mode 100755
index a1a540c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_03.conf
deleted file mode 100755
index a1a540c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_04.conf
deleted file mode 100755
index a1a540c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/419_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/420_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/420_01.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/420_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/420_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/420_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/420_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/424_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/424_02.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/424_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/424_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/424_03.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/424_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/426_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/426_02.conf
deleted file mode 100755
index a1a540c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/426_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/426_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/426_04.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/426_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/427_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/427_01.conf
deleted file mode 100755
index 724ba0b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/427_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_10.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_20.conf
deleted file mode 100755
index 627a378..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_20.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_51.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_51.conf
deleted file mode 100755
index 296e25f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_51.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|19|20:::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_54.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_54.conf
deleted file mode 100755
index e80b14b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/440_54.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6:::::::
-:emergency:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|19|20:::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_05.conf
deleted file mode 100755
index b33ba12..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_05.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6:::::::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_06.conf
deleted file mode 100755
index 3da0685..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_06.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
-emergency.lguplus.co.kr:emergency:IP:IP:::::::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_08.conf
deleted file mode 100755
index 4a6acc1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/450_08.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IP:::::::
-:ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/452_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/452_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/452_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/452_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/452_05.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/452_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_00.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_00.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_03.conf
deleted file mode 100755
index 77c21ae..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims.lte.three.com.hk:ims:IPV4V6:IPV4V6:0:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_04.conf
deleted file mode 100755
index 77c21ae..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims.lte.three.com.hk:ims:IPV4V6:IPV4V6:0:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_05.conf
deleted file mode 100755
index 77c21ae..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims.lte.three.com.hk:ims:IPV4V6:IPV4V6:0:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_06.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_10.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_12.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_12.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_13.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_13.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_14.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_14.conf
deleted file mode 100755
index 77c21ae..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_14.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims.lte.three.com.hk:ims:IPV4V6:IPV4V6:0:::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_15.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_15.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_15.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_16.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_16.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_17.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_17.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_17.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_18.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_18.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_18.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_19.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_19.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_19.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_20.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_20.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_20.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_29.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_29.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_29.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_31.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_31.conf
deleted file mode 100755
index 8b13789..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/454_31.conf
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_01.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_02.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_03.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_04.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_05.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_07.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/455_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_06.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_08.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_08.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_11.conf
deleted file mode 100755
index e7f6ae5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/456_11.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_00.conf
deleted file mode 100755
index e3dd799..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_00.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_02.conf
deleted file mode 100755
index e3dd799..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_02.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_03.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_07.conf
deleted file mode 100755
index e3dd799..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_07.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_08.conf
deleted file mode 100755
index e3dd799..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_08.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-:ia:IPV4V6:IPV4V6:::::::
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_09.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_09.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_11.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_11.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_12.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_12.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_12.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_13.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_13.conf
deleted file mode 100755
index a8e6bd4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/460_13.conf
+++ /dev/null
@@ -1 +0,0 @@
-IMS:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_01.conf
deleted file mode 100755
index 10608ca..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_01.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-:emergency:IPV4V6:IPV4V6:::::::
-sos:emergency:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_05.conf
deleted file mode 100755
index 9169443..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_05.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_89.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_89.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_89.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_92.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_92.conf
deleted file mode 100755
index d6fa84b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_92.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IP:IP::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_93.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_93.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_93.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_97.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_97.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_97.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_99.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_99.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/466_99.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_02.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_07.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/470_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_08.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_08.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_08.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_152.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_152.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_152.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_153.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_153.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_153.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_16.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_16.conf
deleted file mode 100755
index afcc748..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_16.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_18.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_18.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/502_18.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_02.conf
deleted file mode 100755
index 30e1591..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_02.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-SOS:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_06.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_11.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_11.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_39.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_39.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_39.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_71.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_71.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_71.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_72.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_72.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_72.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_90.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_90.conf
deleted file mode 100755
index 30e1591..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/505_90.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-SOS:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_09.conf
deleted file mode 100755
index 56708ed..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_09.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims,xcap:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_10.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_28.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_28.conf
deleted file mode 100755
index 318984f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/510_28.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
-ims:ims,xcap:IPV4V6:IPV4V6::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/515_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/515_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/515_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/515_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/515_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/515_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_00.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_00.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_03.conf
deleted file mode 100755
index 5ed164d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_05.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/520_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_01.conf
deleted file mode 100755
index 52d6f48..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_01.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-e-ideas:default,supl,ia:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_03.conf
deleted file mode 100755
index f145903..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_05.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_10.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/525_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_001.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_001.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_001.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_01.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_05.conf
deleted file mode 100755
index 4921cc1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_099.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_099.conf
deleted file mode 100755
index 4921cc1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_099.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_24.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_24.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/530_24.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_02.conf
deleted file mode 100755
index 724ba0b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/602_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/621_27.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/621_27.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/621_27.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/621_40.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/621_40.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/621_40.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/639_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/639_02.conf
deleted file mode 100755
index f145903..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/639_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/639_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/639_10.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/639_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/640_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/640_11.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/640_11.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/641_33.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/641_33.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/641_33.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/645_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/645_05.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/645_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/653_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/653_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/653_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_01.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_07.conf
deleted file mode 100755
index 4eaf62e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::18:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_10.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/655_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_02.conf
deleted file mode 100755
index dfb7ade..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/704_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/706_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/706_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/706_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/706_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/706_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/706_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/708_001.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/708_001.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/708_001.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_21.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_21.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_21.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_30.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_30.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_30.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_300.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_300.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/710_300.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/712_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/712_03.conf
deleted file mode 100755
index c08e17a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/712_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims.claro:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/712_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/712_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/712_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_01.conf
deleted file mode 100755
index 63094d1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IP:IP::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_020.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_020.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_020.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/714_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_06.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_07.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_10.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_17.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_17.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/716_17.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_07.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_310.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_310.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_310.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_34.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_34.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/722_34.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_02.conf
deleted file mode 100755
index 6b627ee..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims,xcap:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_03.conf
deleted file mode 100755
index 6b627ee..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims,xcap:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_04.conf
deleted file mode 100755
index 6b627ee..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims,xcap:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_05.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_05.conf
deleted file mode 100755
index afcc748..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_05.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_06.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_06.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_06.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_10.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_11.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_11.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_11.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_23.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_23.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_23.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_80.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_80.conf
deleted file mode 100755
index 3e35f0d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/724_80.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims.mnc080.mcc724.3gppnetwork.org:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_01.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_01.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_01.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_03.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_03.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_03.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_07.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_09.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_09.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_09.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_23.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_23.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/730_23.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_101.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_101.conf
deleted file mode 100755
index 9169443..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_101.conf
+++ /dev/null
@@ -1,2 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
-sos:emergency:IPV4V6:IPV4V6:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_103.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_103.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_103.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_111.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_111.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_111.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_123.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_123.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_123.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_130.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_130.conf
deleted file mode 100755
index 66a2909..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/732_130.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims.avt.com:ims,xcap:IP:IP:::::::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/734_04.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/734_04.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/734_04.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/740_00.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/740_00.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/740_00.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/744_02.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/744_02.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/744_02.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/748_07.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/748_07.conf
deleted file mode 100755
index 2b7345b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/748_07.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/748_10.conf b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/748_10.conf
deleted file mode 100755
index 487e63d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/apncfg/748_10.conf
+++ /dev/null
@@ -1 +0,0 @@
-ims:ims:IPV4V6:IPV4V6::::1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20:::
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt
deleted file mode 100755
index 2f1e552..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootCA.crt
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt
deleted file mode 100755
index 1e927a7..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootG2.crt
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt
deleted file mode 100755
index 6dda6a3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/DigiCertGlobalRootG3.crt
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer
deleted file mode 100755
index 4fdfa0b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Entrust.net_Certification_Authority_2048.cer
+++ /dev/null
@@ -1,21 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChMLRW50cnVzdC5u
-ZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBpbmNvcnAuIGJ5IHJlZi4gKGxp
-bWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNV
-BAMTKkVudHJ1c3QubmV0IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQx
-NzUwNTFaFw0yOTA3MjQxNDE1MTJaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3
-d3d3LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTEl
-MCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50cnVzdC5u
-ZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
-MIIBCgKCAQEArU1LqRKGsuqjIAcVFmQqK0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOL
-Gp18EzoOH1u3Hs/lJBQesYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSr
-hRSGlVuXMlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVTXTzW
-nLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/HoZdenoVve8AjhUi
-VBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH4QIDAQABo0IwQDAOBgNVHQ8BAf8E
-BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUVeSB0RGAvtiJuQijMfmhJAkWuXAwDQYJ
-KoZIhvcNAQEFBQADggEBADubj1abMOdTmXx6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcnPy
-T/4xmf3IDExoU8aAghOY+rat2l098c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csHsm7mhpElesYT6Yf
-zX1XEC+bBAlahLVu2B064dae0Wx5XnkcFMXj0EyTO2U87d89vqbllRrDtRnDvV5bu/8j72gZyxKT
-J1wDLW8w0B62GqzeWvfRqqgnpv55gcR5mTNXuhKwqeBCbJPKVt7+bYQLCIt+jerXmCHG8+c8eS9e
-nNFMFY3h7CI3zJpDC5fcgJCNs2ebb0gIFVbPv/ErfF6adulZkMV8gzURZVE=
------END CERTIFICATE-----
\ No newline at end of file
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der
deleted file mode 100755
index 94c5cda..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_PCA_G3_Root.der
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der
deleted file mode 100755
index 3a1ea37..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_Primary_CA.der
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der
deleted file mode 100755
index 75dfaf3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GeoTrust_Primary_CA_G2_ECC.der
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GlobalSign_root_CA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GlobalSign_root_CA.crt
deleted file mode 100755
index f4ce4ca..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/GlobalSign_root_CA.crt
+++ /dev/null
@@ -1,21 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG
-A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv
-b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw
-MDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i
-YWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxT
-aWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZ
-jc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavp
-xy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp
-1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdG
-snUOhugZitVtbNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJ
-U26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N8
-9iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8E
-BTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0B
-AQUFAAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOz
-yj1hTdNGCbM+w6DjY1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE
-38NflNUVyRRBnMRddWQVDf9VMOyGj/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymP
-AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad
-DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME
-HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A==
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Root-R3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Root-R3.cer
deleted file mode 100755
index 232c4b6..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Root-R3.cer
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Root_CA_1003.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Root_CA_1003.crt
deleted file mode 100755
index 2344633..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/Root_CA_1003.crt
+++ /dev/null
@@ -1,26 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEZTCCA02gAwIBAgICEAEwDQYJKoZIhvcNAQEFBQAwRDEUMBIGA1UECgwLT3Bl
-bkNBIExhYnMxFTATBgNVBAsMDEFwcGxpY2F0aW9uczEVMBMGA1UEAwwMcm9vdCBj
-YSBlcGRnMB4XDTE0MDIyNTA4MzM0NloXDTI0MDIyMzA4MzM0NlowRDEUMBIGA1UE
-CgwLT3BlbkNBIExhYnMxFTATBgNVBAsMDEFwcGxpY2F0aW9uczEVMBMGA1UEAwwM
-cm9vdCBjYSBlcGRnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoyJR
-tlJHAWVtZg/zXQg38MZtyschiHGA5WcQOaXsE0ojf5yRQmoY8ipuTvUEWBnKlzur
-5huUf6PJNACI3hCA4wgIuz/Efs0DUjd1pGQTm5Rkv+FkWIafl87R7S1A6uauZe59
-mB4o2EATQtHkhPqWkL2OVuxBqKsvlEBO7wtjpM+MLbliYnfppA54UTX1W0GlkmpD
-zYiIyHHIEKsH+V+G0QMICZipi1Z8u3Zh0nG9ffmCHev534bXwSx9IlOFHHdSL8rA
-VDuipqMT/AzawgHQW2LhqhxK16orIk3WrkkwLnACNKAyFibx4EsY0pjAaXx8Hvjw
-sQy9LmI+0IRsrG/HpwIDAQABo4IBXzCCAVswDwYDVR0TAQH/BAUwAwEB/zALBgNV
-HQ8EBAMCAQYwHQYDVR0OBBYEFKQysYrn04rdld3bPOtvoRyuuW0mMB8GA1UdIwQY
-MBaAFKQysYrn04rdld3bPOtvoRyuuW0mMBwGA1UdEQQVMBOBEXdlYm1hc3RlckBl
-emMuY29tMBwGA1UdEgQVMBOBEXdlYm1hc3RlckBlemMuY29tMIGHBggrBgEFBQcB
-AQR7MHkwNAYIKwYBBQUHMAKGKGh0dHA6Ly9zc3Itc2ltL3BraS9wdWIvY2FjZXJ0
-L2NhY2VydC5jcnQwIAYIKwYBBQUHMAGGFGh0dHA6Ly9zc3Itc2ltOjI1NjAvMB8G
-CCsGAQUFBzAMhhNodHRwOi8vc3NyLXNpbTo4MzAvMDUGA1UdHwQuMCwwKqAooCaG
-JGh0dHA6Ly9zc3Itc2ltL3BraS9wdWIvY3JsL2NhY3JsLmNybDANBgkqhkiG9w0B
-AQUFAAOCAQEAJg2zRv5qD8OXiegzfCeaDsYk4uZZ1Vp8hhKtUOkBEg6Qpl8Tpng3
-/nnSmjMIhBvlcYdd7oN6RcQ2PjD4ceKizt48wnFIcppeI5OnK0Eaq5cPDvy8y90Z
-Iw+JBc3YMS6czq0einbX1x1kcZBxQGZCEQnCH3qauDZG9R1xV1o4bsev8VV8TREN
-tk0zeoL2aKdzWtPQxF526PxrQZLfiGlF57UMjNaQKxBi8Zi1TkEHl95XxgxIuxDj
-6W4EQeiusuMd4ZXBvgbAP1gV/CXNPP5Y0ydVDd9U5g1Is0iDFyN2YCkr67gTpa8l
-Q4lom0pEhdl0a/CIPE3HZO7l/IGrAu31aA==
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignClass3G4.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignClass3G4.der
deleted file mode 100755
index 101d361..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignClass3G4.der
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignClass3G5.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignClass3G5.der
deleted file mode 100755
index 9818d19..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignClass3G5.der
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der
deleted file mode 100755
index 1353d28..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/VeriSignUniversalRootCertification.der
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/thawte.der b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/thawte.der
deleted file mode 100755
index 8abe3c8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/ikev2/thawte.der
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/AAACertificateServices.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/AAACertificateServices.crt
deleted file mode 100755
index 5c715fa..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/AAACertificateServices.crt
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumCA.crt
deleted file mode 100755
index d39b2a2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumCA.crt
+++ /dev/null
@@ -1,72 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYTAlBM
-MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD
-QTAeFw0wMjA2MTExMDQ2MzlaFw0yNzA2MTExMDQ2MzlaMD4xCzAJBgNVBAYTAlBM
-MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD
-QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6xwS7TT3zNJc4YPk/E
-jG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQnFdvkrOYCJ5JdLkKWo
-ePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82KxujZlakE403Daaj4GI
-ULdtlkIJ89eVgw1BS7Bqa/j8D35in2fE7SZfECYPCE/wpFcozo+47UX2bu4lXapu
-Ob7kky/ZR6By6/qmW6/KUz/iDsaWVhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUg
-AKpoC6EahQGcxEZjgoi2IrHu/qpGWX7PNSzVttpd90gzFFS269lvzs2I1qsb2pY7
-HVkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEA
-uI3O7+cUus/usESSbLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+GXYkHAQa
-TOs9qmdvLdTN/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTg
-xSvgGrZgFCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1q
-CjqTE5s7FCMTY5w/0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5x
-O/fIR/RpbxXyEV6DHpx8Uq79AtoSqFlnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZQs
-6GAqm4VKQPNriiTsBhYscw==
------END CERTIFICATE-----
-Certificate:
- Data:
- Version: 3 (0x2)
- Serial Number: 65568 (0x10020)
- Signature Algorithm: sha1WithRSAEncryption
- Issuer: C=PL, O=Unizeto Sp. z o.o., CN=Certum CA
- Validity
- Not Before: Jun 11 10:46:39 2002 GMT
- Not After : Jun 11 10:46:39 2027 GMT
- Subject: C=PL, O=Unizeto Sp. z o.o., CN=Certum CA
- Subject Public Key Info:
- Public Key Algorithm: rsaEncryption
- Public-Key: (2048 bit)
- Modulus:
- 00:ce:b1:c1:2e:d3:4f:7c:cd:25:ce:18:3e:4f:c4:
- 8c:6f:80:6a:73:c8:5b:51:f8:9b:d2:dc:bb:00:5c:
- b1:a0:fc:75:03:ee:81:f0:88:ee:23:52:e9:e6:15:
- 33:8d:ac:2d:09:c5:76:f9:2b:39:80:89:e4:97:4b:
- 90:a5:a8:78:f8:73:43:7b:a4:61:b0:d8:58:cc:e1:
- 6c:66:7e:9c:f3:09:5e:55:63:84:d5:a8:ef:f3:b1:
- 2e:30:68:b3:c4:3c:d8:ac:6e:8d:99:5a:90:4e:34:
- dc:36:9a:8f:81:88:50:b7:6d:96:42:09:f3:d7:95:
- 83:0d:41:4b:b0:6a:6b:f8:fc:0f:7e:62:9f:67:c4:
- ed:26:5f:10:26:0f:08:4f:f0:a4:57:28:ce:8f:b8:
- ed:45:f6:6e:ee:25:5d:aa:6e:39:be:e4:93:2f:d9:
- 47:a0:72:eb:fa:a6:5b:af:ca:53:3f:e2:0e:c6:96:
- 56:11:6e:f7:e9:66:a9:26:d8:7f:95:53:ed:0a:85:
- 88:ba:4f:29:a5:42:8c:5e:b6:fc:85:20:00:aa:68:
- 0b:a1:1a:85:01:9c:c4:46:63:82:88:b6:22:b1:ee:
- fe:aa:46:59:7e:cf:35:2c:d5:b6:da:5d:f7:48:33:
- 14:54:b6:eb:d9:6f:ce:cd:88:d6:ab:1b:da:96:3b:
- 1d:59
- Exponent: 65537 (0x10001)
- X509v3 extensions:
- X509v3 Basic Constraints: critical
- CA:TRUE
- Signature Algorithm: sha1WithRSAEncryption
- b8:8d:ce:ef:e7:14:ba:cf:ee:b0:44:92:6c:b4:39:3e:a2:84:
- 6e:ad:b8:21:77:d2:d4:77:82:87:e6:20:41:81:ee:e2:f8:11:
- b7:63:d1:17:37:be:19:76:24:1c:04:1a:4c:eb:3d:aa:67:6f:
- 2d:d4:cd:fe:65:31:70:c5:1b:a6:02:0a:ba:60:7b:6d:58:c2:
- 9a:49:fe:63:32:0b:6b:e3:3a:c0:ac:ab:3b:b0:e8:d3:09:51:
- 8c:10:83:c6:34:e0:c5:2b:e0:1a:b6:60:14:27:6c:32:77:8c:
- bc:b2:72:98:cf:cd:cc:3f:b9:c8:24:42:14:d6:57:fc:e6:26:
- 43:a9:1d:e5:80:90:ce:03:54:28:3e:f7:3f:d3:f8:4d:ed:6a:
- 0a:3a:93:13:9b:3b:14:23:13:63:9c:3f:d1:87:27:79:e5:4c:
- 51:e3:01:ad:85:5d:1a:3b:b1:d5:73:10:a4:d3:f2:bc:6e:64:
- f5:5a:56:90:a8:c7:0e:4c:74:0f:2e:71:3b:f7:c8:47:f4:69:
- 6f:15:f2:11:5e:83:1e:9c:7c:52:ae:fd:02:da:12:a8:59:67:
- 18:db:bc:70:dd:9b:b1:69:ed:80:ce:89:40:48:6a:0e:35:ca:
- 29:66:15:21:94:2c:e8:60:2a:9b:85:4a:40:f3:6b:8a:24:ec:
- 06:16:2c:73
-SHA1 Fingerprint=62:52:DC:40:F7:11:43:A2:2F:DE:9E:F7:34:8E:06:42:51:B1:81:18
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt
deleted file mode 100755
index d0487c1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumOrganizationValidationCASHA2.crt
+++ /dev/null
@@ -1,28 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIE1TCCA72gAwIBAgIRALWtD2OFTMRiLks5I7KQAhYwDQYJKoZIhvcNAQELBQAw
-fjELMAkGA1UEBhMCUEwxIjAgBgNVBAoTGVVuaXpldG8gVGVjaG5vbG9naWVzIFMu
-QS4xJzAlBgNVBAsTHkNlcnR1bSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEiMCAG
-A1UEAxMZQ2VydHVtIFRydXN0ZWQgTmV0d29yayBDQTAeFw0xNDA5MTExMjAwMDBa
-Fw0yNzA2MDkxMDQ2MzlaMIGLMQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0
-byBUZWNobm9sb2dpZXMgUy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRp
-b24gQXV0aG9yaXR5MS8wLQYDVQQDEyZDZXJ0dW0gT3JnYW5pemF0aW9uIFZhbGlk
-YXRpb24gQ0EgU0hBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMQu
-1QDMW2HpTB+NQ14+w+dvSV0k/bXvNTz9K6KrTKgXDm1eJZ44QNMo9Hb5230nvrJh
-wenVEmOsJRD/Ux/oSGDASK58+ckfgY8CeMMsk7rNkwAlBgDp3mBpdhBADMFevgxb
-B+ADq01B91Mit5Tbkc2wP1VlMr2bglVZxmGS39NjpwFRmrzEdxpWdWSX48Ksowt7
-QH7QGQ0Af/972ZIam1ctsRGcOkA5h6t/iZXlV5Y2+H4/4pcr4uF4z30I5VHyJWqx
-dhbFlaBnmnj/ChLa4wdpObqZl7IUz3MOBioMzH8DyiuEAZ5O1+wPALidIlc3GbVJ
-gl6/SwKwh4O4EywWxZMCAwEAAaOCAT4wggE6MA8GA1UdEwEB/wQFMAMBAf8wHQYD
-VR0OBBYEFO7t6FRgEws1g6D6a3pGOvc+MLtmMB8GA1UdIwQYMBaAFAh2zcsH/yT2
-xc3tu5C84oQ3RnX3MA4GA1UdDwEB/wQEAwIBBjAvBgNVHR8EKDAmMCSgIqAghh5o
-dHRwOi8vY3JsLmNlcnR1bS5wbC9jdG5jYS5jcmwwawYIKwYBBQUHAQEEXzBdMCgG
-CCsGAQUFBzABhhxodHRwOi8vc3ViY2Eub2NzcC1jZXJ0dW0uY29tMDEGCCsGAQUF
-BzAChiVodHRwOi8vcmVwb3NpdG9yeS5jZXJ0dW0ucGwvY3RuY2EuY2VyMDkGA1Ud
-IAQyMDAwLgYEVR0gADAmMCQGCCsGAQUFBwIBFhhodHRwOi8vd3d3LmNlcnR1bS5w
-bC9DUFMwDQYJKoZIhvcNAQELBQADggEBACNWGnCyexPgGwHHefwKh8dJHoTEPxbM
-M7C2+8tFUiTHKroVdqfPHywdmZ7k0H/0lm0uP1wlcbj1k/dLPb4gugp0UYNB7qk8
-os22unSI9Yy/1xpMqNH9Udg7zK4F81YC2YtD942HVWQ1/8GYRNWbMmZmPSJ8ijXz
-G6xOSIu3WZgh+qm/B5UpdA1kVXeWL6IcGIj5vnNVwVQiSRroPT+qqHcgVxrs5IAj
-BFUNKdQQrInpvGFqiQ8uwOde6gp58IpH1e1h8DIoc/vNa9v/7lZ5s48Q172lFkug
-v4FHHMdGV2C1grGQtXyS876ZGk9D5b9Q+SerjBC80hlfGAOt96PK+j0=
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumTrustedNetworkCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumTrustedNetworkCA.crt
deleted file mode 100755
index 403a1cd..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CertumTrustedNetworkCA.crt
+++ /dev/null
@@ -1,28 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEtDCCA5ygAwIBAgIRAJOShUABZXFflH8oj+/JmygwDQYJKoZIhvcNAQELBQAw
-PjELMAkGA1UEBhMCUEwxGzAZBgNVBAoTElVuaXpldG8gU3AuIHogby5vLjESMBAG
-A1UEAxMJQ2VydHVtIENBMB4XDTA4MTAyMjEyMDczN1oXDTI3MDYxMDEwNDYzOVow
-fjELMAkGA1UEBhMCUEwxIjAgBgNVBAoTGVVuaXpldG8gVGVjaG5vbG9naWVzIFMu
-QS4xJzAlBgNVBAsTHkNlcnR1bSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEiMCAG
-A1UEAxMZQ2VydHVtIFRydXN0ZWQgTmV0d29yayBDQTCCASIwDQYJKoZIhvcNAQEB
-BQADggEPADCCAQoCggEBAOP7faNyusLwyRSH9WsBTuFuQAe6bSddf/dbLbNax1Ff
-q6QypmGHtm4PhtIwApf412lXoRg5XWpkecYBWaw8MUo4fNIE0kso6CBfOweizE1z
-2/OuT8dW1Vqnlon686to1COGWSfPCSe8rG5ygxwwct/gounS4XR1Gb0qnnsVVAQb
-10M5rVUoxeIau/TA5K44STPMdoWfOUXSpJ7yEoxR+HzkLX/1rF/rFp+xLdG6zJFC
-d0wlyZA4b9vwzPuOHpdZPtVgTuYFKO1JeRNLukjbL/ly0znK/h/YNHL1tEDPMQHD
-7N4RLRddH7hQ0V4Zp2neBzMoylCV+adUy1SGUEWp+UkCAwEAAaOCAWswggFnMA8G
-A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFAh2zcsH/yT2xc3tu5C84oQ3RnX3MFIG
-A1UdIwRLMEmhQqRAMD4xCzAJBgNVBAYTAlBMMRswGQYDVQQKExJVbml6ZXRvIFNw
-LiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBDQYIDAQAgMA4GA1UdDwEB/wQEAwIB
-BjAsBgNVHR8EJTAjMCGgH6AdhhtodHRwOi8vY3JsLmNlcnR1bS5wbC9jYS5jcmww
-aAYIKwYBBQUHAQEEXDBaMCgGCCsGAQUFBzABhhxodHRwOi8vc3ViY2Eub2NzcC1j
-ZXJ0dW0uY29tMC4GCCsGAQUFBzAChiJodHRwOi8vcmVwb3NpdG9yeS5jZXJ0dW0u
-cGwvY2EuY2VyMDkGA1UdIAQyMDAwLgYEVR0gADAmMCQGCCsGAQUFBwIBFhhodHRw
-Oi8vd3d3LmNlcnR1bS5wbC9DUFMwDQYJKoZIhvcNAQELBQADggEBAI3m/UBmo0yc
-p6uh2oTdHDAH5tvHLeyDoVbkHTwmoaUJK+h9Yr6ydZTdCPJ/KEHkgGcCToqPwzXQ
-1aknKOrS9KsGhkOujOP5iH3g271CgYACEnWy6BdxqyGVMUZCDYgQOdNv7C9C6kBT
-Yr/rynieq6LVLgXqM6vp1peUQl4E7Sztapx6lX0FKgV/CF1mrWHUdqx1lpdzY70a
-QVkppV4ig8OLWfqaova9ML9yHRyZhpzyhTwd9yaWLy75ArG1qVDoOPqbCl60BMDO
-TjksygtbYvBNWFA0meaaLNKQ1wmB1sCqXs7+0vehukvZ1oaOGR+mBkdCcuBWCgAc
-eLmNzJkEN0k=
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt
deleted file mode 100755
index 4543fb3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/CyberTrustJapanPublicCAG3.crt
+++ /dev/null
@@ -1,26 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEWjCCA0KgAwIBAgIQBUNA0KLEzIER+qg3fUbgbzANBgkqhkiG9w0BAQsFADBa
-MQswCQYDVQQGEwJJRTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJl
-clRydXN0MSIwIAYDVQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTE2
-MTExNTEyMDMzMVoXDTI1MDUxMDEyMDAwMFowWjELMAkGA1UEBhMCSlAxIzAhBgNV
-BAoTGkN5YmVydHJ1c3QgSmFwYW4gQ28uLCBMdGQuMSYwJAYDVQQDEx1DeWJlcnRy
-dXN0IEphcGFuIFB1YmxpYyBDQSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
-AQoCggEBAJRWo0VEVKpgZL+4V59O29R5aF8TBfQ/zSXdPF5Ydxyd5p/jMknvAjo0
-U41S5eM5Zh/nM2G2J8YkVVAnAmXwsIxBjTBeR1uCb8ecoyhDbVh7yBWYTiVvy3Yn
-WwssLLWYI+eLfP13GsRSul0Z7nghTSGa2RJ8MxVrGsmB6traV7fVL84fS/y0M+Cg
-yZQnuydAtpDbrJ51phErSRktw8JDBwm7PW6Io+OKxdKG9mVbNMOfTALlCbosxnZm
-69F2JfQwE/tYYKhY41FvSwgEYY2sqTAvUkGjIsEzWat7WfmTZ0vJiXVS7ylJNJMc
-nJNznBnOXBjNTAknwT/1Sez04t9Lr48CAwEAAaOCARowggEWMB0GA1UdDgQWBBRz
-qAhTKbgV+5mA5cU32Pg5e6QTBjAfBgNVHSMEGDAWgBTlnVkwgkdYzKz6CFQ2hns6
-tQRN8DASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQEAwIBhjA0BggrBgEF
-BQcBAQQoMCYwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTA6
-BgNVHR8EMzAxMC+gLaArhilodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vT21uaXJv
-b3QyMDI1LmNybDA+BgNVHSAENzA1MDMGBWeBDAECMCowKAYIKwYBBQUHAgEWHGh0
-dHBzOi8vd3d3LmRpZ2ljZXJ0LmNvbS9DUFMwDQYJKoZIhvcNAQELBQADggEBABqR
-cPGWxhjLeEP8gzZ29OHVpL8EFWNvpnEbpnAWa1uYmFNf0fsSoibP04UCB0Ye21KA
-jPNuTE2OWpgxlTVvl99sIJFKhXCIn6OWCLQpbjFMu8Ro5rdzg4ekedsihWN9NMwU
-+K8DqO+oukIYjF2zPnnwcSykKaUhdi0BqUtmzJhHkFjoslJllOXiJ4DQkbpjiQpR
-yjPfliI1wzAcOM3xxswHAxOq8BVHKErKYUqHkHgHFZ6Ycts+sShKqVf+Zdx9zYJV
-pItiSs0DDCCFapxWACouIVY+xPYG8EMUWXz0gK8SAwNHXLRxBtjNWhCGOiSN+ihp
-277L8LbKp8eA8OlOMiU=
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DigiCertGlobalRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DigiCertGlobalRootCA.crt
deleted file mode 100755
index 2f1e552..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DigiCertGlobalRootCA.crt
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt
deleted file mode 100755
index 24d1795..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DigiCertSHA2SecureServerCA.crt
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt
deleted file mode 100755
index ed48838..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/DomenySslDvCertificationAuthority.crt
+++ /dev/null
@@ -1,35 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIGCTCCA/GgAwIBAgIRAPU2lIjQ1i9wpV8pmPEagpcwDQYJKoZIhvcNAQEMBQAw
-gYgxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpOZXcgSmVyc2V5MRQwEgYDVQQHEwtK
-ZXJzZXkgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMS4wLAYD
-VQQDEyVVU0VSVHJ1c3QgUlNBIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTE0
-MTIwMjAwMDAwMFoXDTI0MTIwMTIzNTk1OVowgYQxCzAJBgNVBAYTAlBMMRUwEwYD
-VQQIDAxNYcWCb3BvbHNraWUxEDAOBgNVBAcMB0tyYWvDs3cxHDAaBgNVBAoTE0RP
-TUVOWS5QTCBzcC4geiBvLm8xLjAsBgNVBAMTJURPTUVOWSBTU0wgRFYgQ2VydGlm
-aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
-AQC1tVhIdZ3PBSv7K1nqiubxWpgt1QPtfBoinH7qM0+pftrY8Zk0YuNPEx7U4vVR
-96THm/oQIIUTHz1Fb++yEYOlozD4rd9yagL9BBOBx4czugegBUX1PjB5fwFo5ucF
-x3xjzd6hgLHy+hxAARG6Bv9q0j9KFWMno22Zx+t97mLSpxWVQ/16nTJ83GnASGLQ
-JxR4WGJ6WcFOhddxbEc79TXVWESTKiQT3QtazAwAtGwJbkJkRBO8RNt/7hYOdsU0
-FqAvkMB0Lipi1U5INchwmkAWmXpWNT3m7NHlv2ZWK/Bp9N0TePCsQvTgyZ9gxdFK
-+lYNcU3Kl2v2mhm3l7h5ATpHAgMBAAGjggFuMIIBajAfBgNVHSMEGDAWgBRTeb9a
-qitKz1SA4dibwJ3ysgNmyzAdBgNVHQ4EFgQUVjQFv0RyVj2WKdP/MXvvnUVJOakw
-DgYDVR0PAQH/BAQDAgGGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0lBBYwFAYI
-KwYBBQUHAwEGCCsGAQUFBwMCMBsGA1UdIAQUMBIwBgYEVR0gADAIBgZngQwBAgEw
-UAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2NybC51c2VydHJ1c3QuY29tL1VTRVJU
-cnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYGCCsGAQUFBwEBBGow
-aDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJUcnVz
-dFJTQUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2Vy
-dHJ1c3QuY29tMA0GCSqGSIb3DQEBDAUAA4ICAQBtk0TwGOFQ95Hphul6hSNPPiZw
-vPGtbuLlNDQQ6tqE0Z03skU3Ec/U9/MmLvHGGt7h4mSbCQ5EszHL2BbSnj6REfn0
-8M5IsyJCyhpQosgyK4h+RU6dbZZp8evQCEfNhGc52GK4rVAkw0f16dakW4fARJUe
-1khn8JprEoP/ir5mi7Qlvnk6B2IUNTdSWc7QqiUgkYlWyUypuvTsSshtgINeIXkR
-seeHucuRZVmBYC2NlGeCD8Nho4f+AH9oZr//+HmcF7C8qGSCN23u1fQWZzFpn8qu
-hoDiKlzOki20y6JT6CEroWtkmx+d4fLLChOxzh/tkI9XqWR7qysK+nv0hnOYdKl5
-qA3icUh6RSdX74VobbMy2C4iM2mt8QcMEs/PqZrosigqwZILJ1Fd+5UPudMY5eb+
-kTiMFg8uPbsLiE3Y+DylCvTEoneRr4LHrIDklFjn1cBYO25HVkCn16J0QZyiBJXU
-cnhbkaHlJuEcKK0Fzlq78qHyNVZdVcplwcHZZ02VwfrsdWELkC+r2bgrvq+43uo7
-NgMVsrokbo7Of2ih1SzfpgU6q4SpbmAGNRzeVV0aZoRVR93K9uVtdZQQYMlh5emW
-AmFlgttlgDK3vwGj7fFOcNVwD49tJG65bZy2LQZMQS7fNsG0nGpUyYKJOnUbmSg6
-InpRnOhcq7sctB+0zQ==
------END CERTIFICATE-----
\ No newline at end of file
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer
deleted file mode 100755
index ec8a906..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustCertificationAuthorityL1K.cer
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt
deleted file mode 100755
index 704c266..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustRootCertificationAuthority.crt
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMC
-VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0
-Lm5ldC9DUFMgaXMgaW5jb3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMW
-KGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsGA1UEAxMkRW50cnVzdCBSb290IENl
-cnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0MloXDTI2MTEyNzIw
-NTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMTkw
-NwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSBy
-ZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNV
-BAMTJEVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJ
-KoZIhvcNAQEBBQADggEPADCCAQoCggEBALaVtkNC+sZtKm9I35RMOVcF7sN5EUFo
-Nu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYszA9u3g3s+IIRe7bJWKKf4
-4LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOwwCj0Yzfv9
-KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGI
-rb68j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi
-94DkZfs0Nw4pgHBNrziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOB
-sDCBrTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAi
-gA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1MzQyWjAfBgNVHSMEGDAWgBRo
-kORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DHhmak8fdLQ/uE
-vW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA
-A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9t
-O1KzKtvn1ISMY/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6Zua
-AGAT/3B+XxFNSRuzFVJ7yVTav52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP
-9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTSW3iDVuycNsMm4hH2Z0kdkquM++v/
-eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0tHuu2guQOHXvgR1m
-0vdXcDazv/wor3ElhVsT/h5/WrQ8
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt
deleted file mode 100755
index c10bc62..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/EntrustRootCertificationAuthorityG2.crt
+++ /dev/null
@@ -1,29 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIE/zCCA+egAwIBAgIEUdNARDANBgkqhkiG9w0BAQsFADCBsDELMAkGA1UEBhMC
-VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0
-Lm5ldC9DUFMgaXMgaW5jb3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMW
-KGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsGA1UEAxMkRW50cnVzdCBSb290IENl
-cnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTE0MDkyMjE3MTQ1N1oXDTI0MDkyMzAx
-MzE1M1owgb4xCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMSgw
-JgYDVQQLEx9TZWUgd3d3LmVudHJ1c3QubmV0L2xlZ2FsLXRlcm1zMTkwNwYDVQQL
-EzAoYykgMjAwOSBFbnRydXN0LCBJbmMuIC0gZm9yIGF1dGhvcml6ZWQgdXNlIG9u
-bHkxMjAwBgNVBAMTKUVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0
-eSAtIEcyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuoS2ctueDGvi
-mekwAad26jK4lUEaydphTlhyz/72gnm/c2EGCqUn2LNf00VOHHLWTjLycooP94MZ
-0GqAgABFHrDH55q/ElcnHKNoLwqHvWprDl5l8xx31dSFjXAhtLMy54ui1YY5ArG4
-0kfO5MlJxDun3vtUfVe+8OhuwnmyOgtV4lCYFjITXC94VsHClLPyWuQnmp8k18bs
-0JslguPMwsRFxYyXegZrKhGfqQpuSDtv29QRGUL3jwe/9VNfnD70FyzmaaxOMkxi
-d+q36OW7NLwZi66cUee3frVTsTMi5W3PcDwa+uKbZ7aD9I2lr2JMTeBYrGQ0EgP4
-to2UYySkcQIDAQABo4IBDzCCAQswDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQI
-MAYBAf8CAQEwMwYIKwYBBQUHAQEEJzAlMCMGCCsGAQUFBzABhhdodHRwOi8vb2Nz
-cC5lbnRydXN0Lm5ldDAzBgNVHR8ELDAqMCigJqAkhiJodHRwOi8vY3JsLmVudHJ1
-c3QubmV0L3Jvb3RjYTEuY3JsMDsGA1UdIAQ0MDIwMAYEVR0gADAoMCYGCCsGAQUF
-BwIBFhpodHRwOi8vd3d3LmVudHJ1c3QubmV0L0NQUzAdBgNVHQ4EFgQUanImetAe
-733nO2lR1GyNn5ASZqswHwYDVR0jBBgwFoAUaJDkZ6SmU4DHhmak8fdLQ/uEvW0w
-DQYJKoZIhvcNAQELBQADggEBAGkzg/woem99751V68U+ep11s8zDODbZNKIoaBjq
-HmnTvefQd9q4AINOSs9v0fHBIj905PeYSZ6btp7h25h3LVY0sag82f3Azce/BQPU
-AsXx5cbaCKUTx2IjEdFhMB1ghEXveajGJpOkt800uGnFE/aRs8lFc3a2kvZ2Clvh
-A0e36SlMkTIjN0qcNdh4/R0f5IOJJICtt/nP5F2l1HHEhVtwH9s/HAHrGkUmMRTM
-Zb9n3srMM2XlQZHXN75BGpad5oqXnafOrE6aPb0BoGrZTyIAi0TVaWJ7LuvMuueS
-fWlnPfy4fN5Bh9Bp6roKGHoalUOzeXEodm2h+1dK7E3IDhA=
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt
deleted file mode 100755
index c2b2907..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/GoDaddyRootCertificateAuthorityG2.crt
+++ /dev/null
@@ -1,23 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx
-EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT
-EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp
-ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz
-NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH
-EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE
-AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw
-DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD
-E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH
-/PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy
-DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh
-GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR
-tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA
-AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE
-FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX
-WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu
-9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr
-gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo
-2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO
-LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI
-4uJEvlz36hz1
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt
deleted file mode 100755
index 885c45a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/GoDaddySecureCertificateAuthorityG2.crt
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer
deleted file mode 100755
index acc2e74..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/KPN_BV_PKIoverheid_Organisatie_Server_CA-G3_2019.cer
+++ /dev/null
@@ -1,42 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIHVTCCBT2gAwIBAgIUe3SFufBRSlUh5S05Ghqu25Ntj4wwDQYJKoZIhvcNAQEL
-BQAwajELMAkGA1UEBhMCTkwxHjAcBgNVBAoMFVN0YWF0IGRlciBOZWRlcmxhbmRl
-bjE7MDkGA1UEAwwyU3RhYXQgZGVyIE5lZGVybGFuZGVuIE9yZ2FuaXNhdGllIFNl
-cnZpY2VzIENBIC0gRzMwHhcNMTkwNDE2MDg0MDE2WhcNMjgxMTEyMDAwMDAwWjBx
-MQswCQYDVQQGEwJOTDERMA8GA1UECgwIS1BOIEIuVi4xFzAVBgNVBGEMDk5UUk5M
-LTI3MTI0NzAxMTYwNAYDVQQDDC1LUE4gQlYgUEtJb3ZlcmhlaWQgT3JnYW5pc2F0
-aWUgU2VydmVyIENBIC0gRzMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC
-AQDNZfwvQT6bhd9JwjU5SOrZd0Fe3Fmcftf2KIGrbBgIjJZKkiRximQqWZtfwyzh
-by/Pyli8HAQVsXNPKHPqrJ/iv1YtTlDntuRk+w8IaZzWo0Rf4IO5VmrnjFUGkmvS
-QcTyCN1LdNBoHI185aa3Br7lGUltBv86Q+nlymHJmMKjC0y6C0+Xpt7SuWr0nO15
-wqiBZdUlFF05XcxXbTOG9UouVhlSKU9ujnkfNSKw7N3x4gqJNQ9C0W5O2zVO2jWy
-BaK20vnbN955FQM84O2prhMFQrCi3e6lVvtTamxlnzVOiVUpH+59Rh0PeOw8OwCn
-k8GLXwkvIrxPgi3MFIpVy30q52eGHwzEkvExTHkuTm4pUSKI3N8zypfKBkfPUCnF
-k6PluFkQZYvZSVWMNbLst6DOuStKSgsWtH3lQGz3qNgyLgtWjFBS6S7+lgb06On9
-SadJ7MgLTyvaPXGOieDwEq3BhjTnioNswPjIJCKjGad6EtnFaK+kG0wzE2v+gger
-4shh72Vj7GM4305UPBCEIlvmafyCHSD8r2lMBX1bqnbp2aw9ocdDbkCTzJ+N2Dkm
-KkAp87NFRsFXgfnqgOjG50owXLNaEsXhOwI3lBOCCz8FG7u0jD44k67lU8n3LvKh
-BenixXYylak9vulc1q13uICa04NbMKegL0uW7Wb2anw1+QIDAQABo4IB6jCCAeYw
-gZkGCCsGAQUFBwEBBIGMMIGJMEYGCCsGAQUFBzAChjpodHRwOi8vY2VydC5wa2lv
-dmVyaGVpZC5ubC9Eb21PcmdhbmlzYXRpZVNlcnZpY2VzQ0EtRzMuY2VyMD8GCCsG
-AQUFBzABhjNodHRwOi8vZG9tb3JnYW5pc2F0aWVzZXJ2aWNlc29jc3AtZzMucGtp
-b3ZlcmhlaWQubmwwHQYDVR0OBBYEFMOapntedCuCtsZy/XROhdKXzf0YMBIGA1Ud
-EwEB/wQIMAYBAf8CAQAwHwYDVR0jBBgwFoAUQ+tNANOVk86mfEANbRG+OdEyruIw
-JQYIKwYBBQUHAQMEGTAXMBUGCCsGAQUFBwsCMAkGBwQAi+xJAQIwQQYDVR0gBDow
-ODA2BgpghBABh2sBAgUGMCgwJgYIKwYBBQUHAgEWGmh0dHBzOi8vY3BzLnBraW92
-ZXJoZWlkLm5sMFEGA1UdHwRKMEgwRqBEoEKGQGh0dHA6Ly9jcmwucGtpb3Zlcmhl
-aWQubmwvRG9tT3JnYW5pc2F0aWVTZXJ2aWNlc0xhdGVzdENSTC1HMy5jcmwwDgYD
-VR0PAQH/BAQDAgEGMCcGA1UdJQQgMB4GCCsGAQUFBwMCBggrBgEFBQcDCQYIKwYB
-BQUHAwEwDQYJKoZIhvcNAQELBQADggIBALuwQ/7/bwHCXqLJS1ZACMmTm2GpkvQm
-plXC3HHpRV8DTQ4u/jMhtkSLzLsf6AcLGKTGQLrYv2lGBglFxtlZWTGOirTmWFyR
-OUbSSzkbSd5H8jvt/zswWffiSPRdMMncrc+yMMjD44lDfIytwZXrKYroI4ftYt5j
-aJ8wwMTOJTk9apzFajhIgGtMybXfmgVJDr9xPP53aMOjhHmlqlQ4yNdZTlNOO9LK
-KRxw+injitKp6jqoVSCL0TBvrbKu4pw0TqtK9NfaMwWGt55lZV8ZSWZaqNX97Umm
-xHqlqjvX7z0gE7s6wzvcgYyoR1Qo+2A60tLm4A1mr2mB9+aTnupdaGsBzCdkqKIR
-JcnEEeb+cffgKt0upfAAnqXAwkxTiG0NMjJp3RBkBFItOByy8ARduxiH6w7ZFHhs
-B8W1kL9/26hbYY1RTyAe86hfb6NuibTg16blnqNF/xCjVqCiTGXop1CQLBDlx4Hp
-wIrKEDvIGGBZRIzPqDI9I2KMlJEywa7k8Rm+HaILymBz5jU9NUD2CIBCCp94RqBr
-4XFcJnXvSIjfS0+2tIzljXImImIxxZkYLNiWElB6ytiHi0fKBvQ+cgDAOmbfLvhE
-Nankk8qgo22on1buVddUW7vYjA0qiXIQYr0N5mrJqbLGdrSCVceMgVOVSI/b1a31
-cVXLiGvOxK8W
------END CERTIFICATE-----
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt
deleted file mode 100755
index d189e90..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatDerNederlandenEVRootCA.crt
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer
deleted file mode 100755
index 6e4ed7a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatderNederlandenOrganisatieServicesCA-G3.cer
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer
deleted file mode 100755
index c4cc8bb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/cacerts/tls/StaatderNederlandenRootCA-G3.cer
+++ /dev/null
Binary files differ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/02.txt
deleted file mode 100755
index 478c6fc..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/02.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-20201,GR COSMOTE,C-OTE
-20205,vodafone GR,voda GR
-20209,WIND GR,WIND
-20210,WIND GR,WIND
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/04.txt
deleted file mode 100755
index 19fca28..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/04.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-20404,vodafone NL,voda NL
-20408,NL KPN,NL KPN
-20412,NL Telfort,NL Tlfrt
-20416,T-Mobile NL,TMO NL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/06.txt
deleted file mode 100755
index a08a6ef..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/06.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-20601,Proximus,Proximus
-20610,Orange B,OBE
-20620,BASE,BASE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/08.txt
deleted file mode 100755
index 29226f7..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/08.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-20801,Orange F,Orange
-20802,F-Contact,Contact
-20809,F SFR,SFR
-20810,F SFR,SFR
-20811,SFR FEMTO,SFRFEMTO
-20813,F - Contact,Contact
-20815,Free,Free
-20816,Free,Free
-20820,F-Bouygues Telecom,BYTEL
-20888,F - Contact,Contact
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/12.txt
deleted file mode 100755
index c47e8f3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/12.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-21201,vala,vala
-21210,Monaco,MONACO
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/13.txt
deleted file mode 100755
index b146876..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/13.txt
+++ /dev/null
@@ -1 +0,0 @@
-21303,AndorraTelecom,AndorraT
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/14.txt
deleted file mode 100755
index 9821536..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/14.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-21401,vodafone ES,voda ES
-21403,Orange SP,ESPRT
-21404,YOIGO,YOIGO
-21407,Movistar,Movistar
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/16.txt
deleted file mode 100755
index f0051da..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/16.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-21601,Telenor HU,TelenorH
-21603,Digi.Mobil HU,Digi HU
-21630,Telekom HU,THU
-21670,vodafone HU,voda HU
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/18.txt
deleted file mode 100755
index 49fa4ad..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/18.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-21803,HT ERONET,HTERONET
-21805,m:tel,m:tel
-21890,BH Mobile,BHMOBILE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/19.txt
deleted file mode 100755
index be13258..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/19.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-21901,HT HR,HT HR
-21902,Tele2 HR,Tele2 HR
-21910,A1 HR,A1 HR
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/20.txt
deleted file mode 100755
index 52463ae..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/20.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-22001,Telenor SRB,Telenor
-22003,mt:s,MTS
-22005,Vip SRB,Vip SRB
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/21.txt
deleted file mode 100755
index 83526aa..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/21.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-22101,vala,vala
-22102,IPKO,IPKO
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/22.txt
deleted file mode 100755
index 1cc9d0c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/22.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-22201,I TIM,TIM
-22210,vodafone IT,voda IT
-22250,ILIAD,ILIAD
-22288,WINDTRE,WINDTRE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/26.txt
deleted file mode 100755
index 252b25a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/26.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-22601,RO Vodafone RO,VF-RO
-22603,TELEKOM.RO,TELEKOM
-22605,RO Digi.Mobil,Digi
-22610,RO ORANGE,ORANGE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/28.txt
deleted file mode 100755
index 047dbf2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/28.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-22801,Swisscom,Swisscom
-22802,Sunrise,Sunrise
-22803,Salt,Salt
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/30.txt
deleted file mode 100755
index b0ee80e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/30.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-23001,T-Mobile CZ,TMO CZ
-23002,O2 - CZ,O2 - CZ
-23003,Vodafone CZ,Vodafone
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/31.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/31.txt
deleted file mode 100755
index 09b47c4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/31.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-23101,Orange SK,Orange
-23102,Telekom SK,Telekom
-23103,SWAN SK,SWAN SK
-23106,O2 - SK,O2 - SK
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/32.txt
deleted file mode 100755
index 390c117..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/32.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-23201,A1,A1
-23203,Magenta-T-,MagentaT
-23205,3 AT,3 AT
-23207,telering,telering
-23210,3 AT,3 AT
-23213,Magenta-T-,MagentaT
-23217,spusu,spusu
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/34.txt
deleted file mode 100755
index 9b3626e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/34.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-23403,Airtel-Vodafone,ATL-VOD
-23410,O2 - UK,O2 - UK
-23415,vodafone UK,voda UK
-23420,3 UK,3 UK
-23428,Marathon,Marathon
-23430,EE,EE
-23433,EE,EE
-23450,JT,JT
-23455,Sure,Sure
-23458,Manx Telecom,MANX
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/38.txt
deleted file mode 100755
index b035c42..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/38.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-23801,TDC,TDC
-23802,Telenor DK,TelenoDK
-23806,3 DK,3 DK
-23820,Telia DK,Telia
-23866,Telia-Telenor DK,TT DK
-23877,Telenor DK,TelenoDK
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/40.txt
deleted file mode 100755
index 8feaf6b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/40.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-24001,TELIA S,TELIA
-24002,3 SE,3 SE
-24004,SWEDEN,SWE
-24005,Sweden,Sweden3G
-24007,Tele2,Tele2 SE
-24008,Telenor SE,TelenorS
-24024,Sweden Mobile,MobileS
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/42.txt
deleted file mode 100755
index f3b2294..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/42.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-24201,N Telenor,TELENOR
-24202,N NetCom,NetCom
-24214,N ice,ice
-24299,Tampnet,Tampnet
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/44.txt
deleted file mode 100755
index 915ecb3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/44.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-24403,FI DNA,DNA
-24405,FI elisa,elisa
-24412,FI DNA,DNA
-24414,FI AMT,FI AMT
-24421,FI elisa,elisa
-24436,DNA - Telia FI,SuomenYV
-24491,Telia FI,Telia
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/46.txt
deleted file mode 100755
index dbd952a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/46.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-24601,Telia LT,Telia
-24602,LT BITE GSM,BITE
-24603,Tele2 LT,Tele2 LT
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/47.txt
deleted file mode 100755
index a23e73e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/47.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-24701,LV LMT,LMT
-24702,Tele2 LV,Tele2 LV
-24705,BITE LV,BITE LV
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/48.txt
deleted file mode 100755
index 8320fb5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/48.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-24801,Telia,Telia
-24802,Elisa EE,ELISA
-24803,Tele2 EE,Tele2 EE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/50.txt
deleted file mode 100755
index e52137e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/50.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-25001,MTS RUS,MTS RUS
-25002,MegaFon RUS,MegaFon
-25020,Tele2 RU,Tele2
-25027,LETAI,LETAI
-25028,voda,voda
-25035,MOTIV,MOTIV
-25099,Beeline,Beeline
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/55.txt
deleted file mode 100755
index ca0ad44..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/55.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-25501,VODAFONE,VODAFONE
-25502,Beeline UA,Beeline
-25503,UA-KYIVSTAR,UA-KS
-25506,life:),life:)
-25507,TriMob,TriMob
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/57.txt
deleted file mode 100755
index 52892ec..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/57.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-25701,BY VELCOM,VELCOM
-25702,MTS BY,MTS BY
-25704,life:) BY,life:)BY
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/59.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/59.txt
deleted file mode 100755
index afab60d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/59.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-25901,Orange MD,Orange
-25902,Moldcell,Moldcell
-25905,UNITE,UNITE
-25915,IDC,IDC
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/60.txt
deleted file mode 100755
index 8f265b2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/60.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-26001,Plus,PLUS
-26002,T-Mobile.pl,TM PL
-26003,Orange PL,Orange
-26006,Play,Play
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/62.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/62.txt
deleted file mode 100755
index 4aba278..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/62.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-26201,Telekom.de,TDG
-26202,Vodafone.de,Vodafone
-26203,o2 - de,o2 - de
-26207,o2 - de,o2 - de
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/66.txt
deleted file mode 100755
index 6e6f0eb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/66.txt
+++ /dev/null
@@ -1 +0,0 @@
-26601,GIBTEL,GIBTEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/68.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/68.txt
deleted file mode 100755
index 2a9c73b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/68.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-26801,vodafone P,voda P
-26803,NOS,NOS
-26806,MEO,MEO
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/70.txt
deleted file mode 100755
index 9c4810f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/70.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-27001,POST,POST
-27077,L TANGO,TANGO
-27099,L Orange-LU,Orange
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/72.txt
deleted file mode 100755
index 88e1f35..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/72.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-27201,vodafone IE,voda IE
-27202,3,3
-27203,IRL - METEOR,METEOR
-27205,3,3
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/74.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/74.txt
deleted file mode 100755
index 68957aa..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/74.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-27401,IS SIMINN,SIMINN
-27402,Vodafone,Vodafone
-27404,Viking,Viking
-27408,IS OnWaves,OnWaves
-27411,NOVA IS,NOVA
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/76.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/76.txt
deleted file mode 100755
index a938e7d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/76.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-27601,Telekom.al,T.al
-27602,Voda AL,Voda AL
-27603,ALBtelecom,ATmobile
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/78.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/78.txt
deleted file mode 100755
index dba0e13..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/78.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-27801,vodafone MT,voda MT
-27821,go mobile,gomobile
-27877,Melita Mobile,Melita
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/80.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/80.txt
deleted file mode 100755
index 1baa11c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/80.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-28001,Cyta-Voda,CytaVoda
-28010,epic,epic
-28020,PrimeTel PLC,PrimeTel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/82.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/82.txt
deleted file mode 100755
index 476cc52..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/82.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-28201,GEO-GEOCELL,GCELL
-28202,MAGTI-GSM-GEO,MAGTI
-28204,BEELINE,BEE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/83.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/83.txt
deleted file mode 100755
index 2e683f8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/83.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-28301,Beeline AM,Beeline
-28305,MTS ARM,MTS Arm
-28310,Ucom AM,Ucom
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/84.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/84.txt
deleted file mode 100755
index 8ee4670..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/84.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-28401,A1 BG,A1 BG
-28403,Vivacom BG,Vivacom
-28405,Telenor BG,Telenor
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/86.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/86.txt
deleted file mode 100755
index 3a6f717..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/86.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-28601,TR TURKCELL,TCELL
-28602,Vodafone Turkiye,VF-TR
-28603,AVEA,AVEA
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/88.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/88.txt
deleted file mode 100755
index a8ab8f5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/88.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-28801,Foroya Tele,FT-GSM
-28802,VODAFONE FO,VODAFONE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/90.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/90.txt
deleted file mode 100755
index 41ee5e2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/90.txt
+++ /dev/null
@@ -1 +0,0 @@
-29001,TELE Greenland,TELE GRL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/93.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/93.txt
deleted file mode 100755
index 9818653..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/93.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-29340,A1 SI,A1 SI
-29341,MOBITEL,MOBITEL
-29364,T-2,T-2
-29370,TELEMACH,TELEMACH
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/94.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/94.txt
deleted file mode 100755
index 79c471a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/94.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-29401,Telekom MK,MKT MK
-29403,A1 MK,A1 MK
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/95.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/95.txt
deleted file mode 100755
index f1f95ee..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/95.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-29501,SwisscomFL,Swiss FL
-29502,Salt.li,Salt.li
-29505,FL1,FL1
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/97.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/97.txt
deleted file mode 100755
index 88065ef..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/2/97.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-29701,Telenor,Telenor
-29702,Telekom.me,T.me
-29703,MTEL,MTEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/02.txt
deleted file mode 100755
index ddaf8ba..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/02.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-302130,Xplore,Xplore
-302220,TELUS,TELUS
-302270,Eastlink,Eastlink
-302340,Execulink Telecom,ETI
-302370,Fido,Fido
-302380,KNET,KNET
-302480,SSi,SSi
-302490,Freedom,Freedom
-302500,Videotron,CANVT
-302520,Videotron,CANVT
-302610,Bell,Bell
-302620,Ice Wireless Inc,Ice
-302720,Rogers Wireless,ROGERS
-302780,SaskTel,SaskTel
-302880,FastRoam,FastRoam
-302940,Wightman,Wightman
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/08.txt
deleted file mode 100755
index 5542952..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/08.txt
+++ /dev/null
@@ -1 +0,0 @@
-30801,SPM AMERIS,AMERIS
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/10.txt
deleted file mode 100755
index a06694b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/10.txt
+++ /dev/null
@@ -1,44 +0,0 @@
-310020,US - Union Telephone,UnionTel
-310030,AT&T,AT&T
-310032,IT&E,IT&E
-310050,GCI,GCI
-310110,IT&E,IT&E
-310120,Sprint,Sprint
-310140,GTA,GTA
-310150,AT&T,AT&T
-310160,T-Mobile,T-Mobile
-310170,AT&T,AT&T
-310180,West Central Wireless,WCW
-310190,USA Dutch Harbor,D-HARBOR
-310200,T-Mobile,T-Mobile
-310210,T-Mobile,T-Mobile
-310220,T-Mobile,T-Mobile
-310230,T-Mobile,T-Mobile
-310240,T-Mobile,T-Mobile
-310250,T-Mobile,T-Mobile
-310260,T-Mobile,T-Mobile
-310270,T-Mobile,T-Mobile
-310280,AT&T,AT&T
-310300,BigSkyUS,Big Sky
-310310,T-Mobile,T-Mobile
-310320,USA - CellularOne,Cell
-310340,Limitless Mobile,LMUSA
-310370,DOCOMO PACIFIC,DPAC
-310380,AT&T,AT&T
-310410,AT&T,AT&T
-310450,Cell One of NE Colorado,NECCI
-310460,USA1L,USA1L
-310470,DOCOMO PACIFIC,DPAC
-310490,T-Mobile,T-Mobile
-310530,Iowa Wireless USA,IWS
-310570,Cell One,Cell One
-31058,Inland Cellular,IC
-310630,USA AmeriLink,AMERLINK
-310660,T-Mobile,T-Mobile
-310690,Limitless Mobile,LMUSA
-310730,U.S.Cellular,USCC
-310740,USA OTZ,OTZ
-310770,Iowa Wireless USA,IWS
-310800,T-Mobile,T-Mobile
-310840,telna Mobile,telna
-310990,Worldcall,Evolve
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/11.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/11.txt
deleted file mode 100755
index bfb8b4b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/11.txt
+++ /dev/null
@@ -1,19 +0,0 @@
-311030,Indigo,Indigo
-311040,USA - Commnet,Commnet
-311080,Pine Cellular,PINECell
-311170,Tampnet,Tampnet
-311190,USAC1ECI,C1ECI
-311230,C Spire,C Spire
-311240,USACWCI,CWCI
-311270,Verizon,Verizon
-311370,GCI,GCI
-311480,Verizon,Verizon
-311530,USANW,USANW
-311580,U.S.Cellular,USCC
-311600,Limitless Mobile,LMUSA
-311630,C Spire,C Spire
-311660,Metro PCS,MPCS
-311710,Northeast Wireless,NEWN
-311740,TCI,TCI
-311810,Bluegrass Wireless,BW
-311990,VTW US,VTW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/12.txt
deleted file mode 100755
index 214f2b7..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/12.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-312180,Limitless Mobile,LMUSA
-312260,USACL,USACL
-312280,Pioneer,CNP
-312290,Strata Networks USA,Strata
-312420,Nex-Tech Wireless USA,NTW
-312480,Nemont,Nemont
-312630,NetGenuity,NetGenui
-312720,Southern Linc,SLINC
-312870,GigSky,GigSky
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/13.txt
deleted file mode 100755
index 769b9a5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/13.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-313070,MNSHub,MNSHub
-313380,OptimERA,OptimERA
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/30.txt
deleted file mode 100755
index fdbf906..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/30.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-330110,PR Claro,Claro
-330120,Open Mob PRI,Open Mob
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/34.txt
deleted file mode 100755
index e888050..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/34.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-334020,TELCEL,TELCEL
-33403,Movistar,TEMM
-334050,AT&T,AT&T
-334070,AT&T,AT&T
-33490,AT&T,AT&T
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/38.txt
deleted file mode 100755
index bb0542b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/38.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-338050,Digicel,Digicel
-338180,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/40.txt
deleted file mode 100755
index 63b1daf..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/40.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-34001,F-Orange,Orange
-34002,SFR,SFR
-34020,Digicel,DigicelF
-34009,Free,Free
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/42.txt
deleted file mode 100755
index 90f2968..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/42.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-342600,FLOW,FLOW
-342750,DIGICEL,DIGICEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/44.txt
deleted file mode 100755
index db60c94..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/44.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-34403,APUA inet,inet
-344920,FLOW,FLOW
-344930,Cingular,Cingular
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/46.txt
deleted file mode 100755
index 8c42cec..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/46.txt
+++ /dev/null
@@ -1 +0,0 @@
-346140,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/48.txt
deleted file mode 100755
index 2fcc6e8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/48.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-348170,FLOW,FLOW
-348570,CCT Boatphone,CCTBVI
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/50.txt
deleted file mode 100755
index ad6bd8e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/50.txt
+++ /dev/null
@@ -1 +0,0 @@
-350000,CELLONE,CELLONE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/52.txt
deleted file mode 100755
index 3c99a85..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/52.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-352030,DIGICEL,DIGICEL
-352110,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/54.txt
deleted file mode 100755
index 95b7e85..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/54.txt
+++ /dev/null
@@ -1 +0,0 @@
-354860,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/56.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/56.txt
deleted file mode 100755
index ad0f132..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/56.txt
+++ /dev/null
@@ -1 +0,0 @@
-356110,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/58.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/58.txt
deleted file mode 100755
index b269923..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/58.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-358050,DIGICEL,DIGICEL
-358110,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/60.txt
deleted file mode 100755
index 554c0df..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/60.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-360070,DIGICEL,DIGICEL
-360110,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/62.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/62.txt
deleted file mode 100755
index 3f2494a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/62.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-36251,Telcell GSM,Telcell
-36269,Digicel,Digicel
-36278,Kla,Kla
-36291,CHIPPIE,CHIPPIE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/63.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/63.txt
deleted file mode 100755
index 08ac8bc..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/63.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-36301,SETAR,SETAR
-36302,AW Digicel,Digicel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/64.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/64.txt
deleted file mode 100755
index 9aa8a4e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/64.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-36439,BTC,BTC
-36449,aliv,aliv
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/65.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/65.txt
deleted file mode 100755
index 850bba9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/65.txt
+++ /dev/null
@@ -1 +0,0 @@
-365840,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/66.txt
deleted file mode 100755
index 6b1e078..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/66.txt
+++ /dev/null
@@ -1 +0,0 @@
-366110,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/68.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/68.txt
deleted file mode 100755
index bdad90c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/68.txt
+++ /dev/null
@@ -1 +0,0 @@
-36801,CUBACEL,CUBACEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/70.txt
deleted file mode 100755
index 91e84f8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/70.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-37001,ALTICE,ALTICE
-37002,CLARO DOM,ClaroDOM
-37004,Viva DO,Viva
-37005,Wind Telecom DO,Wind
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/72.txt
deleted file mode 100755
index 9fb7391..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/72.txt
+++ /dev/null
@@ -1 +0,0 @@
-37203,Natcom,Natcom
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/74.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/74.txt
deleted file mode 100755
index 630a815..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/74.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-37412,TSTT,TSTT
-374130,Digicel,Digicel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/76.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/76.txt
deleted file mode 100755
index 25e6025..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/3/76.txt
+++ /dev/null
@@ -1 +0,0 @@
-376350,FLOW,FLOW
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/00.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/00.txt
deleted file mode 100755
index e7c9c62..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/00.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-40001,AZEAC,Azercell
-40002,BAKCELL AZ,BAKCELL
-40004,AZ Nar,Nar
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/01.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/01.txt
deleted file mode 100755
index 4b401fa..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/01.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-40101,Beeline KZ,Beeline
-40102,Kcell,Kcell
-40107,ALTEL,ALTEL
-40177,Tele2,Tele2
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/02.txt
deleted file mode 100755
index 1bfdd3d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/02.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-40211,BT B-Mobile,B-Mobile
-40277,TASHICELL,TASHICEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/04.txt
deleted file mode 100755
index 945195f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/04.txt
+++ /dev/null
@@ -1,54 +0,0 @@
-40402,IND airtel,airtel
-40403,IND airtel,airtel
-40404,IDEA,IDEA
-40407,IDEA,IDEA
-40410,IND airtel,airtel
-40412,IDEA,IDEA
-40414,IDEA,IDEA
-40416,IND airtel,airtel
-40419,IDEA,IDEA
-40422,IDEA,IDEA
-40424,IDEA,IDEA
-40431,IND airtel,airtel
-40434,CellOne,CellOne
-40438,CellOne,CellOne
-40440,IND airtel,airtel
-40444,IDEA,IDEA
-40445,IND airtel,airtel
-40449,IND airtel,airtel
-40451,CellOne,CellOne
-40453,CellOne,CellOne
-40454,CellOne,CellOne
-40455,CellOne,CellOne
-40456,IDEA,IDEA
-40457,CellOne,CellOne
-40458,CellOne,CellOne
-40459,CellOne,CellOne
-40462,CellOne,CellOne
-40464,CellOne,CellOne
-40466,CellOne,CellOne
-40468,IN-DOLPHIN,DOLPHIN
-40469,IN-DOLPHIN,DOLPHIN
-40470,IND airtel,airtel
-40471,CellOne,CellOne
-40472,CellOne,CellOne
-40473,CellOne,CellOne
-40474,CellOne,CellOne
-40475,CellOne,CellOne
-40476,CellOne,CellOne
-40477,CellOne,CellOne
-40478,IDEA,IDEA
-40479,CellOne,CellOne
-40480,CellOne,CellOne
-40481,CellOne,CellOne
-40482,IDEA,IDEA
-40487,IDEA,IDEA
-40489,IDEA,IDEA
-40490,IND airtel,airtel
-40492,IND airtel,airtel
-40493,IND airtel,airtel
-40494,IND airtel,airtel
-40495,IND airtel,airtel
-40496,IND airtel,airtel
-40497,IND airtel,airtel
-40498,IND airtel,airtel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/05.txt
deleted file mode 100755
index 533bbc7..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/05.txt
+++ /dev/null
@@ -1,56 +0,0 @@
-40551,IND airtel,airtel
-40552,IND airtel,airtel
-40553,IND airtel,airtel
-40554,IND airtel,airtel
-40555,IND airtel,airtel
-40556,IND airtel,airtel
-40570,IDEA,IDEA
-405799,IDEA,IDEA
-405823,VIDEOCON,VIDEOCON
-405824,VIDEOCON,VIDEOCON
-405825,VIDEOCON,VIDEOCON
-405827,VIDEOCON,VIDEOCON
-405828,VIDEOCON,VIDEOCON
-405829,VIDEOCON,VIDEOCON
-405830,VIDEOCON,VIDEOCON
-405831,VIDEOCON,VIDEOCON
-405832,VIDEOCON,VIDEOCON
-405833,VIDEOCON,VIDEOCON
-405834,VIDEOCON,VIDEOCON
-405835,VIDEOCON,VIDEOCON
-405836,VIDEOCON,VIDEOCON
-405837,VIDEOCON,VIDEOCON
-405838,VIDEOCON,VIDEOCON
-405839,VIDEOCON,VIDEOCON
-405840,IND-JIO,JIO
-405841,VIDEOCON,VIDEOCON
-405842,VIDEOCON,VIDEOCON
-405843,VIDEOCON,VIDEOCON
-405845,IDEA,IDEA
-405846,IDEA,IDEA
-405848,IDEA,IDEA
-405849,IDEA,IDEA
-405850,IDEA,IDEA
-405852,IDEA,IDEA
-405853,IDEA,IDEA
-405854,IND-JIO,JIO
-405855,IND-JIO,JIO
-405856,IND-JIO,JIO
-405857,IND-JIO,JIO
-405858,IND-JIO,JIO
-405859,IND-JIO,JIO
-405860,IND-JIO,JIO
-405861,IND-JIO,JIO
-405862,IND-JIO,JIO
-405863,IND-JIO,JIO
-405864,IND-JIO,JIO
-405865,IND-JIO,JIO
-405866,IND-JIO,JIO
-405867,IND-JIO,JIO
-405868,IND-JIO,JIO
-405869,IND-JIO,JIO
-405870,IND-JIO,JIO
-405871,IND-JIO,JIO
-405872,IND-JIO,JIO
-405873,IND-JIO,JIO
-405874,IND-JIO,JIO
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/10.txt
deleted file mode 100755
index a4c94d7..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/10.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-41001,Jazz,Jazz
-41003,PK-UFONE,UFONE
-41004,ZONG,ZONG
-41005,SCOM-PK,SCOM
-41006,Telenor PK,TELENOR
-41007,Jazz,Jazz
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/12.txt
deleted file mode 100755
index b450dc3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/12.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-41201,AF AWCC,AWCC
-41220,ROSHAN,ROSHAN
-41240,MTN AF,MTN
-41250,Etisalat Af,Etisalat
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/13.txt
deleted file mode 100755
index 5d298d3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/13.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-41301,Mobitel LK,Mobitel
-41302,DIALOG,DIALOG
-41303,SRI Etisalat,Etisalat
-41305,SRI AIRTEL,Airtel
-41308,Hutch,Hutch
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/14.txt
deleted file mode 100755
index bbe363d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/14.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-41401,MM 900,MPTGSM
-41405,Ooredoo,Ooredoo
-41406,Telenor,TNM
-41409,MYTEL,MYTEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/15.txt
deleted file mode 100755
index 77898a1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/15.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-41501,alfa,alfa
-41503,touch,touch
-41505,LBN OGERO Mobile,OM
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/16.txt
deleted file mode 100755
index 1e276ff..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/16.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-41601,Zain JO,Zain JO
-41603,UMNIAH,UMNIAH
-41677,Orange JO,OrangeJO
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/17.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/17.txt
deleted file mode 100755
index 2b5d1a7..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/17.txt
+++ /dev/null
@@ -1 +0,0 @@
-41702,MTN,MTN
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/18.txt
deleted file mode 100755
index 9801c5b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/18.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-41805,ASIACELL,ASIACELL
-41820,zain IQ,zain IQ
-41830,IRAQNA,IRAQNA
-41840,KOREK,KOREK
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/19.txt
deleted file mode 100755
index 0521a5a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/19.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-41902,Zain KW,zain KW
-41903,Ooredoo,Ooredoo
-41904,stc Kuwait,,stc
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/20.txt
deleted file mode 100755
index 20b6ccc..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/20.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-42001,stc,stc
-42003,Mobily-KSA,Mobily
-42004,Zain KSA,Zain KSA
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/21.txt
deleted file mode 100755
index 8afb91b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/21.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-42101,SabaFon,SABAFON
-42102,MTN,MTN
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/22.txt
deleted file mode 100755
index 614ece2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/22.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-42202,Omantel,Omantel
-42203,Ooredoo Oman,Ooredoo
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/24.txt
deleted file mode 100755
index feaea24..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/24.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-42402,ETISALAT,ETISALAT
-42403,du,du
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/25.txt
deleted file mode 100755
index 0043545..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/25.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-42501,Partner IL,Partner
-42502,Cellcom IL,Cellcom
-42503,IL Pelephone,PCL
-42505,JAWWAL-PALESTINE,JAWWAL
-42506,Ooredoo Palestine,Ooredoo
-42507,Hot Mobile Ltd.,HOT IL
-42508,Golan IL,Golan T
-42528,Hot Mobile Ltd.,Israel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/26.txt
deleted file mode 100755
index c840b1f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/26.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-42601,BATELCO,BATELCO
-42602,Zain BH,Zain BH
-42604,stc,stc
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/27.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/27.txt
deleted file mode 100755
index 526d726..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/27.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-42701,Ooredoo,Ooredoo
-42702,vodafone,VF-QA
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/28.txt
deleted file mode 100755
index 386c888..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/28.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-42801,Skytel MN,Skytel
-42888,MONGOLIA UNITEL LLC,UNTLMN
-42899,MN MobiCom,MobiCom
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/29.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/29.txt
deleted file mode 100755
index a4648de..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/29.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-42901,Nepal Telecom,NT
-42902,Ncell,Ncell
-42904,SmartCell,ST
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/34.txt
deleted file mode 100755
index 4fa9e34..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/34.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-43404,Beeline UZ,Beeline
-43405,UZB Ucell,Ucell
-43407,UMS-UZB,UMS
-43408,UzMobile,UzMobile
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/36.txt
deleted file mode 100755
index b043a67..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/36.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-43601,TCELL,TCELL
-43602,TCELL,TCELL
-43603,MegaFon TJK,MegaFon
-43604,Babilon-M,Babilon
-43605,ZET-MOBILE,Z-MOBILE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/37.txt
deleted file mode 100755
index eb3c927..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/37.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-43701,Beeline KG,Beeline
-43705,MegaCom,MegaCom
-43709,O!,O!
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/38.txt
deleted file mode 100755
index ed855f9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/38.txt
+++ /dev/null
@@ -1 +0,0 @@
-43802,TM CELL,TM CELL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/40.txt
deleted file mode 100755
index a3b2025..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/40.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-44010,JP DOCOMO,DOCOMO
-44020,SoftBank,SoftBank
-44050,KDDI,KDDI
-44051,KDDI,KDDI
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/50.txt
deleted file mode 100755
index a4baa2c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/50.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-45005,KOR SK Telecom,SKT
-45006,KOR LG Uplus,LG U+
-45008,KT,KT
-45010,KOR LG Uplus,LG U+
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/52.txt
deleted file mode 100755
index 9132dfc..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/52.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-45201,VN Mobifone,Mobifone
-45202,VN VINAPHONE,GPC
-45204,VIETTEL,VIETTEL
-45205,Vietnamobile,VNMOBILE
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/54.txt
deleted file mode 100755
index 386f1f8..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/54.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-45400,CSL,CSL
-45402,CSL,CSL
-45403,3,3
-45404,3,3
-45406,SmarTone HK,SMC HK
-45410,CSL,CSL
-45412,China Mobile HK,CMHK
-45413,China Mobile HK,CMHK
-45415,SmarTone HK,SMC HK
-45416,CSL,CSL
-45417,SmarTone HK,SMC HK
-45418,CSL,CSL
-45419,CSL,CSL
-45420,CSL,CSL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/55.txt
deleted file mode 100755
index 1c588ae..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/55.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-45500,SmarTone MAC,SMC MAC
-45501,CTM,CTM
-45503,3 Macau,3 Macau
-45504,CTM,CTM
-45505,3 Macau,3 Macau
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/56.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/56.txt
deleted file mode 100755
index c22ec9b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/56.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-45601,Cellcard,Cellcard
-45602,Smart,Smart
-45604,qb,qb
-45605,Smart,Smart
-45606,Smart,Smart
-45608,Metfone,Metfone
-45611,KH SEATEL,SEATEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/57.txt
deleted file mode 100755
index cda0dc4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/57.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-45701,LAO GSM,LAO GSM
-45702,ETL MOBILE NETWORK,ETLMNW
-45703,Unitel,UNITEL
-45708,TPLUS,TPLUS
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/60.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/60.txt
deleted file mode 100755
index f902ee3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/60.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-46000,CHINA MOBILE,CMCC
-46001,CHN-UNICOM,UNICOM
-46002,CHINA MOBILE,CMCC
-46003,CHN-CT,CT
-46004,CHINA MOBILE,CMCC
-46007,CHINA MOBILE,CMCC
-46008,CHINA MOBILE,CMCC
-46009,CHN-UNICOM,UNICOM
-46011,CHN-CT,CT
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/66.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/66.txt
deleted file mode 100755
index 10ec1c1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/66.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-46601,Far EasTone,FET
-46605,TWN APT,APT
-46612,TWN APT,APT
-46688,KGT-Online,KGT
-46689,T Star,T Star
-46692,Chunghwa Telecom,Chunghwa
-46693,TWN MOBITAI,TW MOB
-46697,TW Mobile,TWM
-46699,TWM TransAsi,TWM TAT
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/70.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/70.txt
deleted file mode 100755
index e21c89b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/70.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-470001,Grameenphone,Grameen
-47002,robi axiata,robi
-47003,Banglalink,BL
-47004,BGD bMobile,bMobile
-47007,Airtel,Airtel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/72.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/72.txt
deleted file mode 100755
index f7d2782..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/4/72.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-47201,DHIRAAGU,DHIRAAGU
-47202,Ooredoo Maldives PVT LTD,Ooredoo
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/02.txt
deleted file mode 100755
index 34de30b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/02.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-50212,MY MAXIS,MY MAXIS
-50213,MY CELCOM,CELCOM
-502152,Yes,Yes 4G
-502153,unifi,unifi
-502156,MYSALTEL,ALTEL
-50218,U MOBILE,U MOBILE
-50219,MY CELCOM,CELCOM
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/05.txt
deleted file mode 100755
index 01aad9f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/05.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-50501,Telstra Mobile,Telstra
-50502,Optus AU,Optus
-50503,vodafone AU,voda AU
-50510,Norfolk Telecom,NT
-50550,Pivotel,Pivotel
-50571,Telstra Mobile,Telstra
-50572,Telstra Mobile,Telstra
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/10.txt
deleted file mode 100755
index 0d9d4cf..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/10.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-51001,IND INDOSAT,INDOSAT
-51008,IND XL,Axis
-51009,Smartfren,SF
-51010,IND TELKOMSEL,T-SEL
-51011,IND XL,XL
-51021,IND INDOSAT,INDOSAT
-51028,Smartfren,SF
-51089,3,3
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/14.txt
deleted file mode 100755
index f7f47bb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/14.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-51401,TLS-TC,TCEL
-51402,TLS-TT,TT
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/15.txt
deleted file mode 100755
index fa1c0f5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/15.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-51502,Globe Telecom-PH,GLOBE
-51503,SMART,SMART
-51505,PH Sun Cellular,SUN
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/20.txt
deleted file mode 100755
index b2072a5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/20.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-52000,TH,TH 3G+
-52001,AIS,AIS
-52003,AIS,AIS
-52004,TRUE-H,TRUE-H
-52005,dtac TriNet,dtac
-52015,TOT Mobile,TOT
-52047,TOT Mobile,TOT
-52099,TRUE-H,TRUE-H
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/25.txt
deleted file mode 100755
index 0880cdb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/25.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-52501,Singtel,Singtel
-52502,Singtel,Singtel
-52503,SGP-M1,M1
-52505,StarHub,StarHub
-52507,SGP Call Zone,CallZone
-52508,StarHub,StarHub
-52510,TPG SG,TPG SG
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/28.txt
deleted file mode 100755
index 3a471fd..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/28.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-52802,PCSB,PCSB
-52811,BRU-DSTCom,DSTCom
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/30.txt
deleted file mode 100755
index f9d0a24..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/30.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-53001,vodafone NZ,voda NZ
-53005,Spark NZ,Spark NZ
-53024,2degrees,2degrees
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/36.txt
deleted file mode 100755
index 3529d58..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/36.txt
+++ /dev/null
@@ -1 +0,0 @@
-53601,PacCell,PacCell
\ No newline at end of file
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/37.txt
deleted file mode 100755
index b601397..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/37.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-53701,bmobile,bmobile
-53703,DIGICEL,DIGICEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/39.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/39.txt
deleted file mode 100755
index 91fbf47..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/39.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-53901,U-CALL,U-CALL
-53988,Digicel Tonga,Digicel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/40.txt
deleted file mode 100755
index 9361772..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/40.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-54001,Our Telekom,Telekom
-54002,bmobile,bmobile
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/41.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/41.txt
deleted file mode 100755
index 274331e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/41.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-54101,VUT SMILE,SMILE
-54105,Digicel,Digicel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/42.txt
deleted file mode 100755
index 1e5e48f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/42.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-54201,FJ VODAFONE,VODAFONE
-54202,DIGICEL,DIGICEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/43.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/43.txt
deleted file mode 100755
index ae9e9dc..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/43.txt
+++ /dev/null
@@ -1 +0,0 @@
-54301,Manuia,Manuia
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/44.txt
deleted file mode 100755
index 191a5ed..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/44.txt
+++ /dev/null
@@ -1 +0,0 @@
-544110,Bluesky Communications,BLUESKY
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/46.txt
deleted file mode 100755
index 8b486e3..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/46.txt
+++ /dev/null
@@ -1 +0,0 @@
-54601,NCL MOBILIS,MOBNCL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/47.txt
deleted file mode 100755
index 144bc90..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/47.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-54705,VITI,VITI
-54715,VODAFONE PF,VODAFONE
-54720,F-VINI,VINI
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/48.txt
deleted file mode 100755
index c71de07..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/48.txt
+++ /dev/null
@@ -1 +0,0 @@
-54801,CK KOKANET,KOKANET
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/49.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/49.txt
deleted file mode 100755
index 2d86026..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/49.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-54900,DIGICEL,DIGICEL
-54927,Bluesky,Bluesky
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/50.txt
deleted file mode 100755
index 4445d26..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/50.txt
+++ /dev/null
@@ -1 +0,0 @@
-55001,FSM Telecom,FSM Tele
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/52.txt
deleted file mode 100755
index 3b6cdcd..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/52.txt
+++ /dev/null
@@ -1 +0,0 @@
-55201,PalauCel,PalauCel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/54.txt
deleted file mode 100755
index f46f28e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/5/54.txt
+++ /dev/null
@@ -1 +0,0 @@
-55401,Teletok,TTOK
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/02.txt
deleted file mode 100755
index 0fe1538..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/02.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-60201,Orange EG,Orange
-60202,vodafone EG,voda EG
-60203,Etisalat,Etisalat
-60204,EGYwe,we
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/03.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/03.txt
deleted file mode 100755
index 8f4af7a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/03.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-60301,ALG Mobilis,Mobilis
-60302,Djezzy,Djezzy
-60303,ooredoo Algeria,Ooredoo
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/04.txt
deleted file mode 100755
index ce80a51..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/04.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-60400,Orange MA,Orange
-60401,MOR IAM,IAM
-60402,inwi,inwi
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/05.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/05.txt
deleted file mode 100755
index f678f6b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/05.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-60501,Orange TN,OrangeTN
-60502,TUNISIE TELECOM,TUNTEL
-60503,TUNISIANA,TUNISIAN
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/06.txt
deleted file mode 100755
index e08f065..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/06.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-60600,Libyana,Libyana
-60601,Al Madar,Al Madar
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/07.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/07.txt
deleted file mode 100755
index 9203202..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/07.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-60701,GAMCEL,GAMCEL
-60702,AFRICELL,AFRICELL
-60703,GM COMIUM,GMCOMIUM
-60704,Qcell,QC
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/08.txt
deleted file mode 100755
index 299a8a4..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/08.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-60801,Orange SN,OrangeSN
-60803,SEN expresso,Expresso
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/09.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/09.txt
deleted file mode 100755
index ea6db2d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/09.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-60901,MR MATTEL,MATTEL
-60902,MR Expresso,EMR
-60910,MAURITEL,MAURITEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/10.txt
deleted file mode 100755
index c4829d0..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/10.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-61001,MALITEL ML,MALITEL
-61002,ORANGE ML,OML
-61003,TELECEL ML,TELECEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/11.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/11.txt
deleted file mode 100755
index 5c7faff..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/11.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-61101,Orange GN,ORANGEGN
-61104,GNMTN,GNAreeba
-61105,GINCL,Cellcom
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/12.txt
deleted file mode 100755
index 685bc31..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/12.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-61202,MOOV CI,MOOV
-61203,Orange,Orange
-61204,KoZ,KoZ
-61205,MTN CI,MTN CI
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/13.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/13.txt
deleted file mode 100755
index f216f46..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/13.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-61301,ONATEL,ONATEL
-61302,Orange BF,Orange
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/14.txt
deleted file mode 100755
index 8df939b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/14.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-61402,Airtel,Airtel
-61403,ETISALAT NER,ETISALAT
-61404,Orange,Orange
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/15.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/15.txt
deleted file mode 100755
index 8a0c62c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/15.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-61501,TG-TOGO CELL,TGCELL
-61503,ETISALAT TOGO,ETISALAT
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/16.txt
deleted file mode 100755
index 112e985..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/16.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-61602,ETISALAT BENIN,ETISALAT
-61603,MTN BENIN,MTNBENIN
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/17.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/17.txt
deleted file mode 100755
index 1dd5999..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/17.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-61701,CELLPLUS-MRU,my.t
-61703,MTML,MTML
-61710,EMTEL-MRU,EMTEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/18.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/18.txt
deleted file mode 100755
index c3a0109..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/18.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-61801,LBR Lonestar Cell,LoneStar
-61804,Novafone,Novafone
-61807,Orange LBR,Orange L
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/19.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/19.txt
deleted file mode 100755
index 19aeddd..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/19.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-61901,Orange SL,OrangeSL
-61905,Africell,Africell
-61907,QCell,QC
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/20.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/20.txt
deleted file mode 100755
index 1962e26..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/20.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-62001,GH MTN,MTN
-62002,GH Vodafone,Vodafone
-62003,AirtelTigo,ATL-TIGO
-62006,AirtelTigo,ATL-TIGO
-62007,Glo Ghana,GloGhana
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/21.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/21.txt
deleted file mode 100755
index 8db9b9c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/21.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-62120,Airtel,Airtel
-62130,MTN - NG,MTN-NG
-62140,ntel,ntel
-62150,Glo NG,glo
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/22.txt
deleted file mode 100755
index 439133e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/22.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-62201,Airtel,Airtel
-62203,Tigo TD,Tigo
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/23.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/23.txt
deleted file mode 100755
index ef99e91..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/23.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-62301,ETISALAT RCA,ETISALAT
-62302,Telecel,Telecel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/24.txt
deleted file mode 100755
index de6cc80..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/24.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-62401,MTN CAM,MTN CAM
-62402,Orange CM,Orange
-62404,Nexttel,Nexttel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/25.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/25.txt
deleted file mode 100755
index 1e69743..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/25.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-62501,CVMOVEL,CVMOVEL
-62502,Unitel T+,UnitelT+
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/26.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/26.txt
deleted file mode 100755
index 7238b8d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/26.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-62601,STP CSTmovel,CSTmovel
-62602,Unitel STP,Unitel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/27.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/27.txt
deleted file mode 100755
index 8fd5d5e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/27.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-62701,GETESA,GETESA
-62703,GNQ-Muni,Muni-GQ
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/28.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/28.txt
deleted file mode 100755
index 8190503..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/28.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-62801,LIBERTIS,LIBERTIS
-62802,ETISALAT GAB,ETISALAT
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/29.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/29.txt
deleted file mode 100755
index 0529d58..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/29.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-62901,Airtel,Airtel
-62910,COG MTN,MTN-CG
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/30.txt
deleted file mode 100755
index 68fce9a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/30.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-63001,Vodacom Congo,VODACOM
-63002,Airtel,Airtel
-63086,Orange RDC,Orange
-63089,TIGO DRC,TIGO
-63090,Africell RDC,AFRICELL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/31.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/31.txt
deleted file mode 100755
index a0e4e6e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/31.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-63102,UNITEL,UNITEL
-63104,MOVICEL,AGOMV
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/32.txt
deleted file mode 100755
index 9400296..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/32.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-63202,MTN,MTN
-63203,Orange GB,OrangeGB
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/33.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/33.txt
deleted file mode 100755
index 8f7c70d..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/33.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-63301,C&W SEY,C&W SEY
-63310,Airtel,Airtel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/34.txt
deleted file mode 100755
index 0d253a2..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/34.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-63401,Zain SDN,Zain SD
-63402,MTN,MTN
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/35.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/35.txt
deleted file mode 100755
index d0736e6..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/35.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-63510,MTN RWANDA,MTN
-63514,Airtel,Airtel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/36.txt
deleted file mode 100755
index 8ed6f4c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/36.txt
+++ /dev/null
@@ -1 +0,0 @@
-63601,ETH MTN,ET-MTN
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/37.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/37.txt
deleted file mode 100755
index 8cb3d28..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/37.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-63701,SO Telesom,Tele
-63730,Som Golis,Golis
-63750,Hormuud Telecom,Hormuud
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/38.txt
deleted file mode 100755
index 4084c06..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/38.txt
+++ /dev/null
@@ -1 +0,0 @@
-63801,DJ EVATIS,EVATIS
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/39.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/39.txt
deleted file mode 100755
index 38eae29..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/39.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-63902,Safaricom,SAF-COM
-63903,Airtel,Airtel
-63907,Telkom,Telkom
-63910,FAIBA,FAIBA
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/40.txt
deleted file mode 100755
index 19247cb..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/40.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-64002,TIGO - TZ,TIGO
-64003,ZANTEL-TZ,ZANTEL
-64004,VodaCom,VodaCom
-64005,Airtel,Airtel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/41.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/41.txt
deleted file mode 100755
index ea82138..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/41.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-64101,Airtel,Airtel
-64104,UG TANG,TANG
-64110,MTN-UGANDA,MTN-UG
-64111,Uganda Telecom,UTL
-64114,Africell Uganda,AUL
-64118,Suretelcom,suretel
-64122,Airtel,Airtel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/42.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/42.txt
deleted file mode 100755
index 218033a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/42.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-64203,ONATEL BDI,ONATEL
-64207,SMART,SMART
-64282,TELECEL-BDI,BDITL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/43.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/43.txt
deleted file mode 100755
index 6684dc1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/43.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-64301,MOZ - mCel,mCel
-64304,VodaCom-MZ,VodaCom
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/45.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/45.txt
deleted file mode 100755
index 51f1fea..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/45.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-64501,Airtel,Airtel
-64502,MTN ZM,MTN ZM
-64503,ZAMTEL,ZAMTEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/46.txt
deleted file mode 100755
index 20f67a1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/46.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-64601,Airtel,Airtel
-64602,Orange,Orange
-64604,TELMA,TELMA
-64605,Bip,Bip
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/47.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/47.txt
deleted file mode 100755
index a700ec5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/47.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-64700,Orange re,Orange
-64701,MAORE MOBILE,MMOBILE
-64702,TELCO OI,TELCO OI
-64703,FREE MOBILE RE,FREE RE
-64704,ZEOP,ZEOP
-64710,SRR,SRR
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/48.txt
deleted file mode 100755
index 9a81751..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/48.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-64801,ZW NET*ONE,NETONE
-64803,TELECEL ZW,TELECEL
-64804,ZW ECONET,ECONET
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/49.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/49.txt
deleted file mode 100755
index 711f429..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/49.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-64901,MTC NAMIBIA,MTCNAM
-64903,tnmobile,tnmobile
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/50.txt
deleted file mode 100755
index 7a706f1..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/50.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-65001,TNM,TNM
-65010,Airtel,Airtel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/51.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/51.txt
deleted file mode 100755
index 4f77c01..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/51.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-65101,Vodacom Lesotho,VODACOM
-65102,LS-ETL,ETL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/52.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/52.txt
deleted file mode 100755
index ff0f16f..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/52.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-65201,BW MASCOM,MASCOM
-65202,Orange,Orange
-65204,BTC,BTC
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/53.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/53.txt
deleted file mode 100755
index 5e2926e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/53.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-65302,Swazi Mobile,Swazi Mo
-65310,Swazi-MTN,SwaziMTN
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/54.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/54.txt
deleted file mode 100755
index 69cd469..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/54.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-65401,HURI,HURI
-65402,TELCO,COMTM
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/55.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/55.txt
deleted file mode 100755
index 8c2ea26..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/55.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-65501,VodaCom-SA,Vodacom
-65502,TelkomSA,Telkom
-65505,TelkomSA-R,Telkom-R
-65507,Cell C,Cell C
-65510,MTN-SA,MTN
-65538,rain,rain
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/57.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/57.txt
deleted file mode 100755
index 34b2108..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/57.txt
+++ /dev/null
@@ -1 +0,0 @@
-65701,EriTel,EriTel
\ No newline at end of file
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/58.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/58.txt
deleted file mode 100755
index b2ef780..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/58.txt
+++ /dev/null
@@ -1 +0,0 @@
-65801,Sure,Sure
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/59.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/59.txt
deleted file mode 100755
index 42efdd6..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/6/59.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-65902,MTN,MTN
-65906,ZAIN SS,ZAIN SS
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/02.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/02.txt
deleted file mode 100755
index c7b0715..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/02.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-70267,BTL,BTL
-70269,Smart,Smart
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/04.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/04.txt
deleted file mode 100755
index 0260d6c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/04.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-70401,CLARO GTM,CLAROGTM
-70402,TIGO,TIGO
-70403,CLARO GTM,CLAROGTM
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/06.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/06.txt
deleted file mode 100755
index 690a8de..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/06.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-70601,CLARO SLV,ClaroSLV
-70602,Digicel,DIGICEL
-70603,Tigo SV,Tigo
-70604,Movistar,Movistar
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/08.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/08.txt
deleted file mode 100755
index 23b64dd..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/08.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-708001,CLARO HND,ClaroHND
-70802,TIGOHND,TIGO
-708030,HND,HT - 200
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/10.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/10.txt
deleted file mode 100755
index 90bc95c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/10.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-71021,CLARO NIC,ClaroNIC
-710300,Movistar,Movistar
-71073,CLARO NIC,ClaroNIC
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/12.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/12.txt
deleted file mode 100755
index c93711a..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/12.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-71201,I.C.E.,I.C.E.
-71202,I.C.E.,I.C.E.
-71203,CLARO CR,CLARO CR
-71204,Movistar,Movistar
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/14.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/14.txt
deleted file mode 100755
index 9236049..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/14.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-71401,+Movil - C&W PAN,PANCW
-714020,Movistar,Movistar
-71403,CLARO PA,CLARO PA
-71404,DIGICEL,DIGICEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/16.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/16.txt
deleted file mode 100755
index d364fb9..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/16.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-71606,MOVISTAR,MOVISTAR
-71610,CLARO PER,ClaroPER
-71615,Viettel Peru,VTP
-71617,Entel,Entel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/22.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/22.txt
deleted file mode 100755
index 2f7299c..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/22.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-722010,AR - TEFMVNO,TEFMVNO
-72207,AR - Movistar,Movistar
-722310,CLARO ARGENTINA,CLARO AR
-72234,AR PERSONAL,AR TP
-72236,AR PERSONAL,AR TP
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/24.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/24.txt
deleted file mode 100755
index 7ccac6b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/24.txt
+++ /dev/null
@@ -1,16 +0,0 @@
-72402,TIM BRA,TIM
-72403,TIM BRA,TIM
-72404,TIM BRA,TIM
-72405,Claro BRA,Claro
-72406,VIVO,VIVO
-72410,VIVO,VIVO
-72411,VIVO,VIVO
-72415,BRA SCTL,SCTL
-72416,Oi,Oi
-72423,VIVO,VIVO
-72424,Oi,Oi
-72431,Oi,Oi
-72432,Algar Telecom,Algar
-72433,Algar Telecom,Algar
-72434,Algar Telecom,Algar
-72439,Nextel Brasil,Nextel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/30.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/30.txt
deleted file mode 100755
index d88b305..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/30.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-73001,ENTEL PCS,ENTEL
-73002,Movistar,Movistar
-73003,CLARO CHL,ClaroCHL
-73007,Movistar,Movistar
-73009,WOM,WOM
-73010,ENTEL PCS,ENTEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/32.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/32.txt
deleted file mode 100755
index ea294e5..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/32.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-732101,Claro,Claro
-732103,TIGO,TIGO
-732111,TIGO,TIGO
-732123,Movistar,Movistar
-732130,Avantel,Avantel
-732187,ETB,ETB
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/34.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/34.txt
deleted file mode 100755
index ab71574..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/34.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-73402,DIGITEL,DIGITEL
-73404,Movistar,Movistar
-73406,VE_MOVILNET,Movilnet
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/36.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/36.txt
deleted file mode 100755
index 42d1a0b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/36.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-73601,VIVA,VIVA
-73602,BOMOV,EMOVIL
-73603,TIGO,TIGO
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/38.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/38.txt
deleted file mode 100755
index fbf2223..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/38.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-738002,GUY GTT + Do More,GTT+
-73801,Digicel,Digicel
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/40.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/40.txt
deleted file mode 100755
index c82062e..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/40.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-74000,Movistar,Movistar
-74001,CLARO,CLARO
-74002,CNT,CNT
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/44.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/44.txt
deleted file mode 100755
index 48ef669..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/44.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-74401,HOLA PARAGUAY S.A.,HPGYSA
-74402,CLARO PY,CLARO PY
-74404,TIGO PY,TIGO
-74405,PY Personal,Personal
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/46.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/46.txt
deleted file mode 100755
index 66e535b..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/46.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-74602,SR.TELESUR.GSM,TeleG
-74603,DIGICEL,DIGICEL
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/48.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/48.txt
deleted file mode 100755
index 1ae5ace..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/48.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-74801,Antel,Antel
-74807,Movistar,Movistar
-74810,CLARO URUGUAY,CLARO UY
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/50.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/50.txt
deleted file mode 100755
index 5241670..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/7/50.txt
+++ /dev/null
@@ -1 +0,0 @@
-750001,Sure FLK,Sure
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/9/01.txt b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/9/01.txt
deleted file mode 100755
index 29f83a6..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/mddata/plmn/TS25/9/01.txt
+++ /dev/null
@@ -1,9 +0,0 @@
-90111,Inmarsat,INX
-90112,Telenor Maritime,TelenorM
-90114,AeroMobile,AeroMob
-90115,OnAir,OnAir
-90126,TIM@sea,TIM@sea
-90144,AT&T,AT&T
-90145,AISatSea,AISatSea
-90146,Telecom26,T26
-90150,EchoStar Mobile,EML
\ No newline at end of file
diff --git a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/modem.img b/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/modem.img
deleted file mode 100755
index 4d16dae..0000000
--- a/prebuilt/modem/mt2735/MT2735_V02.MP1_MR3_NLWG_T19_20221118/modem.img
+++ /dev/null
Binary files differ
diff --git a/src/bsp/lk/app/blxboot/blxboot.c b/src/bsp/lk/app/blxboot/blxboot.c
index 2b9352c..9a489f3 100644
--- a/src/bsp/lk/app/blxboot/blxboot.c
+++ b/src/bsp/lk/app/blxboot/blxboot.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (c) 2018 MediaTek Inc.
*
@@ -25,9 +24,6 @@
#include <app.h>
#include <assert.h>
#include <boot_mode.h>
-#if ENABLE_MODEM_LOAD_MULTI_THREAD
-#include <ccci_event.h>
-#endif
#include <err.h>
#include <errno.h>
#include <fit.h>
@@ -159,7 +155,6 @@
uint32_t *boot_mode;
void *fdt_dtb, *dtbo, *vpd;
int rc;
- lk_bigtime_t __timer;
#if (defined AVB_ENABLE_ANTIROLLBACK) || (defined AVB_ENABLE_DEVICE_STATE_CHANGE)
rpmb_init();
@@ -212,15 +207,12 @@
fastboot_on_fail = false;
}
- __timer = current_time_hires();
if ((rc = load_all_images(blxobj)) == 0)
break;
if (fastboot_on_fail)
*boot_mode = FASTBOOT_BOOT;
} while (fastboot_on_fail);
- __timer = current_time_hires() - __timer;
- dprintf(ALWAYS,"load_all_images execution time: %llu (us). \n", __timer);
if (rc != 0) {
if (is_enabled_ab_ota_updater())
@@ -229,10 +221,6 @@
return;
}
-#if ENABLE_MODEM_LOAD_MULTI_THREAD
- wait_for_md_cpu_task();
-#endif
-
/* dtbo may contains kernel bootargs, do overlay_fdt before fixup_image */
blxobj->ops.get_overlay_image(blxobj, &fdt_dtb, &dtbo, &vpd);
if (fdt_dtb && (dtbo || vpd)) {
diff --git a/src/bsp/lk/app/blxboot/imagelist.c b/src/bsp/lk/app/blxboot/imagelist.c
old mode 100644
new mode 100755
index cc86735..af780ef
--- a/src/bsp/lk/app/blxboot/imagelist.c
+++ b/src/bsp/lk/app/blxboot/imagelist.c
@@ -32,6 +32,7 @@
#include <string.h>
#include <sys/types.h>
#include <trace.h>
+#include <lib/bootctrl.h>
#include "avb.h"
#include "blxboot_ab.h"
@@ -274,14 +275,6 @@
},
#endif /* ENABLE_DSP_LOAD */
-#if ENABLE_MODEM_LOAD
- {
- .type = IMGTYPE_MODEM,
- .load = load_md_image,
- .imgdata = &mdimg,
- },
-#endif
-
#if ENABLE_KERNEL_LOAD
{
.type = IMGTYPE_KERNEL,
@@ -316,6 +309,14 @@
},
#endif /* ENABLE_SPM_FW_LOAD */
+#if ENABLE_MODEM_LOAD
+ {
+ .type = IMGTYPE_MODEM,
+ .load = load_md_image,
+ .imgdata = &mdimg,
+ },
+#endif
+
#if ENABLE_MCUPM_LOAD
{
.type = IMGTYPE_MCUPM,
@@ -616,11 +617,19 @@
static int load_fit_image(const char *part_name, struct imageinfo_t *img)
{
int err;
+ int current_slot = -1;
+ dprintf(CRITICAL, "LYNQ: load_fit_image part_name %s\n",part_name);
if ((err = fit_get_image(part_name, &img->imgdata->buf)) == 0) {
err = fit_load_images(img->imgdata->buf, img->imgdata, true);
}
-
+ if(err != 0 && ((strcmp(part_name,"bl33_a") == 0) || (strcmp(part_name,"bl33_b") == 0)))
+ {
+ dprintf(ALWAYS, "BL33_load: hash verification is error\n");
+ current_slot = get_current_slot();
+ dprintf(ALWAYS, "BL33_load: current_slot: %d. reboot\n" ,current_slot);
+ mark_slot_unsuccessful(current_slot);
+ }
return err;
}
diff --git a/src/bsp/lk/lib/fit/fit.c b/src/bsp/lk/lib/fit/fit.c
index 132f19e..4ddeb93 100644
--- a/src/bsp/lk/lib/fit/fit.c
+++ b/src/bsp/lk/lib/fit/fit.c
@@ -105,7 +105,7 @@
* otherwise, on failure
*
*/
-int fit_get_img_subnode_offset(void *fit, const char *image_name)
+static int fit_get_img_subnode_offset(void *fit, const char *image_name)
{
int noffset;
@@ -139,7 +139,7 @@
* otherwise, on failure
*
*/
-int fit_get_def_cfg_offset(void *fit, const char *conf)
+static int fit_get_def_cfg_offset(void *fit, const char *conf)
{
int noffset, cfg_noffset, len;
@@ -528,7 +528,7 @@
return 0;
}
-int fit_image_integrity_check_process(void *arg)
+static int fit_image_integrity_check_process(void *arg)
{
int ret;
struct verify_data *verify_info;
diff --git a/src/bsp/lk/platform/mt2735/bl2_bl33_options.mk b/src/bsp/lk/platform/mt2735/bl2_bl33_options.mk
index 53419ea..258d75c 100644
--- a/src/bsp/lk/platform/mt2735/bl2_bl33_options.mk
+++ b/src/bsp/lk/platform/mt2735/bl2_bl33_options.mk
@@ -1,4 +1,3 @@
-# SPDX-License-Identifier: MIT
LOCAL_DIR := $(GET_LOCAL_DIR)
ifeq ($(LK_AS_BL33),1)
@@ -30,9 +29,6 @@
ENABLE_SSPM_LOAD := 0 # bl33 doesn't load sspm
ENABLE_DPM_LOAD := 0 # bl33 doesn't load dpm
-# load modem image with multi-thread
-ENABLE_MODEM_LOAD_MULTI_THREAD := 1
-
# bl33 boot options
BL33_BOOT_NEXT_64BITS ?= 1 # boot stage after bl33 is 64 bits
@@ -67,8 +63,7 @@
GLOBAL_DEFINES += \
BL33_DRAM_SZ_MB=$(BL33_DRAM_SZ_MB) \
BL33_BOOT_NEXT_64BITS=$(BL33_BOOT_NEXT_64BITS) \
- ENABLE_MODEM_LOAD=$(ENABLE_MODEM_LOAD) \
- ENABLE_MODEM_LOAD_MULTI_THREAD=$(ENABLE_MODEM_LOAD_MULTI_THREAD)
+ ENABLE_MODEM_LOAD=$(ENABLE_MODEM_LOAD)
else
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_event.c b/src/bsp/lk/platform/mt2735/drivers/md/ccci_event.c
deleted file mode 100644
index 4b3bb87..0000000
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_event.c
+++ /dev/null
@@ -1,30 +0,0 @@
-// SPDX-License-Identifier: MIT
-/*
- * Copyright (c) 2021 MediaTek Inc.
- *
- * Use of this source code is governed by a MIT-style
- * license that can be found in the LICENSE file or at
- * https://opensource.org/licenses/MIT
- */
-
-#include <debug.h>
-#include <kernel/event.h>
-#include <trace.h>
-
-#define LOCAL_TRACE 0
-
-event_t md_cpu_task_end_event = EVENT_INITIAL_VALUE(md_cpu_task_end_event, false, 0);
-
-void signal_md_cpu_end_event(void)
-{
- LTRACEF_LEVEL(INFO, "Signal md cpu end event\n");
- event_signal(&md_cpu_task_end_event, true);
-}
-
-void wait_for_md_cpu_task(void)
-{
- LTRACEF_LEVEL(INFO, "Wait for md cpu task....\n");
- event_wait(&md_cpu_task_end_event);
- event_unsignal(&md_cpu_task_end_event);
- LTRACEF_LEVEL(INFO, "md cpu task is done\n");
-}
\ No newline at end of file
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_fit.c b/src/bsp/lk/platform/mt2735/drivers/md/ccci_fit.c
index db4b43a..719f143 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_fit.c
+++ b/src/bsp/lk/platform/mt2735/drivers/md/ccci_fit.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (c) 2016 MediaTek Inc.
*
@@ -32,60 +31,247 @@
#include <kernel/vm.h>
#include <trace.h>
-#include "fit.h"
#include "ccci_fit.h"
-
#include "image.h"
-#define LOCAL_TRACE 1
+#define LOCAL_TRACE 0
-int fit_get_img_subnode_offset(void *fit, const char *image_name);
-int fit_get_def_cfg_offset(void *fit, const char *conf);
-int fit_image_integrity_check_process(void *arg);
+#define uswap_32(x) \
+ ((((x) & 0xff000000) >> 24) | \
+ (((x) & 0x00ff0000) >> 8) | \
+ (((x) & 0x0000ff00) << 8) | \
+ (((x) & 0x000000ff) << 24))
-int ccci_fit_decompress_data(void *fit,
- void *decomp_addr, size_t *load_size)
+int ccci_fit_image_get_node(const void *fit, const char *image_uname)
{
- int len, ret;
- size_t size;
- const void *data, *compression;
- int noffset = 0, cfg_noffset = 0;
- const char *image_name;
+ int noffset, images_noffset;
- cfg_noffset = fit_get_def_cfg_offset(fit, NULL);
- if (cfg_noffset < 0)
- return EINVAL;
-
- /* unit name: fdt@1, kernel@2, ramdisk@3 and so on */
- image_name = (char *)fdt_getprop(fit, cfg_noffset, "kernel", &len);
- if (image_name == NULL) {
- LTRACEF("%s get image name failed\n", "kernel");
- return -ENOENT;
+ images_noffset = fdt_path_offset(fit, FIT_IMAGES_PATH);
+ if (images_noffset < 0) {
+ dprintf(CRITICAL,"Can't find images parent node '%s' (%s)\n",
+ FIT_IMAGES_PATH, fdt_strerror(images_noffset));
+ return images_noffset;
}
- /* get this sub image node offset */
- noffset = fit_get_img_subnode_offset(fit, image_name);
+ noffset = fdt_subnode_offset(fit, images_noffset, image_uname);
if (noffset < 0) {
- dprintf(CRITICAL, "get sub image node (%s) failed\n", image_name);
+ dprintf(CRITICAL,"Can't get node offset for image name: '%s' (%s)\n",
+ image_uname, fdt_strerror(noffset));
+ }
+
+ return noffset;
+}
+
+int ccci_fit_image_get_data(const void *fit, int noffset,
+ const void **data, uint32_t *size)
+{
+ int len;
+ *data = fdt_getprop(fit, noffset, FDT_DATA_NODE, &len);
+ if (*data == NULL)
+ return -1;
+
+ *size = len;
+
+ return 0;
+}
+
+int ccci_fit_conf_get_prop_node(const void *fit, int noffset,
+ const char *prop_name)
+{
+ char *uname;
+ int len;
+
+ /* get kernel image unit name from configuration kernel property */
+ uname = (char *)fdt_getprop(fit, noffset, prop_name, &len);
+ if (uname == NULL)
+ return len;
+
+ return ccci_fit_image_get_node(fit, uname);
+}
+
+/**
+ * fit_get_img_subnode_offset() - get a subnode offset for a given image name
+ *
+ * This finds subnode offset using given image name within node "/images"
+ *
+ * @fit: fit image start address
+ * @image_name: image name. "kernel", "fdt" or "ramdisk"...
+ *
+ * returns:
+ * great than or equal 0, on success
+ * otherwise, on failure
+ *
+ */
+static int ccci_fit_get_img_subnode_offset(void *fit, const char *image_name)
+{
+ int noffset;
+
+ /* get image node offset */
+ noffset = fdt_path_offset(fit, "/images");
+ if (noffset < 0) {
+ dprintf(CRITICAL, "Can't find image node(%s)\n", fdt_strerror(noffset));
return noffset;
}
+ /* get subnode offset */
+ noffset = fdt_subnode_offset(fit, noffset, image_name);
+ if (noffset < 0)
+ dprintf(CRITICAL, "Can't get node offset for image name: '%s' (%s)\n",
+ image_name, fdt_strerror(noffset));
+
+ return noffset;
+}
+
+/**
+ * fit_get_def_cfg_offset() - get a subnode offset from node "/configurations"
+ *
+ * This finds configuration subnode offset in node "configruations".
+ * If "conf" is not given, it will find property "default" for the case.
+ *
+ * @fit: fit image start address
+ * @conf: configuration name
+ *
+ * returns:
+ * great than or equal 0, on success
+ * otherwise, on failure
+ *
+ */
+static int ccci_fit_get_def_cfg_offset(void *fit, const char *conf)
+{
+ int noffset, cfg_noffset, len;
+
+ noffset = fdt_path_offset(fit, "/configurations");
+ if (noffset < 0) {
+ dprintf(CRITICAL, "can't find configuration node\n");
+ return noffset;
+ }
+
+ if (conf == NULL) {
+ conf = (char *)fdt_getprop(fit, noffset,
+ "default", &len);
+ if (conf == NULL) {
+ dprintf(CRITICAL, "Can't get default conf name\n");
+ return len;
+ }
+ dprintf(SPEW, "got default conf: %s\n", conf);
+ }
+
+ cfg_noffset = fdt_subnode_offset(fit, noffset, conf);
+ if (cfg_noffset < 0)
+ dprintf(CRITICAL, "Can't get conf subnode\n");
+ else
+ dprintf(SPEW, "got conf: %s subnode\n", conf);
+
+ return cfg_noffset;
+}
+
+int ccci_fit_get_image(const char *label, void **load_buf)
+{
+ bdev_t *bdev = NULL;
+ struct fdt_header fdt = {0};
+ size_t totalsize = 0;
+ int fdt_len = 0, ret = 0;
+ void *fit_buf = NULL;
+
+ fdt_len = sizeof(struct fdt_header);
+ bdev = bio_open_by_label(label) ? : bio_open(label);
+ if (!bdev) {
+ dprintf(CRITICAL, "Partition [%s] is not exist.\n", label);
+ return -ENODEV;
+ }
+
+ if (bio_read(bdev, &fdt, 0, fdt_len) < fdt_len) {
+ ret = -EIO;
+ goto closebdev;
+ }
+
+ ret = fdt_check_header(&fdt);
+ if (ret) {
+ dprintf(CRITICAL, "[%s] check header failed\n", label);
+ goto closebdev;
+ }
+
+ totalsize = fdt_totalsize(&fdt);
+ fit_buf = mempool_alloc(totalsize, MEMPOOL_ANY);
+ if (!fit_buf) {
+ ret = -ENOMEM;
+ goto closebdev;
+ }
+
+ if (bio_read(bdev, fit_buf, 0, totalsize) < totalsize) {
+ ret = -EIO;
+ goto closebdev;
+ }
+ *load_buf = fit_buf;
+
+closebdev:
+ bio_close(bdev);
+ if ((ret != 0) && (fit_buf != NULL))
+ mempool_free(fit_buf);
+
+ return ret;
+}
+
+int ccci_fit_processing_data(void *fit, const char *image_name, int noffset,
+ addr_t *load, size_t *load_size, paddr_t *entry)
+{
+ int len, ret, ac;
+ size_t size;
+ const char *type;
+ const void *data, *compression;
+ const uint32_t *load_prop, *entry_prop;
+ addr_t load_addr;
+ paddr_t entry_addr;
+
data = fdt_getprop(fit, noffset, "data", &len);
if (!data) {
- dprintf(CRITICAL, "%s can't get prop data\n", __func__);
+ dprintf(CRITICAL, "%s can't get prop data\n", image_name);
return len;
}
size = len;
compression = fdt_getprop(fit, noffset, "compression", &len);
if (!compression) {
- dprintf(CRITICAL, "%s compression is not specified\n", __func__);
+ dprintf(CRITICAL, "%s compression is not specified\n", image_name);
return -EINVAL;
}
+ type = fdt_getprop(fit, noffset, "type", &len);
+ if (!type) {
+ dprintf(CRITICAL, "%s image type is not specified\n", image_name);
+ return -EINVAL;
+ }
+
+ /* read address-cells from root */
+ ac = fdt_address_cells(fit, 0);
+ if (ac <= 0 || (ac > sizeof(ulong) / sizeof(uint))) {
+ LTRACEF("%s #address-cells with a bad format or value\n", image_name);
+ return -EINVAL;
+ }
+
+ load_prop = fdt_getprop(fit, noffset, "load", &len);
+ if (!load_prop &&
+ (!strcmp(type, "kernel") || (!strcmp(type, "loadable")))) {
+ dprintf(CRITICAL, "%s need load addr\n", image_name);
+ return -EINVAL;
+ }
+
+ /* load address determination:
+ * 1. "load" property exist: use address in "load" property
+ * 2. "load" property not exist: use runtime address of "data" property
+ */
+ load_addr = (addr_t)data;
+ if (load_prop) {
+ load_addr = (addr_t)uswap_32(load_prop[0]);
+ if (ac == 2)
+ load_addr = (load_addr << 32) | (addr_t)uswap_32(load_prop[1]);
+#if WITH_KERNEL_VM
+ load_addr = (addr_t)paddr_to_kvaddr(load_addr);
+#endif
+ }
+
if (!strcmp((char *)compression, "lz4")) {
- LTRACEF("[%s] start decompress\n", __func__);
- ret = unlz4(data, size - 4, decomp_addr);
+ ret = unlz4(data, size - 4, (void *)(load_addr));
if (ret != LZ4_OK) {
dprintf(ALWAYS, "lz4 decompress failure\n");
return -LZ4_FAIL;
@@ -94,28 +280,117 @@
* kernel image size */
size = *(u32 *)(data + size - 4);
} else if (!strcmp((char *)compression, "none")) {
- LTRACEF("[%s] copy image\n", __func__);
- memmove(decomp_addr, data, size);
+ memmove((void *)(load_addr), data, size);
} else {
- dprintf(CRITICAL, "%s compression does not support\n", __func__);
+ dprintf(CRITICAL, "%s compression does not support\n", image_name);
return -EINVAL;
}
#if WITH_KERNEL_VM
/* always flush cache to PoC */
- arch_clean_cache_range(decomp_addr, size);
+ arch_clean_cache_range(load_addr, size);
#endif
- LTRACEF("[%s] load_addr %p\n", __func__, decomp_addr);
- LTRACEF("[%s] fit = %p\n", __func__, fit);
- LTRACEF("[%s] data = %p\n", __func__, data);
- LTRACEF("[%s] size = %zu\n", __func__, size);
+ LTRACEF("[%s] load_addr 0x%lx\n", image_name, load_addr);
+ LTRACEF("[%s] fit = %p\n", image_name, fit);
+ LTRACEF("[%s] data = %p\n", image_name, data);
+ LTRACEF("[%s] size = %zu\n", image_name, size);
+
+ /* return load, load_size and entry address if caller spcified */
+ if (load)
+ *load = load_addr;
if (load_size)
*load_size = size;
+ if (entry) {
+ /*
+ * entry address determination:
+ * 1. "entry" property not exist: entry address = load address
+ * 2. "entry" & "load" properties both exist: "entry" property
+ * contains the absolute address of entry, thus
+ * entry address = "entry"
+ * 3. only "entry" property exist: "entry" property contains the
+ * entry offset to load address, thus
+ * entry address = "entry" + load address
+ */
+
+#if WITH_KERNEL_VM
+ load_addr = kvaddr_to_paddr((void *)load_addr);
+#endif
+ entry_addr = load_addr;
+ entry_prop = fdt_getprop(fit, noffset, "entry", &len);
+ if (entry_prop) {
+ entry_addr = (paddr_t)uswap_32(entry_prop[0]);
+ if (ac == 2) {
+ entry_addr = (entry_addr << 32) |
+ (paddr_t)uswap_32(entry_prop[1]);
+ }
+ entry_addr += load_prop ? 0 : load_addr;
+ }
+ *entry = entry_addr;
+
+ LTRACEF("[%s] entry_addr 0x%lx\n", image_name, *entry);
+ }
+
return 0;
}
+
+int ccci_fit_load_loadable_image(void *fit, const char *sub_node_name, addr_t *load)
+{
+ int noffset;
+ int ret;
+
+ noffset = ccci_fit_get_img_subnode_offset(fit, sub_node_name);
+ if (noffset < 0) {
+ LTRACEF("%s: fit_get_img_subnode_offset fail\n", sub_node_name);
+ return noffset;
+ }
+
+ if (hash_check_enabled()) {
+ ret = fit_image_integrity_verify(fit, noffset);
+ LTRACEF("%s: integrity check %s\n",
+ sub_node_name, ret ? "fail" : "pass");
+ if (ret)
+ return -EACCES;
+ }
+
+ return ccci_fit_processing_data(fit, sub_node_name, noffset, load, NULL, NULL);
+}
+
+int ccci_fit_conf_verify_sig(const char *conf, void *fit)
+{
+ int ret;
+ int noffset;
+
+ /* get defualt configuration offset (conf@1, conf@2,...or confg@n) */
+ noffset = ccci_fit_get_def_cfg_offset(fit, conf);
+ if (noffset < 0)
+ return noffset;
+
+ /* verify config signature */
+ if (rsa_check_enabled()) {
+ ret = fit_verify_sign(fit, noffset);
+ dprintf(ALWAYS, "Verify sign: %s\n", ret ? "fail" : "pass");
+ if (ret)
+ return -EACCES;
+ }
+
+ return 0;
+}
+
+static int ccci_fit_image_integrity_check_process(void *arg)
+{
+ int ret;
+ struct verify_data *verify_info;
+
+ verify_info = (struct verify_data *)arg;
+ ret = fit_image_integrity_verify(verify_info->fit_image,
+ verify_info->noffset);
+
+ return ret;
+}
+
int ccci_fit_load_image(const char *conf, const char *img_pro, void *fit,
addr_t *load, size_t *load_size, paddr_t *entry,
bool need_verified)
@@ -126,7 +401,7 @@
thread_t *integrity_verify_t;
/* get defualt configuration offset (conf@1, conf@2,...or confg@n) */
- cfg_noffset = fit_get_def_cfg_offset(fit, conf);
+ cfg_noffset = ccci_fit_get_def_cfg_offset(fit, conf);
if (cfg_noffset < 0)
return cfg_noffset;
@@ -138,7 +413,7 @@
}
/* get this sub image node offset */
- noffset = fit_get_img_subnode_offset(fit, image_name);
+ noffset = ccci_fit_get_img_subnode_offset(fit, image_name);
if (noffset < 0) {
dprintf(CRITICAL, "get sub image node (%s) failed\n", image_name);
return noffset;
@@ -146,12 +421,39 @@
/* verify integrity of this image */
if (hash_check_enabled() && need_verified) {
+#if WITH_SMP
+ struct verify_data verify_info;
+ verify_info.fit_image = fit;
+ verify_info.noffset = noffset;
+
+ integrity_verify_t = thread_create("integrity_verify_t",
+ &ccci_fit_image_integrity_check_process, &verify_info,
+ DEFAULT_PRIORITY, DEFAULT_STACK_SIZE);
+
+ /* Assigned the thread to active cpu */
+ extern __WEAK void plat_mp_assign_workcpu(thread_t *t);
+ plat_mp_assign_workcpu(integrity_verify_t);
+ thread_resume(integrity_verify_t);
+#else
ret = fit_image_integrity_verify(fit, noffset);
LTRACEF_LEVEL(CRITICAL, "check %s integrity: %s\n",
image_name, ret ? "fail" : "pass");
if (ret < 0)
return -EACCES;
+#endif
} /* verify end */
+ //rc = fit_processing_data(fit, image_name, noffset, load, load_size, entry);
+
+#if WITH_SMP
+ if (hash_check_enabled() && need_verified) {
+ thread_join(integrity_verify_t, &ret, INFINITE_TIME);
+ LTRACEF_LEVEL(CRITICAL, "check %s integrity: %s\n",
+ image_name, ret ? "fail" : "pass");
+ if (ret < 0)
+ return -EACCES;
+ }
+#endif
+
return rc;
}
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_fit.h b/src/bsp/lk/platform/mt2735/drivers/md/ccci_fit.h
index 03dfd33..bbdee29 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_fit.h
+++ b/src/bsp/lk/platform/mt2735/drivers/md/ccci_fit.h
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (c) 2016 MediaTek Inc.
*
@@ -26,10 +25,86 @@
#include <stdbool.h>
#include <sys/types.h>
+/**
+ * fit_get_image() - load fit image from a partition
+ *
+ * the function will use bio to access a partition from a storage and
+ * check fdt header. If pass, allocate memory buffer to read the fit image
+ * to load_buf
+ *
+ * @label: partition name
+ * @load_buf: pointer to buffer pointer, the address of allocated memory
+ * buffer with fit image loaded was passing back to the caller
+ * via this argument.
+ *
+ * returns:
+ * 0, on success
+ * otherwise, on failure
+ *
+ */
+int ccci_fit_get_image(const char *label, void **load_buf);
+
+/**
+ * fit_image_get_data() - get data property of a subimage node
+ * @fit: fit image start address
+ * @noffset: the offset to the subimage node
+ * @data: return data pointer
+ * @size: return data size
+ *
+ * returns:
+ * 0, on success
+ * otherwise, on failure
+ */
+int ccci_fit_image_get_data(const void *fit, int noffset,
+ const void **data, uint32_t *size);
+/**
+ * fit_conf_verify_sig() - verify fit configuration signature
+ *
+ * @conf: configuration name
+ * @fit: fit image start address
+ *
+ * returns:
+ * 0, on success
+ * otherwise, on failure
+ */
+int ccci_fit_conf_verify_sig(const char *conf, void *fit);
+
+/**
+ * fit_load_image() - load fit image to proper address
+ *
+ * This checks FIT configuration to find sub-image nodes image
+ * and load the image to right address
+ *
+ * @conf: configuration name
+ * @img_pro: image property name
+ * @fit: fit image start address
+ * @load: returned load address
+ * @load_size: returned loaded raw image size
+ * @entry: returned entry address
+ * @need_verified: whether to check image integrity
+ *
+ * returns:
+ * 0, on success
+ * otherwise, on failure
+ *
+ */
int ccci_fit_load_image(const char *conf, const char *img_pro, void *fit,
addr_t *load, size_t *load_size, paddr_t *entry,
bool need_verified);
-int ccci_fit_decompress_data(void *fit,
- void *decomp_addr, size_t *load_size);
-
+/**
+ * fit_load_loadable_image() - load "loadable" images to "load" address
+ *
+ * This function finds "sub_node_name" loadable image nodes, do integrity check
+ * per hash_check_enabled(), and load images to "load" address.
+ *
+ * @fit: fit image start address
+ * @sub_node_name: loadable image subnode name
+ * @load: returned loadable image load address
+ *
+ * return:
+ * 0: success
+ * otherwise: failure error code
+ *
+ */
+int ccci_fit_load_loadable_image(void *fit, const char *sub_node_name, addr_t *load);
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_api_wrapper.c b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_api_wrapper.c
index c4a8ce0..8c08720 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_api_wrapper.c
+++ b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_api_wrapper.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (c) 2020 MediaTek Inc.
*
@@ -179,3 +178,38 @@
return size;
}
+
+int ccci_load_raw_data(const char *part_name, unsigned char *mem_addr,
+ unsigned int offset, int size)
+{
+ bdev_t *bdev;
+ int len;
+ LD_DBG_LOG("%s, name[%s], mem_addr[%p], offset[%x], size[%x]\n", __func__,
+ part_name, mem_addr, offset, size);
+ bdev = bio_open_by_label(part_name);
+ if (!bdev) {
+ ALWAYS_LOG("partition %s not exists\n", part_name);
+ return -LD_ERR_PT_NOT_FOUND;//return -ENODEV;
+ }
+ LD_DBG_LOG(" > to 0x%llx (at dram), size:0x%x\n", (u64)((unsigned long)mem_addr), size);
+ len = bio_read(bdev, mem_addr, offset, size);
+ if (len < 0) {
+ ALWAYS_LOG("[%s] %s boot image header read error. LINE: %d\n",
+ MODULE_NAME, part_name, __LINE__);
+ return -LD_ERR_PT_READ_RAW_FAIL;
+ }
+ bio_close(bdev);
+ arch_clean_cache_range((addr_t)mem_addr, size);
+ LD_DBG_LOG("%s clen cache done\n", __func__);
+ return len;
+}
+
+void ccci_ld_md_wrapper_api_init(void)
+{
+}
+
+
+/* This function should be called after ccci_tag_info function ready */
+void ccci_ld_md_add_wrapper_api_info(void)
+{
+}
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_core.c b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_core.c
index e18e3dd..57ff400 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_core.c
+++ b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_core.c
@@ -37,14 +37,8 @@
#include <stdint.h>
#include <string.h>
#include "ccci_fit.h"
-#include <fit.h>
-#include <lib/mempool.h>
#include "mtk_ccci_ld_md.h"
-#if ENABLE_MODEM_LOAD_MULTI_THREAD
-#include <kernel/thread.h>
-#include "ccci_event.h"
-#endif
#include "ccci_ld_md_core.h"
#include "ccci_ld_md_errno.h"
#include "ccci_ld_md_tel.h"
@@ -67,14 +61,10 @@
{
char *label;
void *load_buf;
- void *decompress_buf;
};
static struct fit_buf get_fit_buf[5] = {0};
-static struct download_info_s *image_list = NULL;
-static char part_name_buf[256] = {0};
-static int img_num = 0;
-
+static char part_name_buf[1024] ={0};
static void add_hdr_info(struct modem_info_s tbl[], struct modem_info_s *hdr)
{
@@ -156,12 +146,44 @@
return ret_val;
}
+static int find_offset_mdfit(void *fit)
+{
+ int load_size, hdr_offset = 0;
+ int buf_size = 512;
+ char *buf = malloc(buf_size);
+ unsigned int *tmp = NULL;
+
+ while(1)
+ {
+ load_size = (int)ccci_copy_raw_data(fit, (unsigned char*)buf, hdr_offset, buf_size);
+ if ((unsigned int)load_size != buf_size) {
+ ALWAYS_LOG("load hdr fail(%d)\n", load_size);
+ return -1;
+ }
+
+ for(tmp = (unsigned int *)buf ; tmp< buf + buf_size; tmp++)
+ {
+ if (*tmp == MKIMG_MAGIC) {
+ ALWAYS_LOG("find magic\n");
+ free(buf);
+ return hdr_offset;
+ }
+ if (hdr_offset > 50000) {
+ ALWAYS_LOG("can't find magic\n");
+ free(buf);
+ return -LD_ERR_PT_P_HDR_MAGIC_MIS_MATCH;
+ }
+ hdr_offset = hdr_offset + 4;
+ }
+ }
+}
+
static int find_hdr_in_partition_mem(void *fit, const char *hdr_name,
union mkimg_hdr *p_hdr, unsigned int p_hdr_size)
{
int load_size;
- int hdr_offset = 0;
-
+ int hdr_offset = find_offset_mdfit(fit);
+ ALWAYS_LOG("hdr_offset(0x%x)\n", hdr_offset);
while (1) {
load_size = (int)ccci_copy_raw_data(fit,
(unsigned char *)p_hdr, hdr_offset, p_hdr_size);
@@ -185,28 +207,28 @@
}
static int find_hdr_in_partiton(const char *partition_name, const char *hdr_name, union mkimg_hdr *p_hdr, unsigned int p_hdr_size)
{
- int load_size;
- int hdr_offset = 0;
+ int load_size;
+ int hdr_offset = 0;
- while (1) {
- load_size = (int)ccci_load_raw_data(partition_name, (unsigned char*)p_hdr, hdr_offset, p_hdr_size);
- if ((unsigned int)load_size != p_hdr_size) {
- ALWAYS_LOG("load hdr fail(%d)\n", load_size);
- return -1;
- }
- if (p_hdr->info.magic != MKIMG_MAGIC) {
- ALWAYS_LOG("invalid magic(%x):(%x)ref\n", p_hdr->info.magic, MKIMG_MAGIC);
- return -LD_ERR_PT_P_HDR_MAGIC_MIS_MATCH;
- }
- if (strcmp(p_hdr->info.name, hdr_name) == 0)
- return hdr_offset;
+ while(1) {
+ load_size = (int)ccci_load_raw_data(partition_name, (unsigned char*)p_hdr, hdr_offset, p_hdr_size);
+ if ((unsigned int)load_size != p_hdr_size) {
+ ALWAYS_LOG("load hdr fail(%d)\n", load_size);
+ return -1;
+ }
+ if (p_hdr->info.magic != MKIMG_MAGIC) {
+ ALWAYS_LOG("invalid magic(%x):(%x)ref\n", p_hdr->info.magic, MKIMG_MAGIC);
+ return -LD_ERR_PT_P_HDR_MAGIC_MIS_MATCH;
+ }
+ if (strcmp(p_hdr->info.name, hdr_name) == 0)
+ return hdr_offset;
- hdr_offset += p_hdr->info.hdr_sz;
- hdr_offset += ((p_hdr->info.dsz + p_hdr->info.align_sz - 1) & (~(p_hdr->info.align_sz - 1)));
- }
+ hdr_offset += p_hdr->info.hdr_sz;
+ hdr_offset += ((p_hdr->info.dsz + p_hdr->info.align_sz - 1) & (~(p_hdr->info.align_sz - 1)));
+ }
}
-static int copy_image_by_name(void *image, const char *name,
+static int copy_image_by_name(void *fit, const char *name,
unsigned char *mem_addr, unsigned int max_size, unsigned int flags)
{
int i = 0;
@@ -224,7 +246,7 @@
return -LD_ERR_PT_ALLOC_HDR_MEM_FAIL;
}
- hdr_offset = find_hdr_in_partition_mem(image, name, p_hdr, sizeof(union mkimg_hdr));
+ hdr_offset = find_hdr_in_partition_mem(fit, name, p_hdr, sizeof(union mkimg_hdr));
if (hdr_offset < 0) {
ALWAYS_LOG("load sub image %s fail\n", name);
@@ -246,7 +268,7 @@
}
/* load image raw data */
- load_size = (int)ccci_copy_raw_data(image, mem_addr,
+ load_size = (int)ccci_copy_raw_data(fit, mem_addr,
hdr_offset + p_hdr->info.hdr_sz, p_hdr->info.dsz);
if ((unsigned int)load_size != p_hdr->info.dsz) {
ALWAYS_LOG("load sub-image data fail(%d:%d)\n", load_size, p_hdr->info.dsz);
@@ -268,9 +290,76 @@
return ret;
}
+static int load_image_by_name(const char *partition_list[], const char *name,
+ unsigned char *mem_addr, unsigned int max_size, unsigned int flags)
+{
+ int i = 0;
+ int hdr_offset;
+ union mkimg_hdr *p_hdr;
+ int load_size;
+ int ret = -1;
+ int img_size_with_padding;
+ int partiton_idx = 0;
+ /* allocate partition header memory first */
+ p_hdr = (union mkimg_hdr *)malloc(sizeof(union mkimg_hdr));
+ if (p_hdr==NULL) {
+ ALWAYS_LOG("alloc mem for hdr fail\n");
+ return -LD_ERR_PT_ALLOC_HDR_MEM_FAIL;
+ }
-static int load_main_image(struct download_info_s *main_img, void* image,
+ while (partition_list[i] != NULL) {
+ hdr_offset = find_hdr_in_partiton(partition_list[i], name, p_hdr, sizeof(union mkimg_hdr));
+ if (hdr_offset < 0) {
+ i++;
+ continue;
+ }
+ partiton_idx = i;
+ break;
+ }
+
+ if (hdr_offset < 0) {
+ ALWAYS_LOG("load sub image %s fail\n", name);
+ ret = -LD_ERR_GET_COM_CHK_HDR_FAIL;
+ goto _Exit;
+ }
+
+ LD_DBG_LOG("dump p_hdr info\n");
+ LD_DBG_LOG(" p_hdr->info.magic:%x\n", p_hdr->info.magic);
+ LD_DBG_LOG(" p_hdr->info.dsz:%x\n", p_hdr->info.dsz);
+ LD_DBG_LOG(" p_hdr->info.name:%s\n", p_hdr->info.name);
+ LD_DBG_LOG(" p_hdr->info.mode:%x\n", p_hdr->info.mode);
+ LD_DBG_LOG(" p_hdr->info.hdr_sz:%x\n", p_hdr->info.hdr_sz);
+
+ if (p_hdr->info.dsz > max_size) {
+ ALWAYS_LOG("load sub image %s fail\n", name);
+ ret = -LD_ERR_PT_IMG_TOO_LARGE;
+ goto _Exit;
+ }
+
+ /* load image raw data */
+ load_size = (int)ccci_load_raw_data(partition_list[i], mem_addr, hdr_offset + p_hdr->info.hdr_sz,
+ p_hdr->info.dsz);
+ if ((unsigned int)load_size != p_hdr->info.dsz) {
+ ALWAYS_LOG("load sub-image data fail(%d:%d)\n", load_size, p_hdr->info.dsz);
+ ret = -LD_ERR_PT_LD_IMG_DATA_FAIL;
+ goto _Exit;
+ }
+
+ /* Calcualte size that add padding */
+ img_size_with_padding = (load_size + p_hdr->info.align_sz - 1) & (~(p_hdr->info.align_sz -1));
+ /* Clear padding data to 0 */
+ for (i = 0; i < img_size_with_padding - (int)p_hdr->info.dsz; i++)
+ mem_addr[p_hdr->info.dsz + i] = 0;
+
+ ret = load_size;
+
+_Exit:
+ free(p_hdr);
+ return ret;
+}
+
+static int load_main_image(struct download_info_s *main_img,
unsigned char **base_addr, int *resv_mem_size)
{
unsigned char *md_mem_base;
@@ -286,9 +375,34 @@
load_size = ret;
goto _Exit;
}
+#ifdef MTK_SECURITY_SW_SUPPORT
+ get_fit_buf[0].label = main_img->partition_name;
- load_size = copy_image_by_name(image, main_img->image_name, md_mem_base,
+ ret = ccci_fit_get_image(get_fit_buf[0].label, &get_fit_buf[0].load_buf);
+ if (ret < 0) {
+ ALWAYS_LOG("fit_get_image failed: %s %d!\n", get_fit_buf[0].label, ret);
+ goto _Exit;
+ }
+
+ ret = ccci_fit_conf_verify_sig(NULL, get_fit_buf[0].load_buf);
+ if (ret < 0) {
+ ALWAYS_LOG("fit_conf_verify_sig failed: %s %d!\n", get_fit_buf[0].label, ret);
+ goto _Exit;
+ }
+
+ ret = ccci_fit_load_image(NULL, "kernel", get_fit_buf[0].load_buf, NULL ,NULL, NULL, true);
+ if (ret < 0) {
+ ALWAYS_LOG("MD-fit image verify failed!\n");
+ goto _Exit;
+ }
+ load_size = copy_image_by_name(get_fit_buf[0].load_buf, main_img->image_name, md_mem_base,
main_img->max_size, main_img->ext_flag);
+#else
+ partition_list[0] = main_img->partition_name;
+ partition_list[1] = NULL;
+ load_size = load_image_by_name(partition_list, main_img->image_name, md_mem_base,
+ main_img->max_size, main_img->ext_flag);
+#endif
if (load_size < 0) {
ret = load_size;
/* If enter this function, it means we hope modem feature should be support,
@@ -346,20 +460,38 @@
return 0;
}
-/* --- load md raw data to DRAM that listed at table --- */
-static int ld_img_at_list(struct modem_info_s *info)
+/* --- load raw data to DRAM that listed at table --- */
+static int ld_img_at_list(struct download_info_s img_list[], struct modem_info_s *info)
{
int load_size;
int md_mem_resv_size = 0;
int md_mem_required_size = 0;
unsigned char *md_resv_mem_addr = NULL;
int ret = 0;
- int i = 0;
+ int i = 0, j = 0;
+ struct download_info_s *curr;
struct download_info_s *md_main_img;
- md_main_img = image_list;
+ void *fit = NULL;
+ const char *partition_list[2];
+
+ if (img_list == NULL) {
+ ALWAYS_LOG("image list is NULL!\n");
+ return -LD_ERR_PT_IMG_LIST_NULL;
+ }
+ /* find main image at list */
+ curr = img_list;
+ while (curr->img_type != 0) {
+ if (curr->img_type == main_img)
+ break;
+ curr++;
+ }
+ if (curr->img_type != main_img)
+ return -LD_ERR_ASS_FIND_MAIN_INF_FAIL;
+
+ md_main_img = curr;
/* alloc memory and load main image */
- ret = load_main_image(md_main_img, get_fit_buf[0].decompress_buf, &md_resv_mem_addr, &md_mem_resv_size);
+ ret = load_main_image(md_main_img, &md_resv_mem_addr, &md_mem_resv_size);
if (ret < 0)
goto _MD_Exit;
/* check header verify and sub image offset and size update */
@@ -367,13 +499,14 @@
info->resv_mem_size = md_mem_resv_size;
info->load_size = ret;
ret = verify_main_img_check_header(info);
+
if (ret < 0) {
ALWAYS_LOG("md check header verify fail:%d\n", ret);
goto _MD_Exit;
}
if (md_main_img->ass_func) {
- ret = md_main_img->ass_func((void *)info, (void *)image_list);
+ ret = md_main_img->ass_func((void *)info, (void *)img_list);
if (ret < 0) {
ALWAYS_LOG("assistan func process fail:%d\n", ret);
goto _MD_Exit;
@@ -382,31 +515,74 @@
md_mem_required_size = info->resv_mem_size;
/* load sub image one by one */
- i = 1;
- while (image_list[i].img_type != 0) {
+ curr = img_list;
+ i = 0;
+ while (curr[i].img_type != 0) {
+ get_fit_buf[i].label = curr[i].partition_name;
+
+ /* By pass main image */
+ if (curr[i].img_type == main_img) {
+ i++;
+ continue;
+ }
/* By pass ext image that no need to load after query main image setting */
- if ((image_list[i].mem_addr == NULL) || (image_list[i].img_size == 0)) {
+ if ((curr[i].mem_addr == NULL) || (curr[i].img_size == 0)) {
i++;
continue;
}
+#ifdef MTK_SECURITY_SW_SUPPORT
+ //check part already load or not
+ for(j= 0; j < i; j++) {
+ if(strcmp(get_fit_buf[i].label, get_fit_buf[j].label) == 0) {
+ get_fit_buf[i].load_buf = get_fit_buf[j].load_buf;
+ break;
+ }
+ }
- load_size = copy_image_by_name(get_fit_buf[i].decompress_buf, image_list[i].image_name, image_list[i].mem_addr,
- image_list[i].max_size, image_list[i].ext_flag);
- if ((load_size >= 0) && (load_size > image_list[i].img_size)) {
+ //need load partition and verify in first time
+ if(j == i) {
+ ret = ccci_fit_get_image(get_fit_buf[i].label, &get_fit_buf[i].load_buf);
+ if (ret < 0) {
+ ALWAYS_LOG("fit_get_image failed: %s %d!\n", get_fit_buf[i].label, ret);
+ goto _MD_Exit;
+ }
+
+ ret = ccci_fit_conf_verify_sig(NULL, get_fit_buf[i].load_buf);
+ if (ret < 0) {
+ ALWAYS_LOG("fit_conf_verify_sig failed: %s %d!\n", get_fit_buf[i].label, ret);
+ goto _MD_Exit;
+ }
+
+ ret = ccci_fit_load_image(NULL, "kernel", get_fit_buf[i].load_buf, NULL ,NULL, NULL, true);
+ if (ret < 0) {
+ ALWAYS_LOG("MD-fit image verify failed!\n");
+ goto _MD_Exit;
+ }
+ }
+
+ load_size = copy_image_by_name(get_fit_buf[i].load_buf, curr[i].image_name, curr[i].mem_addr,
+ curr[i].max_size, curr[i].ext_flag);
+#else
+ partition_list[0] = curr[i].partition_name;
+ partition_list[1] = NULL;
+ load_size = load_image_by_name(partition_list, curr[i].image_name, curr[i].mem_addr,
+ curr[i].max_size, curr[i].ext_flag);
+#endif
+ if ((load_size >= 0) && (load_size > curr[i].img_size)) {
ALWAYS_LOG("image size not sync to chk_hdr hdr:[0x%x]<>a:[0x%x]\n",
- image_list[i].img_size, load_size);
+ curr[i].img_size, load_size);
ret = -LD_ERR_PT_IMG_SIZE_NOT_SYNC_CHK_HDR;
goto _MD_Exit;
} else if (load_size < 0) {
ALWAYS_LOG("load sub image: %s fail with ret info: %s\n",
- image_list[i].image_name, ld_md_errno_to_str(load_size));
+ curr[i].image_name, ld_md_errno_to_str(load_size));
ret = load_size;
goto _MD_Exit;
}
- if (image_list[i].img_type == dsp_img) {
- image_list[i].img_size = load_size;
- ret = dsp_img_post_process(&image_list[i], info->md_id);
+ if (curr[i].img_type == dsp_img) {
+ curr[i].img_size = load_size;
+ ret = dsp_img_post_process(&curr[i], info->md_id);
if (ret < 0)
goto _MD_Exit;
}
@@ -434,72 +610,11 @@
return ret;
}
-
-/* --- load raw data to DRAM from storage --- */
-static int ld_list_img_from_storge(struct download_info_s img_list[])
-{
- int i = 0, j = 0;
- int ret = 0;
-
- /* first image need main image */
- if (img_list[i].img_type != main_img)
- return -LD_ERR_ASS_FIND_MAIN_INF_FAIL;
-
- while (img_list[i].img_type != 0) {
- /* get partition name */
- get_fit_buf[i].label = img_list[i].partition_name;
-
- // check part already load or not
- for (j = 0; j < i; j++) {
- if (strcmp(get_fit_buf[i].label, get_fit_buf[j].label) == 0) {
- get_fit_buf[i].load_buf = get_fit_buf[j].load_buf;
- break;
- }
- }
-
- // already load
- if (j != i) {
- i++;
- continue;
- }
-
- ret = fit_get_image(get_fit_buf[i].label, &get_fit_buf[i].load_buf);
- if (ret < 0) {
- ALWAYS_LOG("fit_get_image failed: %s %d!\n", get_fit_buf[i].label, ret);
- goto ERR_EXIT;
- }
-#ifdef MTK_SECURITY_SW_SUPPORT
- ret = fit_conf_verify_sig(NULL, get_fit_buf[i].load_buf);
- if (ret < 0) {
- ALWAYS_LOG("fit_conf_verify_sig failed: %s %d!\n", get_fit_buf[i].label, ret);
- goto ERR_EXIT;
- }
- ret = ccci_fit_load_image(NULL, "kernel", get_fit_buf[i].load_buf, NULL, NULL, NULL, true);
- if (ret < 0) {
- ALWAYS_LOG("MD-fit image verify failed!\n");
- goto ERR_EXIT;
- }
-#else
- ret = ccci_fit_load_image(NULL, "kernel", get_fit_buf[i].load_buf, NULL, NULL, NULL, false);
- if (ret < 0) {
- ALWAYS_LOG("MD-fit image verify failed!\n");
- goto ERR_EXIT;
- }
-#endif
- i++;
- }
-
- return 0;
-
-ERR_EXIT:
- return ret;
-}
-
static int set_part_name_suffix(const char *part_name,
- struct download_info_s *img_list, int img_num)
+ struct download_info_s *image_list, int img_num)
{
int name_len = 0;
- int org_img_len = 0;
+ int org_img_len = 0;
int i = 0;
char *ptr = part_name_buf;
char suffix[] = "_a";
@@ -511,158 +626,159 @@
if(strcmp(suffix, "_a") == 0 || strcmp(suffix, "_b") == 0) {
for(i = 0 ; i < img_num; i++) {
- strcpy(ptr, img_list[i].partition_name);
- strcpy(ptr + strlen(img_list[i].partition_name), suffix);
- org_img_len = strlen(img_list[i].partition_name);
- img_list[i].partition_name = ptr;
+ strcpy(ptr, image_list[i].partition_name);
+ strcpy(ptr + strlen(image_list[i].partition_name), suffix);
+ org_img_len = strlen(image_list[i].partition_name);
+ image_list[i].partition_name = ptr;
ptr = ptr + org_img_len + 2;
- *ptr = '\0';
- ptr++;
+ *ptr = '\0';
+ ptr++;
}
}
else{
ALWAYS_LOG("can't find a b update suffix string part name : %s\n", part_name);
- return 0;
+ return 0;
}
for(i = 0 ; i < img_num; i++){
- ALWAYS_LOG("MD load image: %s\n", img_list[i].partition_name);
+ ALWAYS_LOG("MD load image: %s\n", image_list[i].partition_name);
}
-
return 1;
}
-static int decompress_img(void)
+/* --- Download list --------------------------------------- */
+/* --- This part is used for normal load ------------------- */
+static struct download_info_s md1_download_list_v50000[] = {/* for Gen97 FPGA */
+ /* img type | partition |image name | max size |img size |ext_flag | mem addr | ass func p */
+ {main_img, "md1img", "md1rom", 0x10000000, 0, 0, NULL, ass_func_for_v6_normal_img},
+ {dsp_img, "md1dsp", "md1dsp", 0xA00000, 0, 0, NULL, NULL},
+ {drdi_img, "md1img", "md1drdi", 0x4000000, 0, 0, NULL, NULL},
+ {0, NULL, NULL, 0, 0, 0, NULL, NULL},
+};
+
+static struct download_info_s md1_download_list_v50001[] = {/* for 92 */
+ /* img type | partition | image name | max size | img size | ext_flag | mem addr */
+ {main_img, "md1img", "md1rom", 0x16000000, 0, DUMMY_AP_FLAG, NULL,
+ ass_func_for_97_md_only_img},
+ {dsp_img, "md1dsp", "md1dsp", 0xA00000, 0, DUMMY_AP_FLAG, NULL, NULL},
+ {ramdisk_img, "USERDATA", "md1ramdisk", 0x2000000, 0, DUMMY_AP_FLAG, NULL, NULL},
+ {0, NULL, NULL, 0, 0, 0, NULL, NULL},
+};
+
+static char md1_version[65];
+static char md3_version[65];
+static int md1_version_rdy, md3_version_rdy;
+
+int load_modem_image(const char *part_name)
{
+ struct modem_info_s info;
+ unsigned long long ld_img_ver;
+ long long plat_query_ret;
int err_code = 0;
- int ret = 0;
- int smem_size = 0;
- int size = 0;
- int i = 0, j = 0;
- int image_offset = 0;
- void* image_temp_addr = NULL;
-
- /* use md cache for temp buffer */
- image_temp_addr = resv_named_memory("md_smem_cache", smem_size);
- if (image_temp_addr == NULL) {
- ALWAYS_LOG("allocate MD share memory fail\n");
- err_code = -LD_ERR_PT_ALLOC_SMEM_FAIL;
- goto exit;
- }
-
- while (i < img_num) {
- // check part already decompress or not
- for (j = 0; j < i; j++) {
- if (strcmp(get_fit_buf[i].label, get_fit_buf[j].label) == 0) {
- get_fit_buf[i].decompress_buf = get_fit_buf[j].decompress_buf;
- break;
- }
- }
-
- if (i != j) {
- i++;
- continue;
- }
-
- get_fit_buf[i].decompress_buf = image_offset + image_temp_addr;
- if (get_fit_buf[i].decompress_buf == NULL) {
- err_code = -LD_ERR_PT_MD1_LOAD_FAIL;
- ALWAYS_LOG("decompress_buf mempool alloc failed \n", ret);
- goto exit;
- }
-
- /* decompress image */
- ret = ccci_fit_decompress_data(get_fit_buf[i].load_buf, get_fit_buf[i].decompress_buf, &size);
- if (ret < 0 || size > 0x10000000) {
- err_code = -LD_ERR_PT_MD1_LOAD_FAIL;
- ALWAYS_LOG("md1 load fail:%d\n", ret);
- goto exit;
- }
-
- // free load buff
- if (get_fit_buf[i].load_buf != NULL)
- mempool_free(get_fit_buf[i].load_buf);
- get_fit_buf[i].load_buf = NULL;
-
- image_offset += size;
- i++;
- }
-
- /* check image size */
- if (image_offset > 64 * 1024 * 1024) {
- ALWAYS_LOG("need check temp buffer size, or change temp addr\n");
- err_code = -LD_ERR_PT_MD1_LOAD_FAIL;
- goto exit;
- }
-
-exit:
- return err_code;
-}
-
-static int md_main_thread(void)
-{
- struct modem_info_s info = {0};
- int err_code = 0;
- int ret = 0;
+ int ret;
unsigned char *smem_addr = NULL;
int smem_size = 0;
unsigned int md_load_status_flag = 0;
- int i = 0;
- char buf[65] = {0};
+ char buf[128];
+ struct download_info_s *image_list = NULL;
+ int img_num = 0;
+ int i = 0, j = 0;
- ALWAYS_LOG("md_main_thread!\n");
+ //PROFILING_START("load_modem_image");
+ memset(md1_version, 0, sizeof(md1_version));
+ memset(md3_version, 0, sizeof(md3_version));
+ md1_version_rdy = 0;
+ md3_version_rdy = 0;
- /* tag info init */
- ret = ccci_lk_tag_info_init(0);
+ ccci_ld_md_wrapper_api_init();
+ ALWAYS_LOG("load_modem_image part_name: %s\n", part_name);
+
+ //check ld version
+ ld_img_ver = ccci_hal_get_ld_md_plat_setting("ld_version");
+ switch (ld_img_ver) {
+ case 0x50000:
+ image_list = md1_download_list_v50000;
+ img_num = sizeof(md1_download_list_v50000) / sizeof(struct download_info_s) - 1;
+ break;
+ case 0x50001:
+ image_list = md1_download_list_v50001;
+ img_num = sizeof(md1_download_list_v50001) / sizeof(struct download_info_s) - 1;
+ break;
+ default:
+ image_list = md1_download_list_v50000;
+ img_num = sizeof(md1_download_list_v50000) / sizeof(struct download_info_s) - 1;
+ break;
+ }
+
+ //check partition name by ab update
+ set_part_name_suffix(part_name, image_list, img_num);
+
+ /* --- 1. Get platform configure setting ---*/
+ if (ccci_hal_get_ld_md_plat_setting("support_detect") > 0) {
+ ALWAYS_LOG("Enter %s v2.0\n", __func__);
+ } else {
+ ALWAYS_LOG("Using %s v1.0\n", __func__);
+ err_code = -LD_ERR_PT_V2_PLAT_NOT_RDY;
+ goto _err_exit;
+ }
+ /* 2. tag info init */
+ ret = ccci_lk_tag_info_init((unsigned long long)((unsigned long)smem_addr));
if (ret < 0) {
ALWAYS_LOG("allocate tag memory fail\n");
err_code = -LD_ERR_PT_ALLOC_CMD_BUF_FAIL;
- goto exit;
+ goto _err_exit;
}
+ /* 3. tel info init */
- err_code = decompress_img();
- if (err_code < 0) {
- ALWAYS_LOG("decompress_img failed \n");
- goto exit;
- }
+ /* 4. security info init */
+ /* 5. Prepare done, begin to load MD one by one */
+ ALWAYS_LOG("-- MD1 --\n");
+ /* Load image */
memset(&info, 0, sizeof(struct modem_info_s));
info.md_id = MD_SYS1;
- /* load modem image */
- ret = ld_img_at_list(&info);
+ ret = ld_img_at_list(image_list, &info);
if (ret < 0) {
err_code = -LD_ERR_PT_MD1_LOAD_FAIL;
update_md_err_to_lk_info(MD_SYS1, ret);
ALWAYS_LOG("md1 load fail:%d\n", ret);
- goto exit;
+ goto _load_md2;
}
/* Load success */
update_md_load_flag_to_lk_info(MD_SYS1);
add_hdr_info(s_g_md_ld_status, &info);
- md_load_status_flag |= (1 << MD_SYS1);
+ md_load_status_flag |= (1<<MD_SYS1);
+_load_md2:
+ /* Do nothong currently */
+ goto _load_md3;
+_load_md3:
- /* smem init: start */
- smem_size = (int)ccci_hal_get_ld_md_plat_setting("share_memory_size");
- if (smem_size <= 0) {
- ALWAYS_LOG("Share memory size abnormal:%d\n", smem_size);
+_load_end:
+ if (s_g_md_ld_record_num == 0)
+ goto _err_exit;
+ /* 6. smem init: start */
+ plat_query_ret = ccci_hal_get_ld_md_plat_setting("share_memory_size");
+
+ if (plat_query_ret <= 0) {
+ ALWAYS_LOG("Share memory size abnormal:%d\n", (int)plat_query_ret);
err_code = -LD_ERR_PT_SMEM_SIZE_ABNORMAL;
- goto exit;
+ goto _err_exit;
}
+ smem_size = (int)plat_query_ret;
smem_addr = resv_named_memory("md_smem_ncache", smem_size);
if (smem_addr == NULL) {
ALWAYS_LOG("allocate MD share memory fail\n");
err_code = -LD_ERR_PT_ALLOC_SMEM_FAIL;
- goto exit;
+ goto _err_exit;
}
keep_md_ncache_memory((unsigned long long)smem_addr, smem_size);
ccci_hal_apply_hw_remap_for_md_smem(smem_addr, smem_size);
ccci_hal_amms_pos_notify_secure(smem_addr);
/* smem init: end */
-
- /* information settings. */
+ /* 7. information settings. */
/* update hdr_count info */
if (insert_ccci_tag_inf("hdr_count", (char *)&s_g_md_ld_record_num, sizeof(unsigned int)) < 0)
ALWAYS_LOG("insert hdr_count fail\n");
@@ -680,12 +796,13 @@
/* free all reserved share memory */
ALWAYS_LOG("ccci_hal_apply_platform_setting ret %d\n", ret);
err_code = -LD_ERR_PT_APPLY_PLAT_SETTING_FAIL;
- goto exit;
+ update_common_err_to_lk_info(err_code);
+ goto _err_exit;
} else if (ret == 0) {
/* free all reserved share memory */
ALWAYS_LOG("No MD Image enabled %d\n", ret);
/* err_code = 0; */
- goto exit;
+ goto _err_exit;
} else if (ret < smem_size) {
/* smem size returned from platform setting API, */
/* resize share memory to final size */
@@ -696,109 +813,45 @@
if (load_success_notify)
load_success_notify(err_code);
- ccci_lk_info_ctl_dump();
+ goto _OK_and_exit;
- ret = ccci_get_md_version(MD_SYS1, buf, 65);
- CRITICAL_LOG("[MD1 Baseband version] %s(%d)\r\n", buf, ret);
-exit:
- for (i = 0; i < sizeof(get_fit_buf) / sizeof(struct fit_buf); i++) {
- if (get_fit_buf[i].load_buf != NULL) {
- mempool_free(get_fit_buf[i].load_buf);
- }
- get_fit_buf[i].load_buf = NULL;
- }
- update_common_err_to_lk_info(err_code);
- ASSERT(err_code == 0);
-#if ENABLE_MODEM_LOAD_MULTI_THREAD
- signal_md_cpu_end_event();
-#endif
- return err_code;
-}
-
-/* --- Download list --------------------------------------- */
-/* --- This part is used for normal load ------------------- */
-static struct download_info_s md1_download_list_v50000[] = {/* for Gen97 FPGA */
- /* img type | partition |image name | max size |img size |ext_flag | mem addr | ass func p */
- {main_img, "md1img", "md1rom", 0x10000000, 0, 0, NULL, ass_func_for_v6_normal_img},
- {dsp_img, "md1dsp", "md1dsp", 0xA00000, 0, 0, NULL, NULL},
- {drdi_img, "md1img", "md1drdi", 0x4000000, 0, 0, NULL, NULL},
- {0, NULL, NULL, 0, 0, 0, NULL, NULL},
-};
-
-static struct download_info_s md1_download_list_v50001[] = {/* for 92 */
- /* img type | partition | image name | max size | img size | ext_flag | mem addr */
- {main_img, "md1img", "md1rom", 0x16000000, 0, DUMMY_AP_FLAG, NULL,
- ass_func_for_97_md_only_img},
- {dsp_img, "md1dsp", "md1dsp", 0xA00000, 0, DUMMY_AP_FLAG, NULL, NULL},
- {ramdisk_img, "USERDATA", "md1ramdisk", 0x2000000, 0, DUMMY_AP_FLAG, NULL, NULL},
- {0, NULL, NULL, 0, 0, 0, NULL, NULL},
-};
-
-static char md1_version[65] = {0};
-
-int load_modem_image(const char *part_name)
-{
- unsigned long long ld_img_ver = {0};
- int err_code = 0, ret = 0;
-
- // PROFILING_START("load_modem_image");
- ALWAYS_LOG("load_modem_image part_name: %s\n", part_name);
-
- // check ld version
- ld_img_ver = ccci_hal_get_ld_md_plat_setting("ld_version");
- switch (ld_img_ver) {
- case 0x50000:
- image_list = md1_download_list_v50000;
- img_num = sizeof(md1_download_list_v50000) / sizeof(struct download_info_s) - 1;
- break;
- case 0x50001:
- image_list = md1_download_list_v50001;
- img_num = sizeof(md1_download_list_v50001) / sizeof(struct download_info_s) - 1;
- break;
- default:
- image_list = md1_download_list_v50000;
- img_num = sizeof(md1_download_list_v50000) / sizeof(struct download_info_s) - 1;
- break;
- }
-
- // check partition name by ab update
- set_part_name_suffix(part_name, image_list, img_num);
-
- /* Prepare done, load md image to dram */
- ALWAYS_LOG("--Load MD1 --\n");
-
- /* Load image to temp region */
- ret = ld_list_img_from_storge(image_list);
- if (ret < 0) {
- err_code = -LD_ERR_PT_MD1_LOAD_FAIL;
- ALWAYS_LOG("md1 load fail:%d\n", ret);
- goto EXIT;
- }
-
- /* start md main thread */
-#if ENABLE_MODEM_LOAD_MULTI_THREAD
- ALWAYS_LOG("create a thread for md cpu task\n");
- thread_detach_and_resume(thread_create("md_cpu_task", &md_main_thread, NULL, DEFAULT_PRIORITY-1, DEFAULT_STACK_SIZE));
-#else
- err_code = md_main_thread();
-#endif
-
-EXIT:
+_err_exit:
update_common_err_to_lk_info(err_code);
- return err_code;
- }
+
+_OK_and_exit:
+ ccci_ld_md_add_wrapper_api_info();
+ ccci_lk_info_ctl_dump();
+#ifdef mtk09077_temp_for_build
+ // ALWAYS_LOG("[PROFILE] ------- %s init cost %d ms ----\n", __func__,
+ // (int)get_timer(time_lk_md_init));
+#else
+ //PROFILING_END();
+#endif
+ ret = ccci_get_md_version(MD_SYS1, buf, 128);
+ CRITICAL_LOG("[MD1 Baseband version] %s(%d)\r\n", buf, ret);
+ ret = ccci_get_md_version(MD_SYS3, buf, 128);
+ CRITICAL_LOG("[MD3 Baseband version] %s(%d)\r\n", buf, ret);
+ return 0;
+}
void ccci_update_md_version(int md_id, unsigned char ver[])
{
if (md_id == MD_SYS1) {
+ md1_version_rdy = 1;
snprintf(md1_version, 65, "%s", ver);
+ } else if (md_id == MD_SYS3) {
+ md3_version_rdy = 1;
+ snprintf(md3_version, 65, "%s", ver);
}
}
int ccci_get_md_version(int md_id, char buf[], int size)
{
- if ((md_id == MD_SYS1))
+ if ((md_id == MD_SYS1) && md1_version_rdy)
return snprintf(buf, size, "%s", md1_version);
+ else if ((md_id == MD_SYS3) && md3_version_rdy)
+ return snprintf(buf, size, "%s", md3_version);
+
return -1;
}
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_core.h b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_core.h
index 981c4d6..6603709 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_core.h
+++ b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_core.h
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (c) 2019 MediaTek Inc.
*
@@ -403,6 +402,8 @@
int ccci_resize_reserve_mem(unsigned char *addr, int old_size, int new_size);
int ccci_free_not_used_reserved_memory(unsigned char *md_start_addr,
int reserved, int required);
+void ccci_ld_md_wrapper_api_init(void);
+void ccci_ld_md_add_wrapper_api_info(void);
/* --- sec api --- */
void ccci_ld_md_sec_init(void);
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_hal.c b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_hal.c
index 5c60f4a..4de746d 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_hal.c
+++ b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_hal.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (c) 2019 MediaTek Inc.
*
@@ -40,6 +39,12 @@
{
long long (*NULL_FP)(const char str[]) = 0;
+ if (strcmp(cfg_name, "support_detect") == 0) {
+ if (plat_ccci_get_ld_md_plat_setting == NULL_FP)
+ return 0LL;
+ return 1LL;
+ }
+
if (plat_ccci_get_ld_md_plat_setting == NULL_FP)
return 0LL;
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_tag_dt.c b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_tag_dt.c
index ca2c942..4010a40 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_tag_dt.c
+++ b/src/bsp/lk/platform/mt2735/drivers/md/ccci_ld_md_tag_dt.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (c) 2019 MediaTek Inc.
*
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/ccci_lk_load_img_plat.c b/src/bsp/lk/platform/mt2735/drivers/md/ccci_lk_load_img_plat.c
index 0e3214f..9e9041b 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/ccci_lk_load_img_plat.c
+++ b/src/bsp/lk/platform/mt2735/drivers/md/ccci_lk_load_img_plat.c
@@ -1021,8 +1021,12 @@
#endif
/* Check loading validation */
- if ((load_md_flag & (1 << MD_SYS1)) == 0) {
- ALWAYS_LOG("md1 not enable\n");
+ if (((load_md_flag & (1<<MD_SYS1)) == 0) && (load_md_flag & (1<<MD_SYS3))) {
+ ALWAYS_LOG("md3 depends on md1,but md1 not loaded\n");
+ return -LD_ERR_PLAT_MD1_NOT_RDY;
+ }
+ if ((load_md_flag & ((1<<MD_SYS1)|(1<<MD_SYS3))) == 0) {
+ ALWAYS_LOG("both md1 and md3 not enable\n");
return 0;
}
smem_final_size = cal_share_mem_layout(load_md_flag);
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/include/ccci_event.h b/src/bsp/lk/platform/mt2735/drivers/md/include/ccci_event.h
deleted file mode 100644
index a6b95c3..0000000
--- a/src/bsp/lk/platform/mt2735/drivers/md/include/ccci_event.h
+++ /dev/null
@@ -1,12 +0,0 @@
-// SPDX-License-Identifier: MIT
-/*
- * Copyright (c) 2021 MediaTek Inc.
- *
- * Use of this source code is governed by a MIT-style
- * license that can be found in the LICENSE file or at
- * https://opensource.org/licenses/MIT
- */
-#pragma once
-
-void signal_md_cpu_end_event(void);
-void wait_for_md_cpu_task(void);
\ No newline at end of file
diff --git a/src/bsp/lk/platform/mt2735/drivers/md/rules.mk b/src/bsp/lk/platform/mt2735/drivers/md/rules.mk
index fcb905d..a80fd12 100644
--- a/src/bsp/lk/platform/mt2735/drivers/md/rules.mk
+++ b/src/bsp/lk/platform/mt2735/drivers/md/rules.mk
@@ -1,4 +1,3 @@
-# SPDX-License-Identifier: MIT
LOCAL_DIR := $(GET_LOCAL_DIR)
MODULE_SRCS += \
@@ -13,7 +12,6 @@
$(LOCAL_DIR)/load_md_wrapper.c \
$(LOCAL_DIR)/ccci_fit.c \
$(LOCAL_DIR)/cutils.c \
- $(LOCAL_DIR)/ccci_event.c
MODULE_DEPS += \
lib/fit \
diff --git a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand/nand_slc.c b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand/nand_slc.c
index b733af1..4e118a0 100644
--- a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand/nand_slc.c
+++ b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand/nand_slc.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (C) 2017 MediaTek Inc.
* Licensed under either
@@ -35,58 +34,53 @@
static int nand_slc_cache_read_page(struct nand_chip *chip,
struct nand_ops *ops, int count)
{
- struct nand_base *nand = chip->nand;
- struct nand_device *dev = nand->dev;
- int i, ret = 0;
- int row = 0, col = 0, sectors;
- u8 *data, *oob;
+ struct nand_base *nand = chip->nand;
+ struct nand_device *dev = nand->dev;
+ int i, ret = 0;
+ int row = 0, col = 0, sectors;
+ u8 *data, *oob;
- for (i = 0; i < count; i++) {
- row = ops[i].row;
- col = ops[i].col;
+ for (i = 0; i <= count; i++) {
+ if (i < count) {
+ row = ops[i].row;
+ col = ops[i].col;
- nand->addressing(nand, &row, &col);
+ nand->addressing(nand, &row, &col);
+ }
- if (i == count - 1) {
- ops[i].status = nand->read_cache(nand, true);
- } else {
- if (i == 0) {
- ops[i].status = nand->read_page(nand, row);
- if (ops[i].status < 0) {
- ret = ops[i].status;
- pr_err("%s %d failed i:%d count:%d ret:%d\n",
- __func__, __LINE__, i, count, ret);
- continue;
- }
- }
+ if (i == 0) {
+ ops[i].status = nand->read_page(nand, row);
+ continue;
+ }
- ops[i].status = nand->read_cache(nand, false);
- }
+ if (i == count - 1) {
+ ops[i].status = nand->read_last(nand);
+ continue;
+ }
- if (ops[i].status < 0) {
- ret = ops[i].status;
- pr_err("%s %d read page failed i:%d ret:%d\n",
- __func__, __LINE__, i, ret);
- continue;
- }
+ ops[i].status = nand->read_cache(nand, row);
+ if (ops[i - 1].status < 0) {
+ ret = ops[i - 1].status;
+ continue;
+ }
- row = ops[i].row;
- col = ops[i].col;
- data = ops[i].data;
- oob = ops[i].oob;
- sectors = ops[i].len / chip->sector_size;
- ops[i].status = nand->read_data(nand, row, col, sectors,
- data, oob);
- if (ops[i].status > 0) {
- ops[i].status =
- ops[i].status >=
- dev->endurance->max_bitflips ? -ENANDFLIPS : 0;
- }
+ row = ops[i - 1].row;
+ col = ops[i - 1].col;
+ data = ops[i - 1].data;
+ oob = ops[i - 1].oob;
+ sectors = ops[i - 1].len / chip->sector_size;
+ ops[i - 1].status = nand->read_data(nand, row, col, sectors,
+ data, oob);
+ if (ops[i - 1].status > 0) {
+ ops[i - 1].status =
+ ops[i - 1].status >=
+ dev->endurance->max_bitflips ? -ENANDFLIPS : 0;
+ }
- ret = i ? min_t(int, ret, ops[i - 1].status) : ops[i].status;
- }
+ ret = min_t(int, ret, ops[i - 1].status);
+ }
- return ret;
+ return ret;
}
static int nand_slc_read_multi(struct nand_base *nand, int row)
@@ -160,16 +154,16 @@
struct nand_ops *ops,
int count)
{
- struct nand_base *nand = chip->nand;
- struct nand_slc *slc = base_to_slc(nand);
+ struct nand_base *nand = chip->nand;
+ struct nand_slc *slc = base_to_slc(nand);
- if (slc->cache && (count >= (chip->block_pages >> 2)))
- return slc->cache_read_page(chip, ops, count);
+ if (slc->cache)
+ return slc->cache_read_page(chip, ops, count);
- if (slc->multi)
- return slc->multi_read_page(chip, ops, count);
+ if (slc->multi)
+ return slc->multi_read_page(chip, ops, count);
- return slc->read_page(chip, ops, count);
+ return slc->read_page(chip, ops, count);
}
static int nand_slc_cache_write_page(struct nand_chip *chip,
@@ -294,16 +288,16 @@
static int nand_chip_slc_write_page(struct nand_chip *chip,
struct nand_ops *ops, int count)
{
- struct nand_base *nand = chip->nand;
- struct nand_slc *slc = base_to_slc(nand);
+ struct nand_base *nand = chip->nand;
+ struct nand_slc *slc = base_to_slc(nand);
- if (slc->cache && (count >= (chip->block_pages >> 2)))
- return slc->cache_write_page(chip, ops, count);
+ if (slc->cache)
+ return slc->cache_write_page(chip, ops, count);
- if (slc->multi)
- return slc->multi_write_page(chip, ops, count);
+ if (slc->multi)
+ return slc->multi_write_page(chip, ops, count);
- return slc->write_page(chip, ops, count);
+ return slc->write_page(chip, ops, count);
}
static int nand_slc_erase_multi(struct nand_base *nand, int row)
@@ -536,8 +530,7 @@
nand = &slc->base;
memcpy(nand, slc->parent, sizeof(struct nand_base));
- slc->multi = false;
- slc->cache = true;
+ slc->cache = slc->multi = false;
slc->read_page = chip->read_page;
slc->write_page = chip->write_page;
diff --git a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand_base.c b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand_base.c
index a94948c..059c686 100644
--- a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand_base.c
+++ b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand_base.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (C) 2017 MediaTek Inc.
* Licensed under either
@@ -225,17 +224,28 @@
dev->array_timing->tBERS);
}
-static int nand_base_read_cache(struct nand_base *nand, bool last)
+static int nand_base_read_cache(struct nand_base *nand, int row)
{
struct nfi *nfi = nand->nfi;
struct nand_device *dev = nand->dev;
- short cmd;
-
- cmd = (last == true) ?
- dev->cmds->read_cache_last : dev->cmds->read_cache;
nfi->reset(nfi);
- nfi->send_cmd(nfi, cmd);
+ nfi->send_cmd(nfi, dev->cmds->read_1st);
+ nfi->send_addr(nfi, 0, row, dev->col_cycle, dev->row_cycle);
+ nfi->send_cmd(nfi, dev->cmds->read_cache);
+ nfi->trigger(nfi);
+
+ return nfi->wait_ready(nfi, NAND_WAIT_BUSY,
+ dev->array_timing->tRCBSY);
+}
+
+static int nand_base_read_last(struct nand_base *nand)
+{
+ struct nfi *nfi = nand->nfi;
+ struct nand_device *dev = nand->dev;
+
+ nfi->reset(nfi);
+ nfi->send_cmd(nfi, dev->cmds->read_cache_last);
nfi->trigger(nfi);
return nfi->wait_ready(nfi, NAND_WAIT_BUSY,
@@ -284,6 +294,7 @@
nand->read_page = nand_base_read_page;
nand->read_data = nand_base_read_data;
nand->read_cache = nand_base_read_cache;
+ nand->read_last = nand_base_read_last;
nand->write_enable = nand_base_write_enable;
nand->program_data = nand_base_program_data;
nand->program_page = nand_base_program_page;
diff --git a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand_base.h b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand_base.h
index c633624..a052f61 100644
--- a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand_base.h
+++ b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nand_base.h
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (C) 2017 MediaTek Inc.
* Licensed under either
@@ -50,7 +49,8 @@
int (*read_page)(struct nand_base *nand, int row);
int (*read_data)(struct nand_base *nand, int row, int col, int sectors,
u8 *data, u8 *oob);
- int (*read_cache)(struct nand_base *nand, bool last);
+ int (*read_cache)(struct nand_base *nand, int row);
+ int (*read_last)(struct nand_base *nand);
int (*write_enable)(struct nand_base *nand);
int (*program_data)(struct nand_base *nand, int row, int col, u8 *data,
diff --git a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nfi/nfi_base.c b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nfi/nfi_base.c
index 37e8eb0..cf7f19d 100755
--- a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nfi/nfi_base.c
+++ b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nfi/nfi_base.c
@@ -120,7 +120,7 @@
u16 status, en;
int ret = 0;
- nandx_irq_disable(nb->res.nfi_irq_id);
+ nandx_irq_disable(nb->res.nfi_irq_id);
status = readl(regs + NFI_INTR_STA);
en = readl(regs + NFI_INTR_EN);
@@ -140,8 +140,7 @@
nandx_irq_enable(nb->res.nfi_irq_id);
- pr_debug("%s irq occur status:0x%x en:0x%x\n",
- __func__, status, en);
+ pr_debug("%s irq occur status:0x%x en:0x%x\n", __func__, status, en);
/* Read clear irq status register */
status = readl(regs + NFI_INTR_STA);
@@ -176,17 +175,14 @@
void *regs = nb->res.nfi_regs;
int ret, val;
- /* Add IRQ Setting here, enable all slc/spi irq */
- if (nb->nfi_irq_en) {
- nandx_event_init(nb->done);
- val = readl(regs + NFI_INTR_EN);
- val |= NFI_IRQ_INTR;
- val |= nb->nfi_irq_all;
- writel(val, regs + NFI_INTR_EN);
- nb->nfi_irq_status = 0;
- pr_debug("%s %d NFI_INTR_EN:0x%x\n",
- __func__, __LINE__, readl(regs + NFI_INTR_EN));
- }
+ /* Add IRQ Setting here, enable all slc/spi irq */
+ if (nb->nfi_irq_en) {
+ val = readl(regs + NFI_INTR_EN);
+ val |= NFI_IRQ_INTR;
+ val |= nb->nfi_irq_all;
+ writel(val, regs + NFI_INTR_EN);
+ nb->nfi_irq_status = 0;
+ }
/* The NFI reset to reset all registers and force the NFI
* master be early terminated
@@ -712,21 +708,28 @@
int ret = 0;
u32 val, i = 0;
- val = readl(regs + NFI_INTR_EN);
- writel(0xf1, regs + NFI_CNRNB);
- nandx_event_init(nb->done);
+ val = readl(regs + NFI_INTR_EN);
+ writel(0xf1, regs + NFI_CNRNB);
+ nandx_event_init(nb->done);
- /**
- * check if nand already bean ready,
- * avoid issue that casued by missing irq-event.
- */
- val = readl(regs + NFI_STA);
- if (val & STA_BUSY2READY) {
- readl(regs + NFI_INTR_STA);
- writel(0, (void *)(regs + NFI_INTR_EN));
- pr_debug("%s %d NFI_STA:%x\n", __func__, __LINE__, val);
- return 0;
- }
+ /**
+ * check if nand already bean ready,
+ * avoid issue that casued by missing irq-event.
+ * AHB and Busy can not be valid at same time.
+ */
+ while (i++ < timeout) {
+ if (nb->nfi_irq_status) {
+ pr_debug("%s IRQ done en:%x, status:%x time:%duS\n",
+ __func__, val, nb->nfi_irq_status, i);
+ break;
+ }
+ udelay(10);
+ }
+
+ if (i > timeout) {
+ pr_err("IRQ timeout, irq_en: 0x%x\n", val);
+ ret = -EIO;
+ }
ret = nandx_event_wait_complete(nb->done, timeout);
@@ -1028,12 +1031,23 @@
{
void *regs = nb->res.nfi_regs;
u32 len = nb->nfi.sector_size * sectors;
+ bool irq_en = nb->dma_en && nb->nfi_irq_en;
void *dma_addr;
u32 val;
int ret;
nb->rw_sectors = sectors;
+ /* IRQ setting, enable all slc/spi irq */
+ if (irq_en) {
+ nandx_event_init(nb->done);
+ val = readl(regs + NFI_INTR_EN);
+ val |= NFI_IRQ_INTR;
+ val |= nb->nfi_irq_all;
+ writel(val, regs + NFI_INTR_EN);
+ nb->nfi_irq_status = 0;
+ }
+
val = readw(regs + NFI_CNFG);
if (read)
val |= CNFG_READ_EN;
@@ -1119,14 +1133,17 @@
int ret;
u32 val;
- if (irq_en) {
- ret = nandx_event_wait_complete(nb->done, NFI_TIMEOUT);
- if (ret) {
- pr_err("AHB IRQ error read:%d, sectors:%d\n",
- read, sectors);
- writew(0, regs + NFI_INTR_EN);
- }
- }
+ if (irq_en) {
+ ret = wait_ready_irq(nb, NFI_TIMEOUT);
+ if (ret) {
+ pr_err("AHB IRQ error read:%d, sectors:%d\n",
+ read, sectors);
+ }
+
+ ret = nandx_event_wait_complete(nb->done, NFI_TIMEOUT);
+ if (!ret)
+ writew(0, regs + NFI_INTR_EN);
+ }
if (read) {
ret = readl_poll_timeout_atomic(regs + NFI_BYTELEN, val,
@@ -1576,8 +1593,8 @@
nb->dma_en = true;
nb->dma_burst_en = true;
- nb->nfi_irq_en = false;
- nb->nfi_irq_all = INTR_AHB_DONE_EN | INTR_BUSY_RETURN_EN;
+ nb->nfi_irq_en = false;
+ nb->nfi_irq_all = NFI_IRQ_SLC;
nb->randomize_en = false;
nb->crc_en = false;
@@ -1654,24 +1671,24 @@
*/
nb->nfi.sector_size = 512;
- /* give a default timing, and as discuss
- * this is the only thing what we need do for nfi init
- * if need do more, then we can add a function
- */
- writel(0x30C77FFF, nb->res.nfi_regs + NFI_ACCCON);
- writel(0, nb->res.nfi_regs + NFI_INTR_EN);
+ /* give a default timing, and as discuss
+ * this is the only thing what we need do for nfi init
+ * if need do more, then we can add a function
+ */
+ writel(0x30C77FFF, nb->res.nfi_regs + NFI_ACCCON);
- nfi = nfi_extend_init(nb);
- if (nfi) {
- nandx_event_init(nb->done);
- ret = nandx_irq_register(res->dev, res->nfi_irq_id,
- nfi_irq_handler, "mtk_nfi", nfi);
- if (ret) {
- pr_err("nfi irq register failed!\n");
- goto error;
- }
- return nfi;
- }
+ nfi = nfi_extend_init(nb);
+ if (nfi) {
+ ret = nandx_irq_register(res->dev, res->nfi_irq_id,
+ nfi_irq_handler,
+ "mtk_nfi", nfi);
+ if (ret) {
+ pr_err("nfi irq register failed!\n");
+ goto error;
+ }
+
+ return nfi;
+ }
error:
mem_free(nb);
diff --git a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nfi/nfi_regs.h b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nfi/nfi_regs.h
index c62a72e..16ae892 100644
--- a/src/bsp/lk/platform/mt2735/drivers/nandx/core/nfi/nfi_regs.h
+++ b/src/bsp/lk/platform/mt2735/drivers/nandx/core/nfi/nfi_regs.h
@@ -1,4 +1,3 @@
-/* SPDX-License-Identifier: MIT */
/*
* Copyright (C) 2017 MediaTek Inc.
* Licensed under either
@@ -55,9 +54,6 @@
#define NFI_INTR_EN 0x010
#define NFI_INTR_STA 0x014
#define NFI_IRQ_INTR BIT(31)
-#define INTR_AHB_DONE_EN BIT(6)
-#define INTR_BUSY_RETURN_EN BIT(4)
-
#define NFI_IRQ_SPI GENMASK(11, 6)
#define NFI_IRQ_SLC (GENMASK(13, 12) | GENMASK(6, 0))
diff --git a/src/bsp/lk/platform/mt2735/drivers/nandx/driver/lk/driver-nftl.c b/src/bsp/lk/platform/mt2735/drivers/nandx/driver/lk/driver-nftl.c
index ed09c75..668a9b1 100644
--- a/src/bsp/lk/platform/mt2735/drivers/nandx/driver/lk/driver-nftl.c
+++ b/src/bsp/lk/platform/mt2735/drivers/nandx/driver/lk/driver-nftl.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/*
* Copyright (C) 2017 MediaTek Inc.
* Licensed under either
@@ -89,7 +88,7 @@
{
struct nandx_split64 split = {0};
func_nandx_operation operation;
- int ret;
+ int ret, i, pages;
u8 *lbuf = (u8 *)buf;
u64 val;
@@ -102,10 +101,16 @@
lbuf += split.head_len;
}
- if (split.body_len) {
- operation(lbuf, NULL, split.body, split.body_len);
- lbuf += split.body_len;
- }
+ if (split.body_len) {
+ pages = div_down(split.body_len, nandxi.page_size);
+ for (i = 0; i < pages; i++) {
+ operation(lbuf + i * nandxi.page_size, NULL,
+ split.body + i * nandxi.page_size,
+ nandxi.page_size);
+ }
+
+ lbuf += split.body_len;
+ }
if (split.tail_len)
operation(lbuf, NULL, split.tail, split.tail_len);
@@ -250,12 +255,11 @@
arg = 0xf;
nandx_ioctl(NFI_CTRL_IOCON, &arg);
- arg = 1;
- nandx_ioctl(NFI_CTRL_NFI_IRQ, &arg);
- nandx_ioctl(NFI_CTRL_DMA, &arg);
- nandx_ioctl(NFI_CTRL_ECC, &arg);
- nandx_ioctl(NFI_CTRL_BAD_MARK_SWAP, &arg);
- nandx_ioctl(CORE_CTRL_NAND_INFO, &nandxi);
+ arg = 1;
+ nandx_ioctl(NFI_CTRL_DMA, &arg);
+ nandx_ioctl(NFI_CTRL_ECC, &arg);
+ nandx_ioctl(NFI_CTRL_BAD_MARK_SWAP, &arg);
+ nandx_ioctl(CORE_CTRL_NAND_INFO, &nandxi);
#if NAND_UNIT_TEST
nand_unit_test();
diff --git a/src/bsp/lk/platform/mt2735/drivers/nandx/include/lk/nandx_os.h b/src/bsp/lk/platform/mt2735/drivers/nandx/include/lk/nandx_os.h
index 41cbbfb..d57e622 100644
--- a/src/bsp/lk/platform/mt2735/drivers/nandx/include/lk/nandx_os.h
+++ b/src/bsp/lk/platform/mt2735/drivers/nandx/include/lk/nandx_os.h
@@ -1,4 +1,3 @@
-/* SPDX-License-Identifier: MIT */
/*
* Copyright (C) 2017 MediaTek Inc.
* Licensed under either
@@ -23,10 +22,6 @@
#include <platform/mt_reg_base.h>
#include <platform/pll.h>
#include <lib/heap.h>
-#include <platform/interrupts.h>
-#include <platform/mt_irq.h>
-#include <kernel/event.h>
-
#define NANDX_PERFORMANCE_TRACE 0
#define NANDX_PAGE_PERFORMANCE_TRACE 0
@@ -108,9 +103,7 @@
static inline int nandx_irq_register(void *dev, int irq,
void *irq_handler, char *name, void *data)
{
- register_int_handler(irq, irq_handler, data);
-
- return unmask_interrupt(irq);
+ return 0;
}
static inline int nandx_irq_unregister(int irq)
@@ -118,33 +111,21 @@
return 0;
}
-/* No need to disable/enable, always enabled */
static void nandx_irq_enable(int irq)
{
- /* unmask_interrupt(irq); */
+
}
static void nandx_irq_disable(int irq)
{
- /* mask_interrupt(irq); */
+
}
-#define nandx_event_create() \
- ({ \
- event_t *__event = mem_alloc(1, sizeof(event_t)); \
- event_init(__event, false, EVENT_FLAG_AUTOUNSIGNAL); \
- (void *)__event; \
- })
-
-#define nandx_event_destroy(event) \
- ({ \
- event_destroy(event); \
- mem_free(event); \
- })
-
-#define nandx_event_complete(event) event_signal(event, false)
-#define nandx_event_init(event) NULL
-#define nandx_event_wait_complete(event, timeout) event_wait_timeout(event, timeout)
+#define nandx_event_create() NULL
+#define nandx_event_destroy(event)
+#define nandx_event_complete(event)
+#define nandx_event_init(event)
+#define nandx_event_wait_complete(event, timeout) true
static inline u64 get_current_time_us(void)
{
diff --git a/src/bsp/lk/platform/mt2735/drivers/pll/pll.c b/src/bsp/lk/platform/mt2735/drivers/pll/pll.c
index 0e97c26..7d02fff 100755
--- a/src/bsp/lk/platform/mt2735/drivers/pll/pll.c
+++ b/src/bsp/lk/platform/mt2735/drivers/pll/pll.c
@@ -1,4 +1,3 @@
-// SPDX-License-Identifier: MIT
/* Copyright Statement:
*
* This software/firmware and related documentation ("MediaTek Software") are
@@ -490,11 +489,7 @@
DRV_WriteReg32(APLL2_CON0, 0x80000180);
*/
//step 55: CPU SPEED*****
-#if MTK_CPU_MAX_IN_BL
- DRV_WriteReg32(ARMPLL_LL_CON2, 0x811CD89D); // 1500 Mhz
-#else
DRV_WriteReg32(ARMPLL_LL_CON2, 0x81133B13); // 1000 Mhz, need confirm with opp table
-#endif
//DRV_WriteReg32(ARMPLL_LL_CON1, 0x81142762); // 1048Mhz
//DRV_WriteReg32(ARMPLL_LL_CON2, 0x80133B13); // 2000Mhz
/*
@@ -509,11 +504,8 @@
*/
//step 60
//DRV_WriteReg32(CCIPLL_CON2, 0x821EC4EC); // 800MHz, need confirm with opp table
-#if MTK_CPU_MAX_IN_BL
- DRV_WriteReg32(CCIPLL_CON2, 0x81154EC4);
-#else
DRV_WriteReg32(CCIPLL_CON2, 0x821AEC4E); // 700MHz, need confirm with opp table
-#endif
+
/***********************
* xPLL Frequency Enable
************************/
diff --git a/src/bsp/lk/platform/mt2735/drivers/rules.mk b/src/bsp/lk/platform/mt2735/drivers/rules.mk
index 760b0bb..46708a5 100644
--- a/src/bsp/lk/platform/mt2735/drivers/rules.mk
+++ b/src/bsp/lk/platform/mt2735/drivers/rules.mk
@@ -101,10 +101,6 @@
ifeq ($(strip $(ENABLE_MODEM_LOAD)),1)
MODULES += \
$(LOCAL_DIR)/md
-
-GLOBAL_INCLUDES += \
- $(LOCAL_DIR)/md/include
-
endif
ifeq ($(strip $(ENABLE_MEDMCU_LOAD)),1)
diff --git a/src/bsp/lk/platform/mt2735/rules.mk b/src/bsp/lk/platform/mt2735/rules.mk
index 40944be..a5f78f6 100644
--- a/src/bsp/lk/platform/mt2735/rules.mk
+++ b/src/bsp/lk/platform/mt2735/rules.mk
@@ -10,9 +10,6 @@
WITH_KERNEL_VM ?= 1
GICV3_SUPPORT_GIC600 ?= 1
-# enhance boot time
-MTK_CPU_MAX_IN_BL ?= 1
-
LK_HEAP_IMPLEMENTATION ?= miniheap
GLOBAL_INCLUDES += -I$(LK_TOP_DIR)/include \
diff --git a/src/bsp/scatter/tools/nand-utils/nand_device_list_mt2735_hsm.txt b/src/bsp/scatter/tools/nand-utils/nand_device_list_mt2735_hsm.txt
index b0184c8..e33edc6 100644
--- a/src/bsp/scatter/tools/nand-utils/nand_device_list_mt2735_hsm.txt
+++ b/src/bsp/scatter/tools/nand-utils/nand_device_list_mt2735_hsm.txt
@@ -1,8 +1,8 @@
Attention: use SPACE to input next parameter
name vendor pagesize(B) sparesize(B) pageperblock blocks cycle config pll acccon strobe_sel latch_lat sam_dly
MT29F8G08ABBCAH4 Micron 4096 224 64 4096 5 0x3 6 0x424094aa 0 0 0
-MT29F8G08ADBFA Micron 4096 256 64 4096 5 0x3 6 0x10c06122 1 0 0
-JSFDDQ5QHAxGD JSC 4096 256 64 4096 5 0x3 6 0x21406244 0 0 0
+MT29F8G08ADBFA Micron 4096 256 64 4096 5 0x1 6 0 0 0 0
+JSFDDQ5QHAxGD JSC 4096 256 64 4096 5 0x1 0 0 0 0 0
MT29F4G08ABBFA Micron 4096 256 64 2048 5 0x1 0 0 0 0 0
MT29F4G01ABBFDWB Micron 4096 256 64 2048 3 0x1 0 0 0 0 0
NM4888KMPAXAI Nanya 2048 64 64 8192 3 0x1 0 0 0 0 0
diff --git a/src/kernel/linux/v4.19/arch/arm64/boot/dts/mediatek/auto2735evb_zk.dts b/src/kernel/linux/v4.19/arch/arm64/boot/dts/mediatek/auto2735evb_zk.dts
new file mode 100644
index 0000000..1ecdf65
--- /dev/null
+++ b/src/kernel/linux/v4.19/arch/arm64/boot/dts/mediatek/auto2735evb_zk.dts
@@ -0,0 +1,1533 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (c) 2019 MediaTek Inc.
+ */
+
+/dts-v1/;
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+//#include "mt6890.dtsi"
+#include "mt2735_zk.dtsi"
+#include "tcpc_config.dtsi"
+#include "rt9467.dtsi"
+
+&reserved_memory {
+};
+
+/ {
+ model = "MediaTek evb6890v1_64_cpe";
+ compatible = "mediatek,evb6890v1_64_cpe", "mediatek,mt6890";
+
+ memory@40000000 {
+ device_type = "memory";
+#if defined(CONFIG_MTK_MEMORY_SIZE) && (CONFIG_MTK_MEMORY_SIZE == 1024)
+ reg = <0 0x40000000 0 0x40000000>;
+#elif defined(CONFIG_MTK_MEMORY_SIZE) && (CONFIG_MTK_MEMORY_SIZE == 896)
+ reg = <0 0x40000000 0 0x38000000>;
+#elif defined(CONFIG_MTK_MEMORY_SIZE) && (CONFIG_MTK_MEMORY_SIZE == 768)
+ reg = <0 0x40000000 0 0x30000000>;
+#elif defined(CONFIG_MTK_MEMORY_SIZE) && (CONFIG_MTK_MEMORY_SIZE == 640)
+ reg = <0 0x40000000 0 0x28000000>;
+#else
+ reg = <0 0x40000000 0 0x20000000>;
+#endif
+ };
+
+ chosen {
+ bootargs = "console=tty0 console=ttyS0,921600n1 ubi.mtd=14 \
+ ubi.mtd=38,0,2 ubi.mtd=5,0,1 \
+ ubi.mtd=9,0,1 ubi.mtd=10,0,1 ubi.mtd=11,0,1 ubi.mtd=40,0,1 \
+ ubi.mtd=27,0,1 ubi.mtd=20,0,1 ubi.mtd=22,0,1 \
+ rootwait \
+ androidboot.selinux=permissive androidboot.hardware=mt6890 \
+ initcall_debug=1 page_owner=on";
+
+ atag,videolfb-fb_base_l = <0x7e605000>;
+ atag,videolfb-fb_base_h = <0x0>;
+ atag,videolfb-islcmfound = <1>;
+ atag,videolfb-islcm_inited = <0>;
+ atag,videolfb-fps= <6000>;
+ atag,videolfb-vramSize= <0x1be0000>;
+ atag,videolfb-lcmname=
+ "nt35595_fhd_dsi_cmd_truly_nt50358_drv";
+#if defined(CONFIG_MTK_AEE_FEATURE)
+ aee,enable = "mini";
+ mrdump,cblock = <0x12e000 0x2000>;
+#endif
+ atag,boot = <0x03000000 0x02080041 0x0>;
+ };
+
+ gpio_meta: meta {
+ compatible = "mediatek,metainfo";
+ meta_gpio_num = <&pio 0 1>;
+ status = "okay";
+ };
+ gsw: gsw@0 {
+ compatible = "mediatek,mt753x";
+ mediatek,ethsys = <ðsys>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ };
+
+ subpmic_pmu_eint: subpmic_pmu_eint {
+ };
+
+ tcpc_pd: tcpc_pd_eint {
+ };
+ /* zhengzhou for eint interface start*/
+ eint_gpio: eintgpio {
+ compatible = "mediatek,eint_gpio";
+ //eint_gpio1 = <&pio 1 GPIO_ACTIVE_LOW>;
+ eint_gpio2 = <&pio 2 GPIO_ACTIVE_LOW>;
+ eint_gpio3 = <&pio 3 GPIO_ACTIVE_LOW>;
+ //eint_gpio4 = <&pio 4 GPIO_ACTIVE_LOW>;//tianyan@2021.12.1 modify for DTR/RI gpio
+ eint_gpio5 = <&pio 5 GPIO_ACTIVE_LOW>;
+ //eint_gpio6 = <&pio 6 GPIO_ACTIVE_LOW>;//tianyan@2021.12.1 modify for DTR/RI gpio
+ status = "okay";
+ };
+ wakeup_gpio: wakeup {
+ compatible = "mediatek,wakeup_gpio";
+ wakeup_gpio = <&pio 0 GPIO_ACTIVE_LOW>;
+ status = "okay";
+ };
+ /* zhengzhou for eint interface start*/
+//tianyan@2021.10.28 modify for DTR/RI gpio start
+ wakeup_dtr: wakeupdtr {
+ compatible = "mediatek,wakeup_dtr";
+ wakeup_dtr = <&pio 6 GPIO_ACTIVE_LOW>;//tianyan@2021.12.1 modify for DTR/RI gpio
+ wakeup_ri = <&pio 4 GPIO_ACTIVE_LOW>;//tianyan@2021.12.1 modify for DTR/RI gpio
+ status = "okay";
+ };
+//tianyan@2021.10.28 modify for DTR/RI gpio end
+};
+
+&snps_mac {
+ phy-mode ="rgmii-rxid";
+ phy-handle = <ð_phy0>;
+ pinctrl-names = "default", "sleep";
+ pinctrl-0 = <ð_default>;
+ pinctrl-1 = <ð_sleep>;
+ mediatek,tx-delay-ps = <560>;
+ mediatek,rx-delay-ps = <1440>;
+ snps,reset-gpio = <&pio 26 GPIO_ACTIVE_LOW>;
+ snps,reset-active-low;
+ snps,reset-delays-us = <0 1000 0>;
+ status = "okay";
+
+ mdio {
+ compatible = "snps,dwmac-mdio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ eth_phy0: eth_phy0@1 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <0x1>;
+
+ };
+ };
+};
+
+
+ð {
+ pinctrl-names = "eth_gpio_default",
+ "eth_smi_mdio_pinctl",
+ "eth_smi_mdc_pinctl";
+ pinctrl-0 = <ð_gpio_default>;
+ pinctrl-1 = <ð_smi_mdio_pinctl>;
+ pinctrl-2 = <ð_smi_mdc_pinctl>;
+ status = "okay";
+ gmac0: mac@0 {
+ compatible = "mediatek,eth-mac";
+ reg = <0>;
+#if defined(CONFIG_MTK_SGMII_NETSYS)
+ phy-mode = "sgmii";
+ phy-handle = <ð_phy1>;
+ /*modify by chencheng 0817*/
+ /*
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ pause;
+ };
+ */
+#endif
+ };
+
+ gmac1: mac@1 {
+ compatible = "mediatek,eth-mac";
+ reg = <1>;
+#if defined(CONFIG_MTK_SGMII_NETSYS)
+ phy-mode = "sgmii";
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ pause;
+ };
+#endif
+ };
+
+ mdio: mdio-bus {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ eth_phy1: eth_phy1@1 { /*modify by chencheng 0817*/
+ phy-mode = "sgmii";
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <0x1>;
+ };
+ };
+};
+
+&gsw {
+ mediatek,mdio = <&mdio>;
+ mediatek,portmap = "llllw";
+ mediatek,mdio_master_pinmux = <0>;
+ reset-gpios = <&pio 66 0>;
+ interrupt-parent = <&pio>;
+ interrupts = <65 IRQ_TYPE_LEVEL_HIGH>;
+
+#if defined(CONFIG_MTK_SGMII_NETSYS) /*merge MTK3.0 on 20220917*/
+ status = "okay";
+#else /*merge MTK3.0 on 20220917*/
+ status = "disabled" /*merge MTK3.0 on 20220917*/;
+#endif /*merge MTK3.0 on 20220917*/
+
+ port5: port@5 {
+ compatible = "mediatek,mt753x-port";
+ reg = <5>;
+ phy-mode = "sgmii";
+ fixed-link {
+ speed = <2500>;
+ full-duplex;
+ };
+ };
+};
+
+&i2c0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c0_pins>;
+ status = "okay";
+ /*zhengzhou 0316 ++++*/
+ nuvoton:nuvoton@1a {
+ compatible = "nuvoton,nau8810";
+ reg = <0x1a>;
+ /*nau8810,pwr-gpio = <&pio 12 0>;*/
+ /*zhengzhou 0316 ----*/
+ };
+
+//tianyan@2021.7.16 modify for compatible codec tlv320aic3104 start
+ tlv320:tlv320aic3104@18 {
+ compatible = "ti,tlv320aic3104";
+ reg = <0x18>;
+ gpio-reset = <&pio 201 0>;
+ ai3x-micbias-vg = <2>;
+ };
+//tianyan@2021.7.16 modify for compatible codec tlv320aic3104 end
+
+};
+
+&i2c1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c1_pins>;
+ clock-frequency = <400000>;
+ status = "okay";
+
+ //smi130@0e {
+ // compatible = "mediatek,smi130_sensor";
+ // reg = <0x0e>;
+ // direction = <2>;
+ // status = "okay";
+ //};
+
+ kxtj3@0e {
+ compatible = "mediatek,kxtj3_gsensor";
+ reg = <0x0e>;
+ direction = <2>;
+ status = "okay";
+ };
+ mtk-iicd@74 {
+ compatible = "mediatek,mtk-iicd";
+ reg = <0x74>;
+ status = "okay";
+ };
+};
+
+&i2c2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c2_pins>;
+ status = "okay";
+};
+
+&i2c3 {
+ clock-frequency = <400000>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c3_pins>;
+ status = "okay";
+};
+
+&i2c4 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c4_pins>;
+ status = "okay";
+ ak4940@12 {
+ compatible = "akm,ak4940";
+ reg = <0x12>;
+ ak4940,pdn-gpio = <&pio 26 0>; /* pdn pin */
+ };
+};
+
+&i2c5 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&i2c5_pins>;
+ status = "disable";
+};
+
+//tianyan@2021.09.09 modify for add pwm start
+&pwm {
+ pinctrl-names = "default";
+ pinctrl-0 = <&pwm_pins_gpio1_output>;
+ status = "okay";
+};
+//tianyan@2021.09.09 modify for add pwm end
+
+&pcie0 {
+ max-link-speed = <3>;
+ pinctrl-names = "default","default";//tianyan@2021.7.27 modify for add wifi6 module start
+ pinctrl-0 = <&pcie0_pins_default>;
+ pinctrl-1 = <&pcie0_pins_power>;//tianyan@2021.7.27 modify for add wifi6 module end
+ status = "okay";
+};
+
+/*
+&odm {
+ vibrator0:vibrator@0 {
+ compatible = "mediatek,vibrator";
+ vib_timer = <25>;
+ vib_limit = <9>;
+ vib_vol= <9>;
+ };
+};*/
+
+/* DISPSYS GPIO standardization */
+#if 0
+&pio {
+ mtkfb_pins_lcd_bias_enp1: lcd_bias_enp1_gpio {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO28__FUNC_GPIO28>;
+ slew-rate = <1>;
+ output-high;
+ };
+ };
+
+ mtkfb_pins_lcd_bias_enp0: lcd_bias_enp0_gpio {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO28__FUNC_GPIO28>;
+ slew-rate = <1>;
+ output-low;
+ };
+ };
+
+ mtkfb_pins_lcd_bias_enn1: lcd_bias_enn1_gpio {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO29__FUNC_GPIO29>;
+ slew-rate = <1>;
+ output-high;
+ };
+ };
+
+ mtkfb_pins_lcd_bias_enn0: lcd_bias_enn0_gpio {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO29__FUNC_GPIO29>;
+ slew-rate = <1>;
+ output-low;
+ };
+ };
+
+ mtkfb_pins_lcm_rst_out1_gpio: lcm_rst_out1_gpio {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO42__FUNC_GPIO42>;
+ slew-rate = <1>;
+ output-high;
+ };
+ };
+
+ mtkfb_pins_lcm_rst_out0_gpio: lcm_rst_out0_gpio {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO42__FUNC_GPIO42>;
+ slew-rate = <1>;
+ output-low;
+ };
+ };
+ mtkfb_pins_lcm_dsi_te: lcm_dsi_te {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO41__FUNC_DSI_TE>;
+ };
+ };
+};
+
+&mtkfb {
+ pinctrl-names = "lcd_bias_enp1_gpio", "lcd_bias_enp0_gpio",
+ "lcd_bias_enn1_gpio", "lcd_bias_enn0_gpio",
+ "lcm_rst_out1_gpio", "lcm_rst_out0_gpio",
+ "mode_te_te";
+ pinctrl-0 = <&mtkfb_pins_lcd_bias_enp1>;
+ pinctrl-1 = <&mtkfb_pins_lcd_bias_enp0>;
+ pinctrl-2 = <&mtkfb_pins_lcd_bias_enn1>;
+ pinctrl-3 = <&mtkfb_pins_lcd_bias_enn0>;
+ pinctrl-4 = <&mtkfb_pins_lcm_rst_out1_gpio>;
+ pinctrl-5 = <&mtkfb_pins_lcm_rst_out0_gpio>;
+ pinctrl-6 = <&mtkfb_pins_lcm_dsi_te>;
+ status = "okay";
+};
+#endif
+
+#if 0
+&spi3 {
+ status = "okay";
+ #address-cells=<1>;
+ #size-cells=<0>;
+
+ proslic_spi: proslic_spi@0 {
+ compatible = "silabs,proslic_spi";
+ reg = <0>;
+ spi-max-frequency = <24000000>;
+ spi-cpha = <1>;
+ spi-cpol = <1>;
+ channel_count = <1>;
+ debug_level = <7>; /* 1 = TRC, 2 = DBG, 4 = ERR */
+ reset_gpio = <&pio 23 0>; /* Hz */
+ ig,enable-spi = <1>; /* 1: Enable, 0: Disable */
+ };
+};
+#endif
+/*zhengzhou for spi start*/
+&spi0 {
+status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi_pins_0>;
+ status = "okay";
+ spidev0: spi@0 {
+ compatible = "mediatek,spi-mt65xx-dev";
+ reg = <0>;
+ spi-max-frequency = <24000000>;
+ };
+};
+&spi1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi_pins_1>;
+ status = "okay";
+ spidev1: spi@0 {
+ compatible = "mediatek,spi-mt65xx-dev";
+ reg = <0>;
+ spi-max-frequency = <24000000>;
+ };
+};
+&spi2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi_pins_2>;
+ status = "okay";
+ spidev2: spi@0 {
+ compatible = "mediatek,spi-mt65xx-dev";
+ reg = <0>;
+ spi-max-frequency = <24000000>;
+ };
+};
+/*zhengzhou for spi end*/
+/* SPIS GPIO standardization start */
+&pio {
+/*zhengzhou for spi start*/
+spi_pins_0: spi0@0 {
+ pins_spi {
+ pinmux = <PINMUX_GPIO101__FUNC_SPI0_A_MI>,
+ <PINMUX_GPIO102__FUNC_SPI0_A_CSB>,
+ <PINMUX_GPIO103__FUNC_SPI0_A_MO>,
+ <PINMUX_GPIO104__FUNC_SPI0_A_CLK>;
+ bias-disable;
+ input-enable;
+ drive-strength=<3>;/*modify by chencheng 0817*/
+ };
+ };
+spi_pins_1: spi1@0 {
+ pins_spi {
+ pinmux = <PINMUX_GPIO185__FUNC_SPI1_A_MI>,
+ <PINMUX_GPIO186__FUNC_SPI1_A_CSB>,
+ <PINMUX_GPIO187__FUNC_SPI1_A_MO>,
+ <PINMUX_GPIO188__FUNC_SPI1_A_CLK>;
+ bias-disable;
+ input-enable;
+ drive-strength=<3>;/*modify by chencheng 0817*/
+ };
+ };
+spi_pins_2: spi2@0 {
+ pins_spi {
+ pinmux = <PINMUX_GPIO189__FUNC_SPI2_A_MI>,
+ <PINMUX_GPIO190__FUNC_SPI2_A_CSB>,
+ <PINMUX_GPIO191__FUNC_SPI2_A_MO>,
+ <PINMUX_GPIO192__FUNC_SPI2_A_CLK>;
+ bias-disable;
+ input-enable;
+ drive-strength=<3>;/*modify by chencheng 0817*/
+ };
+ };
+ spis_pins_0: spis0@0 {
+ pins_spi {
+ pinmux = <PINMUX_GPIO193__FUNC_SPIS_SI>,
+ <PINMUX_GPIO194__FUNC_SPIS_CSB>,
+ <PINMUX_GPIO195__FUNC_SPIS_SO>,
+ <PINMUX_GPIO196__FUNC_SPIS_CLK>;
+ bias-disable;
+ input-enable;
+ };
+ };
+/*zhengzhou for spi end*/
+};
+
+&spis0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&spis_pins_0>;
+ status = "okay";/*zhengzhou for spi*/
+ #address-cells=<1>;
+ #size-cells=<0>;
+
+ slave {
+ compatible = "spi-slave-mt27xx-test";
+ };
+};
+/* UART GPIO standardization */
+/*zhengzhou for spi start*/
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_pin_default>;
+ status = "okay";
+};
+
+&uart1 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart1_pin_default>;
+ status = "okay";
+};
+
+&uart2 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart2_pin_default>;
+ status = "okay";
+};
+
+&uart3 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart3_pin_default>;
+ status = "okay";
+};
+
+&pio {
+
+uart0_pin_default: uart0_pin_uart_default {
+ pins_rx {
+ pinmux = <PINMUX_GPIO172__FUNC_URXD0>;
+ input-enable;
+ bias-pull-up;
+ };
+ pins_tx {
+ pinmux = <PINMUX_GPIO171__FUNC_UTXD0>;
+ output-high;
+ bias-disable;
+ };
+
+//tianyan@2021.10.14 modify for add uart0 flow start
+ pins_rts {
+ pinmux = <PINMUX_GPIO170__FUNC_URTS0>;
+ output-high;
+ bias-pull-up;
+ input-schmitt-enable;
+ };
+
+ pins_cts {
+ pinmux = <PINMUX_GPIO169__FUNC_UCTS0>;
+ input-enable;
+ bias-pull-up;
+ input-schmitt-enable;
+ };
+//tianyan@2021.10.14 modify for add uart0 flow end
+ };
+ uart1_pin_default: uart1_pin_uart_default {
+ pins_rx {
+ pinmux = <PINMUX_GPIO176__FUNC_URXD1>;
+ input-enable;
+ bias-pull-up;
+ };
+ pins_tx {
+ pinmux = <PINMUX_GPIO175__FUNC_UTXD1>;
+ output-high;
+ };
+
+//tianyan@2021.10.14 modify for add uart1 flow start
+ pins_rts {
+ pinmux = <PINMUX_GPIO174__FUNC_URTS1>;
+ output-high;
+ bias-pull-up;
+ input-schmitt-enable;
+ };
+
+ pins_cts {
+ pinmux = <PINMUX_GPIO173__FUNC_UCTS1>;
+ input-enable;
+ bias-pull-up;
+ input-schmitt-enable;
+ };
+//tianyan@2021.10.14 modify for add uart1 flow end
+ };
+
+ uart2_pin_default: uart2_pin_uart_default {
+ pins_rx {
+ pinmux = <PINMUX_GPIO180__FUNC_URXD2>;
+ input-enable;
+ bias-pull-up;
+ };
+ pins_tx {
+ pinmux = <PINMUX_GPIO179__FUNC_UTXD2>;
+ output-high;
+ };
+
+ pins_rts {
+ pinmux = <PINMUX_GPIO178__FUNC_URTS2>;
+ output-high;
+ bias-pull-up;
+ input-schmitt-enable;
+ };
+
+ pins_cts {
+ pinmux = <PINMUX_GPIO177__FUNC_UCTS2>;
+ input-enable;
+ bias-pull-up;
+ input-schmitt-enable;
+ };
+};
+
+
+ uart3_pin_default: uart3_pin_uart_default {
+ pins_rx {
+ pinmux = <PINMUX_GPIO184__FUNC_URXD3>;
+ input-enable;
+ bias-pull-up;
+ };
+ pins_tx {
+ pinmux = <PINMUX_GPIO183__FUNC_UTXD3>;
+ output-high;
+ };
+
+//tianyan@2021.10.14 modify for add uart3 flow start
+ pins_rts {
+ pinmux = <PINMUX_GPIO182__FUNC_URTS3>;
+ output-high;
+ bias-pull-up;
+ input-schmitt-enable;
+ };
+
+ pins_cts {
+ pinmux = <PINMUX_GPIO181__FUNC_UCTS3>;
+ input-enable;
+ bias-pull-up;
+ input-schmitt-enable;
+ };
+//tianyan@2021.10.14 modify for add uart3 flow end
+ };
+
+};
+/*zhengzhou for spi end*/
+
+
+
+/* GPS GPIO standardization start */
+#if 1
+&pio {
+/*modify by chencheng 2021/11/10*/
+ mtu3_pin_default: mtu3_usb_pin_default {
+ pins_input {
+ pinmux = <PINMUX_GPIO42__FUNC_GPIO42>;
+ input-enable;
+ bias-disable;
+ };
+ };
+/*modify by chencheng 2021/11/10*/
+
+ eth_gpio_default: mdio_default {
+ mux {
+ pinmux = <PINMUX_GPIO61__FUNC_GPIO61>;
+ };
+ };
+
+ eth_smi_mdio_pinctl: eth_smi_mdio_pinctl {
+ mux {
+ pinmux = <PINMUX_GPIO61__FUNC_SMI_MDIO>;
+ };
+ };
+
+ eth_smi_mdc_pinctl: eth_smi_mdc_pinctl {
+ mux {
+ pinmux = <PINMUX_GPIO62__FUNC_SMI_MDC>;
+ };
+ };
+/*modify by chencheng 2021/11/10*/
+ eth_default: eth_default {
+ txd_pins {
+
+ pinmux = <PINMUX_GPIO8__FUNC_GBE_TXD3>,
+ <PINMUX_GPIO9__FUNC_GBE_TXD2>,
+ <PINMUX_GPIO10__FUNC_GBE_TXD1>,
+ <PINMUX_GPIO11__FUNC_GBE_TXD0>;
+ drive-strength = <4>;
+ bias-disable;
+
+ };
+ cc_pins {
+ pinmux = <PINMUX_GPIO18__FUNC_GBE_TXC>,
+ <PINMUX_GPIO21__FUNC_GBE_TXEN>,
+ <PINMUX_GPIO20__FUNC_GBE_RXDV>,
+ <PINMUX_GPIO19__FUNC_GBE_RXC>;
+ drive-strength = <4>;
+ bias-disable;
+ };
+ rxd_pins {
+
+ pinmux = <PINMUX_GPIO14__FUNC_GBE_RXD3>,
+ <PINMUX_GPIO15__FUNC_GBE_RXD2>,
+ <PINMUX_GPIO16__FUNC_GBE_RXD1>,
+ <PINMUX_GPIO17__FUNC_GBE_RXD0>;
+ drive-strength = <4>;
+ bias-disable;
+
+ };
+ mdio_pins {
+ pinmux = <PINMUX_GPIO12__FUNC_GBE_MDC>,
+ <PINMUX_GPIO13__FUNC_GBE_MDIO>;
+ drive-strength = <3>;
+ bias-disable;
+
+ };
+ };
+
+ eth_sleep: eth_sleep {
+ txd_pins {
+ pinmux = <PINMUX_GPIO8__FUNC_GPIO8>,
+ <PINMUX_GPIO9__FUNC_GPIO9>,
+ <PINMUX_GPIO10__FUNC_GPIO10>,
+ <PINMUX_GPIO11__FUNC_GPIO11>;
+ input-enable;
+ bias-pull-down;
+
+ };
+ cc_pins {
+ pinmux = <PINMUX_GPIO18__FUNC_GPIO18>,
+ <PINMUX_GPIO21__FUNC_GPIO21>,
+ <PINMUX_GPIO20__FUNC_GPIO20>,
+ <PINMUX_GPIO19__FUNC_GPIO19>;
+ input-enable;
+ bias-pull-down;
+ };
+ rxd_pins {
+ pinmux = <PINMUX_GPIO14__FUNC_GPIO14>,
+ <PINMUX_GPIO15__FUNC_GPIO15>,
+ <PINMUX_GPIO16__FUNC_GPIO16>,
+ <PINMUX_GPIO17__FUNC_GPIO17>;
+ input-enable;
+ bias-pull-down;
+
+ };
+ mdio_pins {
+ pinmux = <PINMUX_GPIO12__FUNC_GPIO12>,
+ <PINMUX_GPIO13__FUNC_GPIO13>;
+ input-enable;
+ bias-pull-down;
+ };
+
+ };
+/*modify by chencheng 2021/11/10*/
+ i2c0_pins: i2c0default {
+ pins_bus {
+ pinmux = <PINMUX_GPIO105__FUNC_SDA0>,
+ <PINMUX_GPIO106__FUNC_SCL0>;
+//tianyan@2021.7.27 modify for cancel internal pull-up start
+ bias-disable;
+//tianyan@2021.7.27 modify for cancel internal pull-up end
+ mediatek,res-sel = <3>;
+ };
+ };
+
+ i2c1_pins: i2c1default {
+ pins_bus {
+ pinmux = <PINMUX_GPIO107__FUNC_SDA1>,
+ <PINMUX_GPIO108__FUNC_SCL1>;
+//tianyan@2021.7.27 modify for cancel internal pull-up start
+ bias-disable;
+//tianyan@2021.7.27 modify for cancel internal pull-up end
+ mediatek,res-sel = <3>;
+ };
+ };
+
+ i2c2_pins: i2c2default {
+ pins_bus {
+ pinmux = <PINMUX_GPIO109__FUNC_SDA2>,
+ <PINMUX_GPIO110__FUNC_SCL2>;
+ bias-pull-up;
+ mediatek,res-sel = <3>;
+ };
+ };
+
+ i2c3_pins: i2c3default {
+ pins_bus {
+ pinmux = <PINMUX_GPIO197__FUNC_SDA3>,
+ <PINMUX_GPIO198__FUNC_SCL3>;
+ bias-pull-up;
+ mediatek,res-sel = <3>;
+ };
+ };
+
+ i2c4_pins: i2c4default {
+ pins_bus {
+ pinmux = <PINMUX_GPIO79__FUNC_SDA4>,
+ <PINMUX_GPIO80__FUNC_SCL4>;
+ bias-pull-up;
+ mediatek,res-sel = <3>;
+ };
+ };
+
+ i2c5_pins: i2c5default {
+ pins_bus {
+ pinmux = <PINMUX_GPIO81__FUNC_SDA5>,
+ <PINMUX_GPIO82__FUNC_SCL5>;
+//Typethree@2023.2.01 modify for cancel internal pull-up start
+ bias-disable;
+//Typethree@2023.2.01 modify for cancel internal pull-up end
+ mediatek,res-sel = <3>;
+ };
+ };
+
+//tianyan@2021.09.09 modify for add pwm start
+ pwm_pins_gpio1_output: pwm_pins_output {
+ mux {
+ pinmux = <PINMUX_GPIO1__FUNC_PWM_1>;
+ };
+ };
+//tianyan@2021.09.09 modify for add pwm end
+
+ pcie0_pins_default: pcie0-default {
+ mux {
+ pinmux = <PINMUX_GPIO67__FUNC_PCIE_PERESET_N_0P>,
+ <PINMUX_GPIO68__FUNC_PCIE_WAKE_N_0P>,
+ <PINMUX_GPIO69__FUNC_PCIE_CLKREQ_N_0P>;
+ bias-pull-up;
+ };
+ };
+
+//tianyan@2021.7.27 modify for add wifi6 module start
+ pcie0_pins_power: pcie0-power {
+ mux {
+ pinmux = <PINMUX_GPIO104__FUNC_GPIO104>;
+ output-high;
+ };
+ };
+//tianyan@2021.7.27 modify for add wifi6 module end
+
+ gps_pins_default: gps_default {
+ };
+
+ gps_l1_lna_pins_ol: gps_l1_lna@0 {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO125__FUNC_GPIO125>;
+ output-low;
+ };
+ };
+ gps_l1_lna_pins_dsp_ctrl: gps_l1_lna@1 {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO125__FUNC_GPS_L1_ELNA_EN>;
+ };
+ };
+ gps_l1_lna_pins_oh: gps_l1_lna@2 {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO125__FUNC_GPIO125>;
+ output-high;
+ };
+ };
+
+ gps_l5_lna_pins_ol: gps_l5_lna@0 {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO126__FUNC_GPIO126>;
+ output-low;
+ };
+ };
+ gps_l5_lna_pins_dsp_ctrl: gps_l5_lna@1 {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO126__FUNC_GPS_L5_ELNA_EN>;
+ };
+ };
+ gps_l5_lna_pins_oh: gps_l5_lna@2 {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO126__FUNC_GPIO126>;
+ output-high;
+ };
+ };
+
+ aud_gpio_i2s0_off: aud_gpio_i2s0_off {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO230__FUNC_GPIO230>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO231__FUNC_GPIO231>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO232__FUNC_GPIO232>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO233__FUNC_GPIO233>;
+ input-enable;
+ bias-pull-down;
+ };
+ };
+ aud_gpio_i2s0_on: aud_gpio_i2s0_on {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO230__FUNC_I2S0_MCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO231__FUNC_I2S0_BCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO232__FUNC_I2S0_LRCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO233__FUNC_I2S0_DI>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ };
+ aud_gpio_i2s1_off: aud_gpio_i2s1_off {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO91__FUNC_GPIO91>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO92__FUNC_GPIO92>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO93__FUNC_GPIO93>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO95__FUNC_GPIO95>;
+ input-enable;
+ bias-pull-down;
+ };
+ };
+ aud_gpio_i2s1_on: aud_gpio_i2s1_on {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO91__FUNC_I2S2_MCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO92__FUNC_I2S2_BCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO93__FUNC_I2S2_LRCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO95__FUNC_I2S1_DO>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ };
+ aud_gpio_i2s2_off: aud_gpio_i2s2_off {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO91__FUNC_GPIO91>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO92__FUNC_GPIO92>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO93__FUNC_GPIO93>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO94__FUNC_GPIO94>;
+ input-enable;
+ bias-pull-down;
+ };
+ };
+ aud_gpio_i2s2_on: aud_gpio_i2s2_on {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO91__FUNC_I2S2_MCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO92__FUNC_I2S2_BCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO93__FUNC_I2S2_LRCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO94__FUNC_I2S2_DI>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ };
+ aud_gpio_i2s3_off: aud_gpio_i2s3_off {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO230__FUNC_GPIO230>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO231__FUNC_GPIO231>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO232__FUNC_GPIO232>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO234__FUNC_GPIO234>;
+ input-enable;
+ bias-pull-down;
+ };
+ };
+ aud_gpio_i2s3_on: aud_gpio_i2s3_on {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO230__FUNC_I2S0_MCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO231__FUNC_I2S0_BCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO232__FUNC_I2S0_LRCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO234__FUNC_I2S0_DO>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ };
+ aud_gpio_i2s4_off: aud_gpio_i2s4_off {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO32__FUNC_GPIO32>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO33__FUNC_GPIO33>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO34__FUNC_GPIO34>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO35__FUNC_GPIO35>;
+ input-enable;
+ bias-pull-down;
+ };
+ };
+ aud_gpio_i2s4_on: aud_gpio_i2s4_on {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO32__FUNC_I2S4_MCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO33__FUNC_I2S4_BCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO34__FUNC_I2S4_LRCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO35__FUNC_I2S4_DI>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ };
+ aud_gpio_i2s5_off: aud_gpio_i2s5_off {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO32__FUNC_GPIO32>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO33__FUNC_GPIO33>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO34__FUNC_GPIO34>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO36__FUNC_GPIO36>;
+ input-enable;
+ bias-pull-down;
+ };
+ };
+ aud_gpio_i2s5_on: aud_gpio_i2s5_on {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO32__FUNC_I2S5_MCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO33__FUNC_I2S5_BCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO34__FUNC_I2S5_LRCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO36__FUNC_I2S5_DO>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ };
+ aud_gpio_i2s6_off: aud_gpio_i2s6_off {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO32__FUNC_GPIO32>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO33__FUNC_GPIO33>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO34__FUNC_GPIO34>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO35__FUNC_GPIO35>;
+ input-enable;
+ bias-pull-down;
+ };
+ };
+ aud_gpio_i2s6_on: aud_gpio_i2s6_on {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO32__FUNC_I2S6_MCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO33__FUNC_I2S6_BCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO34__FUNC_I2S6_LRCK>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO35__FUNC_I2S6_DI>;
+ input-schmitt-enable;
+ bias-disable;
+ };
+ };
+ aud_gpio_proslic_off: aud_gpio_proslic_off { /*zhengzhou 0316 ++++*/
+ /* pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO199__FUNC_GPIO199>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO200__FUNC_GPIO200>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO201__FUNC_GPIO201>;
+ input-enable;
+ bias-pull-down;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO202__FUNC_GPIO202>;
+ input-enable;
+ bias-pull-down;
+ };*/
+ /*zhengzhou 0316 -----*/
+ };
+ aud_gpio_proslic_on: aud_gpio_proslic_on {/*zhengzhou 0316 ++++*/
+ /* pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO199__FUNC_PCM1_CLK>;
+ bias-disable;
+ };
+ pins_cmd1_dat {
+ pinmux = <PINMUX_GPIO200__FUNC_PCM1_SYNC>;
+ bias-disable;
+ };
+ pins_cmd2_dat {
+ pinmux = <PINMUX_GPIO201__FUNC_PCM1_DI>;
+ bias-disable;
+ };
+ pins_cmd3_dat {
+ pinmux = <PINMUX_GPIO202__FUNC_PCM1_DO>;
+ bias-disable;
+ };*/
+ /*zhengzhou 0316 -----*/
+ };
+ aud_gpio_tdm_off: aud_gpio_tdm_off {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO199__FUNC_GPIO199>,
+ <PINMUX_GPIO200__FUNC_GPIO200>,
+ <PINMUX_GPIO201__FUNC_GPIO201>,
+ <PINMUX_GPIO202__FUNC_GPIO202>,
+ //<PINMUX_GPIO203__FUNC_GPIO203>,
+ <PINMUX_GPIO204__FUNC_GPIO204>,
+ <PINMUX_GPIO205__FUNC_GPIO205>;
+ };
+ };
+ aud_gpio_tdm_on: aud_gpio_tdm_on {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO199__FUNC_TDM_LRCK>,
+ <PINMUX_GPIO200__FUNC_TDM_BCK>,
+ <PINMUX_GPIO201__FUNC_TDM_MCK>,
+ <PINMUX_GPIO202__FUNC_TDM_DATA0>,
+ //<PINMUX_GPIO203__FUNC_TDM_DATA1>,
+ <PINMUX_GPIO204__FUNC_TDM_DATA2>,
+ <PINMUX_GPIO205__FUNC_TDM_DATA3>;
+ };
+ };
+ aud_pins_extamp_high: audexamphigh {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO27__FUNC_GPIO27>;
+ output-low;
+ };
+ };
+ aud_pins_extamp_low: audexamplow {
+ pins_cmd0_dat {
+ pinmux = <PINMUX_GPIO27__FUNC_GPIO27>;
+ //input-enable;
+ //bias-pull-down=<MTK_PUPD_SET_R1R0_01>;
+ };
+ };
+};
+
+&gps {
+ pinctrl-names = "default",
+ "gps_l1_lna_disable",
+ "gps_l1_lna_dsp_ctrl",
+ "gps_l1_lna_enable",
+ "gps_l5_lna_disable",
+ "gps_l5_lna_dsp_ctrl",
+ "gps_l5_lna_enable";
+ pinctrl-0 = <&gps_pins_default>;
+ pinctrl-1 = <&gps_l1_lna_pins_ol>;
+ pinctrl-2 = <&gps_l1_lna_pins_dsp_ctrl>;
+ pinctrl-3 = <&gps_l1_lna_pins_oh>;
+ pinctrl-4 = <&gps_l5_lna_pins_ol>;
+ pinctrl-5 = <&gps_l5_lna_pins_dsp_ctrl>;
+ pinctrl-6 = <&gps_l5_lna_pins_oh>;
+ status = "okay";
+};
+#endif
+/* GPS GPIO standardization end */
+
+/* usb typec swtich */
+&pio {
+ c1_active: c1_high {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO95__FUNC_GPIO95>;
+ output-high;
+ };
+ };
+
+ c2_active: c2_highz {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO94__FUNC_GPIO94>;
+ input-enable;
+ bias-disable;
+ };
+ };
+
+ c1_sleep: c1_low {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO95__FUNC_GPIO95>;
+ output-low;
+ };
+ };
+
+ c2_sleep: c2_low {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO94__FUNC_GPIO94>;
+ output-low;
+ };
+ };
+
+ sel_up: sel_high {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO93__FUNC_GPIO93>;
+ output-high;
+ };
+ };
+
+ sel_down: sel_low {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO93__FUNC_GPIO93>;
+ output-low;
+ };
+ };
+
+ sw_enable: sw_enable {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO92__FUNC_GPIO92>;
+ output-low;
+ };
+ };
+
+ sw_disable: sw_disable {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO92__FUNC_GPIO92>;
+ output-low;
+ };
+ };
+ kpd_gpios_def_cfg: kpdgpiodefault {
+ pins_cmd_dat {
+ pinmux = <PINMUX_GPIO114__FUNC_KPROW0>,
+ <PINMUX_GPIO115__FUNC_KPROW1>,
+ <PINMUX_GPIO116__FUNC_KPROW2>,/*zhengzhou 0316 ++++*/
+ <PINMUX_GPIO111__FUNC_KPCOL0>,
+ <PINMUX_GPIO112__FUNC_KPCOL1>,
+ <PINMUX_GPIO113__FUNC_KPCOL2>;/*zhengzhou 0316 ----*/
+ mediatek,pull-down-adv = <MTK_PUPD_SET_R1R0_01>;
+ output-low;
+ input-schmitt-enable;
+ };
+ };
+};
+
+&keypad {
+ mediatek,key-debounce-ms = <1024>;
+ /*HW Keycode [0~71] -> Linux Keycode*/
+ mediatek,hw-map-num = <72>;
+ mediatek,hw-init-map = <0 0 114 0 0 0 0 0 0 0 0 0 0 0 0 115 0 0 0 0 0 0 0
+ 0 0 0 0 0 112 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 >;
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&kpd_gpios_def_cfg>;
+};
+
+&typec_switch {
+ switch-names = "ptn36241g","fusb304";
+ pinctrl-names = "c1_active", "c1_sleep",
+ "c2_active", "c2_sleep",
+ "sel_up", "sel_down",
+ "enable", "disable";
+ /* ptn36241g */
+ pinctrl-0 = <&c1_active>;
+ pinctrl-1 = <&c1_sleep>;
+ pinctrl-2 = <&c2_active>;
+ pinctrl-3 = <&c2_sleep>;
+ /* fusb304 */
+ pinctrl-4 = <&sel_up>;
+ pinctrl-5 = <&sel_down>;
+ pinctrl-6 = <&sw_enable>;
+ pinctrl-7 = <&sw_disable>;
+};
+
+&extcon_usb {
+/*zhengzhou 0316 ++++*/
+ compatible = "linux,extcon-usb-gpio";
+ vbus-voltage = <5000000>;
+ vbus-supply = <&otg_vbus>;
+ vbus-current = <1800000>;
+ /*zhengzhou 0316 ----*/
+};
+
+&rt1711_typec {
+ switch = <&typec_switch>;
+};
+
+/*************************
+ * PMIC LED DTSI File
+*************************/
+&pmic {
+ mt6330-led {
+ compatible = "mediatek,mt6330_leds";
+ Isink1 {
+ reg = <1>;
+ label = "led9515:green:cellular-radio";
+ linux,default-trigger = "none";
+ default-state = "off";
+ };
+ Isink2 {
+ reg = <2>;
+ label = "led9516:green:cellular-quality";
+ linux,default-trigger = "none";
+ default-state = "off";
+ };
+ Isink3 {
+ reg = <3>;
+ label = "led9517:red:system";
+ linux,default-trigger = "none";
+ default-state = "off";
+ };
+ };
+};
+
+/************ NAND ***********/
+&pio {
+#if defined(CONFIG_MTD_NANDX_V2_SPI)
+ nandc_pins_default: nandcdefault {
+ pins0 {
+ pinmux = <PINMUX_GPIO224__FUNC_SNFI_CS>,
+ <PINMUX_GPIO225__FUNC_SNFI_WP>,
+ <PINMUX_GPIO226__FUNC_SNFI_HOLD>;
+ drive-strength = <MTK_DRIVE_4mA>;
+ bias-pull-up;
+ };
+ pins1 {
+ pinmux = <PINMUX_GPIO223__FUNC_SNFI_MOSI>,
+ <PINMUX_GPIO227__FUNC_SNFI_CLK>,
+ <PINMUX_GPIO228__FUNC_SNFI_MISO>;
+ drive-strength = <MTK_DRIVE_4mA>;
+ bias-pull-down;
+ };
+ };
+#else
+ nandc_pins_default: nandcdefault {
+ pins0 {
+ pinmux = <PINMUX_GPIO215__FUNC_NLD0>,
+ <PINMUX_GPIO216__FUNC_NLD1>,
+ <PINMUX_GPIO217__FUNC_NLD2>,
+ <PINMUX_GPIO218__FUNC_NLD3>,
+ <PINMUX_GPIO219__FUNC_NLD4>,
+ <PINMUX_GPIO220__FUNC_NLD5>,
+ <PINMUX_GPIO221__FUNC_NLD6>,
+ <PINMUX_GPIO222__FUNC_NLD7>,
+ <PINMUX_GPIO228__FUNC_NALE>,
+ <PINMUX_GPIO229__FUNC_NCLE>;
+ bias-pull-down;
+ };
+ pins1 {
+ pinmux = <PINMUX_GPIO223__FUNC_NCEB1>,
+ <PINMUX_GPIO224__FUNC_NCEB0>,
+ <PINMUX_GPIO225__FUNC_NRNB>,
+ <PINMUX_GPIO226__FUNC_NREB>,
+ <PINMUX_GPIO227__FUNC_NWEB>;
+ bias-pull-up;
+ };
+ };
+#endif
+};
+&nandc {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&nandc_pins_default>;
+ clocks =<&topckgen_clk CLK_TOP_TCK_26M_MX9>,
+ <&topckgen_clk CLK_TOP_UNIVPLL_D5_D4>,
+ <&topckgen_clk CLK_TOP_MAINPLL_D7_D4>,
+ <&topckgen_clk CLK_TOP_MAINPLL_D6_D4>,
+ <&topckgen_clk CLK_TOP_UNIVPLL_D6_D4>,
+ <&topckgen_clk CLK_TOP_MAINPLL_D4_D4>,
+ <&topckgen_clk CLK_TOP_UNIVPLL_D4_D4>,
+ <&topckgen_clk CLK_TOP_MAINPLL_D6_D2>,
+ <&topckgen_clk CLK_TOP_NFI1X_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_RG_66M_NFI_HCLK_CK>,
+#if defined(CONFIG_MTD_NANDX_V2_SPI)
+ <&infracfg_ao_clk CLK_IFRAO_RG_NFI>,
+ <&topckgen_clk CLK_TOP_UNIVPLL_D6_D8>,
+ <&topckgen_clk CLK_TOP_UNIVPLL_D5_D8>,
+ <&topckgen_clk CLK_TOP_MAINPLL_D4_D8>,
+ <&topckgen_clk CLK_TOP_UNIVPLL_D4_D8>,
+ <&topckgen_clk CLK_TOP_MAINPLL_D6_D4>,
+ <&topckgen_clk CLK_TOP_UNIVPLL_D6_D4>,
+ <&topckgen_clk CLK_TOP_UNIVPLL_D5_D4>,
+ <&topckgen_clk CLK_TOP_SPINFI_BCLK_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_RG_FPINFI_BCLK_CK>;
+#else
+ <&infracfg_ao_clk CLK_IFRAO_RG_NFI>;
+#endif
+ clock-names = "nfi_parent_26m",
+ "nfi_parent124.8m",
+ "nfi_parent78m",
+ "nfi_parent91m",
+ "nfi_parent104m",
+ "nfi_parent136.5m",
+ "nfi_parent156m",
+ "nfi_parent182m",
+ "nfi_clk_sel",
+ "dma_cg",
+#if defined(CONFIG_MTD_NANDX_V2_SPI)
+ "nfi_cg",
+ "snfi_parent52m",
+ "snfi_parent62.4m",
+ "snfi_parent68.25m",
+ "snfi_parent78m",
+ "snfi_parent91m",
+ "snfi_parent104m",
+ "snfi_parent124.8m",
+ "snfi_clk_sel",
+ "snfi_cg";
+#else
+ "nfi_cg";
+#endif
+};
+/*Lxf add in 2022/12/2 for gpio init*/
+&gpio_init{
+ phy_standby_gpio_113{
+ gpio_num = <113>;
+ gpio_mode = <0>;
+ gpio_dir = <1>;
+ gpio_dout = <1>;
+ };
+ phy_mute_gpio_29{
+ gpio_num = <29>;
+ gpio_mode = <0>;
+ gpio_dir = <1>;
+ gpio_dout = <1>;
+ };
+};
+/*Lxf add in 2022/12/2 for gpio init end*/
+#include <mediatek/evb6890v1_64_cpe/cust.dtsi>
+/*End of this file, DO NOT ADD ANYTHING HERE*/
diff --git a/src/kernel/linux/v4.19/arch/arm64/boot/dts/mediatek/mt2735_zk.dtsi b/src/kernel/linux/v4.19/arch/arm64/boot/dts/mediatek/mt2735_zk.dtsi
new file mode 100644
index 0000000..7c128cc
--- /dev/null
+++ b/src/kernel/linux/v4.19/arch/arm64/boot/dts/mediatek/mt2735_zk.dtsi
@@ -0,0 +1,4547 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (c) 2019 MediaTek Inc.
+ */
+
+/dts-v1/;
+#include <generated/autoconf.h>
+
+#include <dt-bindings/clock/mt6890-clk.h>
+#include <dt-bindings/interrupt-controller/arm-gic.h>
+#include <dt-bindings/interrupt-controller/irq.h>
+#include <dt-bindings/pinctrl/mt2735-pinfunc.h>
+#include <dt-bindings/memory/mt6880-larb-port.h>
+#include <dt-bindings/power/mt6890-power.h>
+#include <dt-bindings/reset/ti-syscon.h>
+#include <dt-bindings/soc/mediatek,boot-mode.h>
+#include <dt-bindings/spmi/spmi.h>
+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/phy/phy.h>
+#include <dt-bindings/interconnect/mtk,mt6873-emi.h>
+#include <dt-bindings/iio/mt635x-auxadc.h>
+#include <dt-bindings/gce/mt6890-gce.h>
+#include <dt-bindings/thermal/thermal.h>
+/ {
+ model = "MT6890";
+ compatible = "mediatek,MT6890";
+ interrupt-parent = <&gic>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ /* chosen */
+ chosen: chosen {
+ bootargs = "console=tty0 console=ttyS0,921600n1 root=/dev/ram \
+ vmalloc=400M slub_debug=OFZPU swiotlb=noforce \
+ firmware_class.path=/vendor/firmware \
+ page_owner=on";
+ };
+
+ psci {
+ compatible = "arm,psci-0.2";
+ method = "smc";
+ };
+
+ gpio_leds {
+ compatible = "gpio-leds";
+ led0 {
+ label = "led9501:red:sim";
+ gpios = <&pio 209 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "none";
+ default-state = "off";
+ };
+ led1 {
+ label = "led9502:red:cellular-stat";
+ gpios = <&pio 210 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "none";
+ default-state = "off";
+ };
+ led2 {
+ label = "led9504:red:cellular-data";
+ gpios = <&pio 211 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "none";
+ default-state = "off";
+ };
+ led3 {
+ label = "led9505:red:cellular-rat";
+ gpios = <&pio 212 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "none";
+ default-state = "off";
+ };
+ led4 {
+ label = "led9506:red:cellular-ims";
+ gpios = <&pio 213 GPIO_ACTIVE_HIGH>;
+ linux,default-trigger = "none";
+ default-state = "off";
+ };
+ };
+
+ cluster0_opp: opp_table0 {
+ compatible = "operating-points-v2";
+ opp-shared;
+ opp0 {
+ opp-hz = /bits/ 64 <500000000>;
+ opp-microvolt = <650000>;
+ };
+ opp1 {
+ opp-hz = /bits/ 64 <600000000>;
+ opp-microvolt = <650000>;
+ };
+ opp2 {
+ opp-hz = /bits/ 64 <684000000>;
+ opp-microvolt = <668750>;
+ };
+ opp3 {
+ opp-hz = /bits/ 64 <768000000>;
+ opp-microvolt = <687500>;
+ };
+ opp4 {
+ opp-hz = /bits/ 64 <820000000>;
+ opp-microvolt = <700000>;
+ };
+ opp5 {
+ opp-hz = /bits/ 64 <937000000>;
+ opp-microvolt = <725000>;
+ };
+ opp6 {
+ opp-hz = /bits/ 64 <1060000000>;
+ opp-microvolt = <750000>;
+ };
+ opp7 {
+ opp-hz = /bits/ 64 <1134000000>;
+ opp-microvolt = <768750>;
+ };
+ opp8 {
+ opp-hz = /bits/ 64 <1275000000>;
+ opp-microvolt = <800000>;
+ };
+ opp9 {
+ opp-hz = /bits/ 64 <1387000000>;
+ opp-microvolt = <825000>;
+ };
+ opp10 {
+ opp-hz = /bits/ 64 <1500000000>;
+ opp-microvolt = <850000>;
+ };
+ };
+
+ cpus {
+ #address-cells = <1>;
+ #size-cells = <0>;
+#if CONFIG_MTK_CORE_NUM == 4
+ cpu0: cpu@0 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a55";
+ reg = <0x0000>;
+ enable-method = "psci";
+ clock-frequency = <1701000000>;
+ operating-points-v2 = <&cluster0_opp>;
+ cpu-idle-states = <&cpuoff_l &clusteroff_l &mcusysoff>;
+ dynamic-power-coefficient = <85>;
+ #cooling-cells = <2>;
+ };
+
+ cpu1: cpu@001 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a55";
+ reg = <0x0100>;
+ enable-method = "psci";
+ clock-frequency = <1701000000>;
+ operating-points-v2 = <&cluster0_opp>;
+ cpu-idle-states = <&cpuoff_l &clusteroff_l &mcusysoff>;
+ dynamic-power-coefficient = <85>;
+ #cooling-cells = <2>;
+ };
+ cpu2: cpu@002 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a55";
+ reg = <0x0200>;
+ enable-method = "psci";
+ clock-frequency = <1701000000>;
+ operating-points-v2 = <&cluster0_opp>;
+ cpu-idle-states = <&cpuoff_l &clusteroff_l &mcusysoff>;
+ dynamic-power-coefficient = <85>;
+ #cooling-cells = <2>;
+ };
+
+ cpu3: cpu@003 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a55";
+ reg = <0x0300>;
+ enable-method = "psci";
+ clock-frequency = <1701000000>;
+ operating-points-v2 = <&cluster0_opp>;
+ cpu-idle-states = <&cpuoff_l &clusteroff_l &mcusysoff>;
+ dynamic-power-coefficient = <85>;
+ #cooling-cells = <2>;
+ };
+#elif CONFIG_MTK_CORE_NUM == 2
+ cpu0: cpu@0 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a55";
+ reg = <0x0000>;
+ enable-method = "psci";
+ clock-frequency = <1701000000>;
+ operating-points-v2 = <&cluster0_opp>;
+ cpu-idle-states = <&cpuoff_l &clusteroff_l &mcusysoff>;
+ dynamic-power-coefficient = <85>;
+ #cooling-cells = <2>;
+ };
+ cpu1: cpu@001 {
+ device_type = "cpu";
+ compatible = "arm,cortex-a55";
+ reg = <0x0100>;
+ enable-method = "psci";
+ clock-frequency = <1701000000>;
+ operating-points-v2 = <&cluster0_opp>;
+ cpu-idle-states = <&cpuoff_l &clusteroff_l &mcusysoff>;
+ dynamic-power-coefficient = <85>;
+ #cooling-cells = <2>;
+ };
+#endif
+ cpu-map {
+ cluster0 {
+#if CONFIG_MTK_CORE_NUM == 4
+ core0 {
+ cpu = <&cpu0>;
+ };
+ core1 {
+ cpu = <&cpu1>;
+ };
+ core2 {
+ cpu = <&cpu2>;
+ };
+ core3 {
+ cpu = <&cpu3>;
+ };
+#elif CONFIG_MTK_CORE_NUM == 2
+ core0 {
+ cpu = <&cpu0>;
+ };
+ core1 {
+ cpu = <&cpu1>;
+ };
+#endif
+ };
+ };
+
+ idle-states {
+ entry-method = "arm,psci";
+ cpuoff_l: cpuoff_l {
+ compatible = "mediatek,idle-state";
+ arm,psci-suspend-param = <0x00010001>;
+ local-timer-stop;
+ entry-latency-us = <50>;
+ exit-latency-us = <100>;
+ min-residency-us = <1600>;
+ };
+ clusteroff_l: clusteroff_l {
+ compatible = "mediatek,idle-state";
+ arm,psci-suspend-param = <0x01010001>;
+ local-timer-stop;
+ entry-latency-us = <100>;
+ exit-latency-us = <250>;
+ min-residency-us = <2100>;
+ };
+ mcusysoff: mcusysoff {
+ compatible = "mediatek,idle-state";
+ arm,psci-suspend-param = <0x01010002>;
+ local-timer-stop;
+ entry-latency-us = <300>;
+ exit-latency-us = <1200>;
+ min-residency-us = <2600>;
+ };
+ };
+
+ };
+
+ pmu {
+ compatible = "arm,armv8-pmuv3";
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ dsu-pmu-0 {
+ compatible = "arm,dsu-pmu";
+ interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
+#if CONFIG_MTK_CORE_NUM == 4
+ cpus = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
+#elif CONFIG_MTK_CORE_NUM == 2
+ cpus = <&cpu0>, <&cpu1>;
+#endif
+ };
+
+ dvfsp: dvfsp@0011bc00 {
+ compatible = "mediatek,mcupm-dvfsp";
+ reg = <0 0x0011bc00 0 0x1400>;
+ nvmem = <&efuse>;
+ nvmem-names = "mtk_efuse";
+ nvmem-cells = <&efuse_segment>;
+ nvmem-cell-names = "efuse_segment_cell";
+ };
+
+ leakage@1100b000 {
+ compatible = "mediatek,leakage";
+ reg = <0 0x1100b000 0 0x1000>;
+ interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_LOW>;
+ nvmem = <&efuse>;
+ nvmem-names = "mtk_efuse";
+ nvmem-cells = <&efuse_segment>;
+ nvmem-cell-names = "efuse_segment_cell";
+ n-domain = <7>;
+ domain = "LL", "CCI", "VCORE", "MODEM_NR", "VSRAM_CPULL", "VSRAM_MODEM", "VCORE_OFF";
+ LL = <750 30 0x224 0 0 1>;
+ CCI = <750 30 0x220 24 0 1>;
+ VCORE = <750 30 0x21C 16 0 1>;
+ MODEM_NR = <825 30 0x21C 8 0 1>;
+ VSRAM_CPULL = <750 30 0X228 16 0 1>;
+ VSRAM_MODEM = <825 30 0X22C 0 0 1>;
+ VCORE_OFF = <550 30 0x224 16 0 1>;
+ };
+
+ memory {
+ device_type = "memory";
+#if defined(CONFIG_MTK_MEMORY_SIZE) && (CONFIG_MTK_MEMORY_SIZE == 1024)
+ reg = <0 0x40000000 0 0x40000000>;
+#elif defined(CONFIG_MTK_MEMORY_SIZE) && (CONFIG_MTK_MEMORY_SIZE == 896)
+ reg = <0 0x40000000 0 0x38000000>;
+#elif defined(CONFIG_MTK_MEMORY_SIZE) && (CONFIG_MTK_MEMORY_SIZE == 768)
+ reg = <0 0x40000000 0 0x30000000>;
+#elif defined(CONFIG_MTK_MEMORY_SIZE) && (CONFIG_MTK_MEMORY_SIZE == 640)
+ reg = <0 0x40000000 0 0x28000000>;
+#else
+ reg = <0 0x40000000 0 0x20000000>;
+#endif
+ };
+
+ wed: wed@15010000 {
+ compatible = "mediatek,wed";
+ wed_num = <2>;
+ /* add this property for wed get the pci slot number. */
+ pci_slot_map = <0>, <1>;
+ reg = <0 0x15010000 0 0x1000>,
+ <0 0x15011000 0 0x1000>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ wed2: wed2@15011000 {
+ compatible = "mediatek,wed2";
+ wed_num = <2>;
+ reg = <0 0x15010000 0 0x1000>,
+ <0 0x15011000 0 0x1000>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 406 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 407 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ wdma: wdma@15102800 {
+ compatible = "mediatek,wed-wdma";
+ reg = <0 0x15102800 0 0x400>,
+ <0 0x15102c00 0 0x400>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ ap2woccif: ap2woccif@151A9000 {
+ compatible = "mediatek,ap2woccif";
+ reg = <0 0x151a9000 0 0x1000>,
+ <0 0x151ab000 0 0x1000>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ wocpu_sysram: wocpu@15180000 {
+ compatible = "mediatek,wocpu_sysram";
+ reg = <0 0x15180000 0 0x8000>;
+ shared = <1>;
+ };
+
+ wocpu_dlm: wocpu_dlm@1518E000 {
+ compatible = "mediatek,wocpu_dlm";
+ reg = <0 0x1518E000 0 0x2000>,
+ <0 0x15192000 0 0x2000>;
+
+ resets = <ðsysrst 0>;
+ reset-names = "wocpu_rst";
+ };
+
+ cpu_boot: wocpu_boot@15194000 {
+ compatible = "mediatek,wocpu_boot";
+ reg = <0 0x15194000 0 0x1000>;
+ };
+
+ pcie_mirror: pcie_mirror@10201000 {
+ compatible = "mediatek,pcie-mirror";
+ reg = <0 0x10201000 0 0x1000>;
+ };
+
+ reserved_memory: reserved-memory {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ reserve-memory-atf {
+ compatible = "mediatek,reserve-memory-atf";
+ no-map;
+ reg = <0 0x42FB0000 0 0x1FA000>;
+ };
+
+ reserve-memory-mcupm_share {
+ compatible = "mediatek,reserve-memory-mcupm_share";
+ no-map;
+ status = "okay";
+#if defined(CONFIG_MTK_GMO_RAM_OPTIMIZE) || defined(CONFIG_MTK_MET_MEM_ALLOC)
+ reg = <0 0x42290000 0 0x210000>; /* 2M + 64K */
+#else
+ reg = <0 0x42290000 0 0x610000>; /* 6M + 64K */
+#endif
+ };
+
+ reserve-memory-medmcu_share {
+ compatible = "mediatek,reserve-memory-medmcu_share";
+ no-map;
+ alignment = <0 0x10000>;
+ reg = <0 0x60040000 0 0x328700>;
+ };
+
+ reserve-memory-sspm_share {
+ compatible = "mediatek,reserve-memory-sspm_share";
+ no-map;
+ status = "okay";
+#if defined(CONFIG_MTK_GMO_RAM_OPTIMIZE) || defined(CONFIG_MTK_MET_MEM_ALLOC)
+ reg = <0 0x429A0000 0 0x210000>; /* 2M + 64K */
+#else
+ reg = <0 0x429A0000 0 0x610000>; /* 6M + 64K */
+#endif
+ };
+
+ gps_mem: gps-reserve-memory {
+ compatible = "mediatek,gps-reserve-memory";
+ no-map;
+ reg = <0 0x432ca000 0 0x60000>; /* 384KB */
+ };
+
+ reserved-memory-pstore {
+ compatible = "ramoops";
+ reg = <0x0 0x4332a000 0x0 0xe0000>;
+ record-size = <0x1000>;
+ console-size = <0x40000>;
+ ftrace-size = <0x1000>;
+ pmsg-size = <0x10000>;
+ };
+
+#if defined(CONFIG_MTK_AEE_FEATURE)
+ reserve-memory-emi_isu_buf {
+ compatible = "mediatek,emi_isu_buf";
+ no-map;
+ reg = <0 0x60800000 0 0x800000>;
+ };
+#endif
+
+ wocpu0_emi: wocpu0_emi@50000000 {
+ compatible = "mediatek,wocpu0_emi";
+ no-map;
+ reg = <0 0x50000000 0 0x80000>;
+ shared = <0>;
+ };
+
+ wocpu1_emi: wocpu1_emi@50040000 {
+ compatible = "mediatek,wocpu1_emi";
+ no-map;
+ reg = <0 0x50080000 0 0x80000>;
+ shared = <0>;
+ };
+
+ wocpu_data: wocpu_data@50100000 {
+ compatible = "mediatek,wocpu_data";
+ no-map;
+ reg = <0 0x50100000 0 0x180000>;
+ shared = <1>;
+ };
+
+#if defined(CONFIG_OPTEE)
+ reserve-memory-tee {
+ compatible = "mediatek,reserve-memory-tee";
+ no-map;
+ reg = <0 0x4e9a0000 0 0xb00000>;
+ };
+#endif
+ };
+
+ gic: interrupt-controller {
+ compatible = "arm,gic-v3";
+ #interrupt-cells = <3>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+ #redistributor-regions = <1>;
+ interrupt-parent = <&gic>;
+ interrupt-controller;
+ reg = <0 0x0c000000 0 0x40000>, // distributor
+ <0 0x0c040000 0 0x200000>; // redistributor
+ interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ clkao: clkao {
+ compatible = "simple-bus";
+ };
+
+ clocks {
+ clk_null: clk_null {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <0>;
+ };
+
+ clk10m: clk10m {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <10000000>;
+ };
+
+ clk26m: clk26m {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <26000000>;
+ };
+
+ clk12m: clk12m {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <12000000>;
+ };
+
+ clk32k: clk32k {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <32000>;
+ };
+
+ clk13m: clk13m {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <13000000>;
+ };
+
+ ulposc: ulposc {
+ compatible = "fixed-clock";
+ #clock-cells = <0>;
+ clock-frequency = <260000000>;
+ };
+ };
+
+ topckgen_clk: syscon@10000000 {
+ compatible = "mediatek,mt6890-topckgen", "syscon";
+ reg = <0 0x10000000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ apmixedsys_clk: syscon@1000c000 {
+ compatible = "mediatek,mt6890-apmixedsys", "syscon";
+ reg = <0 0x1000c000 0 0xe00>;
+ #clock-cells=<1>;
+ };
+
+ dbgsys_dem_clk: syscon@0d0a0000 {
+ compatible = "mediatek,mt6890-dbgsys_dem", "syscon";
+ reg = <0 0x0d0a0000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ infracfg_ao_clk: syscon@10001000 {
+ compatible = "mediatek,mt6890-infracfg_ao", "syscon";
+ reg = <0 0x10001000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ pericfg_clk: syscon@10003000 {
+ compatible = "mediatek,mt6890-pericfg", "syscon";
+ reg = <0 0x10003000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ scpsys: power-controller@10006000 {
+ compatible = "mediatek,mt6890-scpsys", "syscon";
+ reg = <0 0x10006000 0 0x1000>;
+ #power-domain-cells = <1>;
+ infracfg = <&infracfg_ao_clk>;
+ clocks = <&topckgen_clk CLK_TOP_MM_SEL>,
+ <&topckgen_clk CLK_TOP_MFG_SEL>,
+ <&topckgen_clk CLK_TOP_MEDSYS_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_500M_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_MED_MCU_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_WED_MCU_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_2X_SEL>,
+ <&topckgen_clk CLK_TOP_SGMII_SEL>,
+ <&topckgen_clk CLK_TOP_SGMII_SBUS_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_312P5M_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_250M_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_62P4M_PTP_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_50M_RMII_SEL>,
+ <&topckgen_clk CLK_TOP_EIP97_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_AUDIO_26M_BCLK>,
+ <&topckgen_clk CLK_TOP_HSM_ARC_SEL>;
+ clock-names = "mm",
+ "mfg",
+ "medsys_sel",
+ "netsys_sel",
+ "netsys_500m_sel",
+ "netsys_med_mcu_sel",
+ "netsys_wed_mcu_sel",
+ "netsys_2x_sel",
+ "sgmii_sel",
+ "sgmii_sbus_sel",
+ "snps_eth_312p5m_sel",
+ "snps_eth_250m_sel",
+ "snps_ptp_sel",
+ "snps_rmii_sel",
+ "eip97_sel",
+ "audio",
+ "hsm_sel";
+ /*status="disabled";*/
+ };
+
+ gce_clk: syscon@10228000 {
+ compatible = "mediatek,mt6890-gce", "syscon";
+ reg = <0 0x10228000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ audsys_clk: syscon@11210000 {
+ compatible = "mediatek,mt6890-audsys", "syscon";
+ reg = <0 0x11210000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ imp_iic_wrap_e_clk: syscon@11c46000 {
+ compatible = "mediatek,mt6890-imp_iic_wrap_e", "syscon";
+ reg = <0 0x11c46000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ mfgsys_clk: syscon@13fbf000 {
+ compatible = "mediatek,mt6890-mfgsys", "syscon";
+ reg = <0 0x13fbf000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ mmsys_config_clk: syson@14000000 {
+ compatible = "mediatek,mt6890-mmsys_config", "syscon";
+ reg = <0 0x14000000 0 0x1000>;
+ #clock-cells = <1>;
+ };
+
+ mtk_lpm: mtk_lpm {
+ compatible = "mediatek,mtk-lpm";
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+ suspend-method = "system";
+ irq-remain = <&edge_keypad &edge_mdwdt>;
+ resource-ctrl = <&bus26m &infra &syspll>,
+ <&dram_s0 &dram_s1>;
+ constraints = <&rc_bus26m &rc_syspll &rc_dram>;
+
+ lpm_sysram: lpm_sysram@0011b500 {
+ compatible = "mediatek,lpm-sysram";
+ reg = <0 0x0011b500 0 0x300>;
+ };
+
+ irq-remain-list {
+ edge_keypad: edge_keypad {
+ target = <&keypad>;
+ value = <1 0 0 0x4>;
+ };
+ edge_mdwdt: edge_mdwdt {
+ target = <&mddriver>;
+ value = <1 0 0 0x02000000>;
+ };
+ };
+ resource-ctrl-list {
+ bus26m: bus26m {
+ id = <0x00000000>;
+ value = <0>;
+ };
+ infra: infra {
+ id = <0x00000001>;
+ value = <0>;
+ };
+ syspll: syspll {
+ id = <0x00000002>;
+ value = <0>;
+ };
+ dram_s0: dram_s0 {
+ id = <0x00000003>;
+ value = <0>;
+ };
+ dram_s1: dram_s1 {
+ id = <0x00000004>;
+ value = <0>;
+ };
+ };
+ constraint-list {
+ rc_bus26m: rc_bus26m {
+ id = <0x00000000>;
+ value = <1>;
+ };
+ rc_syspll: rc_syspll {
+ id = <0x00000001>;
+ value = <1>;
+ };
+ rc_dram: rc_dram {
+ id = <0x00000002>;
+ value = <1>;
+ };
+ };
+ };
+
+ cpupm_sysram: cpupm-sysram@0011b000 {
+ compatible = "mediatek,cpupm-sysram";
+ reg = <0 0x0011b000 0 0x500>;
+ };
+
+ mcusys_ctrl: mcusys-ctrl@0c53a000 {
+ compatible = "mediatek,mcusys-ctrl";
+ reg = <0 0x0c53a000 0 0x1000>;
+ };
+
+ tboard_thermistor1: thermal-ntc1 {
+ compatible = "mediatek,mt6880-board-ntc";
+ #thermal-sensor-cells = <0>;
+ reg = <0 0x1001C0D4 0 0x4>; /* TIA DATA T0 */
+ pmic_auxadc = <&pmic_auxadc>;
+ temperature-lookup-table = <
+ (-40000) 4397119
+ (-39000) 4092874
+ (-38000) 3811717
+ (-37000) 3551749
+ (-36000) 3311236
+ (-35000) 3088599
+ (-34000) 2882396
+ (-33000) 2691310
+ (-32000) 2514137
+ (-31000) 2349778
+ (-30000) 2197225
+ (-29000) 2055558
+ (-28000) 1923932
+ (-27000) 1801573
+ (-26000) 1687773
+ (-25000) 1581881
+ (-24000) 1483100
+ (-23000) 1391113
+ (-22000) 1305413
+ (-21000) 1225531
+ (-20000) 1151037
+ (-19000) 1081535
+ (-18000) 1016661
+ (-17000) 956080
+ (-16000) 899481
+ (-15000) 846579
+ (-14000) 797111
+ (-13000) 750834
+ (-12000) 707524
+ (-11000) 666972
+ (-10000) 628988
+ (-9000) 593342
+ (-8000) 559931
+ (-7000) 528602
+ (-6000) 499212
+ (-5000) 471632
+ (-4000) 445772
+ (-3000) 421480
+ (-2000) 398652
+ (-1000) 377193
+ 0 357012
+ 1000 338006
+ 2000 320122
+ 3000 303287
+ 4000 287434
+ 5000 272500
+ 6000 258426
+ 7000 245160
+ 8000 232649
+ 9000 220847
+ 10000 209710
+ 11000 199196
+ 12000 189268
+ 13000 179890
+ 14000 171027
+ 15000 162651
+ 16000 154726
+ 17000 147232
+ 18000 140142
+ 19000 133432
+ 20000 127080
+ 21000 121066
+ 22000 115368
+ 23000 109970
+ 24000 104852
+ 25000 100000
+ 26000 95398
+ 27000 91032
+ 28000 86889
+ 29000 82956
+ 30000 79222
+ 31000 75675
+ 32000 72306
+ 33000 69104
+ 34000 66061
+ 35000 63167
+ 36000 60415
+ 37000 57797
+ 38000 55306
+ 39000 52934
+ 40000 50677
+ 41000 48528
+ 42000 46482
+ 43000 44533
+ 44000 42675
+ 45000 40904
+ 46000 39213
+ 47000 37601
+ 48000 36063
+ 49000 34595
+ 50000 33195
+ 51000 31859
+ 52000 30584
+ 53000 29366
+ 54000 28203
+ 55000 27091
+ 56000 26028
+ 57000 25013
+ 58000 24042
+ 59000 23113
+ 60000 22224
+ 61000 21374
+ 62000 20560
+ 63000 19782
+ 64000 19036
+ 65000 18322
+ 66000 17640
+ 67000 16986
+ 68000 16360
+ 69000 15759
+ 70000 15184
+ 71000 14631
+ 72000 14100
+ 73000 13591
+ 74000 13103
+ 75000 12635
+ 76000 12187
+ 77000 11756
+ 78000 11343
+ 79000 10946
+ 80000 10565
+ 81000 10199
+ 82000 9847
+ 83000 9509
+ 84000 9184
+ 85000 8872
+ 86000 8572
+ 87000 8283
+ 88000 8005
+ 89000 7738
+ 90000 7481
+ 91000 7234
+ 92000 6997
+ 93000 6769
+ 94000 6548
+ 95000 6337
+ 96000 6132
+ 97000 5934
+ 98000 5744
+ 99000 5561
+ 100000 5384
+ 101000 5214
+ 102000 5051
+ 103000 4893
+ 104000 4741
+ 105000 4594
+ 106000 4453
+ 107000 4316
+ 108000 4184
+ 109000 4057
+ 110000 3934
+ 111000 3816
+ 112000 3701
+ 113000 3591
+ 114000 3484
+ 115000 3380
+ 116000 3281
+ 117000 3185
+ 118000 3093
+ 119000 3003
+ 120000 2916
+ 121000 2832
+ 122000 2751
+ 123000 2672
+ 124000 2596
+ 125000 2522>;
+ };
+
+ tboard_thermistor2: thermal-ntc2 {
+ compatible = "mediatek,mt6880-board-ntc";
+ #thermal-sensor-cells = <0>;
+ reg = <0 0x1001C0D8 0 0x4>; /* TIA DATA T1 */
+ pmic_auxadc = <&pmic_auxadc>;
+ temperature-lookup-table = <
+ (-40000) 4397119
+ (-39000) 4092874
+ (-38000) 3811717
+ (-37000) 3551749
+ (-36000) 3311236
+ (-35000) 3088599
+ (-34000) 2882396
+ (-33000) 2691310
+ (-32000) 2514137
+ (-31000) 2349778
+ (-30000) 2197225
+ (-29000) 2055558
+ (-28000) 1923932
+ (-27000) 1801573
+ (-26000) 1687773
+ (-25000) 1581881
+ (-24000) 1483100
+ (-23000) 1391113
+ (-22000) 1305413
+ (-21000) 1225531
+ (-20000) 1151037
+ (-19000) 1081535
+ (-18000) 1016661
+ (-17000) 956080
+ (-16000) 899481
+ (-15000) 846579
+ (-14000) 797111
+ (-13000) 750834
+ (-12000) 707524
+ (-11000) 666972
+ (-10000) 628988
+ (-9000) 593342
+ (-8000) 559931
+ (-7000) 528602
+ (-6000) 499212
+ (-5000) 471632
+ (-4000) 445772
+ (-3000) 421480
+ (-2000) 398652
+ (-1000) 377193
+ 0 357012
+ 1000 338006
+ 2000 320122
+ 3000 303287
+ 4000 287434
+ 5000 272500
+ 6000 258426
+ 7000 245160
+ 8000 232649
+ 9000 220847
+ 10000 209710
+ 11000 199196
+ 12000 189268
+ 13000 179890
+ 14000 171027
+ 15000 162651
+ 16000 154726
+ 17000 147232
+ 18000 140142
+ 19000 133432
+ 20000 127080
+ 21000 121066
+ 22000 115368
+ 23000 109970
+ 24000 104852
+ 25000 100000
+ 26000 95398
+ 27000 91032
+ 28000 86889
+ 29000 82956
+ 30000 79222
+ 31000 75675
+ 32000 72306
+ 33000 69104
+ 34000 66061
+ 35000 63167
+ 36000 60415
+ 37000 57797
+ 38000 55306
+ 39000 52934
+ 40000 50677
+ 41000 48528
+ 42000 46482
+ 43000 44533
+ 44000 42675
+ 45000 40904
+ 46000 39213
+ 47000 37601
+ 48000 36063
+ 49000 34595
+ 50000 33195
+ 51000 31859
+ 52000 30584
+ 53000 29366
+ 54000 28203
+ 55000 27091
+ 56000 26028
+ 57000 25013
+ 58000 24042
+ 59000 23113
+ 60000 22224
+ 61000 21374
+ 62000 20560
+ 63000 19782
+ 64000 19036
+ 65000 18322
+ 66000 17640
+ 67000 16986
+ 68000 16360
+ 69000 15759
+ 70000 15184
+ 71000 14631
+ 72000 14100
+ 73000 13591
+ 74000 13103
+ 75000 12635
+ 76000 12187
+ 77000 11756
+ 78000 11343
+ 79000 10946
+ 80000 10565
+ 81000 10199
+ 82000 9847
+ 83000 9509
+ 84000 9184
+ 85000 8872
+ 86000 8572
+ 87000 8283
+ 88000 8005
+ 89000 7738
+ 90000 7481
+ 91000 7234
+ 92000 6997
+ 93000 6769
+ 94000 6548
+ 95000 6337
+ 96000 6132
+ 97000 5934
+ 98000 5744
+ 99000 5561
+ 100000 5384
+ 101000 5214
+ 102000 5051
+ 103000 4893
+ 104000 4741
+ 105000 4594
+ 106000 4453
+ 107000 4316
+ 108000 4184
+ 109000 4057
+ 110000 3934
+ 111000 3816
+ 112000 3701
+ 113000 3591
+ 114000 3484
+ 115000 3380
+ 116000 3281
+ 117000 3185
+ 118000 3093
+ 119000 3003
+ 120000 2916
+ 121000 2832
+ 122000 2751
+ 123000 2672
+ 124000 2596
+ 125000 2522>;
+ };
+
+ tboard_thermistor3: thermal-ntc3 {
+ compatible = "mediatek,mt6880-board-ntc";
+ #thermal-sensor-cells = <0>;
+ reg = <0 0x1001C0DC 0 0x4>; /* TIA DATA T2 */
+ pmic_auxadc = <&pmic_auxadc>;
+ temperature-lookup-table = <
+ (-40000) 4397119
+ (-39000) 4092874
+ (-38000) 3811717
+ (-37000) 3551749
+ (-36000) 3311236
+ (-35000) 3088599
+ (-34000) 2882396
+ (-33000) 2691310
+ (-32000) 2514137
+ (-31000) 2349778
+ (-30000) 2197225
+ (-29000) 2055558
+ (-28000) 1923932
+ (-27000) 1801573
+ (-26000) 1687773
+ (-25000) 1581881
+ (-24000) 1483100
+ (-23000) 1391113
+ (-22000) 1305413
+ (-21000) 1225531
+ (-20000) 1151037
+ (-19000) 1081535
+ (-18000) 1016661
+ (-17000) 956080
+ (-16000) 899481
+ (-15000) 846579
+ (-14000) 797111
+ (-13000) 750834
+ (-12000) 707524
+ (-11000) 666972
+ (-10000) 628988
+ (-9000) 593342
+ (-8000) 559931
+ (-7000) 528602
+ (-6000) 499212
+ (-5000) 471632
+ (-4000) 445772
+ (-3000) 421480
+ (-2000) 398652
+ (-1000) 377193
+ 0 357012
+ 1000 338006
+ 2000 320122
+ 3000 303287
+ 4000 287434
+ 5000 272500
+ 6000 258426
+ 7000 245160
+ 8000 232649
+ 9000 220847
+ 10000 209710
+ 11000 199196
+ 12000 189268
+ 13000 179890
+ 14000 171027
+ 15000 162651
+ 16000 154726
+ 17000 147232
+ 18000 140142
+ 19000 133432
+ 20000 127080
+ 21000 121066
+ 22000 115368
+ 23000 109970
+ 24000 104852
+ 25000 100000
+ 26000 95398
+ 27000 91032
+ 28000 86889
+ 29000 82956
+ 30000 79222
+ 31000 75675
+ 32000 72306
+ 33000 69104
+ 34000 66061
+ 35000 63167
+ 36000 60415
+ 37000 57797
+ 38000 55306
+ 39000 52934
+ 40000 50677
+ 41000 48528
+ 42000 46482
+ 43000 44533
+ 44000 42675
+ 45000 40904
+ 46000 39213
+ 47000 37601
+ 48000 36063
+ 49000 34595
+ 50000 33195
+ 51000 31859
+ 52000 30584
+ 53000 29366
+ 54000 28203
+ 55000 27091
+ 56000 26028
+ 57000 25013
+ 58000 24042
+ 59000 23113
+ 60000 22224
+ 61000 21374
+ 62000 20560
+ 63000 19782
+ 64000 19036
+ 65000 18322
+ 66000 17640
+ 67000 16986
+ 68000 16360
+ 69000 15759
+ 70000 15184
+ 71000 14631
+ 72000 14100
+ 73000 13591
+ 74000 13103
+ 75000 12635
+ 76000 12187
+ 77000 11756
+ 78000 11343
+ 79000 10946
+ 80000 10565
+ 81000 10199
+ 82000 9847
+ 83000 9509
+ 84000 9184
+ 85000 8872
+ 86000 8572
+ 87000 8283
+ 88000 8005
+ 89000 7738
+ 90000 7481
+ 91000 7234
+ 92000 6997
+ 93000 6769
+ 94000 6548
+ 95000 6337
+ 96000 6132
+ 97000 5934
+ 98000 5744
+ 99000 5561
+ 100000 5384
+ 101000 5214
+ 102000 5051
+ 103000 4893
+ 104000 4741
+ 105000 4594
+ 106000 4453
+ 107000 4316
+ 108000 4184
+ 109000 4057
+ 110000 3934
+ 111000 3816
+ 112000 3701
+ 113000 3591
+ 114000 3484
+ 115000 3380
+ 116000 3281
+ 117000 3185
+ 118000 3093
+ 119000 3003
+ 120000 2916
+ 121000 2832
+ 122000 2751
+ 123000 2672
+ 124000 2596
+ 125000 2522>;
+ };
+
+ tboard_thermistor4: thermal-ntc4 {
+ compatible = "mediatek,mt6880-board-ntc";
+ #thermal-sensor-cells = <0>;
+ reg = <0 0x1001C0E0 0 0x4>; /* TIA DATA T3 */
+ pmic_auxadc = <&pmic_auxadc>;
+ temperature-lookup-table = <
+ (-40000) 4397119
+ (-39000) 4092874
+ (-38000) 3811717
+ (-37000) 3551749
+ (-36000) 3311236
+ (-35000) 3088599
+ (-34000) 2882396
+ (-33000) 2691310
+ (-32000) 2514137
+ (-31000) 2349778
+ (-30000) 2197225
+ (-29000) 2055558
+ (-28000) 1923932
+ (-27000) 1801573
+ (-26000) 1687773
+ (-25000) 1581881
+ (-24000) 1483100
+ (-23000) 1391113
+ (-22000) 1305413
+ (-21000) 1225531
+ (-20000) 1151037
+ (-19000) 1081535
+ (-18000) 1016661
+ (-17000) 956080
+ (-16000) 899481
+ (-15000) 846579
+ (-14000) 797111
+ (-13000) 750834
+ (-12000) 707524
+ (-11000) 666972
+ (-10000) 628988
+ (-9000) 593342
+ (-8000) 559931
+ (-7000) 528602
+ (-6000) 499212
+ (-5000) 471632
+ (-4000) 445772
+ (-3000) 421480
+ (-2000) 398652
+ (-1000) 377193
+ 0 357012
+ 1000 338006
+ 2000 320122
+ 3000 303287
+ 4000 287434
+ 5000 272500
+ 6000 258426
+ 7000 245160
+ 8000 232649
+ 9000 220847
+ 10000 209710
+ 11000 199196
+ 12000 189268
+ 13000 179890
+ 14000 171027
+ 15000 162651
+ 16000 154726
+ 17000 147232
+ 18000 140142
+ 19000 133432
+ 20000 127080
+ 21000 121066
+ 22000 115368
+ 23000 109970
+ 24000 104852
+ 25000 100000
+ 26000 95398
+ 27000 91032
+ 28000 86889
+ 29000 82956
+ 30000 79222
+ 31000 75675
+ 32000 72306
+ 33000 69104
+ 34000 66061
+ 35000 63167
+ 36000 60415
+ 37000 57797
+ 38000 55306
+ 39000 52934
+ 40000 50677
+ 41000 48528
+ 42000 46482
+ 43000 44533
+ 44000 42675
+ 45000 40904
+ 46000 39213
+ 47000 37601
+ 48000 36063
+ 49000 34595
+ 50000 33195
+ 51000 31859
+ 52000 30584
+ 53000 29366
+ 54000 28203
+ 55000 27091
+ 56000 26028
+ 57000 25013
+ 58000 24042
+ 59000 23113
+ 60000 22224
+ 61000 21374
+ 62000 20560
+ 63000 19782
+ 64000 19036
+ 65000 18322
+ 66000 17640
+ 67000 16986
+ 68000 16360
+ 69000 15759
+ 70000 15184
+ 71000 14631
+ 72000 14100
+ 73000 13591
+ 74000 13103
+ 75000 12635
+ 76000 12187
+ 77000 11756
+ 78000 11343
+ 79000 10946
+ 80000 10565
+ 81000 10199
+ 82000 9847
+ 83000 9509
+ 84000 9184
+ 85000 8872
+ 86000 8572
+ 87000 8283
+ 88000 8005
+ 89000 7738
+ 90000 7481
+ 91000 7234
+ 92000 6997
+ 93000 6769
+ 94000 6548
+ 95000 6337
+ 96000 6132
+ 97000 5934
+ 98000 5744
+ 99000 5561
+ 100000 5384
+ 101000 5214
+ 102000 5051
+ 103000 4893
+ 104000 4741
+ 105000 4594
+ 106000 4453
+ 107000 4316
+ 108000 4184
+ 109000 4057
+ 110000 3934
+ 111000 3816
+ 112000 3701
+ 113000 3591
+ 114000 3484
+ 115000 3380
+ 116000 3281
+ 117000 3185
+ 118000 3093
+ 119000 3003
+ 120000 2916
+ 121000 2832
+ 122000 2751
+ 123000 2672
+ 124000 2596
+ 125000 2522>;
+ };
+
+ trm: thermal_risk_monitor {
+ compatible = "mediatek,mt6880-trm";
+ };
+
+ pmic_temp: pmic_temp {
+ compatible = "mediatek,mt6330-pmic-temp";
+ io-channels =
+ <&pmic_auxadc AUXADC_CHIP_TEMP>;
+ io-channel-names =
+ "pmic_chip_temp";
+
+ #thermal-sensor-cells = <0>;
+ nvmem-cells = <&thermal_efuse_data1>;
+ nvmem-cell-names = "t_e_data1@6c";
+ pmic_temp,cali_factor = <1681>;
+ pmic_temp,iio_chan = <0>;
+ };
+
+ pmic_vcore: pmic_vcore {
+ compatible = "mediatek,mt6330-pmic-temp";
+ io-channels =
+ <&pmic_auxadc AUXADC_VCORE_TEMP>;
+ io-channel-names =
+ "pmic_buck1_temp";
+
+ #thermal-sensor-cells = <0>;
+ nvmem-cells = <&thermal_efuse_data1>;
+ nvmem-cell-names = "t_e_data1@6c";
+ pmic_temp,cali_factor = <1863>;
+ pmic_temp,iio_chan = <1>;
+ };
+
+ pmic_vproc: pmic_vproc {
+ compatible = "mediatek,mt6330-pmic-temp";
+ io-channels =
+ <&pmic_auxadc AUXADC_VPROC_TEMP>;
+ io-channel-names =
+ "pmic_buck2_temp";
+ #thermal-sensor-cells = <0>;
+ nvmem-cells = <&thermal_efuse_data1>;
+ nvmem-cell-names = "t_e_data1@6c";
+ pmic_temp,cali_factor = <1863>;
+ pmic_temp,iio_chan = <2>;
+ };
+
+ pmic_vgpu: pmic_vgpu {
+ compatible = "mediatek,mt6330-pmic-temp";
+ io-channels =
+ <&pmic_auxadc AUXADC_VGPU_TEMP>;
+ io-channel-names =
+ "pmic_buck3_temp";
+ #thermal-sensor-cells = <0>;
+ nvmem-cells = <&thermal_efuse_data1>;
+ nvmem-cell-names = "t_e_data1@6c";
+ pmic_temp,cali_factor = <1863>;
+ pmic_temp,iio_chan = <3>;
+ };
+
+ md_rf_ic: md-rf-ic {
+ compatible = "mediatek,md-rf";
+ #thermal-sensor-cells = <0>;
+ };
+
+ md_cooler_mutt: mutt {
+ compatible = "mediatek,mt6297-md-cooler-mutt";
+ mutt_pa1: mutt-pa1 {
+ id = <0>;
+ #cooling-cells = <2>;
+ };
+ mutt_pa1_no_ims: mutt-pa1-no-ims {
+ id = <0>;
+ #cooling-cells = <2>;
+ };
+ mutt_pa2: mutt-pa2 {
+ id = <1>;
+ #cooling-cells = <2>;
+ };
+ mutt_pa2_no_ims: mutt-pa2-no-ims {
+ id = <1>;
+ #cooling-cells = <2>;
+ };
+ };
+ md_cooler_tx_pwr: tx-pwr {
+ compatible = "mediatek,md-cooler-tx-pwr";
+ tx_pwr_pa1: tx-pwr-pa1 {
+ id = <0>;
+ #cooling-cells = <2>;
+ };
+ tx_pwr_pa2: tx-pwr-pa2 {
+ id = <1>;
+ #cooling-cells = <2>;
+ };
+ };
+ md_cooler_scg_off: scg-off {
+ compatible = "mediatek,md-cooler-scg-off";
+ scg_off_pa2: scg-off-pa2 {
+ id = <1>;
+ #cooling-cells = <2>;
+ };
+ };
+
+ thermal-zones {
+ soc_max {
+ polling-delay = <100>; /* milliseconds */
+ polling-delay-passive = <50>; /* milliseconds */
+ thermal-sensors = <&lvts 0>;
+ sustainable-power = <1700>;
+
+ trips {
+ threshold: trip-point@0 {
+ temperature = <85000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+
+ ipa_target: trip-point@1 {
+ temperature = <95000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+
+ soc_max_crit: soc_max_crit@0 {
+ temperature = <115000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+
+ cooling-maps {
+ map0 {
+ trip = <&ipa_target>;
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ contribution = <1024>;
+ };
+
+ map1 {
+ trip = <&ipa_target>;
+ cooling-device = <&mali THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ contribution = <1024>;
+ };
+ };
+ };
+
+ cpu_little0 {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 1>;
+ };
+
+ cpu_little1 {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 2>;
+ };
+
+ cpu_little2 {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 3>;
+ };
+
+ cpu_little3 {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 4>;
+ };
+
+ gpu0 {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 5>;
+ };
+
+ gpu1 {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 6>;
+ };
+
+ dramc {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 7>;
+ };
+
+ mmsys {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 8>;
+ };
+
+ md_5g {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 9>;
+ };
+
+ md_4g {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 10>;
+ };
+
+ md_3g {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&lvts 11>;
+ };
+
+ soc_dram_ntc {
+ polling-delay = <1000>; /* milliseconds */
+ polling-delay-passive = <1000>; /* milliseconds */
+ thermal-sensors = <&tboard_thermistor1>;
+
+ trips {
+ soc_dram_ntc_crit: soc_dram_ntc_crit@0 {
+ temperature = <115000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+ };
+
+ nrpa_ntc {
+ polling-delay = <1000>; /* milliseconds */
+ polling-delay-passive = <1000>; /* milliseconds */
+ thermal-sensors = <&tboard_thermistor2>;
+
+ trips {
+ /*nrpa_ntc_target: nrpa_ntc_trip@0 {
+ temperature = <82000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ */
+ nrpa_ntc_tx_pwr: nrpa_ntc_trip@0 {
+ temperature = <85000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ /*nrpa_ntc_no_ims: nrpa_ntc_trip@2 {
+ temperature = <90000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ */
+ nrpa_ntc_scg_off: nrpa_ntc_trip@1 {
+ temperature = <95000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ nrpa_ntc_crit: nrpa_ntc_trip@2 {
+ temperature = <115000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+ cooling-maps {
+ /*map0 {
+ trip = <&nrpa_ntc_target>;
+ cooling-device = <&mutt_pa2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ */
+ map0 {
+ trip = <&nrpa_ntc_tx_pwr>;
+ cooling-device = <&tx_pwr_pa2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ /*map2 {
+ trip = <&nrpa_ntc_no_ims>;
+ cooling-device = <&mutt_pa2_no_ims THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ */
+ map1 {
+ trip = <&nrpa_ntc_scg_off>;
+ cooling-device = <&scg_off_pa2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
+ };
+
+ ltepa_ntc {
+ polling-delay = <1000>; /* milliseconds */
+ polling-delay-passive = <1000>; /* milliseconds */
+ thermal-sensors = <&tboard_thermistor3>;
+
+ trips {
+ /*ltepa_ntc_target: ltepa_ntc_trip@0 {
+ temperature = <82000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ */
+ ltepa_ntc_tx_pwr: ltepa_ntc_trip@1 {
+ temperature = <85000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ /*ltepa_ntc_no_ims: ltepa_ntc_trip@2 {
+ temperature = <90000>;
+ hysteresis = <2000>;
+ type = "passive";
+ };
+ */
+ ltepa_ntc_crit: ltepa_ntc_trip@3 {
+ temperature = <115000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+ cooling-maps {
+ /*map0 {
+ trip = <<epa_ntc_target>;
+ cooling-device = <&mutt_pa1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ */
+ map1 {
+ trip = <<epa_ntc_tx_pwr>;
+ cooling-device = <&tx_pwr_pa1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ /*map2 {
+ trip = <<epa_ntc_no_ims>;
+ cooling-device = <&mutt_pa1_no_ims THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ */
+ };
+ };
+
+ rf_ntc {
+ polling-delay = <1000>; /* milliseconds */
+ polling-delay-passive = <1000>; /* milliseconds */
+ thermal-sensors = <&tboard_thermistor4>;
+
+ trips {
+ rf_ntc_crit: rf_ntc_crit@0 {
+ temperature = <115000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+ };
+
+ pmic {
+ polling-delay = <1000>; /* milliseconds */
+ polling-delay-passive = <1000>; /* milliseconds */
+ thermal-sensors = <&pmic_temp>;
+
+ trips {
+ pmic_temp_crit: pmic_temp_crit@0 {
+ temperature = <125000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+ };
+ pmic_vcore {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&pmic_vcore>;
+ };
+ pmic_vproc {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&pmic_vproc>;
+ };
+ pmic_vgpu {
+ polling-delay = <0>; /* milliseconds */
+ polling-delay-passive = <0>; /* milliseconds */
+ thermal-sensors = <&pmic_vgpu>;
+ };
+
+ md_rf {
+ polling-delay = <1000>; /* milliseconds */
+ polling-delay-passive = <1000>; /* milliseconds */
+ thermal-sensors = <&md_rf_ic>;
+
+ trips {
+ md_rf_crit: md_rf_crit@0 {
+ temperature = <117000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+ };
+ conn_gps {
+ polling-delay = <1000>; /* milliseconds */
+ polling-delay-passive = <1000>; /* milliseconds */
+ thermal-sensors = <&consys>;
+
+ trips {
+ consys_max_crit: consys_max_crit@0 {
+ temperature = <117000>;
+ hysteresis = <2000>;
+ type = "critical";
+ };
+ };
+ };
+ };
+
+ chipid@08000000 {
+ compatible = "mediatek,chipid";
+ reg = <0 0x08000000 0 0x0004>,
+ <0 0x08000004 0 0x0004>,
+ <0 0x08000008 0 0x0004>,
+ <0 0x0800000c 0 0x0004>;
+ };
+
+ dbgtop@1000d000 {
+ compatible = "mediatek,dbgtop";
+ reg = <0 0x1000d000 0 0x1000>;
+ };
+
+ mcupm@0C540000 {
+ compatible = "mediatek,mcupm";
+ reg =<0 0x0C540000 0 0x22000>,
+
+ <0 0x0c55fb00 0 0xa0>,
+ <0 0x0c562004 0 0x4>,
+ <0 0x0c562018 0 0x4>,
+ <0 0x0c562000 0 0x4>,
+ <0 0x0c562010 0 0x4>,
+
+ <0 0x0c55fba0 0 0xa0>,
+ <0 0x0c562004 0 0x4>,
+ <0 0x0c562018 0 0x4>,
+ <0 0x0c562000 0 0x4>,
+ <0 0x0c562010 0 0x4>,
+
+ <0 0x0c55fc40 0 0xa0>,
+ <0 0x0c562004 0 0x4>,
+ <0 0x0c562018 0 0x4>,
+ <0 0x0c562000 0 0x4>,
+ <0 0x0c562010 0 0x4>,
+
+ <0 0x0c55fce0 0 0xa0>,
+ <0 0x0c562004 0 0x4>,
+ <0 0x0c562018 0 0x4>,
+ <0 0x0c562000 0 0x4>,
+ <0 0x0c562010 0 0x4>,
+
+ <0 0x0c55fd80 0 0xa0>,
+ <0 0x0c562004 0 0x4>,
+ <0 0x0c562018 0 0x4>,
+ <0 0x0c562000 0 0x4>,
+ <0 0x0c562010 0 0x4>,
+
+ <0 0x0c55fe20 0 0xa0>,
+ <0 0x0c562004 0 0x4>,
+ <0 0x0c562018 0 0x4>,
+ <0 0x0c562000 0 0x4>,
+ <0 0x0c562010 0 0x4>,
+
+ <0 0x0c55fec0 0 0xa0>,
+ <0 0x0c562004 0 0x4>,
+ <0 0x0c562018 0 0x4>,
+ <0 0x0c562000 0 0x4>,
+ <0 0x0c562010 0 0x4>,
+
+ <0 0x0c55ff60 0 0xa0>,
+ <0 0x0c562004 0 0x4>,
+ <0 0x0c562018 0 0x4>,
+ <0 0x0c562000 0 0x4>,
+ <0 0x0c562010 0 0x4>;
+
+ reg-names = "mcupm_base",
+
+ "mbox0_base",
+ "mbox0_set",
+ "mbox0_clr",
+ "mbox0_send",
+ "mbox0_recv",
+
+ "mbox1_base",
+ "mbox1_set",
+ "mbox1_clr",
+ "mbox1_send",
+ "mbox1_recv",
+
+ "mbox2_base",
+ "mbox2_set",
+ "mbox2_clr",
+ "mbox2_send",
+ "mbox2_recv",
+
+ "mbox3_base",
+ "mbox3_set",
+ "mbox3_clr",
+ "mbox3_send",
+ "mbox3_recv",
+
+ "mbox4_base",
+ "mbox4_set",
+ "mbox4_clr",
+ "mbox4_send",
+ "mbox4_recv",
+
+ "mbox5_base",
+ "mbox5_set",
+ "mbox5_clr",
+ "mbox5_send",
+ "mbox5_recv",
+
+ "mbox6_base",
+ "mbox6_set",
+ "mbox6_clr",
+ "mbox6_send",
+ "mbox6_recv",
+
+ "mbox7_base",
+ "mbox7_set",
+ "mbox7_clr",
+ "mbox7_send",
+ "mbox7_recv";
+
+ interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 38 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>;
+
+ interrupt-names = "mbox0",
+ "mbox1",
+ "mbox2",
+ "mbox3",
+ "mbox4",
+ "mbox5",
+ "mbox6",
+ "mbox7";
+ };
+
+ topckgen: topckgen@10000000 {
+ compatible = "mediatek,topckgen", "syscon";
+ reg = <0 0x10000000 0 0x1000>;
+ };
+
+ dcm: dcm@10001000 {
+ compatible = "mediatek,mt6880-dcm";
+ reg = <0 0x10001000 0 0x1000>,
+ <0 0x10002000 0 0x1000>,
+ <0 0x10022000 0 0x1000>,
+ <0 0x10219000 0 0x1000>,
+ <0 0x10230000 0 0x2000>,
+ <0 0x10235000 0 0x1000>,
+ <0 0x10238000 0 0x1000>,
+ <0 0x10240000 0 0x2000>,
+ <0 0x10248000 0 0x1000>,
+ <0 0xc538000 0 0x5000>,
+ <0 0xc53a800 0 0x1000>;
+ reg-names = "infracfg_ao",
+ "infracfg_ao_mem",
+ "infra_ao_bcrm",
+ "emi",
+ "dramc_ch0_top0",
+ "chn0_emi",
+ "dramc_ch0_top5",
+ "dramc_ch1_top0",
+ "dramc_ch1_top5",
+ "mp_cpusys_top",
+ "cpccfg_reg";
+ };
+
+ infracfg_ao: infracfg_ao@10001000 {
+ compatible = "mediatek,infracfg_ao", "syscon", "simple-mfd";
+ reg = <0 0x10001000 0 0x1000>;
+ infracfg_rst: reset-controller {
+ compatible = "ti,syscon-reset";
+ #reset-cells = <1>;
+
+ ti,reset-bits = <
+ 0x120 0 0x124 0 0 0 (ASSERT_SET | DEASSERT_SET | STATUS_NONE) /* 0: lvts_ap */
+ 0x730 12 0x734 12 0 0 (ASSERT_SET | DEASSERT_SET | STATUS_NONE) /* 1: lvts_mcu */
+ >;
+ };
+ };
+
+ infracfg_ao_mem@10002000 {
+ compatible = "mediatek,infracfg_ao_mem";
+ reg = <0 0x10002000 0 0x1000>;
+ };
+
+ pericfg@10003000 {
+ compatible = "mediatek,pericfg";
+ reg = <0 0x10003000 0 0x1000>;
+ };
+
+ gpio_usage_mapping: gpio_usage_mapping {
+ compatible = "mediatek,gpio_usage_mapping";
+ };
+
+ gpio: gpio@10005000 {
+ compatible = "mediatek,gpio";
+ reg = <0 0x10005000 0 0x1000>;
+ };
+
+ pio: pinctrl@10005000 {
+ compatible = "mediatek,mt2735-pinctrl";
+ reg = <0 0x10005000 0 0x1000>,
+ <0 0x11c10000 0 0x1000>,
+ <0 0x11c20000 0 0x1000>,
+ <0 0x11d00000 0 0x1000>,
+ <0 0x11d10000 0 0x1000>,
+ <0 0x11d20000 0 0x1000>,
+ <0 0x11e00000 0 0x1000>,
+ <0 0x11f00000 0 0x1000>,
+ <0 0x1000b000 0 0x1000>;
+ reg-names = "gpio", "iocfg_rm",
+ "iocfg_rb", "iocfg_bl",
+ "iocfg_bm", "iocfg_br",
+ "iocfg_lt", "iocfg_tl",
+ "eint";
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-ranges = <&pio 0 0 235>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ interrupts = <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-parent = <&gic>;
+ };
+
+ sleep: sleep@10006000 {
+ compatible = "mediatek,sleep", "syscon";
+ reg = <0 0x10006000 0 0x1000>;
+ };
+
+ spmtwam: spmtwam@10006000 {
+ compatible = "mediatek,spmtwam";
+ reg = <0 0x10006000 0 0x1000>;
+ interrupts = <GIC_SPI 222 IRQ_TYPE_LEVEL_HIGH>;
+ spm_twam_con = <0xa0>;
+ spm_twam_window_len = <0xa4>;
+ spm_twam_idle_sel = <0xa8>;
+ spm_irq_mask = <0xb4>;
+ spm_irq_sta = <0x128>;
+ spm_twam_last_sta0 = <0x1d0>;
+ spm_twam_last_sta1 = <0x1d4>;
+ spm_twam_last_sta2 = <0x1d8>;
+ spm_twam_last_sta3 = <0x1dc>;
+ };
+
+ srclken: srclken@10006500 {
+ compatible = "mediatek,srclken";
+ reg = <0 0x10006500 0 0x1000>,
+ <0 0x105c4000 0 0x1000>,
+ <0 0x10005000 0 0x1000>;
+ reg-names = "srclken", "scpdvfs", "gpio";
+ srclken-mode = "bringup";
+
+ srclken-rst-cfg = <0x0>;
+ srclken-central-cfg = <0x4 0x8 0x1C>;
+ srclken-cmd-cfg = <0xC>;
+ srclken-pmic-cfg = <0x10 0x14>;
+ srclken-dcxo-fpm-cfg = <0x18>;
+ srclken-subsys-cfg = <0x20>;
+ srclken-misc-cfg = <0xB4>;
+ srclken-spm-cfg = <0xB8>;
+ srclken-subsys-if-cfg = <0xBC>;
+ srclken-fsm-sta = <0x60>;
+ srclken-cmd-sta = <0x64 0x68>;
+ srclken-spi-sta = <0x6C>;
+ srclken-pipo-sta = <0x70>;
+ srclken-subsys-sta = <0x80>;
+ srclken-dbg-trace-sta = <0xC0 0xC4>;
+
+ srclken-scp-enable = "n";
+ scp-vreq-cfg = <0x54>;
+ scp-rc-vreq-bit = <27 28>;
+
+ srclken-gpio-enable = "n";
+ gpio-dir-cfg = <0x0>;
+ gpio-dout-cfg = <0x100>;
+ gpio-pull-bit = <6>;
+ };
+
+ watchdog: watchdog@10007000 {
+ compatible = "mediatek,mt2735-wdt";
+ reg = <0 0x10007000 0 0x1000>;
+ };
+
+ apxgpt@10008000 {
+ compatible = "mediatek,apxgpt";
+ reg = <0 0x10008000 0 0x1000>;
+ interrupts = <GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ sej@1000a000 {
+ compatible = "mediatek,sej";
+ reg = <0 0x1000a000 0 0x1000>;
+ interrupts = <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ apmixed: apmixed@1000c000 {
+ compatible = "mediatek,apmixed";
+ reg = <0 0x1000c000 0 0xe00>;
+ };
+
+ fhctl@1000ce00 {
+ compatible = "mediatek,mt6880-fhctl";
+ reg = <0 0x1000ce00 0 0x200>;
+ mediatek,apmixed = <&apmixed>;
+
+ armpll_ll {
+ mediatek,fh-id = <0>;
+ mediatek,fh-pll-id = <CLK_APMIXED_ARMPLL_LL>;
+ mediatek,fh-cpu-pll;
+ };
+
+ mainpll {
+ mediatek,fh-id = <1>;
+ mediatek,fh-pll-id = <CLK_APMIXED_MAINPLL>;
+ };
+
+ mpll {
+ mediatek,fh-id = <2>;
+ mediatek,fh-pll-id = <CLK_APMIXED_MPLL>;
+ };
+
+ msdcpll {
+ mediatek,fh-id = <4>;
+ mediatek,fh-pll-id = <CLK_APMIXED_MSDCPLL>;
+ };
+
+ mfgpll {
+ mediatek,fh-id = <5>;
+ mediatek,fh-pll-id = <CLK_APMIXED_MFGPLL>;
+ };
+
+ mmpll {
+ mediatek,fh-id = <6>;
+ mediatek,fh-pll-id = <CLK_APMIXED_MMPLL>;
+ };
+ };
+
+ pwrap@1000d000 {
+ compatible = "mediatek,pwrap";
+ reg = <0 0x1000d000 0 0x1000>;
+ };
+
+ keypad:kp@10010000 {
+ compatible = "mediatek,kp";
+ reg = <0 0x10010000 0 0x1000>;
+ interrupts = <GIC_SPI 74 IRQ_TYPE_EDGE_RISING>;
+ clocks = <&clk26m>;
+ clock-names = "kpd";
+ };
+
+ gpio-keys {
+ compatible = "gpio-keys";
+
+ button0 {
+ label = "Modem RF";
+ gpios = <&pio 6 GPIO_ACTIVE_LOW>;
+ linux,code = <KEY_PHONE>;
+ };
+
+ button1 {
+ label = "GPS";
+ gpios = <&pio 7 GPIO_ACTIVE_LOW>;
+ linux,code = <246>;
+ };
+/*
+ button2 {
+ label = "Factory Mode";
+ gpios = <&pio 112 GPIO_ACTIVE_LOW>;
+ linux,code = <112>;
+ };
+
+ button3 {
+ label = "WIFI";
+ gpios = <&pio 114 GPIO_ACTIVE_LOW>;
+ linux,code = <114>;
+ };
+
+ button4 {
+ label = "WPS";
+ gpios = <&pio 115 GPIO_ACTIVE_LOW>;
+ linux,code = <115>;
+ };
+*/
+ };
+
+ topmisc@10011000 {
+ compatible = "mediatek,topmisc";
+ reg = <0 0x10011000 0 0x1000>;
+ };
+
+ dvfsrc: dvfsrc@10012000 {
+ compatible = "mediatek,mt6890-dvfsrc";
+ reg = <0 0x10012000 0 0x1000>,
+ <0 0x10006000 0 0x1000>;
+ reg-names = "dvfsrc", "spm";
+ #interconnect-cells = <1>;
+ dvfsrc_vcore: dvfsrc-vcore {
+ regulator-name = "dvfsrc-vcore";
+ regulator-min-microvolt = <550000>;
+ regulator-max-microvolt = <750000>;
+ regulator-always-on;
+ };
+
+ dvfsrc_freq_opp6: opp6 {
+ opp-peak-KBps = <0>;
+ };
+ dvfsrc_freq_opp5: opp5 {
+ opp-peak-KBps = <2500000>;
+ };
+ dvfsrc_freq_opp4: opp4 {
+ opp-peak-KBps = <3800000>;
+ };
+ dvfsrc_freq_opp3: opp3 {
+ opp-peak-KBps = <5100000>;
+ };
+ dvfsrc_freq_opp2: opp2 {
+ opp-peak-KBps = <5900000>;
+ };
+ dvfsrc_freq_opp1: opp1 {
+ opp-peak-KBps = <7600000>;
+ };
+ dvfsrc_freq_opp0: opp0 {
+ opp-peak-KBps = <10200000>;
+ };
+
+ dvfsrc-helper {
+ compatible = "mediatek,dvfsrc-helper";
+ vcore-supply = <&mt6330_vcore_buck_reg>;
+ rc-vcore-supply = <&dvfsrc_vcore>;
+ interconnects = <&dvfsrc MT6873_MASTER_DBGIF &dvfsrc MT6873_SLAVE_DDR_EMI>;
+ interconnect-names = "icc-perf-bw";
+ required-opps = <&dvfsrc_freq_opp0>,
+ <&dvfsrc_freq_opp1>,
+ <&dvfsrc_freq_opp2>,
+ <&dvfsrc_freq_opp3>,
+ <&dvfsrc_freq_opp4>,
+ <&dvfsrc_freq_opp5>,
+ <&dvfsrc_freq_opp6>;
+ };
+
+ dvfsrc-met {
+ compatible = "mediatek,dvfsrc-met";
+ };
+ };
+
+ mbist_ao@10013000 {
+ compatible = "mediatek,mbist_ao";
+ reg = <0 0x10013000 0 0x1000>;
+ };
+
+ dpmaif_ao@10014000 {
+ compatible = "mediatek,dpmaif_ao";
+ reg = <0 0x10014000 0 0x1000>;
+ };
+
+ aes_top0@10016000 {
+ compatible = "mediatek,aes_top0";
+ reg = <0 0x10016000 0 0x1000>;
+ };
+
+ timer: timer {
+ compatible = "arm,armv8-timer";
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>;
+ clock-frequency = <13000000>;
+ };
+
+ sys_timer@10017000 {
+ compatible = "mediatek,sys_timer",
+ "mediatek,mt6765-timer";
+ reg = <0 0x10017000 0 0x1000>;
+ interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clk13m>;
+ };
+
+ modem_temp_share@10018000 {
+ compatible = "mediatek,modem_temp_share";
+ reg = <0 0x10018000 0 0x1000>;
+ };
+
+ security_ao@1001a000 {
+ compatible = "mediatek,security_ao";
+ reg = <0 0x1001a000 0 0x1000>;
+ };
+
+ topckgen_ao@1001b000 {
+ compatible = "mediatek,topckgen_ao";
+ reg = <0 0x1001b000 0 0x1000>;
+ };
+
+ devapc_ao_mm@1001c000 {
+ compatible = "mediatek,devapc_ao_mm";
+ reg = <0 0x1001c000 0 0x1000>;
+ };
+
+ sleep_sram@1001e000 {
+ compatible = "mediatek,sleep_sram";
+ reg = <0 0x1001e000 0 0x4000>;
+ };
+
+ bcrm_ao_peri@10022000 {
+ compatible = "mediatek,bcrm_ao_peri";
+ reg = <0 0x10022000 0 0x1000>;
+ };
+
+ debug_ao_peri@10023000 {
+ compatible = "mediatek,debug_ao_peri";
+ reg = <0 0x10023000 0 0x1000>;
+ };
+
+ mhccif: mhccif@10024000 {
+ compatible = "mediatek,mt6880-mhccif";
+ #interrupt-cells = <3>;
+ interrupt-controller;
+ reg = <0 0x10024000 0 0x1000>,
+ <0 0x10025000 0 0x1000>;
+ reg-names = "mhccif_rc", "mhccif_ep";
+ interrupts = <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>;
+ status = "disabled";
+ };
+
+ spmi_bus: spmi@10026000 {
+ compatible = "mediatek,mt6880-pmif-m", "syscon";
+ reg = <0 0x10026000 0 0x0008F0>,
+ <0 0x10029000 0 0x000110>;
+ reg-names = "pmif", "spmimst";
+ interrupts-extended = <&gic GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>,
+ <&pio 216 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "pmif_irq", "rcs_irq";
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ irq_event_en = <0x0 0x00180000 0x0 0x0 0x0>;
+ clocks = <&infracfg_ao_clk CLK_IFRAO_PMIC_AP_SET>,
+ <&infracfg_ao_clk CLK_IFRAO_PMIC_TMR_SET>,
+ <&topckgen_clk CLK_TOP_PWRAP_ULPOSC_SEL>,
+ <&topckgen_clk CLK_TOP_OSC_D10>,
+ <&topckgen_clk CLK_TOP_TCK_26M_MX9>,
+ <&topckgen_clk CLK_TOP_SPMI_M_MST_SEL>,
+ <&topckgen_clk CLK_TOP_TCK_26M_MX9>,
+ <&topckgen_clk CLK_TOP_OSC_D10>;
+ clock-names = "pmif_sys_ck",
+ "pmif_tmr_ck",
+ "pmif_clk_mux",
+ "pmif_clk_osc_d10",
+ "pmif_clk26m",
+ "spmimst_clk_mux",
+ "spmimst_clk26m",
+ "spmimst_clk_osc_d10";
+ swinf_ch_start = <6>;
+ ap_swinf_no = <2>;
+ grpid = <0xB>;
+ #address-cells = <2>;
+ #size-cells = <0>;
+ };
+
+ spmi_p_bus: spmi_p@10027000 {
+ compatible = "mediatek,mt6880-pmif-p";
+ reg = <0 0x10027000 0 0x0008F0>,
+ <0 0x10028000 0 0x000110>;
+ reg-names = "pmif", "spmimst";
+ interrupts = <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "pmif_irq";
+ irq_event_en = <0x0 0x0 0x0 0x0 0x0>;
+ clocks = <&infracfg_ao_clk CLK_IFRAO_PMIC_AP_SET>,
+ <&infracfg_ao_clk CLK_IFRAO_PMIC_TMR_SET>,
+ <&topckgen_clk CLK_TOP_PWRAP_ULPOSC_SEL>,
+ <&topckgen_clk CLK_TOP_OSC_D10>,
+ <&topckgen_clk CLK_TOP_TCK_26M_MX9>,
+ <&topckgen_clk CLK_TOP_SPMI_P_MST_SEL>,
+ <&topckgen_clk CLK_TOP_TCK_26M_MX9>,
+ <&topckgen_clk CLK_TOP_MAINPLL_D7_D8>;
+ clock-names = "pmif_sys_ck",
+ "pmif_tmr_ck",
+ "pmif_clk_mux",
+ "pmif_clk_osc_d10",
+ "pmif_clk26m",
+ "spmimst_clk_mux",
+ "spmimst_clk26m",
+ "spmimst_clk_mainpll_d7_d8";
+ swinf_ch_start = <6>;
+ ap_swinf_no = <2>;
+ grpid = <0xB>;
+ #address-cells = <2>;
+ #size-cells = <0>;
+ };
+
+ /* ATF logger */
+ atf_logger {
+ compatible = "mediatek,atf_logger";
+ };
+
+ bcrm_peri_ao@1002a000 {
+ compatible = "mediatek,bcrm_peri_ao";
+ reg = <0 0x1002a000 0 0x1000>;
+ };
+
+ debug_ao_peri@1002b000 {
+ compatible = "mediatek,debug_ao_peri";
+ reg = <0 0x1002b000 0 0x1000>;
+ };
+
+ bcrm_peri_ao2@1002d000 {
+ compatible = "mediatek,bcrm_peri_ao2";
+ reg = <0 0x1002d000 0 0x1000>;
+ };
+
+ debug_ao_peri2@1002e000 {
+ compatible = "mediatek,debug_ao_peri2";
+ reg = <0 0x1002e000 0 0x1000>;
+ };
+
+ devapc_ao_infra@10030000 {
+ compatible = "mediatek,devapc_ao_infra";
+ reg = <0 0x10030000 0 0x4000>;
+ };
+
+ devapc_ao_peri@10034000 {
+ compatible = "mediatek,devapc_ao_peri";
+ reg = <0 0x10034000 0 0x4000>;
+ };
+
+ devapc_ao_peri2@10038000 {
+ compatible = "mediatek,devapc_ao_peri2";
+ reg = <0 0x10038000 0 0x4000>;
+ };
+
+ devapc_ao_peri_par@1003c000 {
+ compatible = "mediatek,devapc_ao_peri_par";
+ reg = <0 0x1003c000 0 0x4000>;
+ };
+
+ debug_ao_peri_par@10040000 {
+ compatible = "mediatek,debug_ao_peri_par";
+ reg = <0 0x10040000 0 0x1000>;
+ };
+
+ bcrm_peri_par_ao@10041000 {
+ compatible = "mediatek,bcrm_peri_par_ao";
+ reg = <0 0x10041000 0 0x1000>;
+ };
+
+ debug_ao_fmem@10042000 {
+ compatible = "mediatek,debug_ao_fmem";
+ reg = <0 0x10042000 0 0x1000>;
+ };
+
+ bcrm_fmem_ao@10043000 {
+ compatible = "mediatek,bcrm_fmem_ao";
+ reg = <0 0x10043000 0 0x1000>;
+ };
+
+ devapc_ao_fmem@10044000 {
+ compatible = "mediatek,devapc_ao_fmem";
+ reg = <0 0x10044000 0 0x4000>;
+ };
+
+//tianyan@2021.09.09 modify for add pwm start
+ pwm:pwm@10048000 {
+//tianyan@2021.09.09 modify for add pwm end
+ compatible = "mediatek,mt6880-pwm";
+ reg = <0 0x10048000 0 0x1000>;
+ #pwm-cells = <2>;
+ interrupts = <GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH>;
+
+ clocks = <&topckgen_clk CLK_TOP_PWM_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_PWM>,
+ <&infracfg_ao_clk CLK_IFRAO_PWM1>,
+ <&infracfg_ao_clk CLK_IFRAO_PWM2>,
+ <&infracfg_ao_clk CLK_IFRAO_PWM3>,
+ <&infracfg_ao_clk CLK_IFRAO_PWM4>,
+ <&infracfg_ao_clk CLK_IFRAO_PWM5>,
+ <&infracfg_ao_clk CLK_IFRAO_PWM6>,
+ <&infracfg_ao_clk CLK_IFRAO_PWM7>;
+ clock-names = "top",
+ "main",
+ "pwm1",
+ "pwm2",
+ "pwm3",
+ "pwm4",
+ "pwm5",
+ "pwm6",
+ "pwm7";
+ };
+
+#if defined(CONFIG_MTK_SGMII_NETSYS)
+ sgmii0@10060000 {
+ compatible = "mediatek,sgmii0";
+ reg = <0 0x10060000 0 0x8000>;
+ interrupts = <GIC_SPI 367 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ sgmii1@10070000 {
+ compatible = "mediatek,sgmii1";
+ reg = <0 0x10070000 0 0x8000>;
+ interrupts = <GIC_SPI 368 IRQ_TYPE_LEVEL_HIGH>;
+ };
+#endif
+
+ sys_cirq@10204000 {
+ compatible = "mediatek,sys_cirq";
+ reg = <0 0x10204000 0 0x1000>;
+ interrupts = <GIC_SPI 501 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ devapc@10207000 {
+ compatible = "mediatek,mt6880-devapc";
+ reg = <0 0x10207000 0 0x1000>,
+ <0 0x10274000 0 0x1000>,
+ <0 0x10275000 0 0x1000>,
+ <0 0x11020000 0 0x1000>,
+ <0 0x10030000 0 0x1000>,
+ <0 0x1020e000 0 0x1000>,
+ <0 0x10033000 0 0x1000>;
+ interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&infracfg_ao_clk CLK_IFRAO_DEVICE_APC>;
+ clock-names = "devapc-infra-clock";
+ };
+
+ hwrng: hwrng {
+ compatible = "mediatek,mt67xx-rng";
+ };
+
+ bus_dbg@10208000 {
+ compatible = "mediatek,bus_dbg-v2";
+ reg = <0 0x10208000 0 0x1000>,
+ <0 0x10001000 0 0x1000>;
+ mediatek,bus_dbg_con_offset = <0x2fc>;
+ interrupt = <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ ap_ccif0@10209000 {
+ compatible = "mediatek,ap_ccif0";
+ reg = <0 0x10209000 0 0x1000>;
+ interrupts = <GIC_SPI 258 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ md_ccif0@1020a000 {
+ compatible = "mediatek,md_ccif0";
+ reg = <0 0x1020a000 0 0x1000>;
+ };
+
+ ap_ccif1@1020b000 {
+ compatible = "mediatek,ap_ccif1";
+ reg = <0 0x1020b000 0 0x1000>;
+ interrupts = <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ md_ccif1@1020c000 {
+ compatible = "mediatek,md_ccif1";
+ reg = <0 0x1020c000 0 0x1000>;
+ };
+
+ infra_mbist@1020d000 {
+ compatible = "mediatek,infra_mbist";
+ reg = <0 0x1020d000 0 0x1000>;
+ };
+
+ infracfg@1020e000 {
+ compatible = "mediatek,infracfg";
+ reg = <0 0x1020e000 0 0x1000>;
+ };
+
+ trng@1020f000 {
+ compatible = "mediatek,trng";
+ reg = <0 0x1020f000 0 0x1000>;
+ interrupts = <GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ dxcc_sec@10210000 {
+ compatible = "mediatek,dxcc_sec";
+ reg = <0 0x10210000 0 0x1000>;
+ };
+
+ cq_dma@10212000 {
+ compatible = "mediatek,cq_dma";
+ reg = <0 0x10212000 0 0x1000>;
+ interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ md2md_md2_ccif0@10213000 {
+ compatible = "mediatek,md2md_md2_ccif0";
+ reg = <0 0x10213000 0 0x1000>;
+ };
+
+ sramrom@10214000 {
+ compatible = "mediatek,sramrom";
+ reg = <0 0x10214000 0 0x1000>;
+ };
+
+ bcrm_infra@10215000 {
+ compatible = "mediatek,bcrm_infra";
+ reg = <0 0x10215000 0 0x1000>;
+ };
+
+ dbg_tracker2@10218000 {
+ compatible = "mediatek,dbg_tracker2";
+ reg = <0 0x10218000 0 0x1000>;
+ };
+
+ emicen: emicen@10219000 {
+ compatible = "mediatek,mt6880-emicen",
+ "mediatek,common-emicen";
+ reg = <0 0x10219000 0 0x1000>;
+ mediatek,emi-reg = <&emichn>;
+ };
+
+ infra_device_mpu@1021a000 {
+ compatible = "mediatek,infra_device_mpu";
+ reg = <0 0x1021a000 0 0x1000>;
+ };
+
+ infra_device_mpu@1021b000 {
+ compatible = "mediatek,infra_device_mpu";
+ reg = <0 0x1021b000 0 0x1000>;
+ };
+
+ infracfg_mem@1021c000 {
+ compatible = "mediatek,infracfg_mem";
+ reg = <0 0x1021c000 0 0x1000>;
+ };
+
+ emimpu:emimpu@10226000 {
+ compatible = "mediatek,mt6880-emimpu",
+ "mediatek,common-emimpu";
+ reg = <0 0x10226000 0 0x1000>;
+ mediatek,emi-reg = <&emicen>;
+ interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
+ region_cnt = <32>;
+ domain_cnt = <16>;
+ addr_align = <16>;
+ ap_region = <31>;
+ ap_apc = <0 0 5 5 0 0 6 0>,
+ <0 0 5 5 5 5 5 5>;
+ dump = <0x1f0 0x1f8 0x1fc>;
+ clear = <0x160 0xffffffff 16>,
+ <0x200 0x00000003 16>,
+ <0x1f0 0x80000000 1>;
+ clear_md = <0x1fc 0x80000000 1>;
+ ctrl_intf = <1>;
+ slverr = <0>;
+ };
+
+ cldma_sys_ap {
+ compatible = "mediatek,cldma_sys_ap";
+ reg = <0 0x1004A000 0 0x1000>, /*CLDMA0_AO_INDMA_AO_MD*/
+ <0 0x1021E000 0 0x1000>; /*CLDMA0_AO_INDMA_PD_MD*/
+ interrupts = <GIC_SPI 285 IRQ_TYPE_LEVEL_HIGH>; /*cldma0_md_int_ap*/
+ clocks = <&infracfg_ao_clk CLK_IFRAO_RG_133M_CLDMA_TOP>;
+ clock-names = "infra-cldma0-rh";
+ mediatek,hif_ids = <1>; /* (1 << HIF_ID_CLDMA) */
+ };
+
+ mrdump_ext_rst: mrdump_ext_rst {
+ compatible = "mediatek, mrdump_ext_rst-disabled";
+ mode = "IRQ";
+ status = "okay";
+ };
+
+ dpmaif:dpmaif@10014000 {
+ compatible = "mediatek,dpmaif";
+ reg = <0 0x10014000 0 0x1000>, /*AO_UL*/
+ <0 0x1022D000 0 0x1000>, /*PD_UL*/
+ <0 0x1022C000 0 0x1000>, /*PD_MD_MISC*/
+ <0 0x1022E000 0 0x1000>, /*SRAM*/
+ <0 0x15B14000 0 0x1000>, /*MED_BMP_CFG*/
+ <0 0x15B38000 0 0x1000>; /*MED_SSR1_CFG*/
+ interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>; /*209+32=241*/
+ mediatek,dpmaif_capability = <6>;
+ clocks = <&infracfg_ao_clk CLK_IFRAO_DPMAIF_MAIN>,
+ <&infracfg_ao_clk CLK_IFRAO_CLDMA_BCLK>;
+ clock-names = "infra-dpmaif-clk",
+ "infra-dpmaif-blk-clk";
+ };
+
+ mddriver:mddriver {
+ compatible = "mediatek,mddriver";
+ mediatek,mdhif_type = <2>; /* bit0~3: CLDMA|CCIF|DPMAIF */
+ mediatek,md_id = <0>;
+ mediatek,cldma_capability = <2>;
+ reg = <0 0x10209000 0 0x1000>, /*AP_CCIF_BASE*/
+ <0 0x1020a000 0 0x1000>; /*MD_CCIF_BASE*/
+ interrupts = <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>, /*CCIF0 174/206*/
+ <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>, /*CCIF0 175/207*/
+ <GIC_SPI 78 IRQ_TYPE_EDGE_RISING>; /*MDWDT*/
+ clocks = <&infracfg_ao_clk CLK_IFRAO_CCIF_AP>,
+ <&infracfg_ao_clk CLK_IFRAO_CCIF_MD>,
+ <&infracfg_ao_clk CLK_IFRAO_CCIF1_AP>,
+ <&infracfg_ao_clk CLK_IFRAO_CCIF1_MD>,
+ <&infracfg_ao_clk CLK_IFRAO_CCIF2_AP>,
+ <&infracfg_ao_clk CLK_IFRAO_CCIF2_MD>,
+ <&infracfg_ao_clk CLK_IFRAO_CCIF4_MD>;
+ clock-names = "infra-ccif-ap",
+ "infra-ccif-md",
+ "infra-ccif1-ap",
+ "infra-ccif1-md",
+ "infra-ccif2-ap",
+ "infra-ccif2-md",
+ "infra-ccif4-md";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_MD1>;
+ };
+
+/* md_auxadc:md_auxadc {
+ compatible = "mediatek,md_auxadc";
+ io-channels = <&auxadc 2>;
+ io-channel-names = "md-channel",
+ "md-battery";
+ };
+
+ md_ccci_rtc:md_ccci_rtc {
+ compatible = "mediatek,md_ccci_rtc";
+ nvmem-cells = <&ext_32k>;
+ nvmem-cell-names = "external-32k";
+ }; */
+
+ gce_mbox: gce_mbox@10228000 {
+ compatible = "mediatek,mailbox-gce";
+ reg = <0 0x10228000 0 0x4000>;
+ interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>;
+
+ #mbox-cells = <3>;
+ #gce-event-cells = <1>;
+ #gce-subsys-cells = <2>;
+ default_tokens = /bits/ 16 <CMDQ_SYNC_TOKEN_GPR_SET_0>,
+ /bits/ 16 <CMDQ_SYNC_TOKEN_GPR_SET_1>,
+ /bits/ 16 <CMDQ_SYNC_TOKEN_GPR_SET_2>,
+ /bits/ 16 <CMDQ_SYNC_TOKEN_GPR_SET_3>,
+ /bits/ 16 <CMDQ_SYNC_TOKEN_GPR_SET_4>,
+ /bits/ 16 <CMDQ_SYNC_RESOURCE_WROT0>,
+ /bits/ 16 <CMDQ_SYNC_RESOURCE_WROT1>;
+ clocks = <&infracfg_ao_clk CLK_IFRAO_GCE>,
+ <&infracfg_ao_clk CLK_IFRAO_GCE_26M_SET>;
+ clock-names = "gce", "gce-timer";
+ };
+
+ cmdq-test {
+ compatible = "mediatek,cmdq-test";
+ mediatek,gce = <&gce_mbox>;
+ mmsys_config = <&mmsys_config>;
+ mediatek,gce-subsys = <99>, <SUBSYS_1400XXXX>;
+ mboxes = <&gce_mbox 23 0 CMDQ_THR_PRIO_1>,
+ <&gce_mbox 22 CMDQ_NO_TIMEOUT CMDQ_THR_PRIO_1>,
+ <&gce_mbox 11 0 CMDQ_THR_PRIO_1>;
+ token_user0 = /bits/ 16 <CMDQ_SYNC_TOKEN_USER_0>;
+ token_gpr_set4 = /bits/ 16 <CMDQ_SYNC_TOKEN_GPR_SET_4>;
+ };
+
+ infra_dpmaif@1022c000 {
+ compatible = "mediatek,infra_dpmaif";
+ reg = <0 0x1022c000 0 0x10>;
+ };
+
+ dramc: dramc@10230000 {
+ compatible = "mediatek,mt6880-dramc",
+ "mediatek,common-dramc";
+ reg = <0 0x10230000 0 0x2000>, /* DRAMC AO CHA */
+ <0 0x10240000 0 0x2000>, /* DRAMC AO CHB */
+ <0 0x10234000 0 0x1000>, /* DRAMC NAO CHA */
+ <0 0x10244000 0 0x1000>, /* DRAMC NAO CHB */
+ <0 0x10238000 0 0x2000>, /* DDRPHY AO CHA */
+ <0 0x10248000 0 0x2000>, /* DDRPHY AO CHB */
+ <0 0x10236000 0 0x1000>, /* DDRPHY NAO CHA */
+ <0 0x10246000 0 0x1000>, /* DDRPHY NAO CHB */
+ <0 0x10006000 0 0x1000>; /* SLEEP BASE */
+ mr4_version = <1>;
+ mr4_rg = <0x0090 0x0000ffff 0>;
+ fmeter_version = <1>;
+ crystal_freq = <52>;
+ pll_id = <0x050c 0x00000100 8>;
+ shu_lv = <0x050c 0x00030000 16>;
+ shu_of = <0x700>;
+ sdmpcw = <0x0704 0xffff0000 16>,
+ <0x0724 0xffff0000 16>;
+ prediv = <0x0708 0x000c0000 18>,
+ <0x0728 0x000c0000 18>;
+ posdiv = <0x0708 0x00000007 0>,
+ <0x0728 0x00000007 0>;
+ ckdiv4 = <0x0874 0x00000004 2>,
+ <0x0874 0x00000004 2>;
+ pll_md = <0x0744 0x00000100 8>,
+ <0x0744 0x00000100 8>;
+ cldiv2 = <0x08b4 0x00000002 1>,
+ <0x08b4 0x00000002 1>;
+ fbksel = <0x070c 0x00000040 6>,
+ <0x070c 0x00000040 6>;
+ dqopen = <0x0870 0x00100000 20>,
+ <0x0870 0x00100000 20>;
+ };
+ emiisu: emiisu {
+ compatible = "mediatek,mt6880-emiisu",
+ "mediatek,common-emiisu";
+ ctrl_intf = <1>;
+ };
+ emichn: emichn@10235000 {
+ compatible = "mediatek,mt6880-emichn",
+ "mediatek,common-emichn";
+ reg = <0 0x10235000 0 0x1000>,
+ <0 0x10245000 0 0x1000>;
+ };
+
+ dramc_ch0_top0@10230000 {
+ compatible = "mediatek,dramc_ch0_top0";
+ reg = <0 0x10230000 0 0x2000>;
+ };
+
+ dramc_ch0_top1@10232000 {
+ compatible = "mediatek,dramc_ch0_top1";
+ reg = <0 0x10232000 0 0x2000>;
+ };
+
+ dramc_ch0_top2@10234000 {
+ compatible = "mediatek,dramc_ch0_top2";
+ reg = <0 0x10234000 0 0x1000>;
+ };
+
+ dramc_ch0_top3@10235000 {
+ compatible = "mediatek,dramc_ch0_top3";
+ reg = <0 0x10235000 0 0x1000>;
+ };
+
+ dramc_ch0_top4@10236000 {
+ compatible = "mediatek,dramc_ch0_top4";
+ reg = <0 0x10236000 0 0x2000>;
+ };
+
+ dramc_ch0_top5@10238000 {
+ compatible = "mediatek,dramc_ch0_top5";
+ reg = <0 0x10238000 0 0x2000>;
+ };
+
+ dramc_ch0_top6@1023a000 {
+ compatible = "mediatek,dramc_ch0_top6";
+ reg = <0 0x1023a000 0 0x2000>;
+ };
+
+ ap_ccif2@1023c000 {
+ compatible = "mediatek,ap_ccif2";
+ reg = <0 0x1023c000 0 0x1000>;
+ interrupts = <GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ md_ccif2@1023d000 {
+ compatible = "mediatek,md_ccif2";
+ reg = <0 0x1023d000 0 0x1000>;
+ };
+
+ ap_ccif3@1023e000 {
+ compatible = "mediatek,ap_ccif3";
+ reg = <0 0x1023e000 0 0x1000>;
+ interrupts = <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>;
+ };
+
+ md_ccif3@1023f000 {
+ compatible = "mediatek,md_ccif3";
+ reg = <0 0x1023f000 0 0x1000>;
+ };
+
+ i2c_common: i2c_common {
+ compatible = "mediatek,i2c_common";
+ dma_support = /bits/ 8 <3>;
+ idvfs = /bits/ 8 <1>;
+ set_dt_div = /bits/ 8 <1>;
+ check_max_freq = /bits/ 8 <1>;
+ ver = /bits/ 8 <2>;
+ set_ltiming = /bits/ 8 <1>;
+ ext_time_config = /bits/ 16 <0x1801>;
+ cnt_constraint = /bits/ 8 <1>;
+ dma_ver = /bits/ 8 <1>;
+ };
+
+ i2c0: i2c0@11c40000 {
+ compatible = "mediatek,i2c";
+ id = <0>;
+ reg = <0 0x11c40000 0 0x1000>,
+ <0 0x10217080 0 0x80>;
+ interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&imp_iic_wrap_e_clk CLK_IMPE_AP_CLOCK_I2C0_RO>,
+ <&infracfg_ao_clk CLK_IFRAO_I2C3>;
+ clock-names = "main", "dma";
+ clock-div = <5>;
+ aed = <0x1a>;
+ };
+
+ i2c1: i2c1@11c41000 {
+ compatible = "mediatek,i2c";
+ id = <1>;
+ reg = <0 0x11c41000 0 0x1000>,
+ <0 0x10217100 0 0x80>;
+ interrupts = <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&imp_iic_wrap_e_clk CLK_IMPE_AP_CLOCK_I2C1_RO>,
+ <&infracfg_ao_clk CLK_IFRAO_I2C3>;
+ clock-names = "main", "dma";
+ clock-div = <5>;
+ aed = <0x1a>;
+ };
+
+ i2c2: i2c2@11c42000 {
+ compatible = "mediatek,i2c";
+ id = <2>;
+ reg = <0 0x11c42000 0 0x1000>,
+ <0 0x10217180 0 0x80>;
+ interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&imp_iic_wrap_e_clk CLK_IMPE_AP_CLOCK_I2C2_RO>,
+ <&infracfg_ao_clk CLK_IFRAO_I2C3>;
+ clock-names = "main", "dma";
+ clock-div = <5>;
+ aed = <0x1a>;
+ };
+
+ i2c3: i2c3@11c43000 {
+ compatible = "mediatek,i2c";
+ id = <3>;
+ reg = <0 0x11c43000 0 0x1000>,
+ <0 0x10217200 0 0x80>;
+ interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&imp_iic_wrap_e_clk CLK_IMPE_AP_CLOCK_I2C3_RO>,
+ <&infracfg_ao_clk CLK_IFRAO_I2C3>;
+ clock-names = "main", "dma";
+ clock-div = <5>;
+ aed = <0x1a>;
+ };
+
+ i2c4: i2c4@11c44000 {
+ compatible = "mediatek,i2c";
+ id = <4>;
+ reg = <0 0x11c44000 0 0x1000>,
+ <0 0x10217280 0 0x80>;
+ interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&imp_iic_wrap_e_clk CLK_IMPE_AP_CLOCK_I2C4_RO>,
+ <&infracfg_ao_clk CLK_IFRAO_I2C3>;
+ clock-names = "main", "dma";
+ clock-div = <5>;
+ aed = <0x1a>;
+ };
+
+ i2c5: i2c5@11c45000 {
+ compatible = "mediatek,i2c";
+ id = <5>;
+ reg = <0 0x11c45000 0 0x1000>,
+ <0 0x10217300 0 0x80>;
+ interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&imp_iic_wrap_e_clk CLK_IMPE_AP_CLOCK_I2C5_RO>,
+ <&infracfg_ao_clk CLK_IFRAO_I2C3>;
+ clock-names = "main", "dma";
+ clock-div = <5>;
+ aed = <0x1a>;
+ };
+
+ ssusb: usb@11201000 {
+ compatible = "mediatek,mtu3";
+ pinctrl-names = "default";
+ pinctrl-0 = <&mtu3_pin_default>;
+ reg = <0 0x11201000 0 0x2e00>,
+ <0 0x11203e00 0 0x0100>;
+ reg-names = "mac", "ippc";
+ vusb33-supply = <&mt6330_vusb_ldo_reg>;
+ interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
+ vbus_detect = <&pio 42 GPIO_ACTIVE_HIGH>;/*modified by chencheng 2021/11/10*/
+ phy-cells = <1>;
+ phys = <&u2port0 PHY_TYPE_USB2>,
+ <&u3port0 PHY_TYPE_USB3>;
+ plat_type = <1>; /* 0: FPGA 1: ASIC */
+ /*zhengzhou 0316 +++*/
+ vbus-supply = <&usb_p0_vbus>;
+ extcon = <&extcon_usb>;
+ dr_mode = "otg";/* 0: peripheral 1: otg host*/
+ /*zhengzhou 0316 ---*/
+ maximum-speed = "super-speed";
+ clocks = <&infracfg_ao_clk CLK_IFRAO_SSUSB>,
+ <&infracfg_ao_clk CLK_IFRAO_SSUSB_XHCI>;
+ clock-names = "sys_ck","ref_ck";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SSUSB>;
+ /*usb-role-switch;*//*zhengzhou 0316 +++*/
+ mediatek,force-vbus;
+ /* mediatek,clk-mgr; *//*zhengzhou 0316 +++*/
+ mediatek,usb3-drd;
+
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ usb_host: xhci0@11200000 {
+ compatible = "mediatek,mtk-xhci";
+ reg = <0 0x11200000 0 0x1000>;
+ reg-names = "mac";
+ interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clk26m>;
+ clock-names = "sys_ck";
+ };
+ };
+
+ u3fpgaphy: usb-phy {
+ compatible = "mediatek,fpga-u3phy";
+ mediatek,ippc = <0x11203e00>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+ fpga_i2c_physical_base = <0x11c42000>;
+ status = "disabled";
+
+ u3fpgaport0: usb-phy@0 {
+ chip-id= <0xa60931a>;
+ port = <0>;
+ pclk_phase = <23>;
+ #phy-cells = <1>;
+ };
+ };
+
+ u3phy: usb-phy@11e30000 {
+ compatible = "mediatek,generic-tphy-v2";
+ clocks = <&clk26m>;
+ clock-names = "u3phya_ref";
+ #address-cells = <2>;
+ #size-cells = <2>;
+ ranges;
+
+ u2port0: usb2-phy0@11e30000 {
+ reg = <0 0x11e30000 0 0x700>;
+ #phy-cells = <1>;
+ mediatek,eye-rev6 = <1>;
+ mediatek,eye-vrt = <5>;
+ mediatek,eye-term = <5>;
+ mediatek,rx-sqth = <5>;
+ status = "okay";
+ };
+
+ u3port0: usb3-phy0@11e30700 {
+ reg = <0 0x11e30700 0 0x900>;
+ #phy-cells = <1>;
+ status = "okay";
+ };
+ };
+
+ apdma: dma-controller@0x10217000 {
+ compatible = "mediatek, mt6873-uart-dma",
+ "mediatek,mt6577-uart-dma";
+ reg = <0 0x10217380 0 0x80>,
+ <0 0x10217400 0 0x80>,
+ <0 0x10217480 0 0x80>,
+ <0 0x10217500 0 0x80>,
+ <0 0x10217580 0 0x80>,
+ <0 0x10217600 0 0x80>,
+ <0 0x10217680 0 0x80>,/*zhengzhou uart*/
+ <0 0x10217700 0 0x80>;/*zhengzhou uart*/
+ interrupts = <GIC_SPI 132 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 135 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>,/*zhengzhou uart*/
+ <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>;/*zhengzhou uart*/
+ dma-requests = <6>;
+ dma-bits = <34>;
+ clocks = <&clk26m>;
+ #dma-cells = <1>;
+ };
+
+ auxadc: auxadc@11001000 {
+ compatible = "mediatek,mt6765-auxadc";
+ reg = <0 0x11001000 0 0x1000>;
+ interrupts = <GIC_SPI 64 IRQ_TYPE_EDGE_RISING>;
+ clocks = <&infracfg_ao_clk CLK_IFRAO_AUXADC>;
+ clock-names = "main";
+ #io-channel-cells = <1>;
+ /* Auxadc efuse calibration */
+ /* 1. Auxadc cali on/off bit shift */
+ mediatek,cali-en-bit = <20>;
+ /* 2. Auxadc cali ge bits shift */
+ mediatek,cali-ge-bit = <10>;
+ /* 3. Auxadc cali oe bits shift */
+ mediatek,cali-oe-bit = <0>;
+ /* 4. Auxadc cali efuse reg offset */
+ mediatek,cali-efuse-reg-offset = <0xf8>;
+ nvmem = <&efuse>;
+ nvmem-names = "mtk_efuse";
+ #interconnect-cells = <1>;
+ };
+
+ uart0: serial@11002000 {
+ compatible = "mediatek,mt6873-uart",
+ "mediatek,mt6577-uart";
+ reg = <0 0x11002000 0 0x1000>;
+ interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clk26m>, <&infracfg_ao_clk CLK_IFRAO_UART0>;
+ clock-names = "baud", "bus";
+ dmas = <&apdma 0
+ &apdma 1>;
+ dma-names = "tx", "rx";
+ };
+
+ uart1: serial@11003000 {
+ compatible = "mediatek,mt6873-uart",
+ "mediatek,mt6577-uart";
+ reg = <0 0x11003000 0 0x1000>;
+ interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clk26m>, <&infracfg_ao_clk CLK_IFRAO_UART1>;
+ clock-names = "baud", "bus";
+ dmas = <&apdma 2
+ &apdma 3>;
+ dma-names = "tx", "rx";
+ };
+
+ uart2: serial@11004000 {
+ compatible = "mediatek,mt6873-uart",
+ "mediatek,mt6577-uart";
+ reg = <0 0x11004000 0 0x1000>;
+ interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clk26m>, <&infracfg_ao_clk CLK_IFRAO_UART2>;
+ clock-names = "baud", "bus";
+ dmas = <&apdma 4
+ &apdma 5>;
+ dma-names = "tx", "rx";
+ };
+ /* zhengzhou uart3 */
+ uart3: serial@1100C000 {
+ compatible = "mediatek,mt6873-uart",
+ "mediatek,mt6577-uart";
+ reg = <0 0x1100C000 0 0x1000>;
+ interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clk26m>, <&infracfg_ao_clk CLK_IFRAO_UART3>;
+ clock-names = "baud", "bus";
+ dmas = <&apdma 6
+ &apdma 7>;
+ dma-names = "tx", "rx";
+ };
+ /* zhengzhou uart3 */
+
+
+
+ nandc: nfi@11005000 {
+ compatible = "mediatek,mt6880-nfc";
+ reg = <0 0x11005000 0 0x1000>,
+ <0 0x11006000 0 0x1000>;
+ interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 165 IRQ_TYPE_LEVEL_HIGH>;
+ status = "ok";/* zhengzhou */
+ };
+
+ nor: nor_flash@0x11250000 {
+ compatible = "mediatek,mt8173-nor";
+ reg = <0 0x11250000 0 0x1000>;
+ clocks =<&topckgen_clk CLK_TOP_SFLASH_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_RG_FLASHIF_SFLASH>;
+ clock-names = "spi", "sf";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "ok";
+ };
+
+#if defined(CONFIG_MTK_SGMII_NETSYS)
+ pd-sgmii_0_phy {
+ compatible = "mediatek,sgmii-bring-up";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_0_PHY>;
+ };
+
+ pd-sgmii_0_top {
+ compatible = "mediatek,sgmii-bring-up";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_0_TOP>;
+ };
+
+ pd-sgmii_1_phy {
+ compatible = "mediatek,sgmii-bring-up";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_1_PHY>;
+ };
+
+ pd-sgmii_1_top {
+ compatible = "mediatek,sgmii-bring-up";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_1_TOP>;
+ };
+
+ sgmiisys_0: sgmiisys@10060000 {
+ compatible = "mediatek,colgin-sgmiisys_0", "syscon";
+ reg = <0 0x10060000 0 0x1000>;
+ #clock-cells = <1>;
+ mediatek,physpeed = "1000";/*modify by chencheng0817*/
+ /*modify by CLK SW Pei-hsuan Cheng */
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_0_TOP>;
+ };
+
+ sgmiisys_1: sgmiisys@10070000 {
+ compatible = "mediatek,colgin-sgmiisys_1", "syscon";
+ reg = <0 0x10070000 0 0x1000>;
+ #clock-cells = <1>;
+ mediatek,physpeed = "2500";
+ /*modify by CLK SW Pei-hsuan Cheng */
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_1_TOP>;
+ };
+
+ sgmiisys_phy_0: sgmiiphy@11ED0000 {
+ compatible = "mediatek,colgin-sgmiisys_phy_0", "syscon";
+ reg = <0 0x11ED0000 0 0x1000>;
+ #clock-cells = <1>;
+ /*modify by CLK SW Pei-hsuan Cheng */
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_0_PHY>;
+ };
+
+ sgmiisys_phy_1: sgmiiphy@11EE0000 {
+ compatible = "mediatek,colgin-sgmiisys_phy_1", "syscon";
+ reg = <0 0x11EE0000 0 0x1000>;
+ #clock-cells = <1>;
+ /*modify by CLK SW Pei-hsuan Cheng */
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_1_PHY>;
+ };
+#endif
+
+ ethsys: ethsys@15000000 {
+ #address-cells = <1>;
+ #size-cells = <1>;
+ compatible = "mediatek,leopard-ethsys", "syscon", "simple-mfd";
+ reg = <0 0x15000000 0 0x1000>;
+ #clock-cells = <1>;
+ #reset-cells = <1>;
+
+ ethsysrst: reset-controller {
+ compatible = "ti,syscon-reset";
+ #reset-cells = <1>;
+ ti,reset-bits = <
+ 0x34 4 0x34 4 0x34 4 (ASSERT_SET | DEASSERT_CLEAR | STATUS_SET) /* 4: wocpu_rst */
+ >;
+ };
+ };
+
+ wo: wo@15195000 {
+ compatible = "mediatek,leopard-ethsys", "syscon", "simple-mfd";
+ reg = <0 0x15195000 0 0x1000>;
+ };
+
+ hnat: hnat@15100e00 {
+ compatible = "mediatek,hnat", "syscon";
+ reg = <0 0x15100e00 0 0x1000>;
+ };
+
+ eth: ethernet@15100000 {
+#if defined(CONFIG_MTK_SGMII_NETSYS)
+ compatible = "mediatek,mt6890-eth",
+#else
+ compatible = "mediatek,mt2735-eth",
+#endif
+ "syscon";
+ reg = <0 0x15100000 0 0x20000>;
+ interrupts-extended = <&gic GIC_SPI 393 IRQ_TYPE_LEVEL_HIGH>,
+ <&gic GIC_SPI 394 IRQ_TYPE_LEVEL_HIGH>,
+ <&gic GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>,
+ <&gic GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>,
+ <&gic GIC_SPI 404 IRQ_TYPE_LEVEL_HIGH>,
+ <&gic GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>,
+ <&gic GIC_SPI 390 IRQ_TYPE_LEVEL_HIGH>,
+ <&gic GIC_SPI 392 IRQ_TYPE_LEVEL_HIGH>,
+ <&pio 63 IRQ_TYPE_LEVEL_LOW>;
+#if defined(CONFIG_MTK_SGMII_NETSYS)
+ clocks = <&topckgen_clk CLK_TOP_NETSYS_SEL>,
+ <&topckgen_clk CLK_TOP_MEDSYS_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_500M_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_MED_MCU_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_WED_MCU_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_2X_SEL>,
+ <&topckgen_clk CLK_TOP_SGMII_SEL>,
+ <&topckgen_clk CLK_TOP_SGMII_SBUS_SEL>;
+ clock-names = "net_sel", "med_sel", "net_500_sel",
+ "med_mcu_sel", "wed_mcu_sel",
+ "net_2x_sel", "sgmii_sel", "sgmii_sbus_sel";
+#else
+ clocks = <&topckgen_clk CLK_TOP_NETSYS_SEL>,
+ <&topckgen_clk CLK_TOP_MEDSYS_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_500M_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_MED_MCU_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_WED_MCU_SEL>,
+ <&topckgen_clk CLK_TOP_NETSYS_2X_SEL>;
+ clock-names = "net_sel", "med_sel", "net_500_sel",
+ "med_mcu_sel", "wed_mcu_sel",
+ "net_2x_sel";
+#endif
+ /*modify by CLK SW Pei-hsuan Cheng*/
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_NETSYS>;
+ mediatek,ethsys = <ðsys>;
+ mediatek,wo = <&wo>;
+#if defined(CONFIG_MTK_SGMII_NETSYS)
+ mediatek,sgmiisys = <&sgmiisys_0>,<&sgmiisys_1>;
+ mediatek,sgmiisys_phy = <&sgmiisys_phy_0>,<&sgmiisys_phy_1>;
+#endif
+ #address-cells = <1>;
+ #size-cells = <0>;
+ status = "okay";
+ };
+
+#if defined(CONFIG_MTK_SGMII_NETSYS)
+ snps-pdsgmii_0_phy {
+ compatible = "mediatek,sgmii-up";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_0_PHY>;
+ };
+
+ snps-pdsgmii_0_top {
+ compatible = "mediatek,sgmii-up";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_SGMII_0_TOP>;
+ };
+#endif
+
+ stmmac_axi_setup: stmmac-axi-config {
+ snps,wr_osr_lmt = <0x7>;
+ snps,rd_osr_lmt = <0x7>;
+ snps,blen = <0 0 0 0 16 8 4>;
+ };
+
+ mtl_rx_setup: rx-queues-config {
+ snps,rx-queues-to-use = <1>;
+ snps,rx-sched-sp;
+ queue0 {
+ snps,dcb-algorithm;
+ snps,map-to-dma-channel = <0x0>;
+ snps,priority = <0x0>;
+ };
+ queue1 {
+ snps,dcb-algorithm;
+ snps,map-to-dma-channel = <0x1>;
+ snps,priority = <0x0>;
+ snps,route-ptp;
+ };
+ queue2 {
+ snps,dcb-algorithm;
+ snps,map-to-dma-channel = <0x2>;
+ snps,priority = <0x0>;
+ snps,route-multi-broad;
+ };
+ };
+
+ mtl_tx_setup: tx-queues-config {
+ snps,tx-queues-to-use = <3>;
+ snps,tx-sched-wrr;
+ queue0 {
+ snps,weight = <0x10>;
+ snps,dcb-algorithm;
+ snps,priority = <0x0>;
+ };
+
+ queue1 {
+ snps,weight = <0x11>;
+ snps,dcb-algorithm;
+ snps,priority = <0x1>;
+ };
+
+ queue2 {
+ snps,weight = <0x12>;
+ snps,dcb-algorithm;
+ snps,priority = <0x2>;
+ };
+ };
+
+ snps_mac: ethernet@11021000 {
+ compatible = "mediatek,mt2735-gmac";
+ reg = <0 0x11021000 0 0x1300>;
+ interrupts = <GIC_SPI 305 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "macirq";
+ mac-address = [00 55 7b b5 7d f7];
+#if defined(CONFIG_MTK_SGMII_SNPS)
+ clock-names = "mac_main",
+ "ptp_ref",
+ "eth_cg",
+ "eth_rmii",
+ "sgmii_sel",
+ "sgmii_sbus_sel";
+ clocks = <&topckgen_clk CLK_TOP_SNPS_ETH_312P5M_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_62P4M_PTP_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_250M_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_50M_RMII_SEL>,
+ <&topckgen_clk CLK_TOP_SGMII_SEL>,
+ <&topckgen_clk CLK_TOP_SGMII_SBUS_SEL>;
+#else
+ clock-names = "mac_main",
+ "ptp_ref",
+ "eth_cg",
+ "eth_rmii";
+ clocks = <&topckgen_clk CLK_TOP_SNPS_ETH_312P5M_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_62P4M_PTP_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_250M_SEL>,
+ <&topckgen_clk CLK_TOP_SNPS_ETH_50M_RMII_SEL>;
+#endif
+ mediatek,pericfg = <&infracfg_ao>;
+ snps,axi-config = <&stmmac_axi_setup>;
+ snps,mtl-rx-config = <&mtl_rx_setup>;
+ snps,mtl-tx-config = <&mtl_tx_setup>;
+ /*modify by CLK SW Pei-hsuan Cheng */
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_ETH>;
+#if defined(CONFIG_MTK_SGMII_SNPS)
+ mediatek,sgmiisys = <&sgmiisys_0>;
+ mediatek,sgmiisys_phy = <&sgmiisys_phy_0>;
+#endif
+ snps,txpbl = <16>;
+ snps,rxpbl = <16>;
+ clk_csr = <0>;
+ status = "disabled";
+ };
+
+ crypto: crypto@10320000 {
+ /* compatible = "mediatek,eip97-crypto"; */
+ /* compatible = "safexcel-ip-97-mob"; */
+ compatible = "inside-secure,safexcel-eip97";
+ reg = <0 0x10320000 0 0x40000>;
+ interrupts = <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 313 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "ring0", "ring1", "ring2", "ring3";
+ clocks = <&topckgen_clk CLK_TOP_EIP97_SEL>,
+ <&topckgen_clk CLK_TOP_NET2PLL>,
+ <&topckgen_clk CLK_TOP_MAINPLL_D5_D2>;
+ clock-names = "clk-mux", "net2pll", "D5_D2";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_EIP97>;
+ };
+
+ dramc_ch1_top0@10240000 {
+ compatible = "mediatek,dramc_ch1_top0";
+ reg = <0 0x10240000 0 0x2000>;
+ };
+
+ dramc_ch1_top1@10242000 {
+ compatible = "mediatek,dramc_ch1_top1";
+ reg = <0 0x10242000 0 0x2000>;
+ };
+
+ dramc_ch1_top2@10244000 {
+ compatible = "mediatek,dramc_ch1_top2";
+ reg = <0 0x10244000 0 0x1000>;
+ };
+
+ dramc_ch1_top3@10245000 {
+ compatible = "mediatek,dramc_ch1_top3";
+ reg = <0 0x10245000 0 0x1000>;
+ };
+
+ dramc_ch1_top4@10246000 {
+ compatible = "mediatek,dramc_ch1_top4";
+ reg = <0 0x10246000 0 0x2000>;
+ };
+
+ dramc_ch1_top5@10248000 {
+ compatible = "mediatek,dramc_ch1_top5";
+ reg = <0 0x10248000 0 0x2000>;
+ };
+
+ dramc_ch1_top6@1024a000 {
+ compatible = "mediatek,dramc_ch1_top6";
+ reg = <0 0x1024a000 0 0x2000>;
+ };
+
+ ap_ccif4@1024c000 {
+ compatible = "mediatek,ap_ccif4";
+ reg = <0 0x1024c000 0 0x1000>;
+ };
+
+ md_ccif4@1024d000 {
+ compatible = "mediatek,md_ccif4";
+ reg = <0 0x1024d000 0 0x1000>;
+ };
+
+ md_ccif4@1024e000 {
+ compatible = "mediatek,md_ccif4";
+ reg = <0 0x1024e000 0 0x1000>;
+ };
+
+ dramc_ch2_top0@10250000 {
+ compatible = "mediatek,dramc_ch2_top0";
+ reg = <0 0x10250000 0 0x2000>;
+ };
+
+ dramc_ch2_top1@10252000 {
+ compatible = "mediatek,dramc_ch2_top1";
+ reg = <0 0x10252000 0 0x2000>;
+ };
+
+ dramc_ch2_top2@10254000 {
+ compatible = "mediatek,dramc_ch2_top2";
+ reg = <0 0x10254000 0 0x1000>;
+ };
+
+ dramc_ch2_top3@10255000 {
+ compatible = "mediatek,dramc_ch2_top3";
+ reg = <0 0x10255000 0 0x1000>;
+ };
+
+ dramc_ch2_top4@10256000 {
+ compatible = "mediatek,dramc_ch2_top4";
+ reg = <0 0x10256000 0 0x2000>;
+ };
+
+ dramc_ch2_top5@10258000 {
+ compatible = "mediatek,dramc_ch2_top5";
+ reg = <0 0x10258000 0 0x2000>;
+ };
+
+ dramc_ch2_top6@1025a000 {
+ compatible = "mediatek,dramc_ch2_top6";
+ reg = <0 0x1025a000 0 0x2000>;
+ };
+
+ ap_ccif5@1025c000 {
+ compatible = "mediatek,ap_ccif5";
+ reg = <0 0x1025c000 0 0x1000>;
+ };
+
+ md_ccif5@1025d000 {
+ compatible = "mediatek,md_ccif5";
+ reg = <0 0x1025d000 0 0x1000>;
+ };
+
+ mm_vpu_m0_sub_common@1025e000 {
+ compatible = "mediatek,mm_vpu_m0_sub_common";
+ reg = <0 0x1025e000 0 0x1000>;
+ };
+
+ mm_vpu_m1_sub_common@1025f000 {
+ compatible = "mediatek,mm_vpu_m1_sub_common";
+ reg = <0 0x1025f000 0 0x1000>;
+ };
+
+ dramc_ch3_top0@10260000 {
+ compatible = "mediatek,dramc_ch3_top0";
+ reg = <0 0x10260000 0 0x2000>;
+ };
+
+ dramc_ch3_top1@10262000 {
+ compatible = "mediatek,dramc_ch3_top1";
+ reg = <0 0x10262000 0 0x2000>;
+ };
+
+ dramc_ch3_top2@10264000 {
+ compatible = "mediatek,dramc_ch3_top2";
+ reg = <0 0x10264000 0 0x1000>;
+ };
+
+ dramc_ch3_top3@10265000 {
+ compatible = "mediatek,dramc_ch3_top3";
+ reg = <0 0x10265000 0 0x1000>;
+ };
+
+ dramc_ch3_top4@10266000 {
+ compatible = "mediatek,dramc_ch3_top4";
+ reg = <0 0x10266000 0 0x2000>;
+ };
+
+ dramc_ch3_top5@10268000 {
+ compatible = "mediatek,dramc_ch3_top5";
+ reg = <0 0x10268000 0 0x2000>;
+ };
+
+ dramc_ch3_top6@1026a000 {
+ compatible = "mediatek,dramc_ch3_top6";
+ reg = <0 0x1026a000 0 0x2000>;
+ };
+
+ bcrm_peri@10272000 {
+ compatible = "mediatek,bcrm_peri";
+ reg = <0 0x10272000 0 0x1000>;
+ };
+
+ bcrm_peri2@10273000 {
+ compatible = "mediatek,bcrm_peri2";
+ reg = <0 0x10273000 0 0x1000>;
+ };
+
+ devapc_peri@10274000 {
+ compatible = "mediatek,devapc_peri";
+ reg = <0 0x10274000 0 0x1000>;
+ };
+
+ devapc_peri2@10275000 {
+ compatible = "mediatek,devapc_peri2";
+ reg = <0 0x10275000 0 0x1000>;
+ };
+
+ bcrm_fmem@10276000 {
+ compatible = "mediatek,bcrm_fmem";
+ reg = <0 0x10276000 0 0x1000>;
+ };
+
+ mm_vpu_m0_sub_common@10309000 {
+ compatible = "mediatek,mm_vpu_m0_sub_common";
+ reg = <0 0x10309000 0 0x1000>;
+ };
+
+ mm_vpu_m1_sub_common@1030a000 {
+ compatible = "mediatek,mm_vpu_m1_sub_common";
+ reg = <0 0x1030a000 0 0x1000>;
+ };
+
+ mm_vpu_m1_sub_common@1030b000 {
+ compatible = "mediatek,mm_vpu_m1_sub_common";
+ reg = <0 0x1030b000 0 0x1000>;
+ };
+
+ mm_vpu_m1_sub_common@1030c000 {
+ compatible = "mediatek,mm_vpu_m1_sub_common";
+ reg = <0 0x1030c000 0 0x1000>;
+ };
+
+ mm_vpu_m1_sub_common@1030d000 {
+ compatible = "mediatek,mm_vpu_m1_sub_common";
+ reg = <0 0x1030d000 0 0x1000>;
+ };
+
+ sys_cirq1@10312000 {
+ compatible = "mediatek,sys_cirq1";
+ reg = <0 0x10312000 0 0x1000>;
+ };
+
+ sys_cirq2@10313000 {
+ compatible = "mediatek,sys_cirq2";
+ reg = <0 0x10313000 0 0x1000>;
+ };
+
+ dbg_tracker@10314000 {
+ compatible = "mediatek,dbg_tracker";
+ reg = <0 0x10314000 0 0x1000>;
+ };
+
+ pwrmcu@10400000 {
+ compatible = "mediatek,pwrmcu";
+ reg = <0 0x10400000 0 0x100000>;
+ };
+
+ sspm@10400000 {
+ compatible = "mediatek,sspm";
+ reg = <0 0x10400000 0 0x28000>,
+ <0 0x10440000 0 0x10000>,
+ <0 0x10450000 0 0x100>,
+ <0 0x10451000 0 0x4>,
+ <0 0x10451004 0 0x4>,
+ <0 0x10460000 0 0x100>,
+ <0 0x10461000 0 0x4>,
+ <0 0x10461004 0 0x4>,
+ <0 0x10470000 0 0x100>,
+ <0 0x10471000 0 0x4>,
+ <0 0x10471004 0 0x4>,
+ <0 0x10480000 0 0x100>,
+ <0 0x10481000 0 0x4>,
+ <0 0x10481004 0 0x4>,
+ <0 0x10490000 0 0x100>,
+ <0 0x10491000 0 0x4>,
+ <0 0x10491004 0 0x4>;
+
+ reg-names = "sspm_base",
+ "cfgreg",
+ "mbox0_base",
+ "mbox0_set",
+ "mbox0_clr",
+ "mbox1_base",
+ "mbox1_set",
+ "mbox1_clr",
+ "mbox2_base",
+ "mbox2_set",
+ "mbox2_clr",
+ "mbox3_base",
+ "mbox3_set",
+ "mbox3_clr",
+ "mbox4_base",
+ "mbox4_set",
+ "mbox4_clr";
+
+ interrupts = <GIC_SPI 241 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>;
+
+ interrupt-names = "ipc",
+ "mbox0",
+ "mbox1",
+ "mbox2",
+ "mbox3",
+ "mbox4";
+ };
+
+ tinsys@10500000 {
+ compatible = "mediatek,tinsys";
+ reg = <0 0x10500000 0 0x0>;
+ };
+
+ dramc_ch1_rsv0@10900000 {
+ compatible = "mediatek,dramc_ch1_rsv0";
+ reg = <0 0x10900000 0 0x40000>;
+ };
+
+ dramc_ch1_rsv1@10940000 {
+ compatible = "mediatek,dramc_ch1_rsv1";
+ reg = <0 0x10940000 0 0xc0000>;
+ };
+
+ mali: mali@13000000 {
+ compatible = "mediatek,mali", "arm,mali-midgard", "arm,mali-bifrost";
+ reg = <0 0x13000000 0 0x4000>;
+ interrupts =
+ <GIC_SPI 363 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 364 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 365 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 366 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names =
+ "GPU",
+ "MMU",
+ "JOB",
+ "EVENT";
+ operating-points-v2 = <&gpu_mali_opp>;
+ #cooling-cells = <2>;
+ gpufreq-supply = <&gpufreq>;
+ };
+
+ gpu_mali_opp: opp-table0 {
+ compatible = "operating-points-v2";
+ opp00 {
+ opp-hz = /bits/ 64 <780000000>;
+ opp-microvolt = <750000>;
+ };
+ opp01 {
+ opp-hz = /bits/ 64 <570000000>;
+ opp-microvolt = <650000>;
+ };
+ opp02 {
+ opp-hz = /bits/ 64 <360000000>;
+ opp-microvolt = <600000>;
+ };
+ opp03 {
+ opp-hz = /bits/ 64 <300000000>;
+ opp-microvolt = <550000>;
+ };
+ };
+
+ gpufreq: gpufreq {
+ compatible = "mediatek,gpufreq";
+ clocks =
+ <&topckgen_clk CLK_TOP_MFG_SEL>,
+ <&topckgen_clk CLK_TOP_MFGPLL>,
+ <&topckgen_clk CLK_TOP_MFG_REF_SEL>,
+ <&mfgsys_clk CLK_MFGCFG_BG3D>;
+ clock-names =
+ "clk_mux", /* switch main/sub */
+ "clk_main_parent", /* main pll freq */
+ "clk_sub_parent", /* default 218.4 MHz */
+ "cg_bg3d";
+ /* power-domains = <&scpsys MT6890_POWER_DOMAIN_MFG0>; */
+ status = "disabled";
+ };
+
+ mmc0: mmc@11230000 {
+ compatible = "mediatek,mt6880-mmc";
+ reg = <0 0x11230000 0 0x1000>,
+ <0 0x11f10000 0 0x1000>;
+ interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&topckgen_clk CLK_TOP_MSDC50_0_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_MSDC0>,
+ <&infracfg_ao_clk CLK_IFRAO_MSDC0_SRC_CLK>;
+ clock-names = "source", "hclk", "source_cg";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_MSDC>;
+ status = "disabled";
+ };
+
+ mmc1: mmc@11240000 {
+ compatible = "mediatek,mt6880-mmc";
+ reg = <0 0x11240000 0 0x1000>,
+ <0 0x11f20000 0 0x1000>;
+ interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&topckgen_clk CLK_TOP_MSDC30_1_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_MSDC1>,
+ <&infracfg_ao_clk CLK_IFRAO_MSDC1_SRC_CLK>;
+ clock-names = "source", "hclk", "source_cg";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_MSDC>;
+ status = "disabled";
+ };
+
+ lvts: lvts@1100b000 {
+ compatible = "mediatek,mt6880-lvts";
+ reg = <0 0x1100b000 0 0x1000>,
+ <0 0x11278000 0 0x1000>,
+ <0 0x10001000 0 0x1000>;
+ interrupts = <GIC_SPI 169 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 170 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&infracfg_ao_clk CLK_IFRAO_THERM>;
+ clock-names = "lvts_clk";
+
+ resets = <&infracfg_rst 0>,
+ <&infracfg_rst 1>;
+
+ nvmem-cells = <&lvts_e_data1>;
+ nvmem-cell-names = "e_data1";
+ #thermal-sensor-cells = <1>;
+ };
+
+ disp_pwm: disp_pwm0@1100e000 {
+ compatible = "mediatek,disp_pwm0",
+ "mediatek,mt6890-disp-pwm";
+ reg = <0 0x1100e000 0 0x1000>;
+ interrupts = <GIC_SPI 171 IRQ_TYPE_LEVEL_HIGH>;
+ #pwm-cells = <2>;
+ clocks = <&infracfg_ao CLK_IFRAO_DISP_PWM>,
+ <&topckgen CLK_TOP_DISP_PWM_SEL>;
+ clock-names = "main", "mm";
+ };
+
+ pcie0: pcie@11280000 {
+ compatible = "mediatek,mt2735-pcie";
+ reg = <0 0x11280000 0 0x2000>;
+ reg-names = "pcie-mac";
+ linux,pci-domain = <0>;
+ #address-cells = <3>;
+ #size-cells = <2>;
+ interrupts = <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>;
+ bus-range = <0x00 0xff>;
+ ranges = <0x82000000 0 0x00000000
+ 0x0 0x30000000 0 0x10000000>;
+ status = "disabled";
+
+ clocks = <&infracfg_ao_clk CLK_IFRAO_PCIE_TL_26M>,
+ <&infracfg_ao_clk CLK_IFRAO_PCIE_TL_96M>,
+ <&infracfg_ao_clk CLK_IFRAO_PCIE_TL_32K>,
+ <&infracfg_ao_clk CLK_IFRAO_PCIE_PERI_26M>,
+ <&infracfg_ao_clk CLK_IFRAO_RG_133M_PCIE_P0>;
+
+ phys = <&pciephy0>;
+ phy-names = "pcie-phy";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_PEXTP_D_2LX1>;
+
+ #interrupt-cells = <1>;
+ interrupt-map-mask = <0 0 0 7>;
+ interrupt-map = <0 0 0 1 &pcie_intc0 0>,
+ <0 0 0 2 &pcie_intc0 1>,
+ <0 0 0 3 &pcie_intc0 2>,
+ <0 0 0 4 &pcie_intc0 3>;
+ pcie_intc0: legacy-interrupt-controller {
+ interrupt-controller;
+ #address-cells = <0>;
+ #interrupt-cells = <1>;
+ };
+ };
+
+ pciephy0: phy0@11e40000 {
+ compatible = "mediatek,mt2735-pcie-phy";
+ #address-cells = <2>;
+ #size-cells = <2>;
+ #phy-cells = <0>;
+ reg = <0 0x11e40000 0 0x10000>,
+ <0 0x11e50000 0 0x10000>;
+ reg-names = "phy-sif", "phy-ckm";
+ nvmem = <&efuse>;
+ nvmem-names = "mtk_efuse";
+ nvmem-cells = <&efuse_segment>;
+ nvmem-cell-names = "efuse_segment_cell";
+
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_PEXTP_D_2LX1_PHY>;
+ };
+
+ efuse: efuse@11ec0000 {
+ compatible = "mediatek,devinfo";
+ reg = <0 0x11ec0000 0 0x10000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ efuse_segment: segment@78 {
+ reg = <0x78 0x4>;
+ };
+
+ lvts_e_data1: data1 {
+ reg = <0x1E0 0x24>;
+ };
+ };
+
+ dfd@13e00000 {
+ compatible = "mediatek,dfd";
+ reg = <0 0x13e00000 0 0x40000>;
+ };
+
+ g3d_dvfs@13fbc000 {
+ compatible = "mediatek,g3d_dvfs";
+ reg = <0 0x13fbc000 0 0x1000>;
+ };
+
+ g3d_testbench@13fbd000 {
+ compatible = "mediatek,g3d_testbench";
+ reg = <0 0x13fbd000 0 0x1000>;
+ };
+
+ g3d_config@13fbf000 {
+ compatible = "mediatek,g3d_config";
+ reg = <0 0x13fbf000 0 0x1000>;
+ };
+
+ mmsys_config: mmsys_config@14000000 {
+ compatible = "mediatek,mmsys_config";
+ reg = <0 0x14000000 0 0x1000>;
+ };
+
+ disp_mutex0@14001000 {
+ compatible = "mediatek,disp_mutex0";
+ reg = <0 0x14001000 0 0x1000>;
+ };
+
+ mdp_rdma0@14002000 {
+ compatible = "mediatek,mdp_rdma0";
+ reg = <0 0x14002000 0 0x1000>;
+ };
+
+ mdp_rsz0@14003000 {
+ compatible = "mediatek,mdp_rsz0";
+ reg = <0 0x14003000 0 0x1000>;
+ };
+
+ mdp_wrot0@14004000 {
+ compatible = "mediatek,mdp_wrot0";
+ reg = <0 0x14004000 0 0x1000>;
+ };
+
+ mdp_tdshp0@14005000 {
+ compatible = "mediatek,mdp_tdshp0";
+ reg = <0 0x14005000 0 0x1000>;
+ };
+
+ disp_ovl0@14006000 {
+ compatible = "mediatek,disp_ovl0";
+ reg = <0 0x14006000 0 0x1000>;
+ };
+
+ disp_rdma0@14007000 {
+ compatible = "mediatek,disp_rdma0";
+ reg = <0 0x14007000 0 0x1000>;
+ };
+
+ disp_color0@14008000 {
+ compatible = "mediatek,disp_color0";
+ reg = <0 0x14008000 0 0x1000>;
+ };
+
+ disp_ccorr0@14009000 {
+ compatible = "mediatek,disp_ccorr0";
+ reg = <0 0x14009000 0 0x1000>;
+ };
+
+ disp_aal0@1400a000 {
+ compatible = "mediatek,disp_aal0";
+ reg = <0 0x1400a000 0 0x1000>;
+ };
+
+ disp_gamma0@1400b000 {
+ compatible = "mediatek,disp_gamma0";
+ reg = <0 0x1400b000 0 0x1000>;
+ };
+
+ disp_dither0@1400c000 {
+ compatible = "mediatek,disp_dither0";
+ reg = <0 0x1400c000 0 0x1000>;
+ };
+
+ disp_wdma0@1400d000 {
+ compatible = "mediatek,disp_wdma0";
+ reg = <0 0x1400d000 0 0x1000>;
+ };
+
+ dsi0@1400e000 {
+ compatible = "mediatek,dsi0";
+ reg = <0 0x1400e000 0 0x1000>;
+ };
+
+ dbpi0@1400f000 {
+ compatible = "mediatek,dbpi0";
+ reg = <0 0x1400f000 0 0x1000>;
+ };
+
+ smi_sub_common0@14010000 {
+ compatible = "mediatek,smi_sub_common0";
+ reg = <0 0x14010000 0 0x1000>;
+ };
+
+ smi_common0@14016000 {
+ compatible = "mediatek,smi_common0";
+ reg = <0 0x14016000 0 0x1000>;
+ };
+
+ smi_larb0: larb@14017000 {
+ compatible = "mediatek,smi_larb0";
+ reg = <0 0x14017000 0 0x1000>;
+ mediatek,larb-id = <0>;
+ };
+
+ spi0: spi0@1100a000 {
+ compatible = "mediatek,mt6765-spi";
+ mediatek,pad-select = <0>;
+ reg = <0 0x1100a000 0 0x100>;
+ interrupts = <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&topckgen_clk CLK_TOP_UNIVPLL_D6_D2>,
+ <&topckgen_clk CLK_TOP_SPI_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_SPI0>;
+ clock-names = "parent-clk", "sel-clk", "spi-clk";
+ };
+
+ spi1: spi1@11010000 {
+ compatible = "mediatek,mt6765-spi";
+ mediatek,pad-select = <0>;
+ reg = <0 0x11010000 0 0x100>;
+ interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&topckgen_clk CLK_TOP_UNIVPLL_D6_D2>,
+ <&topckgen_clk CLK_TOP_SPI_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_SPI1>;
+ clock-names = "parent-clk", "sel-clk", "spi-clk";
+ };
+
+ spi2: spi2@11012000 {
+ compatible = "mediatek,mt6765-spi";
+ mediatek,pad-select = <0>;
+ reg = <0 0x11012000 0 0x100>;
+ interrupts = <GIC_SPI 161 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&topckgen_clk CLK_TOP_UNIVPLL_D6_D2>,
+ <&topckgen_clk CLK_TOP_SPI_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_SPI2>;
+ clock-names = "parent-clk", "sel-clk", "spi-clk";
+ };
+/*modified by chencheng0813++++++*/
+
+
+
+/*
+ spi3: spi3@11013000 {
+ compatible = "mediatek,mt6765-spi";
+ mediatek,pad-select = <0>;
+ reg = <0 0x11013000 0 0x100>;
+ interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&topckgen_clk CLK_TOP_UNIVPLL_D6_D2>,
+ <&topckgen_clk CLK_TOP_SPI_SEL>,
+ <&infracfg_ao_clk CLK_IFRAO_SPI3>;
+ clock-names = "parent-clk", "sel-clk", "spi-clk";
+ };
+*/
+/*modified by chencheng0813---------*/
+ spis0: spis0@11013000 {
+ compatible = "mediatek,mt6765-spi-slave","mediatek,mt8512-spi-slave";
+ reg = <0 0x11014000 0 0x100>;
+ interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&infracfg_ao_clk CLK_IFRAO_RG_FSPIS_CK>,
+ <&infracfg_ao_clk CLK_IFRAO_SPIS_HCLK_66M>;
+ clock-names = "spi", "axi";
+ assigned-clocks = <&topckgen_clk CLK_TOP_SPIS_SEL>;
+ assigned-clock-parents = <&topckgen_clk CLK_TOP_UNIVPLL_D6>;
+ status = "okay"; /*zhengzhou spi*/
+ };
+
+ iommu0: iommu@14011000 {
+ compatible = "mediatek,mt6880-m4u";
+ reg = <0 14011000 0 0x1000>;
+ mediatek,larbs = <&smi_larb0>;
+ interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>;
+#if 0
+ clocks = <&dispsys_config MM_SMI_INFRA>,
+ <&dispsys_config MM_SMI_IOMMU>,
+ <&scpsys SCP_SYS_DIS>;
+ clock-names = "disp-infra-ck", "disp-iommu-ck", "power";
+#endif
+ #iommu-cells = <1>;
+ };
+
+ amms_control {
+ compatible = "mediatek,amms";
+ interrupts = <GIC_SPI 425 IRQ_TYPE_EDGE_RISING>;
+ };
+
+ mtk_m4u_debug {
+ compatible = "mediatek,mt6880-m4u-debug";
+#if 0
+ iommus = <&iommu0 M4U_PORT_DISP_POSTMASK0>,
+ <&iommu0 M4U_PORT_OVL_RDMA0_HDR>,
+ <&iommu0 M4U_PORT_OVL_RDMA0>,
+ <&iommu0 M4U_PORT_DISP_FAKE0>;
+#endif
+ };
+
+ reserved@14018000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14018000 0 0x1000>;
+ };
+
+ reserved@14019000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14019000 0 0x1000>;
+ };
+
+ reserved@1401a000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x1401a000 0 0x1000>;
+ };
+
+ reserved@1401b000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x1401b000 0 0x1000>;
+ };
+
+ reserved@1401c000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x1401c000 0 0x1000>;
+ };
+
+ reserved@1401d000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x1401d000 0 0x1000>;
+ };
+
+ reserved@1401e000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x1401e000 0 0x1000>;
+ };
+
+ reserved@1401f000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x1401f000 0 0x1000>;
+ };
+
+ reserved@14020000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14020000 0 0x1000>;
+ };
+
+ reserved@14021000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14021000 0 0x1000>;
+ };
+
+ reserved@14022000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14022000 0 0x1000>;
+ };
+
+ reserved@14023000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14023000 0 0x1000>;
+ };
+
+ reserved@14024000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14024000 0 0x1000>;
+ };
+
+ reserved@14025000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14025000 0 0x1000>;
+ };
+
+ reserved@14026000 {
+ compatible = "mediatek,reserved";
+ reg = <0 0x14026000 0 0xda000>;
+ };
+
+ /* hsm-common is used for secure drivers test. */
+ hsm-common {
+ compatible = "mediatek,hsm-common";
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_HSMTOP>;
+ };
+
+ medmcu: medmcu@15f00000 {
+ compatible = "mediatek,medmcu";
+ status = "okay";
+ reg = <0 0x15d00000 0 0x20000>, /* tcm */
+ <0 0x15f24000 0 0x1000>, /* cfg */
+ <0 0x15f21000 0 0x1000>, /* clk*/
+ <0 0x15f30000 0 0x1000>, /* cfg core0 */
+ <0 0x15f40000 0 0x1000>, /* cfg core1 */
+ <0 0x15f52000 0 0x1000>, /* bus tracker */
+ <0 0x15f60000 0 0x40000>, /* llc */
+ <0 0x15fa5000 0 0x4>, /* cfg_sec */
+ <0 0x15ffb000 0 0x100>, /* mbox0 base */
+ <0 0x15ffb100 0 0x4>, /* mbox0 set */
+ <0 0x15ffb10c 0 0x4>, /* mbox0 clr */
+ <0 0x15fa5020 0 0x4>, /* mbox0 init */
+ <0 0x15ffc000 0 0x100>, /* mbox1 base */
+ <0 0x15ffc100 0 0x4>, /* mbox1 set */
+ <0 0x15ffc10c 0 0x4>, /* mbox1 clr */
+ <0 0x15fa5024 0 0x4>, /* mbox1 init */
+ <0 0x15ffd000 0 0x100>, /* mbox2 base */
+ <0 0x15ffd100 0 0x4>, /* mbox2 set */
+ <0 0x15ffd10c 0 0x4>, /* mbox2 clr */
+ <0 0x15fa5028 0 0x4>, /* mbox2 init */
+ <0 0x15ffe000 0 0x100>, /* mbox3 base */
+ <0 0x15ffe100 0 0x4>, /* mbox3 set */
+ <0 0x15ffe10c 0 0x4>, /* mbox3 clr */
+ <0 0x15fa502c 0 0x4>, /* mbox3 init */
+ <0 0x15fff000 0 0x100>, /* mbox4 base */
+ <0 0x15fff100 0 0x4>, /* mbox4 set */
+ <0 0x15fff10c 0 0x4>, /* mbox4 clr */
+ <0 0x15fa5030 0 0x4>, /* mbox4 init */
+ <0 0x15B80000 0 0x100>; /* MED_INFRA_CLK 0x15B80014 */
+
+ reg-names = "scp_sram_base",
+ "scp_cfgreg",
+ "scp_clkreg",
+ "scp_cfgreg_core0",
+ "scp_cfgreg_core1",
+ "scp_bus_tracker",
+ "scp_l1creg",
+ "scp_cfgreg_sec",
+ "mbox0_base",
+ "mbox0_set",
+ "mbox0_clr",
+ "mbox0_init",
+ "mbox1_base",
+ "mbox1_set",
+ "mbox1_clr",
+ "mbox1_init",
+ "mbox2_base",
+ "mbox2_set",
+ "mbox2_clr",
+ "mbox2_init",
+ "mbox3_base",
+ "mbox3_set",
+ "mbox3_clr",
+ "mbox3_init",
+ "mbox4_base",
+ "mbox4_set",
+ "mbox4_clr",
+ "mbox4_init";
+
+ interrupts = <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>;
+
+ interrupt-names = "mbox0",
+ "mbox1",
+ "mbox2",
+ "mbox3",
+ "mbox4";
+
+ core_0 = "enable";
+ scp_sramSize = <0x00020000>;
+ };
+
+ consys: consys@18000000 {
+ compatible = "mediatek,mt6880-consys";
+ #thermal-sensor-cells = <0>;
+ /* conn_infra_rgu */
+ reg = <0 0x18000000 0 0x1000>,
+ /* conn_infra_cfg */
+ <0 0x18001000 0 0x1000>,
+ /* conn_host_csr_top */
+ <0 0x18060000 0 0x10000>,
+ /* infracfg_ao */
+ <0 0x10001000 0 0x1000>,
+ /* TOP RGU */
+ <0 0x10007000 0 0x1000>,
+ /* SPM */
+ <0 0x10006000 0 0x1000>,
+ /* INFRACFG */
+ <0 0x1020e000 0 0x1000>,
+ /* conn_wt_slp_ctl_reg */
+ <0 0x18005000 0 0x1000>,
+ /* conn_afe_ctl */
+ <0 0x18003000 0 0x1000>,
+ /* GPIO */
+ <0 0x10005000 0 0x1000>,
+ /* conn_rf_spi_mst_reg */
+ <0 0x18004000 0 0x1000>,
+ /* conn_semaphore */
+ <0 0x18070000 0 0x10000>,
+ /* conn_top_therm_ctl */
+ <0 0x18002000 0 0x1000>,
+ /* IOCFG_BM */
+ <0 0x11d10000 0 0x1000>,
+ /* debug_ctrl */
+ <0 0x1800f000 0 0x1000>,
+ /* conn_infra_clkgen_on_top */
+ <0 0x18009000 0 0x1000>,
+ /* conn_infra_bus_cr */
+ <0 0x1800e000 0 0x400>,
+ /* conn_infra_debug_ctrl_ao */
+ <0 0x1802f000 0 0x430>;
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_CONN>;
+ };
+
+ gps: gps@18C00000 {
+ compatible = "mediatek,connac2-gps";
+ reg = <0 0x18000000 0 0x100000>,
+ <0 0x18C00000 0 0x100000>,
+ <0 0x10003304 0 0x4>,
+ <0 0x1001C000 0 0x4>,
+ <0 0x1001C030 0 0x4>;
+ reg-names = "conn_infra_base", "conn_gps_base",
+ "status_dummy_cr", "tia2_gps_on", "tia2_gps_rc_sel";
+ interrupts = <GIC_SPI 377 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 378 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 379 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 380 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 381 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 382 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 383 IRQ_TYPE_LEVEL_HIGH>;
+ memory-region = <&gps_mem>;
+ pmic = <&pmic_efuse>;
+ mtk-vcore-supply = <&dvfsrc_vcore>;
+ };
+
+ odm: odm {
+ compatible = "simple-bus";
+ /* reserved for overlay by odm */
+ };
+
+ pmic_clock_buffer_ctrl: pmic_clock_buffer_ctrl {
+ compatible = "mediatek,pmic_clock_buffer";
+ mediatek,clkbuf-quantity = <7>;
+ mediatek,clkbuf-config = <2 1 1 2 0 0 2>;
+ mediatek,clkbuf-output-impedance = <3 4 3 4 0 0 3>;
+ mediatek,clkbuf-controls-for-desense = <0 4 0 3 0 0 0>;
+ mediatek,bblpm-support = "enable";
+
+ pwrap-dcxo-en = <0x24 4 0x28 1 0x28 0>;
+ pwrap-dcxo-conn = <0x5c 0 0x5c 16 0x60 0 0x60 16>;
+ pwrap-dcxo-nfc = <0x64 0 0x64 16 0x68 0 0x68 16>;
+
+ spm-pwr-status = <0x16c 0 0x16c 1>;
+ spm-io-en = <0x2c 7>;
+ spm-power-on-val = <0x8 21 0x8 14>;
+ spm-sck-con = <0xc 24>;
+ pcm-reg7-rf = <0x10c 21>;
+
+ pwrap = <&spmi_bus>;
+ sleep = <&sleep>;
+ };
+ typec_switch: typec_switch {
+ compatible = "mediatek,typec_switch";
+ };
+ /*zhengzhou 0316 +++*/
+nau8810: nau8810 {
+ compatible = "mediatek,nau8810";
+ nau8810_power_gpio = <&pio 16 GPIO_ACTIVE_HIGH>;
+};
+/*zhengzhou 0316 ---*/
+/*zhengzhou 00607 ---*/
+eth_pwr: eth_pwr {
+ compatible = "mediatek,eth_pwr";
+ eth_power_gpio = <&pio 14 GPIO_ACTIVE_HIGH>;
+};/*zhengzhou 00607 ---*/
+ afe: mt6880-afe-pcm@11210000 {
+ compatible = "mediatek,mt6880-sound";
+ reg = <0 0x11210000 0 0x1000>;
+ interrupts = <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>;
+ i2s3-share = "I2S0";
+ topckgen = <&topckgen_clk>;
+ power-domains = <&scpsys MT6890_POWER_DOMAIN_AUDIO>;
+ clocks = <&audsys_clk CLK_AUDSYS_AFE>,
+ <&audsys_clk CLK_AUDSYS_DAC>,
+ <&audsys_clk CLK_AUDSYS_DAC_PREDIS>,
+ <&audsys_clk CLK_AUDSYS_ADC>,
+ <&audsys_clk CLK_AUDSYS_22M>,
+ <&audsys_clk CLK_AUDSYS_24M>,
+ <&audsys_clk CLK_AUDSYS_APLL_TUNER>,
+ <&audsys_clk CLK_AUDSYS_APLL2_TUNER>,
+ <&audsys_clk CLK_AUDSYS_TDM>,
+ <&audsys_clk CLK_AUDSYS_TML>,
+ <&infracfg_ao_clk CLK_IFRAO_AUDIO>,
+ <&infracfg_ao_clk CLK_IFRAO_AUDIO_26M_BCLK>,
+ <&topckgen_clk CLK_TOP_AUDIO_SEL>,
+ <&topckgen_clk CLK_TOP_AUD_INTBUS_SEL>,
+ <&topckgen_clk CLK_TOP_MMPLL_D4_D4>,
+ <&topckgen_clk CLK_TOP_AUD_1_SEL>,
+ <&topckgen_clk CLK_TOP_APLL1>,
+ <&topckgen_clk CLK_TOP_AUD_2_SEL>,
+ <&topckgen_clk CLK_TOP_APLL2>,
+ <&topckgen_clk CLK_TOP_AUD_ENGEN1_SEL>,
+ <&topckgen_clk CLK_TOP_APLL1_D8>,
+ <&topckgen_clk CLK_TOP_AUD_ENGEN2_SEL>,
+ <&topckgen_clk CLK_TOP_APLL2_D8>,
+ <&topckgen_clk CLK_TOP_APLL_I2S0_MCK_SEL>,
+ <&topckgen_clk CLK_TOP_APLL_I2S1_MCK_SEL>,
+ <&topckgen_clk CLK_TOP_APLL_I2S2_MCK_SEL>,
+ <&topckgen_clk CLK_TOP_APLL_I2S4_MCK_SEL>,
+ <&topckgen_clk CLK_TOP_APLL_TDMOUT_MCK_SEL>,
+ <&topckgen_clk CLK_TOP_APLL_I2S5_MCK_SEL>,
+ <&topckgen_clk CLK_TOP_APLL_I2S6_MCK_SEL>,
+ <&topckgen_clk CLK_TOP_APLL12_CK_DIV0>,
+ <&topckgen_clk CLK_TOP_APLL12_CK_DIV1>,
+ <&topckgen_clk CLK_TOP_APLL12_CK_DIV2>,
+ <&topckgen_clk CLK_TOP_APLL12_CK_DIV4>,
+ <&topckgen_clk CLK_TOP_APLL12_CK_DIV_TDMOUT_M>,
+ <&topckgen_clk CLK_TOP_APLL12_CK_DIV_TDMOUT_B>,
+ <&topckgen_clk CLK_TOP_APLL12_CK_DIV5>,
+ <&topckgen_clk CLK_TOP_APLL12_CK_DIV6>,
+ <&topckgen_clk CLK_TOP_TCK_26M_MX9>;
+ clock-names = "aud_afe_clk",
+ "aud_dac_clk",
+ "aud_dac_predis_clk",
+ "aud_adc_clk",
+ "aud_apll22m_clk",
+ "aud_apll24m_clk",
+ "aud_apll1_tuner_clk",
+ "aud_apll2_tuner_clk",
+ "aud_tdm_clk",
+ "aud_tml_clk",
+ "aud_infra_clk",
+ "mtkaif_26m_clk",
+ "top_mux_audio",
+ "top_mux_audio_int",
+ "top_mainpll_d2_d4",
+ "top_mux_aud_1",
+ "top_apll1_ck",
+ "top_mux_aud_2",
+ "top_apll2_ck",
+ "top_mux_aud_eng1",
+ "top_apll1_d8",
+ "top_mux_aud_eng2",
+ "top_apll2_d8",
+ "top_i2s0_m_sel",
+ "top_i2s1_m_sel",
+ "top_i2s2_m_sel",
+ "top_i2s4_m_sel",
+ "top_tdm_m_sel",
+ "top_i2s5_m_sel",
+ "top_i2s6_m_sel",
+ "top_apll12_div0",
+ "top_apll12_div1",
+ "top_apll12_div2",
+ "top_apll12_div4",
+ "top_apll12_divm",
+ "top_apll12_divb",
+ "top_apll12_div5",
+ "top_apll12_div6",
+ "top_clk26m_clk";
+ pinctrl-names = "aud_gpio_i2s0_off",
+ "aud_gpio_i2s0_on",
+ "aud_gpio_i2s1_off",
+ "aud_gpio_i2s1_on",
+ "aud_gpio_i2s2_off",
+ "aud_gpio_i2s2_on",
+ "aud_gpio_i2s3_off",
+ "aud_gpio_i2s3_on",
+ "aud_gpio_i2s4_off",
+ "aud_gpio_i2s4_on",
+ "aud_gpio_i2s5_off",
+ "aud_gpio_i2s5_on",
+ "aud_gpio_i2s6_off",
+ "aud_gpio_i2s6_on",
+ "aud_gpio_proslic_off",
+ "aud_gpio_proslic_on",
+ "aud_gpio_tdm_off",
+ "aud_gpio_tdm_on",
+ "extamp-pullhigh",
+ "extamp-pulllow";
+ pinctrl-0 = <&aud_gpio_i2s0_off>;
+ pinctrl-1 = <&aud_gpio_i2s0_on>;
+ pinctrl-2 = <&aud_gpio_i2s1_off>;
+ pinctrl-3 = <&aud_gpio_i2s1_on>;
+ pinctrl-4 = <&aud_gpio_i2s2_off>;
+ pinctrl-5 = <&aud_gpio_i2s2_on>;
+ pinctrl-6 = <&aud_gpio_i2s3_off>;
+ pinctrl-7 = <&aud_gpio_i2s3_on>;
+ pinctrl-8 = <&aud_gpio_i2s4_off>;
+ pinctrl-9 = <&aud_gpio_i2s4_on>;
+ pinctrl-10 = <&aud_gpio_i2s5_off>;
+ pinctrl-11 = <&aud_gpio_i2s5_on>;
+ pinctrl-12 = <&aud_gpio_i2s6_off>;
+ pinctrl-13 = <&aud_gpio_i2s6_on>;
+ pinctrl-14 = <&aud_gpio_proslic_off>;
+ pinctrl-15 = <&aud_gpio_proslic_on>;
+ pinctrl-16 = <&aud_gpio_tdm_off>;
+ pinctrl-17 = <&aud_gpio_tdm_on>;
+ pinctrl-18 = <&aud_pins_extamp_high>;
+ pinctrl-19 = <&aud_pins_extamp_low>;
+ };
+ sound: sound {
+ compatible = "mediatek,mt6880-mt6359-sound";
+ mediatek,platform = <&afe>;
+ mediatek,ext-codec = <&nuvoton>;
+ };
+
+ audio_sram@11211000 {
+ compatible = "mediatek,audio_sram";
+ reg = <0 0x11211000 0 0x10000>;
+ prefer_mode = <1>;
+ mode_size = <0xC000 0x10000>;
+ block_size = <0x1000>;
+ };
+
+ smart_pa: smart_pa {
+ };
+
+ extcon_usb: extcon_usb {
+ /*zhengzhou 0316 +++*/
+ compatible = "linux,extcon-usb-gpio";
+ id-gpio = <&pio 40 GPIO_ACTIVE_HIGH>;
+ vbus-gpio = <&pio 42 GPIO_ACTIVE_HIGH>;//tianyan@2021.11.29 modify for usb otg
+ /*compatible = "mediatek,extcon-usb";*/
+ /* dev-conn = <&ssusb>;*/
+ /* id-gpio = <&pio 12 GPIO_ACTIVE_HIGH>;*/
+ };
+ usb_p0_vbus: regulator@1 {
+ compatible = "regulator-fixed";
+ regulator-name = "p0_vbus";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ gpio = <&pio 41 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ /*zhengzhou 0316 ---*/
+ };
+/*Lxf add in 2022/12/2 for gpio init*/
+ gpio_init: gpio_init{
+ compatible = "linux,gpio_init";
+ };
+/*Lxf add in 2022/12/2 for gpio init end*/
+ firmware {
+ optee {
+ compatible = "linaro,optee-tz";
+ method = "smc";
+ };
+ };
+};
+
+&spmi_bus {
+ mt6315_5: mt6315@5 {
+ compatible = "mediatek,mt6315", "mtk,spmi-pmic";
+ reg = <0x5 SPMI_USID 0xb SPMI_GSID>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ mt6315_5_regulator: mt6315_5_regulator {
+ compatible = "mediatek,mt6315_5-regulator";
+ #interrupt-cells = <2>;
+ interrupt-controller;
+ interrupt-parent = <&pio>;
+ interrupts = <2 IRQ_TYPE_LEVEL_HIGH>;
+ };
+ };
+
+ md1_sim1_hot_plug_eint: md1_sim1_hot_plug_eint {
+ };
+
+ md1_sim2_hot_plug_eint: md1_sim2_hot_plug_eint {
+ };
+};
+#include "mt6890-clkao.dtsi"
+#include "mt6330.dtsi"
+#include "cust_mt6890_msdc.dtsi"
+
+&pmic {
+ mt63xx_ot_debug: mt63xx-ot-debug {
+ compatible = "mediatek,mt63xx-ot-debug";
+ interrupt-parent = <&mt6315_5_regulator>;
+ /* INT_TEMP_H */
+ interrupts = <5 IRQ_TYPE_EDGE_RISING>;
+ };
+};
diff --git a/src/kernel/linux/v4.19/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/src/kernel/linux/v4.19/drivers/net/ethernet/mediatek/mtk_eth_soc.c
index 6dd83e1..af2d73f 100755
--- a/src/kernel/linux/v4.19/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/src/kernel/linux/v4.19/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -486,7 +486,8 @@
regmap_write(eth->ethsys, ETHSYS_SYSCFG0, val);
/* couple phydev to net_device */
- if (mtk_phy_connect_node(eth, mac, np))
+ err = mtk_phy_connect_node(eth, mac, np);
+ if (err)
goto err_phy;
dev->phydev->autoneg = AUTONEG_ENABLE;
@@ -519,11 +520,72 @@
{
struct mtk_mac *mac = netdev_priv(dev);
- phy_disconnect(dev->phydev);
+ if (dev->phydev)
+ phy_disconnect(dev->phydev);
if (of_phy_is_fixed_link(mac->of_node))
of_phy_deregister_fixed_link(mac->of_node);
}
+static void mtk_phy_start(struct net_device *dev) {
+
+ struct mtk_mac *mac = netdev_priv(dev);
+ u32 mcr;
+
+ if (dev->phydev)
+ if (dev->phydev->link)
+ phy_start(dev->phydev);
+ else {
+#if defined(CONFIG_HW_NAT)
+ int i = 0;
+
+ for (i = 0; i < MAX_IF_NUM; i++)
+ if (mtk_fast_path[i])
+ break;
+
+ if (i < MAX_IF_NUM) {
+ mcr = mtk_r32(mac->hw, MTK_MAC_MCR(mac->id));
+ mcr |= MAC_MCR_FORCE_LINK;
+ mtk_w32(mac->hw, mcr, MTK_MAC_MCR(mac->id));
+ netif_carrier_on(dev);
+ }
+
+ pr_notice("%s: no PHY link, enable sw-fast-path\n", __func__);
+#endif
+ }
+ else
+ pr_notice("%s: no PHY device\n", __func__);
+}
+
+static void mtk_phy_stop(struct net_device *dev) {
+
+ struct mtk_mac *mac = netdev_priv(dev);
+ u32 mcr;
+
+ if (dev->phydev)
+ if (dev->phydev->link)
+ phy_stop(dev->phydev);
+ else {
+#if defined(CONFIG_HW_NAT)
+ int i = 0;
+
+ for (i = 0; i < MAX_IF_NUM; i++)
+ if (mtk_fast_path[i])
+ break;
+
+ if (i < MAX_IF_NUM) {
+ mcr = mtk_r32(mac->hw, MTK_MAC_MCR(mac->id));
+ mcr &= ~MAC_MCR_FORCE_LINK;
+ mtk_w32(mac->hw, mcr, MTK_MAC_MCR(mac->id));
+ netif_carrier_off(dev);
+ }
+
+ pr_notice("%s: no PHY link, disable sw-fast-path\n", __func__);
+#endif
+ }
+ else
+ pr_notice("%s: no PHY device\n", __func__);
+}
+
static int mtk_mdio_init(struct mtk_eth *eth)
{
struct device_node *mii_np;
@@ -3246,7 +3308,7 @@
refcount_inc(ð->dma_refcnt);
if (!MTK_HAS_CAPS(eth->soc->caps, MTK_DISABLE_PHY))
- phy_start(dev->phydev);
+ mtk_phy_start(dev);
netif_start_queue(dev);
@@ -3284,7 +3346,7 @@
netif_tx_disable(dev);
if (!MTK_HAS_CAPS(eth->soc->caps, MTK_DISABLE_PHY))
- phy_stop(dev->phydev);
+ mtk_phy_stop(dev);
/* only shutdown DMA if this is the last user */
if (!refcount_dec_and_test(ð->dma_refcnt))
@@ -4553,7 +4615,7 @@
if (!eth->netdev[i])
continue;
- phy_stop(eth->netdev[i]->phydev);
+ mtk_phy_stop(eth->netdev[i]);
}
}
pr_notice("ethernet suspend time kerenel stop = %lx\n", jiffies);
@@ -4757,7 +4819,7 @@
if (!eth->netdev[i])
continue;
- phy_start(eth->netdev[i]->phydev);
+ mtk_phy_start(eth->netdev[i]);
}
}
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/Makefile b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/Makefile
index bbfd16e..00b81ea 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/Makefile
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/Makefile
@@ -39,7 +39,7 @@
-DGET_CUSTOM_MAC_ENABLE \
-DSEC_ENHANCEMENT -DDHD_FW_COREDUMP -DCHIPS_CUSTOMER_HW6 \
-DDHD_RND_DEBUG -DDHD_DUMP_FILE_WRITE_FROM_KERNEL \
- -DDHD_DONOT_FORWARD_BCMEVENT_AS_NETWORK_PKT
+ -DDHD_DONOT_FORWARD_BCMEVENT_AS_NETWORK_PKT -DWL11AX
GCCVERSIONGTEQ9 := $(shell expr `$(CROSS_COMPILE)gcc -dumpversion | cut -f1 -d.` \>= 9)
ifeq "$(GCCVERSIONGTEQ9)" "1"
@@ -276,7 +276,7 @@
#802.11ax and 6Ghz Support
ifeq ($(CONFIG_BCMDHD_WIFI6_6E),y)
- DHDCFLAGS += -DWL11AX
+# DHDCFLAGS += -DWL11AX
DHDCFLAGS += -DWL_6E
endif
@@ -528,6 +528,7 @@
#qs.xiong
DHDCFLAGS += -Wno-array-bounds -Wno-sizeof-pointer-memaccess -Wno-unused-function
+
ifeq ($(DRIVER_TYPE),y)
DHDCFLAGS += -DENABLE_INSMOD_NO_FW_LOAD
DHDCFLAGS += -DUSE_LATE_INITCALL_SYNC
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/aiutils.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/aiutils.c
old mode 100755
new mode 100644
index 798fd10..328f836
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/aiutils.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/aiutils.c
@@ -2,9 +2,9 @@
* Misc utility routines for accessing chip-specific features
* of the SiliconBackplane-based Broadcom chips.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcm_app_utils.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcm_app_utils.c
old mode 100755
new mode 100644
index 393e132..ec4b9dc
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcm_app_utils.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcm_app_utils.c
@@ -3,9 +3,9 @@
* Contents are wifi-specific, used by any kernel or app-level
* software that might want wifi things as it grows.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmevent.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmevent.c
old mode 100755
new mode 100644
index 8f0c74c..1e5a250
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmevent.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmevent.c
@@ -1,9 +1,9 @@
/*
* bcmevent read-only data shared by kernel or app layers
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdh.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdh.c
index 540ea20..f27c1c2 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdh.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdh.c
@@ -2,9 +2,9 @@
* BCMSDH interface glue
* implement bcmsdh API for SDIOH driver
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c
old mode 100755
new mode 100644
index a0bee0c..ede9593
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdh_sdmmc.c
@@ -1,9 +1,9 @@
/*
* BCMSDH Function Driver for the native SDIO/MMC driver in the Linux Kernel
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdstd.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdstd.c
old mode 100755
new mode 100644
index 193d12a..104b3c3
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdstd.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdstd.c
@@ -1,9 +1,9 @@
/*
* 'Standard' SDIO HOST CONTROLLER driver
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdstd_linux.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdstd_linux.c
old mode 100755
new mode 100644
index 4b5cfbb..0d39c6d
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdstd_linux.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmsdstd_linux.c
@@ -1,9 +1,9 @@
/*
* 'Standard' SDIO HOST CONTROLLER driver - linux portion
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmspibrcm.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmspibrcm.c
old mode 100755
new mode 100644
index 354bd04..c7ba27b
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmspibrcm.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmspibrcm.c
@@ -1,9 +1,9 @@
/*
* Broadcom BCMSDH to gSPI Protocol Conversion Layer
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmstdlib_s.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmstdlib_s.c
old mode 100755
new mode 100644
index 9ce39cf..12d8984
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmstdlib_s.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmstdlib_s.c
@@ -1,9 +1,9 @@
/*
* Broadcom Secure Standard Library.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmwifi_rates.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmwifi_rates.h
old mode 100755
new mode 100644
index d843770..8603d61
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmwifi_rates.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/bcmwifi_rates.h
@@ -1,9 +1,9 @@
/*
* Indices for 802.11 a/b/g/n/ac 1-3 chain symmetric transmit rates
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd.h
index 3d4c29e..3d14f18 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd.h
@@ -41,6 +41,7 @@
#undef CONFIG_PM_WAKELOCKS
+
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/slab.h>
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bandsteer.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bandsteer.c
old mode 100755
new mode 100644
index a656cd8..55395e0
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bandsteer.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bandsteer.c
@@ -4,9 +4,9 @@
* Feature by which dualband capable PEERs will be
* forced move on 5GHz interface
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bandsteer.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bandsteer.h
old mode 100755
new mode 100644
index 7b2ef3d..94ef3b6
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bandsteer.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bandsteer.h
@@ -4,9 +4,9 @@
* Feature by which dualband capable PEERs will be
* forced move on 5GHz interface
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bt_interface.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bt_interface.h
index bc33423..fda4426 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bt_interface.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bt_interface.h
@@ -1,9 +1,9 @@
/*
*
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bus.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bus.h
old mode 100755
new mode 100644
index 78324a9..bcdb19d
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bus.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_bus.h
@@ -4,9 +4,9 @@
* Provides type definitions and function prototypes used to link the
* DHD OS, bus, and protocol modules.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
@@ -233,6 +233,8 @@
extern int dhdpcie_get_pcieirq(struct dhd_bus *bus, unsigned int *irq);
extern void dhd_bus_aer_config(struct dhd_bus *bus);
+extern struct device * dhd_bus_to_dev(struct dhd_bus *bus);
+
extern int dhdpcie_cto_init(struct dhd_bus *bus, bool enable);
extern int dhdpcie_cto_cfg_init(struct dhd_bus *bus, bool enable);
@@ -252,8 +254,6 @@
extern void dhd_bus_handle_mb_data(struct dhd_bus *bus, uint32 d2h_mb_data);
#endif /* BCMPCIE */
-extern struct device * dhd_bus_to_dev(struct dhd_bus *bus);
-
/* dump the device trap informtation */
extern void dhd_bus_dump_trap_info(struct dhd_bus *bus, struct bcmstrbuf *b);
extern void dhd_bus_copy_trap_sig(struct dhd_bus *bus, trap_t *tr);
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_buzzz.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_buzzz.h
old mode 100755
new mode 100644
index db7320a..3db6a7f
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_buzzz.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_buzzz.h
@@ -3,9 +3,9 @@
/*
* Broadcom logging system - Empty implementaiton
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_cfg80211.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_cfg80211.c
old mode 100755
new mode 100644
index d29fb9d..08ccaf5
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_cfg80211.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_cfg80211.c
@@ -1,9 +1,9 @@
/*
* Linux cfg80211 driver - Dongle Host Driver (DHD) related
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_cfg80211.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_cfg80211.h
old mode 100755
new mode 100644
index 6528673..2c5d7b9
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_cfg80211.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_cfg80211.h
@@ -1,9 +1,9 @@
/*
* Linux cfg80211 driver - Dongle Host Driver (DHD) related
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_gpio.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_gpio.c
old mode 100755
new mode 100644
index c05705e..ebf234c
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_gpio.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_gpio.c
@@ -1,9 +1,9 @@
/*
* Customer code to add GPIO control during WLAN start/stop
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_memprealloc.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_memprealloc.c
old mode 100755
new mode 100644
index 76a9342..810e83c
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_memprealloc.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_memprealloc.c
@@ -1,9 +1,9 @@
/*
* Platform Dependent file for usage of Preallocted Memory
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_msm.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_msm.c
old mode 100755
new mode 100644
index bde5094..453b371
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_msm.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_custom_msm.c
@@ -1,9 +1,9 @@
/*
* Platform Dependent file for Qualcomm MSM/APQ
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_dbg_ring.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_dbg_ring.c
old mode 100755
new mode 100644
index 2cddcb3..12f9ad8
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_dbg_ring.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_dbg_ring.c
@@ -3,9 +3,9 @@
*
* <<Broadcom-WL-IPTag/Open:>>
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_dbg_ring.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_dbg_ring.h
old mode 100755
new mode 100644
index c80b05a..26b9f65
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_dbg_ring.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_dbg_ring.h
@@ -3,9 +3,9 @@
*
* <<Broadcom-WL-IPTag/Open:>>
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_debug.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_debug.h
old mode 100755
new mode 100644
index 520ad1b..2839305
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_debug.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_debug.h
@@ -3,9 +3,9 @@
*
* <<Broadcom-WL-IPTag/Open:>>
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_debug_linux.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_debug_linux.c
old mode 100755
new mode 100644
index 2b4f2c7..70ef894
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_debug_linux.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_debug_linux.c
@@ -3,9 +3,9 @@
*
* <<Broadcom-WL-IPTag/Open:>>
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_flowring.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_flowring.c
old mode 100755
new mode 100644
index 872c14b..c02095f
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_flowring.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_flowring.c
@@ -4,9 +4,9 @@
* Flow rings are transmit traffic (=propagating towards antenna) related entities
*
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_flowring.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_flowring.h
old mode 100755
new mode 100644
index 2ff9e2c..dd61e35
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_flowring.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_flowring.h
@@ -6,9 +6,9 @@
* Provides type definitions and function prototypes used to create, delete and manage flow rings at
* high level.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_ip.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_ip.c
old mode 100755
new mode 100644
index 2a151ae..78aaa38
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_ip.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_ip.c
@@ -1,9 +1,9 @@
/*
* IP Packet Parser Module.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_ip.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_ip.h
old mode 100755
new mode 100644
index ba8a13a..640aa93
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_ip.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_ip.h
@@ -3,9 +3,9 @@
*
* Provides type definitions and function prototypes used to parse ip packet.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux.c
index 17fb149..66c829d 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux.c
@@ -12406,7 +12406,6 @@
net->netdev_ops = &dhd_ops_virt;
/* Ok, link into the network layer... */
- DHD_ERROR(("%s , ifidx: %d\n", __FUNCTION__, ifidx));
if (ifidx == 0) {
/*
* device functions for the primary interface only
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux.h
index 8cc1020..53a727a 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux.h
@@ -1,9 +1,9 @@
/*
* DHD Linux header file (dhd_linux exports for cfg80211 and other components)
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_exportfs.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_exportfs.c
index d0f69b9..9e96728 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_exportfs.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_exportfs.c
@@ -2,9 +2,9 @@
* Broadcom Dongle Host Driver (DHD), Linux-specific network interface
* Basically selected code segments from usb-cdc.c and usb-rndis.c
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_pktdump.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_pktdump.c
old mode 100755
new mode 100644
index 5240d0e..50c61f6
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_pktdump.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_pktdump.c
@@ -1,9 +1,9 @@
/*
* Packet dump helper functions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_pktdump.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_pktdump.h
old mode 100755
new mode 100644
index d5f35fa..e06487f
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_pktdump.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_pktdump.h
@@ -1,9 +1,9 @@
/*
* Header file for the Packet dump helper functions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_platdev.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_platdev.c
old mode 100755
new mode 100644
index bdd0b5b..ee49f34
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_platdev.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_platdev.c
@@ -1,9 +1,9 @@
/*
* Linux platform device for DHD WLAN adapter
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_priv.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_priv.h
index 8ce97fc..ca80439 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_priv.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_priv.h
@@ -57,6 +57,10 @@
#include <linux/firmware.h>
#endif /* DHD_SUPPORT_REQFW_FOR_EVTLOG || DHD_SUPPORT_REQFW_FOR_FIRMWARE_DOWNLOADING */
+#if defined(CONFIG_PM_WAKELOCKS)
+#undef CONFIG_PM_WAKELOCKS
+#endif
+
/*
* Do not include this header except for the dhd_linux.c dhd_linux_sysfs.c
* Local private structure (extension of pub)
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_sched.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_sched.c
index 9e7b5ba..6cc377d 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_sched.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_sched.c
@@ -1,9 +1,9 @@
/*
* Expose some of the kernel scheduler routines
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_wq.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_wq.c
old mode 100755
new mode 100644
index d35b47b..54de6a7
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_wq.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_wq.c
@@ -2,9 +2,9 @@
* Broadcom Dongle Host Driver (DHD), Generic work queue framework
* Generic interface to handle dhd deferred work events
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_wq.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_wq.h
old mode 100755
new mode 100644
index 6874ada..ddbdd42
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_wq.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_linux_wq.h
@@ -2,9 +2,9 @@
* Broadcom Dongle Host Driver (DHD), Generic work queue framework
* Generic interface to handle dhd deferred work events
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_mschdbg.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_mschdbg.c
old mode 100755
new mode 100644
index 95738de..71f77a4
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_mschdbg.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_mschdbg.c
@@ -3,9 +3,9 @@
*
* <<Broadcom-WL-IPTag/Open:>>
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_mschdbg.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_mschdbg.h
old mode 100755
new mode 100644
index 2a0b36f..76e32f5
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_mschdbg.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_mschdbg.h
@@ -3,9 +3,9 @@
*
* <<Broadcom-WL-IPTag/Open:>>
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_msgbuf.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_msgbuf.c
index 3e0a0d4..26638d4 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_msgbuf.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_msgbuf.c
@@ -3,9 +3,9 @@
* Provides type definitions and function prototypes used to link the
* DHD OS, bus, and protocol modules.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pcie.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pcie.h
old mode 100755
new mode 100644
index 23e2aa2..d2e00f4
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pcie.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pcie.h
@@ -1,9 +1,9 @@
/*
* Linux DHD Bus Module for PCIE
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pno.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pno.c
index afbbcc7..37f88d4 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pno.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pno.c
@@ -2,9 +2,9 @@
* Broadcom Dongle Host Driver (DHD)
* Prefered Network Offload and Wi-Fi Location Service(WLS) code.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pno.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pno.h
old mode 100755
new mode 100644
index ecb560e..2c5b4f3
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pno.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_pno.h
@@ -2,9 +2,9 @@
* Header file of Broadcom Dongle Host Driver (DHD)
* Prefered Network Offload code and Wi-Fi Location Service(WLS) code.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_proto.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_proto.h
old mode 100755
new mode 100644
index 3311a0f..a339232
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_proto.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_proto.h
@@ -4,9 +4,9 @@
* Provides type definitions and function prototypes used to link the
* DHD OS, bus, and protocol modules.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_rtt.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_rtt.c
old mode 100755
new mode 100644
index 67b81bd..87f2f97
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_rtt.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_rtt.c
@@ -1,9 +1,9 @@
/*
* Broadcom Dongle Host Driver (DHD), RTT
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_rtt.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_rtt.h
old mode 100755
new mode 100644
index a1a665f..0e2d0e6
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_rtt.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_rtt.h
@@ -1,9 +1,9 @@
/*
* Broadcom Dongle Host Driver (DHD), RTT
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_wlfc.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_wlfc.c
old mode 100755
new mode 100644
index 5032485..0005403
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_wlfc.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_wlfc.c
@@ -1,9 +1,9 @@
/*
* DHD PROP_TXSTATUS Module.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_wlfc.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_wlfc.h
old mode 100755
new mode 100644
index 12533ee..5a223f5
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_wlfc.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dhd_wlfc.h
@@ -1,7 +1,7 @@
/*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dngl_stats.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dngl_stats.h
old mode 100755
new mode 100644
index 7bc8feb..faad142
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dngl_stats.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dngl_stats.h
@@ -2,9 +2,9 @@
* Common stats definitions for clients of dongle
* ports
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dngl_wlhdr.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dngl_wlhdr.h
old mode 100755
new mode 100644
index e15b397..a6b5c0a
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dngl_wlhdr.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/dngl_wlhdr.h
@@ -1,9 +1,9 @@
/*
* Dongle WL Header definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/frag.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/frag.c
old mode 100755
new mode 100644
index 0e5b5af..3615cff
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/frag.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/frag.c
@@ -2,9 +2,9 @@
* IE/TLV fragmentation/defragmentation support for
* Broadcom 802.11bang Networking Device Driver
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/frag.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/frag.h
old mode 100755
new mode 100644
index 730dfc7..aa5d7fc
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/frag.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/frag.h
@@ -2,9 +2,9 @@
* IE/TLV (de)fragmentation declarations/definitions for
* Broadcom 802.11abgn Networking Device Driver
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hnd_pktpool.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hnd_pktpool.c
old mode 100755
new mode 100644
index e95a89d..f54c7c2
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hnd_pktpool.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hnd_pktpool.c
@@ -1,9 +1,9 @@
/*
* HND generic packet pool operation primitives
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hnd_pktq.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hnd_pktq.c
old mode 100755
new mode 100644
index 2969e86..c325a37
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hnd_pktq.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hnd_pktq.c
@@ -1,9 +1,9 @@
/*
* HND generic pktq operation primitives
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndlhl.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndlhl.c
old mode 100755
new mode 100644
index 926fff5..f220e84
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndlhl.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndlhl.c
@@ -2,9 +2,9 @@
* Misc utility routines for accessing lhl specific features
* of the SiliconBackplane-based Broadcom chips.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndmem.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndmem.c
old mode 100755
new mode 100644
index a698caa..d6213f4
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndmem.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndmem.c
@@ -1,9 +1,9 @@
/*
* Utility routines for configuring different memories in Broadcom chips.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndpmu.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndpmu.c
old mode 100755
new mode 100644
index 0e12c9d..7a4fd28
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndpmu.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/hndpmu.c
@@ -2,9 +2,9 @@
* Misc utility routines for accessing PMU corerev specific features
* of the SiliconBackplane-based Broadcom chips.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git "a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/20230329_updated_nl80211 \0501\051.h" "b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/20230329_updated_nl80211 \0501\051.h"
deleted file mode 100755
index 1e47749..0000000
--- "a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/20230329_updated_nl80211 \0501\051.h"
+++ /dev/null
@@ -1,6127 +0,0 @@
-#ifndef __LINUX_NL80211_H
-#define __LINUX_NL80211_H
-/*
- * 802.11 netlink interface public header
- *
- * Copyright 2006-2010 Johannes Berg <johannes@sipsolutions.net>
- * Copyright 2008 Michael Wu <flamingice@sourmilk.net>
- * Copyright 2008 Luis Carlos Cobo <luisca@cozybit.com>
- * Copyright 2008 Michael Buesch <m@bues.ch>
- * Copyright 2008, 2009 Luis R. Rodriguez <lrodriguez@atheros.com>
- * Copyright 2008 Jouni Malinen <jouni.malinen@atheros.com>
- * Copyright 2008 Colin McCabe <colin@cozybit.com>
- * Copyright 2015-2017 Intel Deutschland GmbH
- * Copyright (C) 2018 Intel Corporation
- *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- *
- */
-
-/*
- * This header file defines the userspace API to the wireless stack. Please
- * be careful not to break things - i.e. don't move anything around or so
- * unless you can demonstrate that it breaks neither API nor ABI.
- *
- * Additions to the API should be accompanied by actual implementations in
- * an upstream driver, so that example implementations exist in case there
- * are ever concerns about the precise semantics of the API or changes are
- * needed, and to ensure that code for dead (no longer implemented) API
- * can actually be identified and removed.
- * Nonetheless, semantics should also be documented carefully in this file.
- */
-
-#include <linux/types.h>
-
-#define NL80211_GENL_NAME "nl80211"
-
-#define NL80211_MULTICAST_GROUP_CONFIG "config"
-#define NL80211_MULTICAST_GROUP_SCAN "scan"
-#define NL80211_MULTICAST_GROUP_REG "regulatory"
-#define NL80211_MULTICAST_GROUP_MLME "mlme"
-#define NL80211_MULTICAST_GROUP_VENDOR "vendor"
-#define NL80211_MULTICAST_GROUP_NAN "nan"
-#define NL80211_MULTICAST_GROUP_TESTMODE "testmode"
-
-/**
- * DOC: Station handling
- *
- * Stations are added per interface, but a special case exists with VLAN
- * interfaces. When a station is bound to an AP interface, it may be moved
- * into a VLAN identified by a VLAN interface index (%NL80211_ATTR_STA_VLAN).
- * The station is still assumed to belong to the AP interface it was added
- * to.
- *
- * Station handling varies per interface type and depending on the driver's
- * capabilities.
- *
- * For drivers supporting TDLS with external setup (WIPHY_FLAG_SUPPORTS_TDLS
- * and WIPHY_FLAG_TDLS_EXTERNAL_SETUP), the station lifetime is as follows:
- * - a setup station entry is added, not yet authorized, without any rate
- * or capability information, this just exists to avoid race conditions
- * - when the TDLS setup is done, a single NL80211_CMD_SET_STATION is valid
- * to add rate and capability information to the station and at the same
- * time mark it authorized.
- * - %NL80211_TDLS_ENABLE_LINK is then used
- * - after this, the only valid operation is to remove it by tearing down
- * the TDLS link (%NL80211_TDLS_DISABLE_LINK)
- *
- * TODO: need more info for other interface types
- */
-
-/**
- * DOC: Frame transmission/registration support
- *
- * Frame transmission and registration support exists to allow userspace
- * management entities such as wpa_supplicant react to management frames
- * that are not being handled by the kernel. This includes, for example,
- * certain classes of action frames that cannot be handled in the kernel
- * for various reasons.
- *
- * Frame registration is done on a per-interface basis and registrations
- * cannot be removed other than by closing the socket. It is possible to
- * specify a registration filter to register, for example, only for a
- * certain type of action frame. In particular with action frames, those
- * that userspace registers for will not be returned as unhandled by the
- * driver, so that the registered application has to take responsibility
- * for doing that.
- *
- * The type of frame that can be registered for is also dependent on the
- * driver and interface type. The frame types are advertised in wiphy
- * attributes so applications know what to expect.
- *
- * NOTE: When an interface changes type while registrations are active,
- * these registrations are ignored until the interface type is
- * changed again. This means that changing the interface type can
- * lead to a situation that couldn't otherwise be produced, but
- * any such registrations will be dormant in the sense that they
- * will not be serviced, i.e. they will not receive any frames.
- *
- * Frame transmission allows userspace to send for example the required
- * responses to action frames. It is subject to some sanity checking,
- * but many frames can be transmitted. When a frame was transmitted, its
- * status is indicated to the sending socket.
- *
- * For more technical details, see the corresponding command descriptions
- * below.
- */
-
-/**
- * DOC: Virtual interface / concurrency capabilities
- *
- * Some devices are able to operate with virtual MACs, they can have
- * more than one virtual interface. The capability handling for this
- * is a bit complex though, as there may be a number of restrictions
- * on the types of concurrency that are supported.
- *
- * To start with, each device supports the interface types listed in
- * the %NL80211_ATTR_SUPPORTED_IFTYPES attribute, but by listing the
- * types there no concurrency is implied.
- *
- * Once concurrency is desired, more attributes must be observed:
- * To start with, since some interface types are purely managed in
- * software, like the AP-VLAN type in mac80211 for example, there's
- * an additional list of these, they can be added at any time and
- * are only restricted by some semantic restrictions (e.g. AP-VLAN
- * cannot be added without a corresponding AP interface). This list
- * is exported in the %NL80211_ATTR_SOFTWARE_IFTYPES attribute.
- *
- * Further, the list of supported combinations is exported. This is
- * in the %NL80211_ATTR_INTERFACE_COMBINATIONS attribute. Basically,
- * it exports a list of "groups", and at any point in time the
- * interfaces that are currently active must fall into any one of
- * the advertised groups. Within each group, there are restrictions
- * on the number of interfaces of different types that are supported
- * and also the number of different channels, along with potentially
- * some other restrictions. See &enum nl80211_if_combination_attrs.
- *
- * All together, these attributes define the concurrency of virtual
- * interfaces that a given device supports.
- */
-
-/**
- * DOC: packet coalesce support
- *
- * In most cases, host that receives IPv4 and IPv6 multicast/broadcast
- * packets does not do anything with these packets. Therefore the
- * reception of these unwanted packets causes unnecessary processing
- * and power consumption.
- *
- * Packet coalesce feature helps to reduce number of received interrupts
- * to host by buffering these packets in firmware/hardware for some
- * predefined time. Received interrupt will be generated when one of the
- * following events occur.
- * a) Expiration of hardware timer whose expiration time is set to maximum
- * coalescing delay of matching coalesce rule.
- * b) Coalescing buffer in hardware reaches it's limit.
- * c) Packet doesn't match any of the configured coalesce rules.
- *
- * User needs to configure following parameters for creating a coalesce
- * rule.
- * a) Maximum coalescing delay
- * b) List of packet patterns which needs to be matched
- * c) Condition for coalescence. pattern 'match' or 'no match'
- * Multiple such rules can be created.
- */
-
-/**
- * DOC: WPA/WPA2 EAPOL handshake offload
- *
- * By setting @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK flag drivers
- * can indicate they support offloading EAPOL handshakes for WPA/WPA2
- * preshared key authentication. In %NL80211_CMD_CONNECT the preshared
- * key should be specified using %NL80211_ATTR_PMK. Drivers supporting
- * this offload may reject the %NL80211_CMD_CONNECT when no preshared
- * key material is provided, for example when that driver does not
- * support setting the temporal keys through %CMD_NEW_KEY.
- *
- * Similarly @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X flag can be
- * set by drivers indicating offload support of the PTK/GTK EAPOL
- * handshakes during 802.1X authentication. In order to use the offload
- * the %NL80211_CMD_CONNECT should have %NL80211_ATTR_WANT_1X_4WAY_HS
- * attribute flag. Drivers supporting this offload may reject the
- * %NL80211_CMD_CONNECT when the attribute flag is not present.
- *
- * For 802.1X the PMK or PMK-R0 are set by providing %NL80211_ATTR_PMK
- * using %NL80211_CMD_SET_PMK. For offloaded FT support also
- * %NL80211_ATTR_PMKR0_NAME must be provided.
- */
-
-/**
- * DOC: FILS shared key authentication offload
- *
- * FILS shared key authentication offload can be advertized by drivers by
- * setting @NL80211_EXT_FEATURE_FILS_SK_OFFLOAD flag. The drivers that support
- * FILS shared key authentication offload should be able to construct the
- * authentication and association frames for FILS shared key authentication and
- * eventually do a key derivation as per IEEE 802.11ai. The below additional
- * parameters should be given to driver in %NL80211_CMD_CONNECT and/or in
- * %NL80211_CMD_UPDATE_CONNECT_PARAMS.
- * %NL80211_ATTR_FILS_ERP_USERNAME - used to construct keyname_nai
- * %NL80211_ATTR_FILS_ERP_REALM - used to construct keyname_nai
- * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used to construct erp message
- * %NL80211_ATTR_FILS_ERP_RRK - used to generate the rIK and rMSK
- * rIK should be used to generate an authentication tag on the ERP message and
- * rMSK should be used to derive a PMKSA.
- * rIK, rMSK should be generated and keyname_nai, sequence number should be used
- * as specified in IETF RFC 6696.
- *
- * When FILS shared key authentication is completed, driver needs to provide the
- * below additional parameters to userspace, which can be either after setting
- * up a connection or after roaming.
- * %NL80211_ATTR_FILS_KEK - used for key renewal
- * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used in further EAP-RP exchanges
- * %NL80211_ATTR_PMKID - used to identify the PMKSA used/generated
- * %Nl80211_ATTR_PMK - used to update PMKSA cache in userspace
- * The PMKSA can be maintained in userspace persistently so that it can be used
- * later after reboots or wifi turn off/on also.
- *
- * %NL80211_ATTR_FILS_CACHE_ID is the cache identifier advertized by a FILS
- * capable AP supporting PMK caching. It specifies the scope within which the
- * PMKSAs are cached in an ESS. %NL80211_CMD_SET_PMKSA and
- * %NL80211_CMD_DEL_PMKSA are enhanced to allow support for PMKSA caching based
- * on FILS cache identifier. Additionally %NL80211_ATTR_PMK is used with
- * %NL80211_SET_PMKSA to specify the PMK corresponding to a PMKSA for driver to
- * use in a FILS shared key connection with PMKSA caching.
- */
-
-/**
- * enum nl80211_commands - supported nl80211 commands
- *
- * @NL80211_CMD_UNSPEC: unspecified command to catch errors
- *
- * @NL80211_CMD_GET_WIPHY: request information about a wiphy or dump request
- * to get a list of all present wiphys.
- * @NL80211_CMD_SET_WIPHY: set wiphy parameters, needs %NL80211_ATTR_WIPHY or
- * %NL80211_ATTR_IFINDEX; can be used to set %NL80211_ATTR_WIPHY_NAME,
- * %NL80211_ATTR_WIPHY_TXQ_PARAMS, %NL80211_ATTR_WIPHY_FREQ (and the
- * attributes determining the channel width; this is used for setting
- * monitor mode channel), %NL80211_ATTR_WIPHY_RETRY_SHORT,
- * %NL80211_ATTR_WIPHY_RETRY_LONG, %NL80211_ATTR_WIPHY_FRAG_THRESHOLD,
- * and/or %NL80211_ATTR_WIPHY_RTS_THRESHOLD.
- * However, for setting the channel, see %NL80211_CMD_SET_CHANNEL
- * instead, the support here is for backward compatibility only.
- * @NL80211_CMD_NEW_WIPHY: Newly created wiphy, response to get request
- * or rename notification. Has attributes %NL80211_ATTR_WIPHY and
- * %NL80211_ATTR_WIPHY_NAME.
- * @NL80211_CMD_DEL_WIPHY: Wiphy deleted. Has attributes
- * %NL80211_ATTR_WIPHY and %NL80211_ATTR_WIPHY_NAME.
- *
- * @NL80211_CMD_GET_INTERFACE: Request an interface's configuration;
- * either a dump request for all interfaces or a specific get with a
- * single %NL80211_ATTR_IFINDEX is supported.
- * @NL80211_CMD_SET_INTERFACE: Set type of a virtual interface, requires
- * %NL80211_ATTR_IFINDEX and %NL80211_ATTR_IFTYPE.
- * @NL80211_CMD_NEW_INTERFACE: Newly created virtual interface or response
- * to %NL80211_CMD_GET_INTERFACE. Has %NL80211_ATTR_IFINDEX,
- * %NL80211_ATTR_WIPHY and %NL80211_ATTR_IFTYPE attributes. Can also
- * be sent from userspace to request creation of a new virtual interface,
- * then requires attributes %NL80211_ATTR_WIPHY, %NL80211_ATTR_IFTYPE and
- * %NL80211_ATTR_IFNAME.
- * @NL80211_CMD_DEL_INTERFACE: Virtual interface was deleted, has attributes
- * %NL80211_ATTR_IFINDEX and %NL80211_ATTR_WIPHY. Can also be sent from
- * userspace to request deletion of a virtual interface, then requires
- * attribute %NL80211_ATTR_IFINDEX.
- *
- * @NL80211_CMD_GET_KEY: Get sequence counter information for a key specified
- * by %NL80211_ATTR_KEY_IDX and/or %NL80211_ATTR_MAC.
- * @NL80211_CMD_SET_KEY: Set key attributes %NL80211_ATTR_KEY_DEFAULT,
- * %NL80211_ATTR_KEY_DEFAULT_MGMT, or %NL80211_ATTR_KEY_THRESHOLD.
- * @NL80211_CMD_NEW_KEY: add a key with given %NL80211_ATTR_KEY_DATA,
- * %NL80211_ATTR_KEY_IDX, %NL80211_ATTR_MAC, %NL80211_ATTR_KEY_CIPHER,
- * and %NL80211_ATTR_KEY_SEQ attributes.
- * @NL80211_CMD_DEL_KEY: delete a key identified by %NL80211_ATTR_KEY_IDX
- * or %NL80211_ATTR_MAC.
- *
- * @NL80211_CMD_GET_BEACON: (not used)
- * @NL80211_CMD_SET_BEACON: change the beacon on an access point interface
- * using the %NL80211_ATTR_BEACON_HEAD and %NL80211_ATTR_BEACON_TAIL
- * attributes. For drivers that generate the beacon and probe responses
- * internally, the following attributes must be provided: %NL80211_ATTR_IE,
- * %NL80211_ATTR_IE_PROBE_RESP and %NL80211_ATTR_IE_ASSOC_RESP.
- * @NL80211_CMD_START_AP: Start AP operation on an AP interface, parameters
- * are like for %NL80211_CMD_SET_BEACON, and additionally parameters that
- * do not change are used, these include %NL80211_ATTR_BEACON_INTERVAL,
- * %NL80211_ATTR_DTIM_PERIOD, %NL80211_ATTR_SSID,
- * %NL80211_ATTR_HIDDEN_SSID, %NL80211_ATTR_CIPHERS_PAIRWISE,
- * %NL80211_ATTR_CIPHER_GROUP, %NL80211_ATTR_WPA_VERSIONS,
- * %NL80211_ATTR_AKM_SUITES, %NL80211_ATTR_PRIVACY,
- * %NL80211_ATTR_AUTH_TYPE, %NL80211_ATTR_INACTIVITY_TIMEOUT,
- * %NL80211_ATTR_ACL_POLICY and %NL80211_ATTR_MAC_ADDRS.
- * The channel to use can be set on the interface or be given using the
- * %NL80211_ATTR_WIPHY_FREQ and the attributes determining channel width.
- * @NL80211_CMD_NEW_BEACON: old alias for %NL80211_CMD_START_AP
- * @NL80211_CMD_STOP_AP: Stop AP operation on the given interface
- * @NL80211_CMD_DEL_BEACON: old alias for %NL80211_CMD_STOP_AP
- *
- * @NL80211_CMD_GET_STATION: Get station attributes for station identified by
- * %NL80211_ATTR_MAC on the interface identified by %NL80211_ATTR_IFINDEX.
- * @NL80211_CMD_SET_STATION: Set station attributes for station identified by
- * %NL80211_ATTR_MAC on the interface identified by %NL80211_ATTR_IFINDEX.
- * @NL80211_CMD_NEW_STATION: Add a station with given attributes to the
- * the interface identified by %NL80211_ATTR_IFINDEX.
- * @NL80211_CMD_DEL_STATION: Remove a station identified by %NL80211_ATTR_MAC
- * or, if no MAC address given, all stations, on the interface identified
- * by %NL80211_ATTR_IFINDEX. %NL80211_ATTR_MGMT_SUBTYPE and
- * %NL80211_ATTR_REASON_CODE can optionally be used to specify which type
- * of disconnection indication should be sent to the station
- * (Deauthentication or Disassociation frame and reason code for that
- * frame).
- *
- * @NL80211_CMD_GET_MPATH: Get mesh path attributes for mesh path to
- * destination %NL80211_ATTR_MAC on the interface identified by
- * %NL80211_ATTR_IFINDEX.
- * @NL80211_CMD_SET_MPATH: Set mesh path attributes for mesh path to
- * destination %NL80211_ATTR_MAC on the interface identified by
- * %NL80211_ATTR_IFINDEX.
- * @NL80211_CMD_NEW_MPATH: Create a new mesh path for the destination given by
- * %NL80211_ATTR_MAC via %NL80211_ATTR_MPATH_NEXT_HOP.
- * @NL80211_CMD_DEL_MPATH: Delete a mesh path to the destination given by
- * %NL80211_ATTR_MAC.
- * @NL80211_CMD_NEW_PATH: Add a mesh path with given attributes to the
- * the interface identified by %NL80211_ATTR_IFINDEX.
- * @NL80211_CMD_DEL_PATH: Remove a mesh path identified by %NL80211_ATTR_MAC
- * or, if no MAC address given, all mesh paths, on the interface identified
- * by %NL80211_ATTR_IFINDEX.
- * @NL80211_CMD_SET_BSS: Set BSS attributes for BSS identified by
- * %NL80211_ATTR_IFINDEX.
- *
- * @NL80211_CMD_GET_REG: ask the wireless core to send us its currently set
- * regulatory domain. If %NL80211_ATTR_WIPHY is specified and the device
- * has a private regulatory domain, it will be returned. Otherwise, the
- * global regdomain will be returned.
- * A device will have a private regulatory domain if it uses the
- * regulatory_hint() API. Even when a private regdomain is used the channel
- * information will still be mended according to further hints from
- * the regulatory core to help with compliance. A dump version of this API
- * is now available which will returns the global regdomain as well as
- * all private regdomains of present wiphys (for those that have it).
- * If a wiphy is self-managed (%NL80211_ATTR_WIPHY_SELF_MANAGED_REG), then
- * its private regdomain is the only valid one for it. The regulatory
- * core is not used to help with compliance in this case.
- * @NL80211_CMD_SET_REG: Set current regulatory domain. CRDA sends this command
- * after being queried by the kernel. CRDA replies by sending a regulatory
- * domain structure which consists of %NL80211_ATTR_REG_ALPHA set to our
- * current alpha2 if it found a match. It also provides
- * NL80211_ATTR_REG_RULE_FLAGS, and a set of regulatory rules. Each
- * regulatory rule is a nested set of attributes given by
- * %NL80211_ATTR_REG_RULE_FREQ_[START|END] and
- * %NL80211_ATTR_FREQ_RANGE_MAX_BW with an attached power rule given by
- * %NL80211_ATTR_REG_RULE_POWER_MAX_ANT_GAIN and
- * %NL80211_ATTR_REG_RULE_POWER_MAX_EIRP.
- * @NL80211_CMD_REQ_SET_REG: ask the wireless core to set the regulatory domain
- * to the specified ISO/IEC 3166-1 alpha2 country code. The core will
- * store this as a valid request and then query userspace for it.
- *
- * @NL80211_CMD_GET_MESH_CONFIG: Get mesh networking properties for the
- * interface identified by %NL80211_ATTR_IFINDEX
- *
- * @NL80211_CMD_SET_MESH_CONFIG: Set mesh networking properties for the
- * interface identified by %NL80211_ATTR_IFINDEX
- *
- * @NL80211_CMD_SET_MGMT_EXTRA_IE: Set extra IEs for management frames. The
- * interface is identified with %NL80211_ATTR_IFINDEX and the management
- * frame subtype with %NL80211_ATTR_MGMT_SUBTYPE. The extra IE data to be
- * added to the end of the specified management frame is specified with
- * %NL80211_ATTR_IE. If the command succeeds, the requested data will be
- * added to all specified management frames generated by
- * kernel/firmware/driver.
- * Note: This command has been removed and it is only reserved at this
- * point to avoid re-using existing command number. The functionality this
- * command was planned for has been provided with cleaner design with the
- * option to specify additional IEs in NL80211_CMD_TRIGGER_SCAN,
- * NL80211_CMD_AUTHENTICATE, NL80211_CMD_ASSOCIATE,
- * NL80211_CMD_DEAUTHENTICATE, and NL80211_CMD_DISASSOCIATE.
- *
- * @NL80211_CMD_GET_SCAN: get scan results
- * @NL80211_CMD_TRIGGER_SCAN: trigger a new scan with the given parameters
- * %NL80211_ATTR_TX_NO_CCK_RATE is used to decide whether to send the
- * probe requests at CCK rate or not. %NL80211_ATTR_BSSID can be used to
- * specify a BSSID to scan for; if not included, the wildcard BSSID will
- * be used.
- * @NL80211_CMD_NEW_SCAN_RESULTS: scan notification (as a reply to
- * NL80211_CMD_GET_SCAN and on the "scan" multicast group)
- * @NL80211_CMD_SCAN_ABORTED: scan was aborted, for unspecified reasons,
- * partial scan results may be available
- *
- * @NL80211_CMD_START_SCHED_SCAN: start a scheduled scan at certain
- * intervals and certain number of cycles, as specified by
- * %NL80211_ATTR_SCHED_SCAN_PLANS. If %NL80211_ATTR_SCHED_SCAN_PLANS is
- * not specified and only %NL80211_ATTR_SCHED_SCAN_INTERVAL is specified,
- * scheduled scan will run in an infinite loop with the specified interval.
- * These attributes are mutually exculsive,
- * i.e. NL80211_ATTR_SCHED_SCAN_INTERVAL must not be passed if
- * NL80211_ATTR_SCHED_SCAN_PLANS is defined.
- * If for some reason scheduled scan is aborted by the driver, all scan
- * plans are canceled (including scan plans that did not start yet).
- * Like with normal scans, if SSIDs (%NL80211_ATTR_SCAN_SSIDS)
- * are passed, they are used in the probe requests. For
- * broadcast, a broadcast SSID must be passed (ie. an empty
- * string). If no SSID is passed, no probe requests are sent and
- * a passive scan is performed. %NL80211_ATTR_SCAN_FREQUENCIES,
- * if passed, define which channels should be scanned; if not
- * passed, all channels allowed for the current regulatory domain
- * are used. Extra IEs can also be passed from the userspace by
- * using the %NL80211_ATTR_IE attribute. The first cycle of the
- * scheduled scan can be delayed by %NL80211_ATTR_SCHED_SCAN_DELAY
- * is supplied. If the device supports multiple concurrent scheduled
- * scans, it will allow such when the caller provides the flag attribute
- * %NL80211_ATTR_SCHED_SCAN_MULTI to indicate user-space support for it.
- * @NL80211_CMD_STOP_SCHED_SCAN: stop a scheduled scan. Returns -ENOENT if
- * scheduled scan is not running. The caller may assume that as soon
- * as the call returns, it is safe to start a new scheduled scan again.
- * @NL80211_CMD_SCHED_SCAN_RESULTS: indicates that there are scheduled scan
- * results available.
- * @NL80211_CMD_SCHED_SCAN_STOPPED: indicates that the scheduled scan has
- * stopped. The driver may issue this event at any time during a
- * scheduled scan. One reason for stopping the scan is if the hardware
- * does not support starting an association or a normal scan while running
- * a scheduled scan. This event is also sent when the
- * %NL80211_CMD_STOP_SCHED_SCAN command is received or when the interface
- * is brought down while a scheduled scan was running.
- *
- * @NL80211_CMD_GET_SURVEY: get survey resuls, e.g. channel occupation
- * or noise level
- * @NL80211_CMD_NEW_SURVEY_RESULTS: survey data notification (as a reply to
- * NL80211_CMD_GET_SURVEY and on the "scan" multicast group)
- *
- * @NL80211_CMD_SET_PMKSA: Add a PMKSA cache entry using %NL80211_ATTR_MAC
- * (for the BSSID), %NL80211_ATTR_PMKID, and optionally %NL80211_ATTR_PMK
- * (PMK is used for PTKSA derivation in case of FILS shared key offload) or
- * using %NL80211_ATTR_SSID, %NL80211_ATTR_FILS_CACHE_ID,
- * %NL80211_ATTR_PMKID, and %NL80211_ATTR_PMK in case of FILS
- * authentication where %NL80211_ATTR_FILS_CACHE_ID is the identifier
- * advertized by a FILS capable AP identifying the scope of PMKSA in an
- * ESS.
- * @NL80211_CMD_DEL_PMKSA: Delete a PMKSA cache entry, using %NL80211_ATTR_MAC
- * (for the BSSID) and %NL80211_ATTR_PMKID or using %NL80211_ATTR_SSID,
- * %NL80211_ATTR_FILS_CACHE_ID, and %NL80211_ATTR_PMKID in case of FILS
- * authentication.
- * @NL80211_CMD_FLUSH_PMKSA: Flush all PMKSA cache entries.
- *
- * @NL80211_CMD_REG_CHANGE: indicates to userspace the regulatory domain
- * has been changed and provides details of the request information
- * that caused the change such as who initiated the regulatory request
- * (%NL80211_ATTR_REG_INITIATOR), the wiphy_idx
- * (%NL80211_ATTR_REG_ALPHA2) on which the request was made from if
- * the initiator was %NL80211_REGDOM_SET_BY_COUNTRY_IE or
- * %NL80211_REGDOM_SET_BY_DRIVER, the type of regulatory domain
- * set (%NL80211_ATTR_REG_TYPE), if the type of regulatory domain is
- * %NL80211_REG_TYPE_COUNTRY the alpha2 to which we have moved on
- * to (%NL80211_ATTR_REG_ALPHA2).
- * @NL80211_CMD_REG_BEACON_HINT: indicates to userspace that an AP beacon
- * has been found while world roaming thus enabling active scan or
- * any mode of operation that initiates TX (beacons) on a channel
- * where we would not have been able to do either before. As an example
- * if you are world roaming (regulatory domain set to world or if your
- * driver is using a custom world roaming regulatory domain) and while
- * doing a passive scan on the 5 GHz band you find an AP there (if not
- * on a DFS channel) you will now be able to actively scan for that AP
- * or use AP mode on your card on that same channel. Note that this will
- * never be used for channels 1-11 on the 2 GHz band as they are always
- * enabled world wide. This beacon hint is only sent if your device had
- * either disabled active scanning or beaconing on a channel. We send to
- * userspace the wiphy on which we removed a restriction from
- * (%NL80211_ATTR_WIPHY) and the channel on which this occurred
- * before (%NL80211_ATTR_FREQ_BEFORE) and after (%NL80211_ATTR_FREQ_AFTER)
- * the beacon hint was processed.
- *
- * @NL80211_CMD_AUTHENTICATE: authentication request and notification.
- * This command is used both as a command (request to authenticate) and
- * as an event on the "mlme" multicast group indicating completion of the
- * authentication process.
- * When used as a command, %NL80211_ATTR_IFINDEX is used to identify the
- * interface. %NL80211_ATTR_MAC is used to specify PeerSTAAddress (and
- * BSSID in case of station mode). %NL80211_ATTR_SSID is used to specify
- * the SSID (mainly for association, but is included in authentication
- * request, too, to help BSS selection. %NL80211_ATTR_WIPHY_FREQ is used
- * to specify the frequence of the channel in MHz. %NL80211_ATTR_AUTH_TYPE
- * is used to specify the authentication type. %NL80211_ATTR_IE is used to
- * define IEs (VendorSpecificInfo, but also including RSN IE and FT IEs)
- * to be added to the frame.
- * When used as an event, this reports reception of an Authentication
- * frame in station and IBSS modes when the local MLME processed the
- * frame, i.e., it was for the local STA and was received in correct
- * state. This is similar to MLME-AUTHENTICATE.confirm primitive in the
- * MLME SAP interface (kernel providing MLME, userspace SME). The
- * included %NL80211_ATTR_FRAME attribute contains the management frame
- * (including both the header and frame body, but not FCS). This event is
- * also used to indicate if the authentication attempt timed out. In that
- * case the %NL80211_ATTR_FRAME attribute is replaced with a
- * %NL80211_ATTR_TIMED_OUT flag (and %NL80211_ATTR_MAC to indicate which
- * pending authentication timed out).
- * @NL80211_CMD_ASSOCIATE: association request and notification; like
- * NL80211_CMD_AUTHENTICATE but for Association and Reassociation
- * (similar to MLME-ASSOCIATE.request, MLME-REASSOCIATE.request,
- * MLME-ASSOCIATE.confirm or MLME-REASSOCIATE.confirm primitives). The
- * %NL80211_ATTR_PREV_BSSID attribute is used to specify whether the
- * request is for the initial association to an ESS (that attribute not
- * included) or for reassociation within the ESS (that attribute is
- * included).
- * @NL80211_CMD_DEAUTHENTICATE: deauthentication request and notification; like
- * NL80211_CMD_AUTHENTICATE but for Deauthentication frames (similar to
- * MLME-DEAUTHENTICATION.request and MLME-DEAUTHENTICATE.indication
- * primitives).
- * @NL80211_CMD_DISASSOCIATE: disassociation request and notification; like
- * NL80211_CMD_AUTHENTICATE but for Disassociation frames (similar to
- * MLME-DISASSOCIATE.request and MLME-DISASSOCIATE.indication primitives).
- *
- * @NL80211_CMD_MICHAEL_MIC_FAILURE: notification of a locally detected Michael
- * MIC (part of TKIP) failure; sent on the "mlme" multicast group; the
- * event includes %NL80211_ATTR_MAC to describe the source MAC address of
- * the frame with invalid MIC, %NL80211_ATTR_KEY_TYPE to show the key
- * type, %NL80211_ATTR_KEY_IDX to indicate the key identifier, and
- * %NL80211_ATTR_KEY_SEQ to indicate the TSC value of the frame; this
- * event matches with MLME-MICHAELMICFAILURE.indication() primitive
- *
- * @NL80211_CMD_JOIN_IBSS: Join a new IBSS -- given at least an SSID and a
- * FREQ attribute (for the initial frequency if no peer can be found)
- * and optionally a MAC (as BSSID) and FREQ_FIXED attribute if those
- * should be fixed rather than automatically determined. Can only be
- * executed on a network interface that is UP, and fixed BSSID/FREQ
- * may be rejected. Another optional parameter is the beacon interval,
- * given in the %NL80211_ATTR_BEACON_INTERVAL attribute, which if not
- * given defaults to 100 TU (102.4ms).
- * @NL80211_CMD_LEAVE_IBSS: Leave the IBSS -- no special arguments, the IBSS is
- * determined by the network interface.
- *
- * @NL80211_CMD_TESTMODE: testmode command, takes a wiphy (or ifindex) attribute
- * to identify the device, and the TESTDATA blob attribute to pass through
- * to the driver.
- *
- * @NL80211_CMD_CONNECT: connection request and notification; this command
- * requests to connect to a specified network but without separating
- * auth and assoc steps. For this, you need to specify the SSID in a
- * %NL80211_ATTR_SSID attribute, and can optionally specify the association
- * IEs in %NL80211_ATTR_IE, %NL80211_ATTR_AUTH_TYPE, %NL80211_ATTR_USE_MFP,
- * %NL80211_ATTR_MAC, %NL80211_ATTR_WIPHY_FREQ, %NL80211_ATTR_CONTROL_PORT,
- * %NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
- * %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT,
- * %NL80211_ATTR_CONTROL_PORT_OVER_NL80211, %NL80211_ATTR_MAC_HINT, and
- * %NL80211_ATTR_WIPHY_FREQ_HINT.
- * If included, %NL80211_ATTR_MAC and %NL80211_ATTR_WIPHY_FREQ are
- * restrictions on BSS selection, i.e., they effectively prevent roaming
- * within the ESS. %NL80211_ATTR_MAC_HINT and %NL80211_ATTR_WIPHY_FREQ_HINT
- * can be included to provide a recommendation of the initial BSS while
- * allowing the driver to roam to other BSSes within the ESS and also to
- * ignore this recommendation if the indicated BSS is not ideal. Only one
- * set of BSSID,frequency parameters is used (i.e., either the enforcing
- * %NL80211_ATTR_MAC,%NL80211_ATTR_WIPHY_FREQ or the less strict
- * %NL80211_ATTR_MAC_HINT and %NL80211_ATTR_WIPHY_FREQ_HINT).
- * %NL80211_ATTR_PREV_BSSID can be used to request a reassociation within
- * the ESS in case the device is already associated and an association with
- * a different BSS is desired.
- * Background scan period can optionally be
- * specified in %NL80211_ATTR_BG_SCAN_PERIOD,
- * if not specified default background scan configuration
- * in driver is used and if period value is 0, bg scan will be disabled.
- * This attribute is ignored if driver does not support roam scan.
- * It is also sent as an event, with the BSSID and response IEs when the
- * connection is established or failed to be established. This can be
- * determined by the %NL80211_ATTR_STATUS_CODE attribute (0 = success,
- * non-zero = failure). If %NL80211_ATTR_TIMED_OUT is included in the
- * event, the connection attempt failed due to not being able to initiate
- * authentication/association or not receiving a response from the AP.
- * Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as
- * well to remain backwards compatible.
- * When establishing a security association, drivers that support 4 way
- * handshake offload should send %NL80211_CMD_PORT_AUTHORIZED event when
- * the 4 way handshake is completed successfully.
- * @NL80211_CMD_ROAM: Notification indicating the card/driver roamed by itself.
- * When a security association was established with the new AP (e.g. if
- * the FT protocol was used for roaming or the driver completed the 4 way
- * handshake), this event should be followed by an
- * %NL80211_CMD_PORT_AUTHORIZED event.
- * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify
- * userspace that a connection was dropped by the AP or due to other
- * reasons, for this the %NL80211_ATTR_DISCONNECTED_BY_AP and
- * %NL80211_ATTR_REASON_CODE attributes are used.
- *
- * @NL80211_CMD_SET_WIPHY_NETNS: Set a wiphy's netns. Note that all devices
- * associated with this wiphy must be down and will follow.
- *
- * @NL80211_CMD_REMAIN_ON_CHANNEL: Request to remain awake on the specified
- * channel for the specified amount of time. This can be used to do
- * off-channel operations like transmit a Public Action frame and wait for
- * a response while being associated to an AP on another channel.
- * %NL80211_ATTR_IFINDEX is used to specify which interface (and thus
- * radio) is used. %NL80211_ATTR_WIPHY_FREQ is used to specify the
- * frequency for the operation.
- * %NL80211_ATTR_DURATION is used to specify the duration in milliseconds
- * to remain on the channel. This command is also used as an event to
- * notify when the requested duration starts (it may take a while for the
- * driver to schedule this time due to other concurrent needs for the
- * radio).
- * When called, this operation returns a cookie (%NL80211_ATTR_COOKIE)
- * that will be included with any events pertaining to this request;
- * the cookie is also used to cancel the request.
- * @NL80211_CMD_CANCEL_REMAIN_ON_CHANNEL: This command can be used to cancel a
- * pending remain-on-channel duration if the desired operation has been
- * completed prior to expiration of the originally requested duration.
- * %NL80211_ATTR_WIPHY or %NL80211_ATTR_IFINDEX is used to specify the
- * radio. The %NL80211_ATTR_COOKIE attribute must be given as well to
- * uniquely identify the request.
- * This command is also used as an event to notify when a requested
- * remain-on-channel duration has expired.
- *
- * @NL80211_CMD_SET_TX_BITRATE_MASK: Set the mask of rates to be used in TX
- * rate selection. %NL80211_ATTR_IFINDEX is used to specify the interface
- * and @NL80211_ATTR_TX_RATES the set of allowed rates.
- *
- * @NL80211_CMD_REGISTER_FRAME: Register for receiving certain mgmt frames
- * (via @NL80211_CMD_FRAME) for processing in userspace. This command
- * requires an interface index, a frame type attribute (optional for
- * backward compatibility reasons, if not given assumes action frames)
- * and a match attribute containing the first few bytes of the frame
- * that should match, e.g. a single byte for only a category match or
- * four bytes for vendor frames including the OUI. The registration
- * cannot be dropped, but is removed automatically when the netlink
- * socket is closed. Multiple registrations can be made.
- * @NL80211_CMD_REGISTER_ACTION: Alias for @NL80211_CMD_REGISTER_FRAME for
- * backward compatibility
- * @NL80211_CMD_FRAME: Management frame TX request and RX notification. This
- * command is used both as a request to transmit a management frame and
- * as an event indicating reception of a frame that was not processed in
- * kernel code, but is for us (i.e., which may need to be processed in a
- * user space application). %NL80211_ATTR_FRAME is used to specify the
- * frame contents (including header). %NL80211_ATTR_WIPHY_FREQ is used
- * to indicate on which channel the frame is to be transmitted or was
- * received. If this channel is not the current channel (remain-on-channel
- * or the operational channel) the device will switch to the given channel
- * and transmit the frame, optionally waiting for a response for the time
- * specified using %NL80211_ATTR_DURATION. When called, this operation
- * returns a cookie (%NL80211_ATTR_COOKIE) that will be included with the
- * TX status event pertaining to the TX request.
- * %NL80211_ATTR_TX_NO_CCK_RATE is used to decide whether to send the
- * management frames at CCK rate or not in 2GHz band.
- * %NL80211_ATTR_CSA_C_OFFSETS_TX is an array of offsets to CSA
- * counters which will be updated to the current value. This attribute
- * is used during CSA period.
- * @NL80211_CMD_FRAME_WAIT_CANCEL: When an off-channel TX was requested, this
- * command may be used with the corresponding cookie to cancel the wait
- * time if it is known that it is no longer necessary.
- * @NL80211_CMD_ACTION: Alias for @NL80211_CMD_FRAME for backward compatibility.
- * @NL80211_CMD_FRAME_TX_STATUS: Report TX status of a management frame
- * transmitted with %NL80211_CMD_FRAME. %NL80211_ATTR_COOKIE identifies
- * the TX command and %NL80211_ATTR_FRAME includes the contents of the
- * frame. %NL80211_ATTR_ACK flag is included if the recipient acknowledged
- * the frame.
- * @NL80211_CMD_ACTION_TX_STATUS: Alias for @NL80211_CMD_FRAME_TX_STATUS for
- * backward compatibility.
- *
- * @NL80211_CMD_SET_POWER_SAVE: Set powersave, using %NL80211_ATTR_PS_STATE
- * @NL80211_CMD_GET_POWER_SAVE: Get powersave status in %NL80211_ATTR_PS_STATE
- *
- * @NL80211_CMD_SET_CQM: Connection quality monitor configuration. This command
- * is used to configure connection quality monitoring notification trigger
- * levels.
- * @NL80211_CMD_NOTIFY_CQM: Connection quality monitor notification. This
- * command is used as an event to indicate the that a trigger level was
- * reached.
- * @NL80211_CMD_SET_CHANNEL: Set the channel (using %NL80211_ATTR_WIPHY_FREQ
- * and the attributes determining channel width) the given interface
- * (identifed by %NL80211_ATTR_IFINDEX) shall operate on.
- * In case multiple channels are supported by the device, the mechanism
- * with which it switches channels is implementation-defined.
- * When a monitor interface is given, it can only switch channel while
- * no other interfaces are operating to avoid disturbing the operation
- * of any other interfaces, and other interfaces will again take
- * precedence when they are used.
- *
- * @NL80211_CMD_SET_WDS_PEER: Set the MAC address of the peer on a WDS interface.
- *
- * @NL80211_CMD_SET_MULTICAST_TO_UNICAST: Configure if this AP should perform
- * multicast to unicast conversion. When enabled, all multicast packets
- * with ethertype ARP, IPv4 or IPv6 (possibly within an 802.1Q header)
- * will be sent out to each station once with the destination (multicast)
- * MAC address replaced by the station's MAC address. Note that this may
- * break certain expectations of the receiver, e.g. the ability to drop
- * unicast IP packets encapsulated in multicast L2 frames, or the ability
- * to not send destination unreachable messages in such cases.
- * This can only be toggled per BSS. Configure this on an interface of
- * type %NL80211_IFTYPE_AP. It applies to all its VLAN interfaces
- * (%NL80211_IFTYPE_AP_VLAN), except for those in 4addr (WDS) mode.
- * If %NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED is not present with this
- * command, the feature is disabled.
- *
- * @NL80211_CMD_JOIN_MESH: Join a mesh. The mesh ID must be given, and initial
- * mesh config parameters may be given.
- * @NL80211_CMD_LEAVE_MESH: Leave the mesh network -- no special arguments, the
- * network is determined by the network interface.
- *
- * @NL80211_CMD_UNPROT_DEAUTHENTICATE: Unprotected deauthentication frame
- * notification. This event is used to indicate that an unprotected
- * deauthentication frame was dropped when MFP is in use.
- * @NL80211_CMD_UNPROT_DISASSOCIATE: Unprotected disassociation frame
- * notification. This event is used to indicate that an unprotected
- * disassociation frame was dropped when MFP is in use.
- *
- * @NL80211_CMD_NEW_PEER_CANDIDATE: Notification on the reception of a
- * beacon or probe response from a compatible mesh peer. This is only
- * sent while no station information (sta_info) exists for the new peer
- * candidate and when @NL80211_MESH_SETUP_USERSPACE_AUTH,
- * @NL80211_MESH_SETUP_USERSPACE_AMPE, or
- * @NL80211_MESH_SETUP_USERSPACE_MPM is set. On reception of this
- * notification, userspace may decide to create a new station
- * (@NL80211_CMD_NEW_STATION). To stop this notification from
- * reoccurring, the userspace authentication daemon may want to create the
- * new station with the AUTHENTICATED flag unset and maybe change it later
- * depending on the authentication result.
- *
- * @NL80211_CMD_GET_WOWLAN: get Wake-on-Wireless-LAN (WoWLAN) settings.
- * @NL80211_CMD_SET_WOWLAN: set Wake-on-Wireless-LAN (WoWLAN) settings.
- * Since wireless is more complex than wired ethernet, it supports
- * various triggers. These triggers can be configured through this
- * command with the %NL80211_ATTR_WOWLAN_TRIGGERS attribute. For
- * more background information, see
- * http://wireless.kernel.org/en/users/Documentation/WoWLAN.
- * The @NL80211_CMD_SET_WOWLAN command can also be used as a notification
- * from the driver reporting the wakeup reason. In this case, the
- * @NL80211_ATTR_WOWLAN_TRIGGERS attribute will contain the reason
- * for the wakeup, if it was caused by wireless. If it is not present
- * in the wakeup notification, the wireless device didn't cause the
- * wakeup but reports that it was woken up.
- *
- * @NL80211_CMD_SET_REKEY_OFFLOAD: This command is used give the driver
- * the necessary information for supporting GTK rekey offload. This
- * feature is typically used during WoWLAN. The configuration data
- * is contained in %NL80211_ATTR_REKEY_DATA (which is nested and
- * contains the data in sub-attributes). After rekeying happened,
- * this command may also be sent by the driver as an MLME event to
- * inform userspace of the new replay counter.
- *
- * @NL80211_CMD_PMKSA_CANDIDATE: This is used as an event to inform userspace
- * of PMKSA caching dandidates.
- *
- * @NL80211_CMD_TDLS_OPER: Perform a high-level TDLS command (e.g. link setup).
- * In addition, this can be used as an event to request userspace to take
- * actions on TDLS links (set up a new link or tear down an existing one).
- * In such events, %NL80211_ATTR_TDLS_OPERATION indicates the requested
- * operation, %NL80211_ATTR_MAC contains the peer MAC address, and
- * %NL80211_ATTR_REASON_CODE the reason code to be used (only with
- * %NL80211_TDLS_TEARDOWN).
- * @NL80211_CMD_TDLS_MGMT: Send a TDLS management frame. The
- * %NL80211_ATTR_TDLS_ACTION attribute determines the type of frame to be
- * sent. Public Action codes (802.11-2012 8.1.5.1) will be sent as
- * 802.11 management frames, while TDLS action codes (802.11-2012
- * 8.5.13.1) will be encapsulated and sent as data frames. The currently
- * supported Public Action code is %WLAN_PUB_ACTION_TDLS_DISCOVER_RES
- * and the currently supported TDLS actions codes are given in
- * &enum ieee80211_tdls_actioncode.
- *
- * @NL80211_CMD_UNEXPECTED_FRAME: Used by an application controlling an AP
- * (or GO) interface (i.e. hostapd) to ask for unexpected frames to
- * implement sending deauth to stations that send unexpected class 3
- * frames. Also used as the event sent by the kernel when such a frame
- * is received.
- * For the event, the %NL80211_ATTR_MAC attribute carries the TA and
- * other attributes like the interface index are present.
- * If used as the command it must have an interface index and you can
- * only unsubscribe from the event by closing the socket. Subscription
- * is also for %NL80211_CMD_UNEXPECTED_4ADDR_FRAME events.
- *
- * @NL80211_CMD_UNEXPECTED_4ADDR_FRAME: Sent as an event indicating that the
- * associated station identified by %NL80211_ATTR_MAC sent a 4addr frame
- * and wasn't already in a 4-addr VLAN. The event will be sent similarly
- * to the %NL80211_CMD_UNEXPECTED_FRAME event, to the same listener.
- *
- * @NL80211_CMD_PROBE_CLIENT: Probe an associated station on an AP interface
- * by sending a null data frame to it and reporting when the frame is
- * acknowleged. This is used to allow timing out inactive clients. Uses
- * %NL80211_ATTR_IFINDEX and %NL80211_ATTR_MAC. The command returns a
- * direct reply with an %NL80211_ATTR_COOKIE that is later used to match
- * up the event with the request. The event includes the same data and
- * has %NL80211_ATTR_ACK set if the frame was ACKed.
- *
- * @NL80211_CMD_REGISTER_BEACONS: Register this socket to receive beacons from
- * other BSSes when any interfaces are in AP mode. This helps implement
- * OLBC handling in hostapd. Beacons are reported in %NL80211_CMD_FRAME
- * messages. Note that per PHY only one application may register.
- *
- * @NL80211_CMD_SET_NOACK_MAP: sets a bitmap for the individual TIDs whether
- * No Acknowledgement Policy should be applied.
- *
- * @NL80211_CMD_CH_SWITCH_NOTIFY: An AP or GO may decide to switch channels
- * independently of the userspace SME, send this event indicating
- * %NL80211_ATTR_IFINDEX is now on %NL80211_ATTR_WIPHY_FREQ and the
- * attributes determining channel width. This indication may also be
- * sent when a remotely-initiated switch (e.g., when a STA receives a CSA
- * from the remote AP) is completed;
- *
- * @NL80211_CMD_CH_SWITCH_STARTED_NOTIFY: Notify that a channel switch
- * has been started on an interface, regardless of the initiator
- * (ie. whether it was requested from a remote device or
- * initiated on our own). It indicates that
- * %NL80211_ATTR_IFINDEX will be on %NL80211_ATTR_WIPHY_FREQ
- * after %NL80211_ATTR_CH_SWITCH_COUNT TBTT's. The userspace may
- * decide to react to this indication by requesting other
- * interfaces to change channel as well.
- *
- * @NL80211_CMD_START_P2P_DEVICE: Start the given P2P Device, identified by
- * its %NL80211_ATTR_WDEV identifier. It must have been created with
- * %NL80211_CMD_NEW_INTERFACE previously. After it has been started, the
- * P2P Device can be used for P2P operations, e.g. remain-on-channel and
- * public action frame TX.
- * @NL80211_CMD_STOP_P2P_DEVICE: Stop the given P2P Device, identified by
- * its %NL80211_ATTR_WDEV identifier.
- *
- * @NL80211_CMD_CONN_FAILED: connection request to an AP failed; used to
- * notify userspace that AP has rejected the connection request from a
- * station, due to particular reason. %NL80211_ATTR_CONN_FAILED_REASON
- * is used for this.
- *
- * @NL80211_CMD_SET_MCAST_RATE: Change the rate used to send multicast frames
- * for IBSS or MESH vif.
- *
- * @NL80211_CMD_SET_MAC_ACL: sets ACL for MAC address based access control.
- * This is to be used with the drivers advertising the support of MAC
- * address based access control. List of MAC addresses is passed in
- * %NL80211_ATTR_MAC_ADDRS and ACL policy is passed in
- * %NL80211_ATTR_ACL_POLICY. Driver will enable ACL with this list, if it
- * is not already done. The new list will replace any existing list. Driver
- * will clear its ACL when the list of MAC addresses passed is empty. This
- * command is used in AP/P2P GO mode. Driver has to make sure to clear its
- * ACL list during %NL80211_CMD_STOP_AP.
- *
- * @NL80211_CMD_RADAR_DETECT: Start a Channel availability check (CAC). Once
- * a radar is detected or the channel availability scan (CAC) has finished
- * or was aborted, or a radar was detected, usermode will be notified with
- * this event. This command is also used to notify userspace about radars
- * while operating on this channel.
- * %NL80211_ATTR_RADAR_EVENT is used to inform about the type of the
- * event.
- *
- * @NL80211_CMD_GET_PROTOCOL_FEATURES: Get global nl80211 protocol features,
- * i.e. features for the nl80211 protocol rather than device features.
- * Returns the features in the %NL80211_ATTR_PROTOCOL_FEATURES bitmap.
- *
- * @NL80211_CMD_UPDATE_FT_IES: Pass down the most up-to-date Fast Transition
- * Information Element to the WLAN driver
- *
- * @NL80211_CMD_FT_EVENT: Send a Fast transition event from the WLAN driver
- * to the supplicant. This will carry the target AP's MAC address along
- * with the relevant Information Elements. This event is used to report
- * received FT IEs (MDIE, FTIE, RSN IE, TIE, RICIE).
- *
- * @NL80211_CMD_CRIT_PROTOCOL_START: Indicates user-space will start running
- * a critical protocol that needs more reliability in the connection to
- * complete.
- *
- * @NL80211_CMD_CRIT_PROTOCOL_STOP: Indicates the connection reliability can
- * return back to normal.
- *
- * @NL80211_CMD_GET_COALESCE: Get currently supported coalesce rules.
- * @NL80211_CMD_SET_COALESCE: Configure coalesce rules or clear existing rules.
- *
- * @NL80211_CMD_CHANNEL_SWITCH: Perform a channel switch by announcing the
- * the new channel information (Channel Switch Announcement - CSA)
- * in the beacon for some time (as defined in the
- * %NL80211_ATTR_CH_SWITCH_COUNT parameter) and then change to the
- * new channel. Userspace provides the new channel information (using
- * %NL80211_ATTR_WIPHY_FREQ and the attributes determining channel
- * width). %NL80211_ATTR_CH_SWITCH_BLOCK_TX may be supplied to inform
- * other station that transmission must be blocked until the channel
- * switch is complete.
- *
- * @NL80211_CMD_VENDOR: Vendor-specified command/event. The command is specified
- * by the %NL80211_ATTR_VENDOR_ID attribute and a sub-command in
- * %NL80211_ATTR_VENDOR_SUBCMD. Parameter(s) can be transported in
- * %NL80211_ATTR_VENDOR_DATA.
- * For feature advertisement, the %NL80211_ATTR_VENDOR_DATA attribute is
- * used in the wiphy data as a nested attribute containing descriptions
- * (&struct nl80211_vendor_cmd_info) of the supported vendor commands.
- * This may also be sent as an event with the same attributes.
- *
- * @NL80211_CMD_SET_QOS_MAP: Set Interworking QoS mapping for IP DSCP values.
- * The QoS mapping information is included in %NL80211_ATTR_QOS_MAP. If
- * that attribute is not included, QoS mapping is disabled. Since this
- * QoS mapping is relevant for IP packets, it is only valid during an
- * association. This is cleared on disassociation and AP restart.
- *
- * @NL80211_CMD_ADD_TX_TS: Ask the kernel to add a traffic stream for the given
- * %NL80211_ATTR_TSID and %NL80211_ATTR_MAC with %NL80211_ATTR_USER_PRIO
- * and %NL80211_ATTR_ADMITTED_TIME parameters.
- * Note that the action frame handshake with the AP shall be handled by
- * userspace via the normal management RX/TX framework, this only sets
- * up the TX TS in the driver/device.
- * If the admitted time attribute is not added then the request just checks
- * if a subsequent setup could be successful, the intent is to use this to
- * avoid setting up a session with the AP when local restrictions would
- * make that impossible. However, the subsequent "real" setup may still
- * fail even if the check was successful.
- * @NL80211_CMD_DEL_TX_TS: Remove an existing TS with the %NL80211_ATTR_TSID
- * and %NL80211_ATTR_MAC parameters. It isn't necessary to call this
- * before removing a station entry entirely, or before disassociating
- * or similar, cleanup will happen in the driver/device in this case.
- *
- * @NL80211_CMD_GET_MPP: Get mesh path attributes for mesh proxy path to
- * destination %NL80211_ATTR_MAC on the interface identified by
- * %NL80211_ATTR_IFINDEX.
- *
- * @NL80211_CMD_JOIN_OCB: Join the OCB network. The center frequency and
- * bandwidth of a channel must be given.
- * @NL80211_CMD_LEAVE_OCB: Leave the OCB network -- no special arguments, the
- * network is determined by the network interface.
- *
- * @NL80211_CMD_TDLS_CHANNEL_SWITCH: Start channel-switching with a TDLS peer,
- * identified by the %NL80211_ATTR_MAC parameter. A target channel is
- * provided via %NL80211_ATTR_WIPHY_FREQ and other attributes determining
- * channel width/type. The target operating class is given via
- * %NL80211_ATTR_OPER_CLASS.
- * The driver is responsible for continually initiating channel-switching
- * operations and returning to the base channel for communication with the
- * AP.
- * @NL80211_CMD_TDLS_CANCEL_CHANNEL_SWITCH: Stop channel-switching with a TDLS
- * peer given by %NL80211_ATTR_MAC. Both peers must be on the base channel
- * when this command completes.
- *
- * @NL80211_CMD_WIPHY_REG_CHANGE: Similar to %NL80211_CMD_REG_CHANGE, but used
- * as an event to indicate changes for devices with wiphy-specific regdom
- * management.
- *
- * @NL80211_CMD_ABORT_SCAN: Stop an ongoing scan. Returns -ENOENT if a scan is
- * not running. The driver indicates the status of the scan through
- * cfg80211_scan_done().
- *
- * @NL80211_CMD_START_NAN: Start NAN operation, identified by its
- * %NL80211_ATTR_WDEV interface. This interface must have been
- * previously created with %NL80211_CMD_NEW_INTERFACE. After it
- * has been started, the NAN interface will create or join a
- * cluster. This command must have a valid
- * %NL80211_ATTR_NAN_MASTER_PREF attribute and optional
- * %NL80211_ATTR_BANDS attributes. If %NL80211_ATTR_BANDS is
- * omitted or set to 0, it means don't-care and the device will
- * decide what to use. After this command NAN functions can be
- * added.
- * @NL80211_CMD_STOP_NAN: Stop the NAN operation, identified by
- * its %NL80211_ATTR_WDEV interface.
- * @NL80211_CMD_ADD_NAN_FUNCTION: Add a NAN function. The function is defined
- * with %NL80211_ATTR_NAN_FUNC nested attribute. When called, this
- * operation returns the strictly positive and unique instance id
- * (%NL80211_ATTR_NAN_FUNC_INST_ID) and a cookie (%NL80211_ATTR_COOKIE)
- * of the function upon success.
- * Since instance ID's can be re-used, this cookie is the right
- * way to identify the function. This will avoid races when a termination
- * event is handled by the user space after it has already added a new
- * function that got the same instance id from the kernel as the one
- * which just terminated.
- * This cookie may be used in NAN events even before the command
- * returns, so userspace shouldn't process NAN events until it processes
- * the response to this command.
- * Look at %NL80211_ATTR_SOCKET_OWNER as well.
- * @NL80211_CMD_DEL_NAN_FUNCTION: Delete a NAN function by cookie.
- * This command is also used as a notification sent when a NAN function is
- * terminated. This will contain a %NL80211_ATTR_NAN_FUNC_INST_ID
- * and %NL80211_ATTR_COOKIE attributes.
- * @NL80211_CMD_CHANGE_NAN_CONFIG: Change current NAN
- * configuration. NAN must be operational (%NL80211_CMD_START_NAN
- * was executed). It must contain at least one of the following
- * attributes: %NL80211_ATTR_NAN_MASTER_PREF,
- * %NL80211_ATTR_BANDS. If %NL80211_ATTR_BANDS is omitted, the
- * current configuration is not changed. If it is present but
- * set to zero, the configuration is changed to don't-care
- * (i.e. the device can decide what to do).
- * @NL80211_CMD_NAN_FUNC_MATCH: Notification sent when a match is reported.
- * This will contain a %NL80211_ATTR_NAN_MATCH nested attribute and
- * %NL80211_ATTR_COOKIE.
- *
- * @NL80211_CMD_UPDATE_CONNECT_PARAMS: Update one or more connect parameters
- * for subsequent roaming cases if the driver or firmware uses internal
- * BSS selection. This command can be issued only while connected and it
- * does not result in a change for the current association. Currently,
- * only the %NL80211_ATTR_IE data is used and updated with this command.
- *
- * @NL80211_CMD_SET_PMK: For offloaded 4-Way handshake, set the PMK or PMK-R0
- * for the given authenticator address (specified with %NL80211_ATTR_MAC).
- * When %NL80211_ATTR_PMKR0_NAME is set, %NL80211_ATTR_PMK specifies the
- * PMK-R0, otherwise it specifies the PMK.
- * @NL80211_CMD_DEL_PMK: For offloaded 4-Way handshake, delete the previously
- * configured PMK for the authenticator address identified by
- * %NL80211_ATTR_MAC.
- * @NL80211_CMD_PORT_AUTHORIZED: An event that indicates that the 4 way
- * handshake was completed successfully by the driver. The BSSID is
- * specified with %NL80211_ATTR_MAC. Drivers that support 4 way handshake
- * offload should send this event after indicating 802.11 association with
- * %NL80211_CMD_CONNECT or %NL80211_CMD_ROAM. If the 4 way handshake failed
- * %NL80211_CMD_DISCONNECT should be indicated instead.
- *
- * @NL80211_CMD_CONTROL_PORT_FRAME: Control Port (e.g. PAE) frame TX request
- * and RX notification. This command is used both as a request to transmit
- * a control port frame and as a notification that a control port frame
- * has been received. %NL80211_ATTR_FRAME is used to specify the
- * frame contents. The frame is the raw EAPoL data, without ethernet or
- * 802.11 headers.
- * When used as an event indication %NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
- * %NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT and %NL80211_ATTR_MAC are added
- * indicating the protocol type of the received frame; whether the frame
- * was received unencrypted and the MAC address of the peer respectively.
- *
- * @NL80211_CMD_RELOAD_REGDB: Request that the regdb firmware file is reloaded.
- *
- * @NL80211_CMD_EXTERNAL_AUTH: This interface is exclusively defined for host
- * drivers that do not define separate commands for authentication and
- * association, but rely on user space for the authentication to happen.
- * This interface acts both as the event request (driver to user space)
- * to trigger the authentication and command response (userspace to
- * driver) to indicate the authentication status.
- *
- * User space uses the %NL80211_CMD_CONNECT command to the host driver to
- * trigger a connection. The host driver selects a BSS and further uses
- * this interface to offload only the authentication part to the user
- * space. Authentication frames are passed between the driver and user
- * space through the %NL80211_CMD_FRAME interface. Host driver proceeds
- * further with the association after getting successful authentication
- * status. User space indicates the authentication status through
- * %NL80211_ATTR_STATUS_CODE attribute in %NL80211_CMD_EXTERNAL_AUTH
- * command interface.
- *
- * Host driver reports this status on an authentication failure to the
- * user space through the connect result as the user space would have
- * initiated the connection through the connect request.
- *
- * @NL80211_CMD_STA_OPMODE_CHANGED: An event that notify station's
- * ht opmode or vht opmode changes using any of %NL80211_ATTR_SMPS_MODE,
- * %NL80211_ATTR_CHANNEL_WIDTH,%NL80211_ATTR_NSS attributes with its
- * address(specified in %NL80211_ATTR_MAC).
- *
- * @NL80211_CMD_MAX: highest used command number
- * @__NL80211_CMD_AFTER_LAST: internal use
- */
-enum nl80211_commands {
-/* don't change the order or add anything between, this is ABI! */
- NL80211_CMD_UNSPEC,
-
- NL80211_CMD_GET_WIPHY, /* can dump */
- NL80211_CMD_SET_WIPHY,
- NL80211_CMD_NEW_WIPHY,
- NL80211_CMD_DEL_WIPHY,
-
- NL80211_CMD_GET_INTERFACE, /* can dump */
- NL80211_CMD_SET_INTERFACE,
- NL80211_CMD_NEW_INTERFACE,
- NL80211_CMD_DEL_INTERFACE,
-
- NL80211_CMD_GET_KEY,
- NL80211_CMD_SET_KEY,
- NL80211_CMD_NEW_KEY,
- NL80211_CMD_DEL_KEY,
-
- NL80211_CMD_GET_BEACON,
- NL80211_CMD_SET_BEACON,
- NL80211_CMD_START_AP,
- NL80211_CMD_NEW_BEACON = NL80211_CMD_START_AP,
- NL80211_CMD_STOP_AP,
- NL80211_CMD_DEL_BEACON = NL80211_CMD_STOP_AP,
-
- NL80211_CMD_GET_STATION,
- NL80211_CMD_SET_STATION,
- NL80211_CMD_NEW_STATION,
- NL80211_CMD_DEL_STATION,
-
- NL80211_CMD_GET_MPATH,
- NL80211_CMD_SET_MPATH,
- NL80211_CMD_NEW_MPATH,
- NL80211_CMD_DEL_MPATH,
-
- NL80211_CMD_SET_BSS,
-
- NL80211_CMD_SET_REG,
- NL80211_CMD_REQ_SET_REG,
-
- NL80211_CMD_GET_MESH_CONFIG,
- NL80211_CMD_SET_MESH_CONFIG,
-
- NL80211_CMD_SET_MGMT_EXTRA_IE /* reserved; not used */,
-
- NL80211_CMD_GET_REG,
-
- NL80211_CMD_GET_SCAN,
- NL80211_CMD_TRIGGER_SCAN,
- NL80211_CMD_NEW_SCAN_RESULTS,
- NL80211_CMD_SCAN_ABORTED,
-
- NL80211_CMD_REG_CHANGE,
-
- NL80211_CMD_AUTHENTICATE,
- NL80211_CMD_ASSOCIATE,
- NL80211_CMD_DEAUTHENTICATE,
- NL80211_CMD_DISASSOCIATE,
-
- NL80211_CMD_MICHAEL_MIC_FAILURE,
-
- NL80211_CMD_REG_BEACON_HINT,
-
- NL80211_CMD_JOIN_IBSS,
- NL80211_CMD_LEAVE_IBSS,
-
- NL80211_CMD_TESTMODE,
-
- NL80211_CMD_CONNECT,
- NL80211_CMD_ROAM,
- NL80211_CMD_DISCONNECT,
-
- NL80211_CMD_SET_WIPHY_NETNS,
-
- NL80211_CMD_GET_SURVEY,
- NL80211_CMD_NEW_SURVEY_RESULTS,
-
- NL80211_CMD_SET_PMKSA,
- NL80211_CMD_DEL_PMKSA,
- NL80211_CMD_FLUSH_PMKSA,
-
- NL80211_CMD_REMAIN_ON_CHANNEL,
- NL80211_CMD_CANCEL_REMAIN_ON_CHANNEL,
-
- NL80211_CMD_SET_TX_BITRATE_MASK,
-
- NL80211_CMD_REGISTER_FRAME,
- NL80211_CMD_REGISTER_ACTION = NL80211_CMD_REGISTER_FRAME,
- NL80211_CMD_FRAME,
- NL80211_CMD_ACTION = NL80211_CMD_FRAME,
- NL80211_CMD_FRAME_TX_STATUS,
- NL80211_CMD_ACTION_TX_STATUS = NL80211_CMD_FRAME_TX_STATUS,
-
- NL80211_CMD_SET_POWER_SAVE,
- NL80211_CMD_GET_POWER_SAVE,
-
- NL80211_CMD_SET_CQM,
- NL80211_CMD_NOTIFY_CQM,
-
- NL80211_CMD_SET_CHANNEL,
- NL80211_CMD_SET_WDS_PEER,
-
- NL80211_CMD_FRAME_WAIT_CANCEL,
-
- NL80211_CMD_JOIN_MESH,
- NL80211_CMD_LEAVE_MESH,
-
- NL80211_CMD_UNPROT_DEAUTHENTICATE,
- NL80211_CMD_UNPROT_DISASSOCIATE,
-
- NL80211_CMD_NEW_PEER_CANDIDATE,
-
- NL80211_CMD_GET_WOWLAN,
- NL80211_CMD_SET_WOWLAN,
-
- NL80211_CMD_START_SCHED_SCAN,
- NL80211_CMD_STOP_SCHED_SCAN,
- NL80211_CMD_SCHED_SCAN_RESULTS,
- NL80211_CMD_SCHED_SCAN_STOPPED,
-
- NL80211_CMD_SET_REKEY_OFFLOAD,
-
- NL80211_CMD_PMKSA_CANDIDATE,
-
- NL80211_CMD_TDLS_OPER,
- NL80211_CMD_TDLS_MGMT,
-
- NL80211_CMD_UNEXPECTED_FRAME,
-
- NL80211_CMD_PROBE_CLIENT,
-
- NL80211_CMD_REGISTER_BEACONS,
-
- NL80211_CMD_UNEXPECTED_4ADDR_FRAME,
-
- NL80211_CMD_SET_NOACK_MAP,
-
- NL80211_CMD_CH_SWITCH_NOTIFY,
-
- NL80211_CMD_START_P2P_DEVICE,
- NL80211_CMD_STOP_P2P_DEVICE,
-
- NL80211_CMD_CONN_FAILED,
-
- NL80211_CMD_SET_MCAST_RATE,
-
- NL80211_CMD_SET_MAC_ACL,
-
- NL80211_CMD_RADAR_DETECT,
-
- NL80211_CMD_GET_PROTOCOL_FEATURES,
-
- NL80211_CMD_UPDATE_FT_IES,
- NL80211_CMD_FT_EVENT,
-
- NL80211_CMD_CRIT_PROTOCOL_START,
- NL80211_CMD_CRIT_PROTOCOL_STOP,
-
- NL80211_CMD_GET_COALESCE,
- NL80211_CMD_SET_COALESCE,
-
- NL80211_CMD_CHANNEL_SWITCH,
-
- NL80211_CMD_VENDOR,
-
- NL80211_CMD_SET_QOS_MAP,
-
- NL80211_CMD_ADD_TX_TS,
- NL80211_CMD_DEL_TX_TS,
-
- NL80211_CMD_GET_MPP,
-
- NL80211_CMD_JOIN_OCB,
- NL80211_CMD_LEAVE_OCB,
-
- NL80211_CMD_CH_SWITCH_STARTED_NOTIFY,
-
- NL80211_CMD_TDLS_CHANNEL_SWITCH,
- NL80211_CMD_TDLS_CANCEL_CHANNEL_SWITCH,
-
- NL80211_CMD_WIPHY_REG_CHANGE,
-
- NL80211_CMD_ABORT_SCAN,
-
- NL80211_CMD_START_NAN,
- NL80211_CMD_STOP_NAN,
- NL80211_CMD_ADD_NAN_FUNCTION,
- NL80211_CMD_DEL_NAN_FUNCTION,
- NL80211_CMD_CHANGE_NAN_CONFIG,
- NL80211_CMD_NAN_MATCH,
-
- NL80211_CMD_SET_MULTICAST_TO_UNICAST,
-
- NL80211_CMD_UPDATE_CONNECT_PARAMS,
-
- NL80211_CMD_SET_PMK,
- NL80211_CMD_DEL_PMK,
-
- NL80211_CMD_PORT_AUTHORIZED,
-
- NL80211_CMD_RELOAD_REGDB,
-
- NL80211_CMD_EXTERNAL_AUTH,
-
- NL80211_CMD_STA_OPMODE_CHANGED,
-
- NL80211_CMD_CONTROL_PORT_FRAME,
-
- /* add new commands above here */
-
- /* used to define NL80211_CMD_MAX below */
- __NL80211_CMD_AFTER_LAST,
- NL80211_CMD_MAX = __NL80211_CMD_AFTER_LAST - 1
-};
-
-/*
- * Allow user space programs to use #ifdef on new commands by defining them
- * here
- */
-#define NL80211_CMD_SET_BSS NL80211_CMD_SET_BSS
-#define NL80211_CMD_SET_MGMT_EXTRA_IE NL80211_CMD_SET_MGMT_EXTRA_IE
-#define NL80211_CMD_REG_CHANGE NL80211_CMD_REG_CHANGE
-#define NL80211_CMD_AUTHENTICATE NL80211_CMD_AUTHENTICATE
-#define NL80211_CMD_ASSOCIATE NL80211_CMD_ASSOCIATE
-#define NL80211_CMD_DEAUTHENTICATE NL80211_CMD_DEAUTHENTICATE
-#define NL80211_CMD_DISASSOCIATE NL80211_CMD_DISASSOCIATE
-#define NL80211_CMD_REG_BEACON_HINT NL80211_CMD_REG_BEACON_HINT
-
-#define NL80211_ATTR_FEATURE_FLAGS NL80211_ATTR_FEATURE_FLAGS
-
-/* source-level API compatibility */
-#define NL80211_CMD_GET_MESH_PARAMS NL80211_CMD_GET_MESH_CONFIG
-#define NL80211_CMD_SET_MESH_PARAMS NL80211_CMD_SET_MESH_CONFIG
-#define NL80211_MESH_SETUP_VENDOR_PATH_SEL_IE NL80211_MESH_SETUP_IE
-
- /**
- * DOC: SAE authentication offload
- *
- * By setting @NL80211_EXT_FEATURE_SAE_OFFLOAD flag drivers can indicate they
- * support offloading SAE authentication for WPA3-Personal networks. In
- * %NL80211_CMD_CONNECT the password for SAE should be specified using
- * %NL80211_ATTR_SAE_PASSWORD.
- */
-
-/**
- * enum nl80211_attrs - nl80211 netlink attributes
- *
- * @NL80211_ATTR_UNSPEC: unspecified attribute to catch errors
- *
- * @NL80211_ATTR_WIPHY: index of wiphy to operate on, cf.
- * /sys/class/ieee80211/<phyname>/index
- * @NL80211_ATTR_WIPHY_NAME: wiphy name (used for renaming)
- * @NL80211_ATTR_WIPHY_TXQ_PARAMS: a nested array of TX queue parameters
- * @NL80211_ATTR_WIPHY_FREQ: frequency of the selected channel in MHz,
- * defines the channel together with the (deprecated)
- * %NL80211_ATTR_WIPHY_CHANNEL_TYPE attribute or the attributes
- * %NL80211_ATTR_CHANNEL_WIDTH and if needed %NL80211_ATTR_CENTER_FREQ1
- * and %NL80211_ATTR_CENTER_FREQ2
- * @NL80211_ATTR_CHANNEL_WIDTH: u32 attribute containing one of the values
- * of &enum nl80211_chan_width, describing the channel width. See the
- * documentation of the enum for more information.
- * @NL80211_ATTR_CENTER_FREQ1: Center frequency of the first part of the
- * channel, used for anything but 20 MHz bandwidth
- * @NL80211_ATTR_CENTER_FREQ2: Center frequency of the second part of the
- * channel, used only for 80+80 MHz bandwidth
- * @NL80211_ATTR_WIPHY_CHANNEL_TYPE: included with NL80211_ATTR_WIPHY_FREQ
- * if HT20 or HT40 are to be used (i.e., HT disabled if not included):
- * NL80211_CHAN_NO_HT = HT not allowed (i.e., same as not including
- * this attribute)
- * NL80211_CHAN_HT20 = HT20 only
- * NL80211_CHAN_HT40MINUS = secondary channel is below the primary channel
- * NL80211_CHAN_HT40PLUS = secondary channel is above the primary channel
- * This attribute is now deprecated.
- * @NL80211_ATTR_WIPHY_RETRY_SHORT: TX retry limit for frames whose length is
- * less than or equal to the RTS threshold; allowed range: 1..255;
- * dot11ShortRetryLimit; u8
- * @NL80211_ATTR_WIPHY_RETRY_LONG: TX retry limit for frames whose length is
- * greater than the RTS threshold; allowed range: 1..255;
- * dot11ShortLongLimit; u8
- * @NL80211_ATTR_WIPHY_FRAG_THRESHOLD: fragmentation threshold, i.e., maximum
- * length in octets for frames; allowed range: 256..8000, disable
- * fragmentation with (u32)-1; dot11FragmentationThreshold; u32
- * @NL80211_ATTR_WIPHY_RTS_THRESHOLD: RTS threshold (TX frames with length
- * larger than or equal to this use RTS/CTS handshake); allowed range:
- * 0..65536, disable with (u32)-1; dot11RTSThreshold; u32
- * @NL80211_ATTR_WIPHY_COVERAGE_CLASS: Coverage Class as defined by IEEE 802.11
- * section 7.3.2.9; dot11CoverageClass; u8
- *
- * @NL80211_ATTR_IFINDEX: network interface index of the device to operate on
- * @NL80211_ATTR_IFNAME: network interface name
- * @NL80211_ATTR_IFTYPE: type of virtual interface, see &enum nl80211_iftype
- *
- * @NL80211_ATTR_WDEV: wireless device identifier, used for pseudo-devices
- * that don't have a netdev (u64)
- *
- * @NL80211_ATTR_MAC: MAC address (various uses)
- *
- * @NL80211_ATTR_KEY_DATA: (temporal) key data; for TKIP this consists of
- * 16 bytes encryption key followed by 8 bytes each for TX and RX MIC
- * keys
- * @NL80211_ATTR_KEY_IDX: key ID (u8, 0-3)
- * @NL80211_ATTR_KEY_CIPHER: key cipher suite (u32, as defined by IEEE 802.11
- * section 7.3.2.25.1, e.g. 0x000FAC04)
- * @NL80211_ATTR_KEY_SEQ: transmit key sequence number (IV/PN) for TKIP and
- * CCMP keys, each six bytes in little endian
- * @NL80211_ATTR_KEY_DEFAULT: Flag attribute indicating the key is default key
- * @NL80211_ATTR_KEY_DEFAULT_MGMT: Flag attribute indicating the key is the
- * default management key
- * @NL80211_ATTR_CIPHER_SUITES_PAIRWISE: For crypto settings for connect or
- * other commands, indicates which pairwise cipher suites are used
- * @NL80211_ATTR_CIPHER_SUITE_GROUP: For crypto settings for connect or
- * other commands, indicates which group cipher suite is used
- *
- * @NL80211_ATTR_BEACON_INTERVAL: beacon interval in TU
- * @NL80211_ATTR_DTIM_PERIOD: DTIM period for beaconing
- * @NL80211_ATTR_BEACON_HEAD: portion of the beacon before the TIM IE
- * @NL80211_ATTR_BEACON_TAIL: portion of the beacon after the TIM IE
- *
- * @NL80211_ATTR_STA_AID: Association ID for the station (u16)
- * @NL80211_ATTR_STA_FLAGS: flags, nested element with NLA_FLAG attributes of
- * &enum nl80211_sta_flags (deprecated, use %NL80211_ATTR_STA_FLAGS2)
- * @NL80211_ATTR_STA_LISTEN_INTERVAL: listen interval as defined by
- * IEEE 802.11 7.3.1.6 (u16).
- * @NL80211_ATTR_STA_SUPPORTED_RATES: supported rates, array of supported
- * rates as defined by IEEE 802.11 7.3.2.2 but without the length
- * restriction (at most %NL80211_MAX_SUPP_RATES).
- * @NL80211_ATTR_STA_VLAN: interface index of VLAN interface to move station
- * to, or the AP interface the station was originally added to to.
- * @NL80211_ATTR_STA_INFO: information about a station, part of station info
- * given for %NL80211_CMD_GET_STATION, nested attribute containing
- * info as possible, see &enum nl80211_sta_info.
- *
- * @NL80211_ATTR_WIPHY_BANDS: Information about an operating bands,
- * consisting of a nested array.
- *
- * @NL80211_ATTR_MESH_ID: mesh id (1-32 bytes).
- * @NL80211_ATTR_STA_PLINK_ACTION: action to perform on the mesh peer link
- * (see &enum nl80211_plink_action).
- * @NL80211_ATTR_MPATH_NEXT_HOP: MAC address of the next hop for a mesh path.
- * @NL80211_ATTR_MPATH_INFO: information about a mesh_path, part of mesh path
- * info given for %NL80211_CMD_GET_MPATH, nested attribute described at
- * &enum nl80211_mpath_info.
- *
- * @NL80211_ATTR_MNTR_FLAGS: flags, nested element with NLA_FLAG attributes of
- * &enum nl80211_mntr_flags.
- *
- * @NL80211_ATTR_REG_ALPHA2: an ISO-3166-alpha2 country code for which the
- * current regulatory domain should be set to or is already set to.
- * For example, 'CR', for Costa Rica. This attribute is used by the kernel
- * to query the CRDA to retrieve one regulatory domain. This attribute can
- * also be used by userspace to query the kernel for the currently set
- * regulatory domain. We chose an alpha2 as that is also used by the
- * IEEE-802.11 country information element to identify a country.
- * Users can also simply ask the wireless core to set regulatory domain
- * to a specific alpha2.
- * @NL80211_ATTR_REG_RULES: a nested array of regulatory domain regulatory
- * rules.
- *
- * @NL80211_ATTR_BSS_CTS_PROT: whether CTS protection is enabled (u8, 0 or 1)
- * @NL80211_ATTR_BSS_SHORT_PREAMBLE: whether short preamble is enabled
- * (u8, 0 or 1)
- * @NL80211_ATTR_BSS_SHORT_SLOT_TIME: whether short slot time enabled
- * (u8, 0 or 1)
- * @NL80211_ATTR_BSS_BASIC_RATES: basic rates, array of basic
- * rates in format defined by IEEE 802.11 7.3.2.2 but without the length
- * restriction (at most %NL80211_MAX_SUPP_RATES).
- *
- * @NL80211_ATTR_HT_CAPABILITY: HT Capability information element (from
- * association request when used with NL80211_CMD_NEW_STATION)
- *
- * @NL80211_ATTR_SUPPORTED_IFTYPES: nested attribute containing all
- * supported interface types, each a flag attribute with the number
- * of the interface mode.
- *
- * @NL80211_ATTR_MGMT_SUBTYPE: Management frame subtype for
- * %NL80211_CMD_SET_MGMT_EXTRA_IE.
- *
- * @NL80211_ATTR_IE: Information element(s) data (used, e.g., with
- * %NL80211_CMD_SET_MGMT_EXTRA_IE).
- *
- * @NL80211_ATTR_MAX_NUM_SCAN_SSIDS: number of SSIDs you can scan with
- * a single scan request, a wiphy attribute.
- * @NL80211_ATTR_MAX_NUM_SCHED_SCAN_SSIDS: number of SSIDs you can
- * scan with a single scheduled scan request, a wiphy attribute.
- * @NL80211_ATTR_MAX_SCAN_IE_LEN: maximum length of information elements
- * that can be added to a scan request
- * @NL80211_ATTR_MAX_SCHED_SCAN_IE_LEN: maximum length of information
- * elements that can be added to a scheduled scan request
- * @NL80211_ATTR_MAX_MATCH_SETS: maximum number of sets that can be
- * used with @NL80211_ATTR_SCHED_SCAN_MATCH, a wiphy attribute.
- *
- * @NL80211_ATTR_SCAN_FREQUENCIES: nested attribute with frequencies (in MHz)
- * @NL80211_ATTR_SCAN_SSIDS: nested attribute with SSIDs, leave out for passive
- * scanning and include a zero-length SSID (wildcard) for wildcard scan
- * @NL80211_ATTR_BSS: scan result BSS
- *
- * @NL80211_ATTR_REG_INITIATOR: indicates who requested the regulatory domain
- * currently in effect. This could be any of the %NL80211_REGDOM_SET_BY_*
- * @NL80211_ATTR_REG_TYPE: indicates the type of the regulatory domain currently
- * set. This can be one of the nl80211_reg_type (%NL80211_REGDOM_TYPE_*)
- *
- * @NL80211_ATTR_SUPPORTED_COMMANDS: wiphy attribute that specifies
- * an array of command numbers (i.e. a mapping index to command number)
- * that the driver for the given wiphy supports.
- *
- * @NL80211_ATTR_FRAME: frame data (binary attribute), including frame header
- * and body, but not FCS; used, e.g., with NL80211_CMD_AUTHENTICATE and
- * NL80211_CMD_ASSOCIATE events
- * @NL80211_ATTR_SSID: SSID (binary attribute, 0..32 octets)
- * @NL80211_ATTR_AUTH_TYPE: AuthenticationType, see &enum nl80211_auth_type,
- * represented as a u32
- * @NL80211_ATTR_REASON_CODE: ReasonCode for %NL80211_CMD_DEAUTHENTICATE and
- * %NL80211_CMD_DISASSOCIATE, u16
- *
- * @NL80211_ATTR_KEY_TYPE: Key Type, see &enum nl80211_key_type, represented as
- * a u32
- *
- * @NL80211_ATTR_FREQ_BEFORE: A channel which has suffered a regulatory change
- * due to considerations from a beacon hint. This attribute reflects
- * the state of the channel _before_ the beacon hint processing. This
- * attributes consists of a nested attribute containing
- * NL80211_FREQUENCY_ATTR_*
- * @NL80211_ATTR_FREQ_AFTER: A channel which has suffered a regulatory change
- * due to considerations from a beacon hint. This attribute reflects
- * the state of the channel _after_ the beacon hint processing. This
- * attributes consists of a nested attribute containing
- * NL80211_FREQUENCY_ATTR_*
- *
- * @NL80211_ATTR_CIPHER_SUITES: a set of u32 values indicating the supported
- * cipher suites
- *
- * @NL80211_ATTR_FREQ_FIXED: a flag indicating the IBSS should not try to look
- * for other networks on different channels
- *
- * @NL80211_ATTR_TIMED_OUT: a flag indicating than an operation timed out; this
- * is used, e.g., with %NL80211_CMD_AUTHENTICATE event
- *
- * @NL80211_ATTR_USE_MFP: Whether management frame protection (IEEE 802.11w) is
- * used for the association (&enum nl80211_mfp, represented as a u32);
- * this attribute can be used with %NL80211_CMD_ASSOCIATE and
- * %NL80211_CMD_CONNECT requests. %NL80211_MFP_OPTIONAL is not allowed for
- * %NL80211_CMD_ASSOCIATE since user space SME is expected and hence, it
- * must have decided whether to use management frame protection or not.
- * Setting %NL80211_MFP_OPTIONAL with a %NL80211_CMD_CONNECT request will
- * let the driver (or the firmware) decide whether to use MFP or not.
- *
- * @NL80211_ATTR_STA_FLAGS2: Attribute containing a
- * &struct nl80211_sta_flag_update.
- *
- * @NL80211_ATTR_CONTROL_PORT: A flag indicating whether user space controls
- * IEEE 802.1X port, i.e., sets/clears %NL80211_STA_FLAG_AUTHORIZED, in
- * station mode. If the flag is included in %NL80211_CMD_ASSOCIATE
- * request, the driver will assume that the port is unauthorized until
- * authorized by user space. Otherwise, port is marked authorized by
- * default in station mode.
- * @NL80211_ATTR_CONTROL_PORT_ETHERTYPE: A 16-bit value indicating the
- * ethertype that will be used for key negotiation. It can be
- * specified with the associate and connect commands. If it is not
- * specified, the value defaults to 0x888E (PAE, 802.1X). This
- * attribute is also used as a flag in the wiphy information to
- * indicate that protocols other than PAE are supported.
- * @NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT: When included along with
- * %NL80211_ATTR_CONTROL_PORT_ETHERTYPE, indicates that the custom
- * ethertype frames used for key negotiation must not be encrypted.
- * @NL80211_ATTR_CONTROL_PORT_OVER_NL80211: A flag indicating whether control
- * port frames (e.g. of type given in %NL80211_ATTR_CONTROL_PORT_ETHERTYPE)
- * will be sent directly to the network interface or sent via the NL80211
- * socket. If this attribute is missing, then legacy behavior of sending
- * control port frames directly to the network interface is used. If the
- * flag is included, then control port frames are sent over NL80211 instead
- * using %CMD_CONTROL_PORT_FRAME. If control port routing over NL80211 is
- * to be used then userspace must also use the %NL80211_ATTR_SOCKET_OWNER
- * flag.
- *
- * @NL80211_ATTR_TESTDATA: Testmode data blob, passed through to the driver.
- * We recommend using nested, driver-specific attributes within this.
- *
- * @NL80211_ATTR_DISCONNECTED_BY_AP: A flag indicating that the DISCONNECT
- * event was due to the AP disconnecting the station, and not due to
- * a local disconnect request.
- * @NL80211_ATTR_STATUS_CODE: StatusCode for the %NL80211_CMD_CONNECT
- * event (u16)
- * @NL80211_ATTR_PRIVACY: Flag attribute, used with connect(), indicating
- * that protected APs should be used. This is also used with NEW_BEACON to
- * indicate that the BSS is to use protection.
- *
- * @NL80211_ATTR_CIPHERS_PAIRWISE: Used with CONNECT, ASSOCIATE, and NEW_BEACON
- * to indicate which unicast key ciphers will be used with the connection
- * (an array of u32).
- * @NL80211_ATTR_CIPHER_GROUP: Used with CONNECT, ASSOCIATE, and NEW_BEACON to
- * indicate which group key cipher will be used with the connection (a
- * u32).
- * @NL80211_ATTR_WPA_VERSIONS: Used with CONNECT, ASSOCIATE, and NEW_BEACON to
- * indicate which WPA version(s) the AP we want to associate with is using
- * (a u32 with flags from &enum nl80211_wpa_versions).
- * @NL80211_ATTR_AKM_SUITES: Used with CONNECT, ASSOCIATE, and NEW_BEACON to
- * indicate which key management algorithm(s) to use (an array of u32).
- *
- * @NL80211_ATTR_REQ_IE: (Re)association request information elements as
- * sent out by the card, for ROAM and successful CONNECT events.
- * @NL80211_ATTR_RESP_IE: (Re)association response information elements as
- * sent by peer, for ROAM and successful CONNECT events.
- *
- * @NL80211_ATTR_PREV_BSSID: previous BSSID, to be used in ASSOCIATE and CONNECT
- * commands to specify a request to reassociate within an ESS, i.e., to use
- * Reassociate Request frame (with the value of this attribute in the
- * Current AP address field) instead of Association Request frame which is
- * used for the initial association to an ESS.
- *
- * @NL80211_ATTR_KEY: key information in a nested attribute with
- * %NL80211_KEY_* sub-attributes
- * @NL80211_ATTR_KEYS: array of keys for static WEP keys for connect()
- * and join_ibss(), key information is in a nested attribute each
- * with %NL80211_KEY_* sub-attributes
- *
- * @NL80211_ATTR_PID: Process ID of a network namespace.
- *
- * @NL80211_ATTR_GENERATION: Used to indicate consistent snapshots for
- * dumps. This number increases whenever the object list being
- * dumped changes, and as such userspace can verify that it has
- * obtained a complete and consistent snapshot by verifying that
- * all dump messages contain the same generation number. If it
- * changed then the list changed and the dump should be repeated
- * completely from scratch.
- *
- * @NL80211_ATTR_4ADDR: Use 4-address frames on a virtual interface
- *
- * @NL80211_ATTR_SURVEY_INFO: survey information about a channel, part of
- * the survey response for %NL80211_CMD_GET_SURVEY, nested attribute
- * containing info as possible, see &enum survey_info.
- *
- * @NL80211_ATTR_PMKID: PMK material for PMKSA caching.
- * @NL80211_ATTR_MAX_NUM_PMKIDS: maximum number of PMKIDs a firmware can
- * cache, a wiphy attribute.
- *
- * @NL80211_ATTR_DURATION: Duration of an operation in milliseconds, u32.
- * @NL80211_ATTR_MAX_REMAIN_ON_CHANNEL_DURATION: Device attribute that
- * specifies the maximum duration that can be requested with the
- * remain-on-channel operation, in milliseconds, u32.
- *
- * @NL80211_ATTR_COOKIE: Generic 64-bit cookie to identify objects.
- *
- * @NL80211_ATTR_TX_RATES: Nested set of attributes
- * (enum nl80211_tx_rate_attributes) describing TX rates per band. The
- * enum nl80211_band value is used as the index (nla_type() of the nested
- * data. If a band is not included, it will be configured to allow all
- * rates based on negotiated supported rates information. This attribute
- * is used with %NL80211_CMD_SET_TX_BITRATE_MASK and with starting AP,
- * and joining mesh networks (not IBSS yet). In the later case, it must
- * specify just a single bitrate, which is to be used for the beacon.
- * The driver must also specify support for this with the extended
- * features NL80211_EXT_FEATURE_BEACON_RATE_LEGACY,
- * NL80211_EXT_FEATURE_BEACON_RATE_HT and
- * NL80211_EXT_FEATURE_BEACON_RATE_VHT.
- *
- * @NL80211_ATTR_FRAME_MATCH: A binary attribute which typically must contain
- * at least one byte, currently used with @NL80211_CMD_REGISTER_FRAME.
- * @NL80211_ATTR_FRAME_TYPE: A u16 indicating the frame type/subtype for the
- * @NL80211_CMD_REGISTER_FRAME command.
- * @NL80211_ATTR_TX_FRAME_TYPES: wiphy capability attribute, which is a
- * nested attribute of %NL80211_ATTR_FRAME_TYPE attributes, containing
- * information about which frame types can be transmitted with
- * %NL80211_CMD_FRAME.
- * @NL80211_ATTR_RX_FRAME_TYPES: wiphy capability attribute, which is a
- * nested attribute of %NL80211_ATTR_FRAME_TYPE attributes, containing
- * information about which frame types can be registered for RX.
- *
- * @NL80211_ATTR_ACK: Flag attribute indicating that the frame was
- * acknowledged by the recipient.
- *
- * @NL80211_ATTR_PS_STATE: powersave state, using &enum nl80211_ps_state values.
- *
- * @NL80211_ATTR_CQM: connection quality monitor configuration in a
- * nested attribute with %NL80211_ATTR_CQM_* sub-attributes.
- *
- * @NL80211_ATTR_LOCAL_STATE_CHANGE: Flag attribute to indicate that a command
- * is requesting a local authentication/association state change without
- * invoking actual management frame exchange. This can be used with
- * NL80211_CMD_AUTHENTICATE, NL80211_CMD_DEAUTHENTICATE,
- * NL80211_CMD_DISASSOCIATE.
- *
- * @NL80211_ATTR_AP_ISOLATE: (AP mode) Do not forward traffic between stations
- * connected to this BSS.
- *
- * @NL80211_ATTR_WIPHY_TX_POWER_SETTING: Transmit power setting type. See
- * &enum nl80211_tx_power_setting for possible values.
- * @NL80211_ATTR_WIPHY_TX_POWER_LEVEL: Transmit power level in signed mBm units.
- * This is used in association with @NL80211_ATTR_WIPHY_TX_POWER_SETTING
- * for non-automatic settings.
- *
- * @NL80211_ATTR_SUPPORT_IBSS_RSN: The device supports IBSS RSN, which mostly
- * means support for per-station GTKs.
- *
- * @NL80211_ATTR_WIPHY_ANTENNA_TX: Bitmap of allowed antennas for transmitting.
- * This can be used to mask out antennas which are not attached or should
- * not be used for transmitting. If an antenna is not selected in this
- * bitmap the hardware is not allowed to transmit on this antenna.
- *
- * Each bit represents one antenna, starting with antenna 1 at the first
- * bit. Depending on which antennas are selected in the bitmap, 802.11n
- * drivers can derive which chainmasks to use (if all antennas belonging to
- * a particular chain are disabled this chain should be disabled) and if
- * a chain has diversity antennas wether diversity should be used or not.
- * HT capabilities (STBC, TX Beamforming, Antenna selection) can be
- * derived from the available chains after applying the antenna mask.
- * Non-802.11n drivers can derive wether to use diversity or not.
- * Drivers may reject configurations or RX/TX mask combinations they cannot
- * support by returning -EINVAL.
- *
- * @NL80211_ATTR_WIPHY_ANTENNA_RX: Bitmap of allowed antennas for receiving.
- * This can be used to mask out antennas which are not attached or should
- * not be used for receiving. If an antenna is not selected in this bitmap
- * the hardware should not be configured to receive on this antenna.
- * For a more detailed description see @NL80211_ATTR_WIPHY_ANTENNA_TX.
- *
- * @NL80211_ATTR_WIPHY_ANTENNA_AVAIL_TX: Bitmap of antennas which are available
- * for configuration as TX antennas via the above parameters.
- *
- * @NL80211_ATTR_WIPHY_ANTENNA_AVAIL_RX: Bitmap of antennas which are available
- * for configuration as RX antennas via the above parameters.
- *
- * @NL80211_ATTR_MCAST_RATE: Multicast tx rate (in 100 kbps) for IBSS
- *
- * @NL80211_ATTR_OFFCHANNEL_TX_OK: For management frame TX, the frame may be
- * transmitted on another channel when the channel given doesn't match
- * the current channel. If the current channel doesn't match and this
- * flag isn't set, the frame will be rejected. This is also used as an
- * nl80211 capability flag.
- *
- * @NL80211_ATTR_BSS_HT_OPMODE: HT operation mode (u16)
- *
- * @NL80211_ATTR_KEY_DEFAULT_TYPES: A nested attribute containing flags
- * attributes, specifying what a key should be set as default as.
- * See &enum nl80211_key_default_types.
- *
- * @NL80211_ATTR_MESH_SETUP: Optional mesh setup parameters. These cannot be
- * changed once the mesh is active.
- * @NL80211_ATTR_MESH_CONFIG: Mesh configuration parameters, a nested attribute
- * containing attributes from &enum nl80211_meshconf_params.
- * @NL80211_ATTR_SUPPORT_MESH_AUTH: Currently, this means the underlying driver
- * allows auth frames in a mesh to be passed to userspace for processing via
- * the @NL80211_MESH_SETUP_USERSPACE_AUTH flag.
- * @NL80211_ATTR_STA_PLINK_STATE: The state of a mesh peer link as defined in
- * &enum nl80211_plink_state. Used when userspace is driving the peer link
- * management state machine. @NL80211_MESH_SETUP_USERSPACE_AMPE or
- * @NL80211_MESH_SETUP_USERSPACE_MPM must be enabled.
- *
- * @NL80211_ATTR_WOWLAN_TRIGGERS_SUPPORTED: indicates, as part of the wiphy
- * capabilities, the supported WoWLAN triggers
- * @NL80211_ATTR_WOWLAN_TRIGGERS: used by %NL80211_CMD_SET_WOWLAN to
- * indicate which WoW triggers should be enabled. This is also
- * used by %NL80211_CMD_GET_WOWLAN to get the currently enabled WoWLAN
- * triggers.
- *
- * @NL80211_ATTR_SCHED_SCAN_INTERVAL: Interval between scheduled scan
- * cycles, in msecs.
- *
- * @NL80211_ATTR_SCHED_SCAN_MATCH: Nested attribute with one or more
- * sets of attributes to match during scheduled scans. Only BSSs
- * that match any of the sets will be reported. These are
- * pass-thru filter rules.
- * For a match to succeed, the BSS must match all attributes of a
- * set. Since not every hardware supports matching all types of
- * attributes, there is no guarantee that the reported BSSs are
- * fully complying with the match sets and userspace needs to be
- * able to ignore them by itself.
- * Thus, the implementation is somewhat hardware-dependent, but
- * this is only an optimization and the userspace application
- * needs to handle all the non-filtered results anyway.
- * If the match attributes don't make sense when combined with
- * the values passed in @NL80211_ATTR_SCAN_SSIDS (eg. if an SSID
- * is included in the probe request, but the match attributes
- * will never let it go through), -EINVAL may be returned.
- * If ommited, no filtering is done.
- *
- * @NL80211_ATTR_INTERFACE_COMBINATIONS: Nested attribute listing the supported
- * interface combinations. In each nested item, it contains attributes
- * defined in &enum nl80211_if_combination_attrs.
- * @NL80211_ATTR_SOFTWARE_IFTYPES: Nested attribute (just like
- * %NL80211_ATTR_SUPPORTED_IFTYPES) containing the interface types that
- * are managed in software: interfaces of these types aren't subject to
- * any restrictions in their number or combinations.
- *
- * @NL80211_ATTR_REKEY_DATA: nested attribute containing the information
- * necessary for GTK rekeying in the device, see &enum nl80211_rekey_data.
- *
- * @NL80211_ATTR_SCAN_SUPP_RATES: rates per to be advertised as supported in scan,
- * nested array attribute containing an entry for each band, with the entry
- * being a list of supported rates as defined by IEEE 802.11 7.3.2.2 but
- * without the length restriction (at most %NL80211_MAX_SUPP_RATES).
- *
- * @NL80211_ATTR_HIDDEN_SSID: indicates whether SSID is to be hidden from Beacon
- * and Probe Response (when response to wildcard Probe Request); see
- * &enum nl80211_hidden_ssid, represented as a u32
- *
- * @NL80211_ATTR_IE_PROBE_RESP: Information element(s) for Probe Response frame.
- * This is used with %NL80211_CMD_NEW_BEACON and %NL80211_CMD_SET_BEACON to
- * provide extra IEs (e.g., WPS/P2P IE) into Probe Response frames when the
- * driver (or firmware) replies to Probe Request frames.
- * @NL80211_ATTR_IE_ASSOC_RESP: Information element(s) for (Re)Association
- * Response frames. This is used with %NL80211_CMD_NEW_BEACON and
- * %NL80211_CMD_SET_BEACON to provide extra IEs (e.g., WPS/P2P IE) into
- * (Re)Association Response frames when the driver (or firmware) replies to
- * (Re)Association Request frames.
- *
- * @NL80211_ATTR_STA_WME: Nested attribute containing the wme configuration
- * of the station, see &enum nl80211_sta_wme_attr.
- * @NL80211_ATTR_SUPPORT_AP_UAPSD: the device supports uapsd when working
- * as AP.
- *
- * @NL80211_ATTR_ROAM_SUPPORT: Indicates whether the firmware is capable of
- * roaming to another AP in the same ESS if the signal lever is low.
- *
- * @NL80211_ATTR_PMKSA_CANDIDATE: Nested attribute containing the PMKSA caching
- * candidate information, see &enum nl80211_pmksa_candidate_attr.
- *
- * @NL80211_ATTR_TX_NO_CCK_RATE: Indicates whether to use CCK rate or not
- * for management frames transmission. In order to avoid p2p probe/action
- * frames are being transmitted at CCK rate in 2GHz band, the user space
- * applications use this attribute.
- * This attribute is used with %NL80211_CMD_TRIGGER_SCAN and
- * %NL80211_CMD_FRAME commands.
- *
- * @NL80211_ATTR_TDLS_ACTION: Low level TDLS action code (e.g. link setup
- * request, link setup confirm, link teardown, etc.). Values are
- * described in the TDLS (802.11z) specification.
- * @NL80211_ATTR_TDLS_DIALOG_TOKEN: Non-zero token for uniquely identifying a
- * TDLS conversation between two devices.
- * @NL80211_ATTR_TDLS_OPERATION: High level TDLS operation; see
- * &enum nl80211_tdls_operation, represented as a u8.
- * @NL80211_ATTR_TDLS_SUPPORT: A flag indicating the device can operate
- * as a TDLS peer sta.
- * @NL80211_ATTR_TDLS_EXTERNAL_SETUP: The TDLS discovery/setup and teardown
- * procedures should be performed by sending TDLS packets via
- * %NL80211_CMD_TDLS_MGMT. Otherwise %NL80211_CMD_TDLS_OPER should be
- * used for asking the driver to perform a TDLS operation.
- *
- * @NL80211_ATTR_DEVICE_AP_SME: This u32 attribute may be listed for devices
- * that have AP support to indicate that they have the AP SME integrated
- * with support for the features listed in this attribute, see
- * &enum nl80211_ap_sme_features.
- *
- * @NL80211_ATTR_DONT_WAIT_FOR_ACK: Used with %NL80211_CMD_FRAME, this tells
- * the driver to not wait for an acknowledgement. Note that due to this,
- * it will also not give a status callback nor return a cookie. This is
- * mostly useful for probe responses to save airtime.
- *
- * @NL80211_ATTR_FEATURE_FLAGS: This u32 attribute contains flags from
- * &enum nl80211_feature_flags and is advertised in wiphy information.
- * @NL80211_ATTR_PROBE_RESP_OFFLOAD: Indicates that the HW responds to probe
- * requests while operating in AP-mode.
- * This attribute holds a bitmap of the supported protocols for
- * offloading (see &enum nl80211_probe_resp_offload_support_attr).
- *
- * @NL80211_ATTR_PROBE_RESP: Probe Response template data. Contains the entire
- * probe-response frame. The DA field in the 802.11 header is zero-ed out,
- * to be filled by the FW.
- * @NL80211_ATTR_DISABLE_HT: Force HT capable interfaces to disable
- * this feature. Currently, only supported in mac80211 drivers.
- * @NL80211_ATTR_HT_CAPABILITY_MASK: Specify which bits of the
- * ATTR_HT_CAPABILITY to which attention should be paid.
- * Currently, only mac80211 NICs support this feature.
- * The values that may be configured are:
- * MCS rates, MAX-AMSDU, HT-20-40 and HT_CAP_SGI_40
- * AMPDU density and AMPDU factor.
- * All values are treated as suggestions and may be ignored
- * by the driver as required. The actual values may be seen in
- * the station debugfs ht_caps file.
- *
- * @NL80211_ATTR_DFS_REGION: region for regulatory rules which this country
- * abides to when initiating radiation on DFS channels. A country maps
- * to one DFS region.
- *
- * @NL80211_ATTR_NOACK_MAP: This u16 bitmap contains the No Ack Policy of
- * up to 16 TIDs.
- *
- * @NL80211_ATTR_INACTIVITY_TIMEOUT: timeout value in seconds, this can be
- * used by the drivers which has MLME in firmware and does not have support
- * to report per station tx/rx activity to free up the staion entry from
- * the list. This needs to be used when the driver advertises the
- * capability to timeout the stations.
- *
- * @NL80211_ATTR_RX_SIGNAL_DBM: signal strength in dBm (as a 32-bit int);
- * this attribute is (depending on the driver capabilities) added to
- * received frames indicated with %NL80211_CMD_FRAME.
- *
- * @NL80211_ATTR_BG_SCAN_PERIOD: Background scan period in seconds
- * or 0 to disable background scan.
- *
- * @NL80211_ATTR_USER_REG_HINT_TYPE: type of regulatory hint passed from
- * userspace. If unset it is assumed the hint comes directly from
- * a user. If set code could specify exactly what type of source
- * was used to provide the hint. For the different types of
- * allowed user regulatory hints see nl80211_user_reg_hint_type.
- *
- * @NL80211_ATTR_CONN_FAILED_REASON: The reason for which AP has rejected
- * the connection request from a station. nl80211_connect_failed_reason
- * enum has different reasons of connection failure.
- *
- * @NL80211_ATTR_AUTH_DATA: Fields and elements in Authentication frames.
- * This contains the authentication frame body (non-IE and IE data),
- * excluding the Authentication algorithm number, i.e., starting at the
- * Authentication transaction sequence number field. It is used with
- * authentication algorithms that need special fields to be added into
- * the frames (SAE and FILS). Currently, only the SAE cases use the
- * initial two fields (Authentication transaction sequence number and
- * Status code). However, those fields are included in the attribute data
- * for all authentication algorithms to keep the attribute definition
- * consistent.
- *
- * @NL80211_ATTR_VHT_CAPABILITY: VHT Capability information element (from
- * association request when used with NL80211_CMD_NEW_STATION)
- *
- * @NL80211_ATTR_SCAN_FLAGS: scan request control flags (u32)
- *
- * @NL80211_ATTR_P2P_CTWINDOW: P2P GO Client Traffic Window (u8), used with
- * the START_AP and SET_BSS commands
- * @NL80211_ATTR_P2P_OPPPS: P2P GO opportunistic PS (u8), used with the
- * START_AP and SET_BSS commands. This can have the values 0 or 1;
- * if not given in START_AP 0 is assumed, if not given in SET_BSS
- * no change is made.
- *
- * @NL80211_ATTR_LOCAL_MESH_POWER_MODE: local mesh STA link-specific power mode
- * defined in &enum nl80211_mesh_power_mode.
- *
- * @NL80211_ATTR_ACL_POLICY: ACL policy, see &enum nl80211_acl_policy,
- * carried in a u32 attribute
- *
- * @NL80211_ATTR_MAC_ADDRS: Array of nested MAC addresses, used for
- * MAC ACL.
- *
- * @NL80211_ATTR_MAC_ACL_MAX: u32 attribute to advertise the maximum
- * number of MAC addresses that a device can support for MAC
- * ACL.
- *
- * @NL80211_ATTR_RADAR_EVENT: Type of radar event for notification to userspace,
- * contains a value of enum nl80211_radar_event (u32).
- *
- * @NL80211_ATTR_EXT_CAPA: 802.11 extended capabilities that the kernel driver
- * has and handles. The format is the same as the IE contents. See
- * 802.11-2012 8.4.2.29 for more information.
- * @NL80211_ATTR_EXT_CAPA_MASK: Extended capabilities that the kernel driver
- * has set in the %NL80211_ATTR_EXT_CAPA value, for multibit fields.
- *
- * @NL80211_ATTR_STA_CAPABILITY: Station capabilities (u16) are advertised to
- * the driver, e.g., to enable TDLS power save (PU-APSD).
- *
- * @NL80211_ATTR_STA_EXT_CAPABILITY: Station extended capabilities are
- * advertised to the driver, e.g., to enable TDLS off channel operations
- * and PU-APSD.
- *
- * @NL80211_ATTR_PROTOCOL_FEATURES: global nl80211 feature flags, see
- * &enum nl80211_protocol_features, the attribute is a u32.
- *
- * @NL80211_ATTR_SPLIT_WIPHY_DUMP: flag attribute, userspace supports
- * receiving the data for a single wiphy split across multiple
- * messages, given with wiphy dump message
- *
- * @NL80211_ATTR_MDID: Mobility Domain Identifier
- *
- * @NL80211_ATTR_IE_RIC: Resource Information Container Information
- * Element
- *
- * @NL80211_ATTR_CRIT_PROT_ID: critical protocol identifier requiring increased
- * reliability, see &enum nl80211_crit_proto_id (u16).
- * @NL80211_ATTR_MAX_CRIT_PROT_DURATION: duration in milliseconds in which
- * the connection should have increased reliability (u16).
- *
- * @NL80211_ATTR_PEER_AID: Association ID for the peer TDLS station (u16).
- * This is similar to @NL80211_ATTR_STA_AID but with a difference of being
- * allowed to be used with the first @NL80211_CMD_SET_STATION command to
- * update a TDLS peer STA entry.
- *
- * @NL80211_ATTR_COALESCE_RULE: Coalesce rule information.
- *
- * @NL80211_ATTR_CH_SWITCH_COUNT: u32 attribute specifying the number of TBTT's
- * until the channel switch event.
- * @NL80211_ATTR_CH_SWITCH_BLOCK_TX: flag attribute specifying that transmission
- * must be blocked on the current channel (before the channel switch
- * operation).
- * @NL80211_ATTR_CSA_IES: Nested set of attributes containing the IE information
- * for the time while performing a channel switch.
- * @NL80211_ATTR_CSA_C_OFF_BEACON: An array of offsets (u16) to the channel
- * switch counters in the beacons tail (%NL80211_ATTR_BEACON_TAIL).
- * @NL80211_ATTR_CSA_C_OFF_PRESP: An array of offsets (u16) to the channel
- * switch counters in the probe response (%NL80211_ATTR_PROBE_RESP).
- *
- * @NL80211_ATTR_RXMGMT_FLAGS: flags for nl80211_send_mgmt(), u32.
- * As specified in the &enum nl80211_rxmgmt_flags.
- *
- * @NL80211_ATTR_STA_SUPPORTED_CHANNELS: array of supported channels.
- *
- * @NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES: array of supported
- * supported operating classes.
- *
- * @NL80211_ATTR_HANDLE_DFS: A flag indicating whether user space
- * controls DFS operation in IBSS mode. If the flag is included in
- * %NL80211_CMD_JOIN_IBSS request, the driver will allow use of DFS
- * channels and reports radar events to userspace. Userspace is required
- * to react to radar events, e.g. initiate a channel switch or leave the
- * IBSS network.
- *
- * @NL80211_ATTR_SUPPORT_5_MHZ: A flag indicating that the device supports
- * 5 MHz channel bandwidth.
- * @NL80211_ATTR_SUPPORT_10_MHZ: A flag indicating that the device supports
- * 10 MHz channel bandwidth.
- *
- * @NL80211_ATTR_OPMODE_NOTIF: Operating mode field from Operating Mode
- * Notification Element based on association request when used with
- * %NL80211_CMD_NEW_STATION or %NL80211_CMD_SET_STATION (only when
- * %NL80211_FEATURE_FULL_AP_CLIENT_STATE is supported, or with TDLS);
- * u8 attribute.
- *
- * @NL80211_ATTR_VENDOR_ID: The vendor ID, either a 24-bit OUI or, if
- * %NL80211_VENDOR_ID_IS_LINUX is set, a special Linux ID (not used yet)
- * @NL80211_ATTR_VENDOR_SUBCMD: vendor sub-command
- * @NL80211_ATTR_VENDOR_DATA: data for the vendor command, if any; this
- * attribute is also used for vendor command feature advertisement
- * @NL80211_ATTR_VENDOR_EVENTS: used for event list advertising in the wiphy
- * info, containing a nested array of possible events
- *
- * @NL80211_ATTR_QOS_MAP: IP DSCP mapping for Interworking QoS mapping. This
- * data is in the format defined for the payload of the QoS Map Set element
- * in IEEE Std 802.11-2012, 8.4.2.97.
- *
- * @NL80211_ATTR_MAC_HINT: MAC address recommendation as initial BSS
- * @NL80211_ATTR_WIPHY_FREQ_HINT: frequency of the recommended initial BSS
- *
- * @NL80211_ATTR_MAX_AP_ASSOC_STA: Device attribute that indicates how many
- * associated stations are supported in AP mode (including P2P GO); u32.
- * Since drivers may not have a fixed limit on the maximum number (e.g.,
- * other concurrent operations may affect this), drivers are allowed to
- * advertise values that cannot always be met. In such cases, an attempt
- * to add a new station entry with @NL80211_CMD_NEW_STATION may fail.
- *
- * @NL80211_ATTR_CSA_C_OFFSETS_TX: An array of csa counter offsets (u16) which
- * should be updated when the frame is transmitted.
- * @NL80211_ATTR_MAX_CSA_COUNTERS: U8 attribute used to advertise the maximum
- * supported number of csa counters.
- *
- * @NL80211_ATTR_TDLS_PEER_CAPABILITY: flags for TDLS peer capabilities, u32.
- * As specified in the &enum nl80211_tdls_peer_capability.
- *
- * @NL80211_ATTR_SOCKET_OWNER: Flag attribute, if set during interface
- * creation then the new interface will be owned by the netlink socket
- * that created it and will be destroyed when the socket is closed.
- * If set during scheduled scan start then the new scan req will be
- * owned by the netlink socket that created it and the scheduled scan will
- * be stopped when the socket is closed.
- * If set during configuration of regulatory indoor operation then the
- * regulatory indoor configuration would be owned by the netlink socket
- * that configured the indoor setting, and the indoor operation would be
- * cleared when the socket is closed.
- * If set during NAN interface creation, the interface will be destroyed
- * if the socket is closed just like any other interface. Moreover, NAN
- * notifications will be sent in unicast to that socket. Without this
- * attribute, the notifications will be sent to the %NL80211_MCGRP_NAN
- * multicast group.
- * If set during %NL80211_CMD_ASSOCIATE or %NL80211_CMD_CONNECT the
- * station will deauthenticate when the socket is closed.
- * If set during %NL80211_CMD_JOIN_IBSS the IBSS will be automatically
- * torn down when the socket is closed.
- * If set during %NL80211_CMD_JOIN_MESH the mesh setup will be
- * automatically torn down when the socket is closed.
- * If set during %NL80211_CMD_START_AP the AP will be automatically
- * disabled when the socket is closed.
- *
- * @NL80211_ATTR_TDLS_INITIATOR: flag attribute indicating the current end is
- * the TDLS link initiator.
- *
- * @NL80211_ATTR_USE_RRM: flag for indicating whether the current connection
- * shall support Radio Resource Measurements (11k). This attribute can be
- * used with %NL80211_CMD_ASSOCIATE and %NL80211_CMD_CONNECT requests.
- * User space applications are expected to use this flag only if the
- * underlying device supports these minimal RRM features:
- * %NL80211_FEATURE_DS_PARAM_SET_IE_IN_PROBES,
- * %NL80211_FEATURE_QUIET,
- * Or, if global RRM is supported, see:
- * %NL80211_EXT_FEATURE_RRM
- * If this flag is used, driver must add the Power Capabilities IE to the
- * association request. In addition, it must also set the RRM capability
- * flag in the association request's Capability Info field.
- *
- * @NL80211_ATTR_WIPHY_DYN_ACK: flag attribute used to enable ACK timeout
- * estimation algorithm (dynack). In order to activate dynack
- * %NL80211_FEATURE_ACKTO_ESTIMATION feature flag must be set by lower
- * drivers to indicate dynack capability. Dynack is automatically disabled
- * setting valid value for coverage class.
- *
- * @NL80211_ATTR_TSID: a TSID value (u8 attribute)
- * @NL80211_ATTR_USER_PRIO: user priority value (u8 attribute)
- * @NL80211_ATTR_ADMITTED_TIME: admitted time in units of 32 microseconds
- * (per second) (u16 attribute)
- *
- * @NL80211_ATTR_SMPS_MODE: SMPS mode to use (ap mode). see
- * &enum nl80211_smps_mode.
- *
- * @NL80211_ATTR_OPER_CLASS: operating class
- *
- * @NL80211_ATTR_MAC_MASK: MAC address mask
- *
- * @NL80211_ATTR_WIPHY_SELF_MANAGED_REG: flag attribute indicating this device
- * is self-managing its regulatory information and any regulatory domain
- * obtained from it is coming from the device's wiphy and not the global
- * cfg80211 regdomain.
- *
- * @NL80211_ATTR_EXT_FEATURES: extended feature flags contained in a byte
- * array. The feature flags are identified by their bit index (see &enum
- * nl80211_ext_feature_index). The bit index is ordered starting at the
- * least-significant bit of the first byte in the array, ie. bit index 0
- * is located at bit 0 of byte 0. bit index 25 would be located at bit 1
- * of byte 3 (u8 array).
- *
- * @NL80211_ATTR_SURVEY_RADIO_STATS: Request overall radio statistics to be
- * returned along with other survey data. If set, @NL80211_CMD_GET_SURVEY
- * may return a survey entry without a channel indicating global radio
- * statistics (only some values are valid and make sense.)
- * For devices that don't return such an entry even then, the information
- * should be contained in the result as the sum of the respective counters
- * over all channels.
- *
- * @NL80211_ATTR_SCHED_SCAN_DELAY: delay before the first cycle of a
- * scheduled scan is started. Or the delay before a WoWLAN
- * net-detect scan is started, counting from the moment the
- * system is suspended. This value is a u32, in seconds.
-
- * @NL80211_ATTR_REG_INDOOR: flag attribute, if set indicates that the device
- * is operating in an indoor environment.
- *
- * @NL80211_ATTR_MAX_NUM_SCHED_SCAN_PLANS: maximum number of scan plans for
- * scheduled scan supported by the device (u32), a wiphy attribute.
- * @NL80211_ATTR_MAX_SCAN_PLAN_INTERVAL: maximum interval (in seconds) for
- * a scan plan (u32), a wiphy attribute.
- * @NL80211_ATTR_MAX_SCAN_PLAN_ITERATIONS: maximum number of iterations in
- * a scan plan (u32), a wiphy attribute.
- * @NL80211_ATTR_SCHED_SCAN_PLANS: a list of scan plans for scheduled scan.
- * Each scan plan defines the number of scan iterations and the interval
- * between scans. The last scan plan will always run infinitely,
- * thus it must not specify the number of iterations, only the interval
- * between scans. The scan plans are executed sequentially.
- * Each scan plan is a nested attribute of &enum nl80211_sched_scan_plan.
- * @NL80211_ATTR_PBSS: flag attribute. If set it means operate
- * in a PBSS. Specified in %NL80211_CMD_CONNECT to request
- * connecting to a PCP, and in %NL80211_CMD_START_AP to start
- * a PCP instead of AP. Relevant for DMG networks only.
- * @NL80211_ATTR_BSS_SELECT: nested attribute for driver supporting the
- * BSS selection feature. When used with %NL80211_CMD_GET_WIPHY it contains
- * attributes according &enum nl80211_bss_select_attr to indicate what
- * BSS selection behaviours are supported. When used with %NL80211_CMD_CONNECT
- * it contains the behaviour-specific attribute containing the parameters for
- * BSS selection to be done by driver and/or firmware.
- *
- * @NL80211_ATTR_STA_SUPPORT_P2P_PS: whether P2P PS mechanism supported
- * or not. u8, one of the values of &enum nl80211_sta_p2p_ps_status
- *
- * @NL80211_ATTR_PAD: attribute used for padding for 64-bit alignment
- *
- * @NL80211_ATTR_IFTYPE_EXT_CAPA: Nested attribute of the following attributes:
- * %NL80211_ATTR_IFTYPE, %NL80211_ATTR_EXT_CAPA,
- * %NL80211_ATTR_EXT_CAPA_MASK, to specify the extended capabilities per
- * interface type.
- *
- * @NL80211_ATTR_MU_MIMO_GROUP_DATA: array of 24 bytes that defines a MU-MIMO
- * groupID for monitor mode.
- * The first 8 bytes are a mask that defines the membership in each
- * group (there are 64 groups, group 0 and 63 are reserved),
- * each bit represents a group and set to 1 for being a member in
- * that group and 0 for not being a member.
- * The remaining 16 bytes define the position in each group: 2 bits for
- * each group.
- * (smaller group numbers represented on most significant bits and bigger
- * group numbers on least significant bits.)
- * This attribute is used only if all interfaces are in monitor mode.
- * Set this attribute in order to monitor packets using the given MU-MIMO
- * groupID data.
- * to turn off that feature set all the bits of the groupID to zero.
- * @NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR: mac address for the sniffer to follow
- * when using MU-MIMO air sniffer.
- * to turn that feature off set an invalid mac address
- * (e.g. FF:FF:FF:FF:FF:FF)
- *
- * @NL80211_ATTR_SCAN_START_TIME_TSF: The time at which the scan was actually
- * started (u64). The time is the TSF of the BSS the interface that
- * requested the scan is connected to (if available, otherwise this
- * attribute must not be included).
- * @NL80211_ATTR_SCAN_START_TIME_TSF_BSSID: The BSS according to which
- * %NL80211_ATTR_SCAN_START_TIME_TSF is set.
- * @NL80211_ATTR_MEASUREMENT_DURATION: measurement duration in TUs (u16). If
- * %NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY is not set, this is the
- * maximum measurement duration allowed. This attribute is used with
- * measurement requests. It can also be used with %NL80211_CMD_TRIGGER_SCAN
- * if the scan is used for beacon report radio measurement.
- * @NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY: flag attribute that indicates
- * that the duration specified with %NL80211_ATTR_MEASUREMENT_DURATION is
- * mandatory. If this flag is not set, the duration is the maximum duration
- * and the actual measurement duration may be shorter.
- *
- * @NL80211_ATTR_MESH_PEER_AID: Association ID for the mesh peer (u16). This is
- * used to pull the stored data for mesh peer in power save state.
- *
- * @NL80211_ATTR_NAN_MASTER_PREF: the master preference to be used by
- * %NL80211_CMD_START_NAN and optionally with
- * %NL80211_CMD_CHANGE_NAN_CONFIG. Its type is u8 and it can't be 0.
- * Also, values 1 and 255 are reserved for certification purposes and
- * should not be used during a normal device operation.
- * @NL80211_ATTR_BANDS: operating bands configuration. This is a u32
- * bitmask of BIT(NL80211_BAND_*) as described in %enum
- * nl80211_band. For instance, for NL80211_BAND_2GHZ, bit 0
- * would be set. This attribute is used with
- * %NL80211_CMD_START_NAN and %NL80211_CMD_CHANGE_NAN_CONFIG, and
- * it is optional. If no bands are set, it means don't-care and
- * the device will decide what to use.
- * @NL80211_ATTR_NAN_FUNC: a function that can be added to NAN. See
- * &enum nl80211_nan_func_attributes for description of this nested
- * attribute.
- * @NL80211_ATTR_NAN_MATCH: used to report a match. This is a nested attribute.
- * See &enum nl80211_nan_match_attributes.
- * @NL80211_ATTR_FILS_KEK: KEK for FILS (Re)Association Request/Response frame
- * protection.
- * @NL80211_ATTR_FILS_NONCES: Nonces (part of AAD) for FILS (Re)Association
- * Request/Response frame protection. This attribute contains the 16 octet
- * STA Nonce followed by 16 octets of AP Nonce.
- *
- * @NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED: Indicates whether or not multicast
- * packets should be send out as unicast to all stations (flag attribute).
- *
- * @NL80211_ATTR_BSSID: The BSSID of the AP. Note that %NL80211_ATTR_MAC is also
- * used in various commands/events for specifying the BSSID.
- *
- * @NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI: Relative RSSI threshold by which
- * other BSSs has to be better or slightly worse than the current
- * connected BSS so that they get reported to user space.
- * This will give an opportunity to userspace to consider connecting to
- * other matching BSSs which have better or slightly worse RSSI than
- * the current connected BSS by using an offloaded operation to avoid
- * unnecessary wakeups.
- *
- * @NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST: When present the RSSI level for BSSs in
- * the specified band is to be adjusted before doing
- * %NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI based comparision to figure out
- * better BSSs. The attribute value is a packed structure
- * value as specified by &struct nl80211_bss_select_rssi_adjust.
- *
- * @NL80211_ATTR_TIMEOUT_REASON: The reason for which an operation timed out.
- * u32 attribute with an &enum nl80211_timeout_reason value. This is used,
- * e.g., with %NL80211_CMD_CONNECT event.
- *
- * @NL80211_ATTR_FILS_ERP_USERNAME: EAP Re-authentication Protocol (ERP)
- * username part of NAI used to refer keys rRK and rIK. This is used with
- * %NL80211_CMD_CONNECT.
- *
- * @NL80211_ATTR_FILS_ERP_REALM: EAP Re-authentication Protocol (ERP) realm part
- * of NAI specifying the domain name of the ER server. This is used with
- * %NL80211_CMD_CONNECT.
- *
- * @NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM: Unsigned 16-bit ERP next sequence number
- * to use in ERP messages. This is used in generating the FILS wrapped data
- * for FILS authentication and is used with %NL80211_CMD_CONNECT.
- *
- * @NL80211_ATTR_FILS_ERP_RRK: ERP re-authentication Root Key (rRK) for the
- * NAI specified by %NL80211_ATTR_FILS_ERP_USERNAME and
- * %NL80211_ATTR_FILS_ERP_REALM. This is used for generating rIK and rMSK
- * from successful FILS authentication and is used with
- * %NL80211_CMD_CONNECT.
- *
- * @NL80211_ATTR_FILS_CACHE_ID: A 2-octet identifier advertized by a FILS AP
- * identifying the scope of PMKSAs. This is used with
- * @NL80211_CMD_SET_PMKSA and @NL80211_CMD_DEL_PMKSA.
- *
- * @NL80211_ATTR_PMK: attribute for passing PMK key material. Used with
- * %NL80211_CMD_SET_PMKSA for the PMKSA identified by %NL80211_ATTR_PMKID.
- * For %NL80211_CMD_CONNECT it is used to provide PSK for offloading 4-way
- * handshake for WPA/WPA2-PSK networks. For 802.1X authentication it is
- * used with %NL80211_CMD_SET_PMK. For offloaded FT support this attribute
- * specifies the PMK-R0 if NL80211_ATTR_PMKR0_NAME is included as well.
- *
- * @NL80211_ATTR_SCHED_SCAN_MULTI: flag attribute which user-space shall use to
- * indicate that it supports multiple active scheduled scan requests.
- * @NL80211_ATTR_SCHED_SCAN_MAX_REQS: indicates maximum number of scheduled
- * scan request that may be active for the device (u32).
- *
- * @NL80211_ATTR_WANT_1X_4WAY_HS: flag attribute which user-space can include
- * in %NL80211_CMD_CONNECT to indicate that for 802.1X authentication it
- * wants to use the supported offload of the 4-way handshake.
- * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT.
- * @NL80211_ATTR_PORT_AUTHORIZED: (reserved)
- *
- * @NL80211_ATTR_EXTERNAL_AUTH_ACTION: Identify the requested external
- * authentication operation (u32 attribute with an
- * &enum nl80211_external_auth_action value). This is used with the
- * %NL80211_CMD_EXTERNAL_AUTH request event.
- * @NL80211_ATTR_EXTERNAL_AUTH_SUPPORT: Flag attribute indicating that the user
- * space supports external authentication. This attribute shall be used
- * only with %NL80211_CMD_CONNECT request. The driver may offload
- * authentication processing to user space if this capability is indicated
- * in NL80211_CMD_CONNECT requests from the user space.
- *
- * @NL80211_ATTR_NSS: Station's New/updated RX_NSS value notified using this
- * u8 attribute. This is used with %NL80211_CMD_STA_OPMODE_CHANGED.
- *
- * @NL80211_ATTR_TXQ_STATS: TXQ statistics (nested attribute, see &enum
- * nl80211_txq_stats)
- * @NL80211_ATTR_TXQ_LIMIT: Total packet limit for the TXQ queues for this phy.
- * The smaller of this and the memory limit is enforced.
- * @NL80211_ATTR_TXQ_MEMORY_LIMIT: Total memory memory limit (in bytes) for the
- * TXQ queues for this phy. The smaller of this and the packet limit is
- * enforced.
- * @NL80211_ATTR_TXQ_QUANTUM: TXQ scheduler quantum (bytes). Number of bytes
- * a flow is assigned on each round of the DRR scheduler.
- * @NL80211_ATTR_HE_CAPABILITY: HE Capability information element (from
- * association request when used with NL80211_CMD_NEW_STATION). Can be set
- * only if %NL80211_STA_FLAG_WME is set.
- *
- * @NL80211_ATTR_FTM_RESPONDER: nested attribute which user-space can include
- * in %NL80211_CMD_START_AP or %NL80211_CMD_SET_BEACON for fine timing
- * measurement (FTM) responder functionality and containing parameters as
- * possible, see &enum nl80211_ftm_responder_attr
- *
- * @NL80211_ATTR_FTM_RESPONDER_STATS: Nested attribute with FTM responder
- * statistics, see &enum nl80211_ftm_responder_stats.
- *
- * @NL80211_ATTR_TIMEOUT: Timeout for the given operation in milliseconds (u32),
- * if the attribute is not given no timeout is requested. Note that 0 is an
- * invalid value.
- *
- * @NL80211_ATTR_PEER_MEASUREMENTS: peer measurements request (and result)
- * data, uses nested attributes specified in
- * &enum nl80211_peer_measurement_attrs.
- * This is also used for capability advertisement in the wiphy information,
- * with the appropriate sub-attributes.
- *
- * @NL80211_ATTR_AIRTIME_WEIGHT: Station's weight when scheduled by the airtime
- * scheduler.
- *
- * @NL80211_ATTR_STA_TX_POWER_SETTING: Transmit power setting type (u8) for
- * station associated with the AP. See &enum nl80211_tx_power_setting for
- * possible values.
- * @NL80211_ATTR_STA_TX_POWER: Transmit power level (s16) in dBm units. This
- * allows to set Tx power for a station. If this attribute is not included,
- * the default per-interface tx power setting will be overriding. Driver
- * should be picking up the lowest tx power, either tx power per-interface
- * or per-station.
- *
- * @NL80211_ATTR_SAE_PASSWORD: attribute for passing SAE password material. It
- * is used with %NL80211_CMD_CONNECT to provide password for offloading
- * SAE authentication for WPA3-Personal networks.
- *
- * @NL80211_ATTR_TWT_RESPONDER: Enable target wait time responder support.
- *
- * @NL80211_ATTR_HE_OBSS_PD: nested attribute for OBSS Packet Detection
- * functionality.
- *
- * @NL80211_ATTR_WIPHY_EDMG_CHANNELS: bitmap that indicates the 2.16 GHz
- * channel(s) that are allowed to be used for EDMG transmissions.
- * Defined by IEEE P802.11ay/D4.0 section 9.4.2.251. (u8 attribute)
- * @NL80211_ATTR_WIPHY_EDMG_BW_CONFIG: Channel BW Configuration subfield encodes
- * the allowed channel bandwidth configurations. (u8 attribute)
- * Defined by IEEE P802.11ay/D4.0 section 9.4.2.251, Table 13.
- *
- * @NL80211_ATTR_VLAN_ID: VLAN ID (1..4094) for the station and VLAN group key
- * (u16).
- *
- * @NL80211_ATTR_HE_BSS_COLOR: nested attribute for BSS Color Settings.
- *
- * @NL80211_ATTR_IFTYPE_AKM_SUITES: nested array attribute, with each entry
- * using attributes from &enum nl80211_iftype_akm_attributes. This
- * attribute is sent in a response to %NL80211_CMD_GET_WIPHY indicating
- * supported AKM suites capability per interface. AKMs advertised in
- * %NL80211_ATTR_AKM_SUITES are default capabilities if AKM suites not
- * advertised for a specific interface type.
- *
- * @NL80211_ATTR_TID_CONFIG: TID specific configuration in a
- * nested attribute with &enum nl80211_tid_config_attr sub-attributes;
- * on output (in wiphy attributes) it contains only the feature sub-
- * attributes.
- *
- * @NL80211_ATTR_CONTROL_PORT_NO_PREAUTH: disable preauth frame rx on control
- * port in order to forward/receive them as ordinary data frames.
- *
- * @NL80211_ATTR_PMK_LIFETIME: Maximum lifetime for PMKSA in seconds (u32,
- * dot11RSNAConfigPMKReauthThreshold; 0 is not a valid value).
- * An optional parameter configured through %NL80211_CMD_SET_PMKSA.
- * Drivers that trigger roaming need to know the lifetime of the
- * configured PMKSA for triggering the full vs. PMKSA caching based
- * authentication. This timeout helps authentication methods like SAE,
- * where PMK gets updated only by going through a full (new SAE)
- * authentication instead of getting updated during an association for EAP
- * authentication. No new full authentication within the PMK expiry shall
- * result in a disassociation at the end of the lifetime.
- *
- * @NL80211_ATTR_PMK_REAUTH_THRESHOLD: Reauthentication threshold time, in
- * terms of percentage of %NL80211_ATTR_PMK_LIFETIME
- * (u8, dot11RSNAConfigPMKReauthThreshold, 1..100). This is an optional
- * parameter configured through %NL80211_CMD_SET_PMKSA. Requests the
- * driver to trigger a full authentication roam (without PMKSA caching)
- * after the reauthentication threshold time, but before the PMK lifetime
- * has expired.
- *
- * Authentication methods like SAE need to be able to generate a new PMKSA
- * entry without having to force a disconnection after the PMK timeout. If
- * no roaming occurs between the reauth threshold and PMK expiration,
- * disassociation is still forced.
- * @NL80211_ATTR_RECEIVE_MULTICAST: multicast flag for the
- * %NL80211_CMD_REGISTER_FRAME command, see the description there.
- * @NL80211_ATTR_WIPHY_FREQ_OFFSET: offset of the associated
- * %NL80211_ATTR_WIPHY_FREQ in positive KHz. Only valid when supplied with
- * an %NL80211_ATTR_WIPHY_FREQ_OFFSET.
- * @NL80211_ATTR_CENTER_FREQ1_OFFSET: Center frequency offset in KHz for the
- * first channel segment specified in %NL80211_ATTR_CENTER_FREQ1.
- * @NL80211_ATTR_SCAN_FREQ_KHZ: nested attribute with KHz frequencies
- *
- * @NL80211_ATTR_HE_6GHZ_CAPABILITY: HE 6 GHz Band Capability element (from
- * association request when used with NL80211_CMD_NEW_STATION).
- *
- * @NL80211_ATTR_FILS_DISCOVERY: Optional parameter to configure FILS
- * discovery. It is a nested attribute, see
- * &enum nl80211_fils_discovery_attributes.
- *
- * @NL80211_ATTR_UNSOL_BCAST_PROBE_RESP: Optional parameter to configure
- * unsolicited broadcast probe response. It is a nested attribute, see
- * &enum nl80211_unsol_bcast_probe_resp_attributes.
- *
- * @NL80211_ATTR_S1G_CAPABILITY: S1G Capability information element (from
- * association request when used with NL80211_CMD_NEW_STATION)
- * @NL80211_ATTR_S1G_CAPABILITY_MASK: S1G Capability Information element
- * override mask. Used with NL80211_ATTR_S1G_CAPABILITY in
- * NL80211_CMD_ASSOCIATE or NL80211_CMD_CONNECT.
- *
- * @NL80211_ATTR_SAE_PWE: Indicates the mechanism(s) allowed for SAE PWE
- * derivation in WPA3-Personal networks which are using SAE authentication.
- * This is a u8 attribute that encapsulates one of the values from
- * &enum nl80211_sae_pwe_mechanism.
- *
- * @NL80211_ATTR_SAR_SPEC: SAR power limitation specification when
- * used with %NL80211_CMD_SET_SAR_SPECS. The message contains fields
- * of %nl80211_sar_attrs which specifies the sar type and related
- * sar specs. Sar specs contains array of %nl80211_sar_specs_attrs.
- *
- * @NL80211_ATTR_RECONNECT_REQUESTED: flag attribute, used with deauth and
- * disassoc events to indicate that an immediate reconnect to the AP
- * is desired.
- *
- * @NUM_NL80211_ATTR: total number of nl80211_attrs available
- * @NL80211_ATTR_MAX: highest attribute number currently defined
- * @__NL80211_ATTR_AFTER_LAST: internal use
- */
-enum nl80211_attrs {
-/* don't change the order or add anything between, this is ABI! */
- NL80211_ATTR_UNSPEC,
-
- NL80211_ATTR_WIPHY,
- NL80211_ATTR_WIPHY_NAME,
-
- NL80211_ATTR_IFINDEX,
- NL80211_ATTR_IFNAME,
- NL80211_ATTR_IFTYPE,
-
- NL80211_ATTR_MAC,
-
- NL80211_ATTR_KEY_DATA,
- NL80211_ATTR_KEY_IDX,
- NL80211_ATTR_KEY_CIPHER,
- NL80211_ATTR_KEY_SEQ,
- NL80211_ATTR_KEY_DEFAULT,
-
- NL80211_ATTR_BEACON_INTERVAL,
- NL80211_ATTR_DTIM_PERIOD,
- NL80211_ATTR_BEACON_HEAD,
- NL80211_ATTR_BEACON_TAIL,
-
- NL80211_ATTR_STA_AID,
- NL80211_ATTR_STA_FLAGS,
- NL80211_ATTR_STA_LISTEN_INTERVAL,
- NL80211_ATTR_STA_SUPPORTED_RATES,
- NL80211_ATTR_STA_VLAN,
- NL80211_ATTR_STA_INFO,
-
- NL80211_ATTR_WIPHY_BANDS,
-
- NL80211_ATTR_MNTR_FLAGS,
-
- NL80211_ATTR_MESH_ID,
- NL80211_ATTR_STA_PLINK_ACTION,
- NL80211_ATTR_MPATH_NEXT_HOP,
- NL80211_ATTR_MPATH_INFO,
-
- NL80211_ATTR_BSS_CTS_PROT,
- NL80211_ATTR_BSS_SHORT_PREAMBLE,
- NL80211_ATTR_BSS_SHORT_SLOT_TIME,
-
- NL80211_ATTR_HT_CAPABILITY,
-
- NL80211_ATTR_SUPPORTED_IFTYPES,
-
- NL80211_ATTR_REG_ALPHA2,
- NL80211_ATTR_REG_RULES,
-
- NL80211_ATTR_MESH_CONFIG,
-
- NL80211_ATTR_BSS_BASIC_RATES,
-
- NL80211_ATTR_WIPHY_TXQ_PARAMS,
- NL80211_ATTR_WIPHY_FREQ,
- NL80211_ATTR_WIPHY_CHANNEL_TYPE,
-
- NL80211_ATTR_KEY_DEFAULT_MGMT,
-
- NL80211_ATTR_MGMT_SUBTYPE,
- NL80211_ATTR_IE,
-
- NL80211_ATTR_MAX_NUM_SCAN_SSIDS,
-
- NL80211_ATTR_SCAN_FREQUENCIES,
- NL80211_ATTR_SCAN_SSIDS,
- NL80211_ATTR_GENERATION, /* replaces old SCAN_GENERATION */
- NL80211_ATTR_BSS,
-
- NL80211_ATTR_REG_INITIATOR,
- NL80211_ATTR_REG_TYPE,
-
- NL80211_ATTR_SUPPORTED_COMMANDS,
-
- NL80211_ATTR_FRAME,
- NL80211_ATTR_SSID,
- NL80211_ATTR_AUTH_TYPE,
- NL80211_ATTR_REASON_CODE,
-
- NL80211_ATTR_KEY_TYPE,
-
- NL80211_ATTR_MAX_SCAN_IE_LEN,
- NL80211_ATTR_CIPHER_SUITES,
-
- NL80211_ATTR_FREQ_BEFORE,
- NL80211_ATTR_FREQ_AFTER,
-
- NL80211_ATTR_FREQ_FIXED,
-
-
- NL80211_ATTR_WIPHY_RETRY_SHORT,
- NL80211_ATTR_WIPHY_RETRY_LONG,
- NL80211_ATTR_WIPHY_FRAG_THRESHOLD,
- NL80211_ATTR_WIPHY_RTS_THRESHOLD,
-
- NL80211_ATTR_TIMED_OUT,
-
- NL80211_ATTR_USE_MFP,
-
- NL80211_ATTR_STA_FLAGS2,
-
- NL80211_ATTR_CONTROL_PORT,
-
- NL80211_ATTR_TESTDATA,
-
- NL80211_ATTR_PRIVACY,
-
- NL80211_ATTR_DISCONNECTED_BY_AP,
- NL80211_ATTR_STATUS_CODE,
-
- NL80211_ATTR_CIPHER_SUITES_PAIRWISE,
- NL80211_ATTR_CIPHER_SUITE_GROUP,
- NL80211_ATTR_WPA_VERSIONS,
- NL80211_ATTR_AKM_SUITES,
-
- NL80211_ATTR_REQ_IE,
- NL80211_ATTR_RESP_IE,
-
- NL80211_ATTR_PREV_BSSID,
-
- NL80211_ATTR_KEY,
- NL80211_ATTR_KEYS,
-
- NL80211_ATTR_PID,
-
- NL80211_ATTR_4ADDR,
-
- NL80211_ATTR_SURVEY_INFO,
-
- NL80211_ATTR_PMKID,
- NL80211_ATTR_MAX_NUM_PMKIDS,
-
- NL80211_ATTR_DURATION,
-
- NL80211_ATTR_COOKIE,
-
- NL80211_ATTR_WIPHY_COVERAGE_CLASS,
-
- NL80211_ATTR_TX_RATES,
-
- NL80211_ATTR_FRAME_MATCH,
-
- NL80211_ATTR_ACK,
-
- NL80211_ATTR_PS_STATE,
-
- NL80211_ATTR_CQM,
-
- NL80211_ATTR_LOCAL_STATE_CHANGE,
-
- NL80211_ATTR_AP_ISOLATE,
-
- NL80211_ATTR_WIPHY_TX_POWER_SETTING,
- NL80211_ATTR_WIPHY_TX_POWER_LEVEL,
-
- NL80211_ATTR_TX_FRAME_TYPES,
- NL80211_ATTR_RX_FRAME_TYPES,
- NL80211_ATTR_FRAME_TYPE,
-
- NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
- NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT,
-
- NL80211_ATTR_SUPPORT_IBSS_RSN,
-
- NL80211_ATTR_WIPHY_ANTENNA_TX,
- NL80211_ATTR_WIPHY_ANTENNA_RX,
-
- NL80211_ATTR_MCAST_RATE,
-
- NL80211_ATTR_OFFCHANNEL_TX_OK,
-
- NL80211_ATTR_BSS_HT_OPMODE,
-
- NL80211_ATTR_KEY_DEFAULT_TYPES,
-
- NL80211_ATTR_MAX_REMAIN_ON_CHANNEL_DURATION,
-
- NL80211_ATTR_MESH_SETUP,
-
- NL80211_ATTR_WIPHY_ANTENNA_AVAIL_TX,
- NL80211_ATTR_WIPHY_ANTENNA_AVAIL_RX,
-
- NL80211_ATTR_SUPPORT_MESH_AUTH,
- NL80211_ATTR_STA_PLINK_STATE,
-
- NL80211_ATTR_WOWLAN_TRIGGERS,
- NL80211_ATTR_WOWLAN_TRIGGERS_SUPPORTED,
-
- NL80211_ATTR_SCHED_SCAN_INTERVAL,
-
- NL80211_ATTR_INTERFACE_COMBINATIONS,
- NL80211_ATTR_SOFTWARE_IFTYPES,
-
- NL80211_ATTR_REKEY_DATA,
-
- NL80211_ATTR_MAX_NUM_SCHED_SCAN_SSIDS,
- NL80211_ATTR_MAX_SCHED_SCAN_IE_LEN,
-
- NL80211_ATTR_SCAN_SUPP_RATES,
-
- NL80211_ATTR_HIDDEN_SSID,
-
- NL80211_ATTR_IE_PROBE_RESP,
- NL80211_ATTR_IE_ASSOC_RESP,
-
- NL80211_ATTR_STA_WME,
- NL80211_ATTR_SUPPORT_AP_UAPSD,
-
- NL80211_ATTR_ROAM_SUPPORT,
-
- NL80211_ATTR_SCHED_SCAN_MATCH,
- NL80211_ATTR_MAX_MATCH_SETS,
-
- NL80211_ATTR_PMKSA_CANDIDATE,
-
- NL80211_ATTR_TX_NO_CCK_RATE,
-
- NL80211_ATTR_TDLS_ACTION,
- NL80211_ATTR_TDLS_DIALOG_TOKEN,
- NL80211_ATTR_TDLS_OPERATION,
- NL80211_ATTR_TDLS_SUPPORT,
- NL80211_ATTR_TDLS_EXTERNAL_SETUP,
-
- NL80211_ATTR_DEVICE_AP_SME,
-
- NL80211_ATTR_DONT_WAIT_FOR_ACK,
-
- NL80211_ATTR_FEATURE_FLAGS,
-
- NL80211_ATTR_PROBE_RESP_OFFLOAD,
-
- NL80211_ATTR_PROBE_RESP,
-
- NL80211_ATTR_DFS_REGION,
-
- NL80211_ATTR_DISABLE_HT,
- NL80211_ATTR_HT_CAPABILITY_MASK,
-
- NL80211_ATTR_NOACK_MAP,
-
- NL80211_ATTR_INACTIVITY_TIMEOUT,
-
- NL80211_ATTR_RX_SIGNAL_DBM,
-
- NL80211_ATTR_BG_SCAN_PERIOD,
-
- NL80211_ATTR_WDEV,
-
- NL80211_ATTR_USER_REG_HINT_TYPE,
-
- NL80211_ATTR_CONN_FAILED_REASON,
-
- NL80211_ATTR_AUTH_DATA,
-
- NL80211_ATTR_VHT_CAPABILITY,
-
- NL80211_ATTR_SCAN_FLAGS,
-
- NL80211_ATTR_CHANNEL_WIDTH,
- NL80211_ATTR_CENTER_FREQ1,
- NL80211_ATTR_CENTER_FREQ2,
-
- NL80211_ATTR_P2P_CTWINDOW,
- NL80211_ATTR_P2P_OPPPS,
-
- NL80211_ATTR_LOCAL_MESH_POWER_MODE,
-
- NL80211_ATTR_ACL_POLICY,
-
- NL80211_ATTR_MAC_ADDRS,
-
- NL80211_ATTR_MAC_ACL_MAX,
-
- NL80211_ATTR_RADAR_EVENT,
-
- NL80211_ATTR_EXT_CAPA,
- NL80211_ATTR_EXT_CAPA_MASK,
-
- NL80211_ATTR_STA_CAPABILITY,
- NL80211_ATTR_STA_EXT_CAPABILITY,
-
- NL80211_ATTR_PROTOCOL_FEATURES,
- NL80211_ATTR_SPLIT_WIPHY_DUMP,
-
- NL80211_ATTR_DISABLE_VHT,
- NL80211_ATTR_VHT_CAPABILITY_MASK,
-
- NL80211_ATTR_MDID,
- NL80211_ATTR_IE_RIC,
-
- NL80211_ATTR_CRIT_PROT_ID,
- NL80211_ATTR_MAX_CRIT_PROT_DURATION,
-
- NL80211_ATTR_PEER_AID,
-
- NL80211_ATTR_COALESCE_RULE,
-
- NL80211_ATTR_CH_SWITCH_COUNT,
- NL80211_ATTR_CH_SWITCH_BLOCK_TX,
- NL80211_ATTR_CSA_IES,
- NL80211_ATTR_CSA_C_OFF_BEACON,
- NL80211_ATTR_CSA_C_OFF_PRESP,
-
- NL80211_ATTR_RXMGMT_FLAGS,
-
- NL80211_ATTR_STA_SUPPORTED_CHANNELS,
-
- NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES,
-
- NL80211_ATTR_HANDLE_DFS,
-
- NL80211_ATTR_SUPPORT_5_MHZ,
- NL80211_ATTR_SUPPORT_10_MHZ,
-
- NL80211_ATTR_OPMODE_NOTIF,
-
- NL80211_ATTR_VENDOR_ID,
- NL80211_ATTR_VENDOR_SUBCMD,
- NL80211_ATTR_VENDOR_DATA,
- NL80211_ATTR_VENDOR_EVENTS,
-
- NL80211_ATTR_QOS_MAP,
-
- NL80211_ATTR_MAC_HINT,
- NL80211_ATTR_WIPHY_FREQ_HINT,
-
- NL80211_ATTR_MAX_AP_ASSOC_STA,
-
- NL80211_ATTR_TDLS_PEER_CAPABILITY,
-
- NL80211_ATTR_SOCKET_OWNER,
-
- NL80211_ATTR_CSA_C_OFFSETS_TX,
- NL80211_ATTR_MAX_CSA_COUNTERS,
-
- NL80211_ATTR_TDLS_INITIATOR,
-
- NL80211_ATTR_USE_RRM,
-
- NL80211_ATTR_WIPHY_DYN_ACK,
-
- NL80211_ATTR_TSID,
- NL80211_ATTR_USER_PRIO,
- NL80211_ATTR_ADMITTED_TIME,
-
- NL80211_ATTR_SMPS_MODE,
-
- NL80211_ATTR_OPER_CLASS,
-
- NL80211_ATTR_MAC_MASK,
-
- NL80211_ATTR_WIPHY_SELF_MANAGED_REG,
-
- NL80211_ATTR_EXT_FEATURES,
-
- NL80211_ATTR_SURVEY_RADIO_STATS,
-
- NL80211_ATTR_NETNS_FD,
-
- NL80211_ATTR_SCHED_SCAN_DELAY,
-
- NL80211_ATTR_REG_INDOOR,
-
- NL80211_ATTR_MAX_NUM_SCHED_SCAN_PLANS,
- NL80211_ATTR_MAX_SCAN_PLAN_INTERVAL,
- NL80211_ATTR_MAX_SCAN_PLAN_ITERATIONS,
- NL80211_ATTR_SCHED_SCAN_PLANS,
-
- NL80211_ATTR_PBSS,
-
- NL80211_ATTR_BSS_SELECT,
-
- NL80211_ATTR_STA_SUPPORT_P2P_PS,
-
- NL80211_ATTR_PAD,
-
- NL80211_ATTR_IFTYPE_EXT_CAPA,
-
- NL80211_ATTR_MU_MIMO_GROUP_DATA,
- NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR,
-
- NL80211_ATTR_SCAN_START_TIME_TSF,
- NL80211_ATTR_SCAN_START_TIME_TSF_BSSID,
- NL80211_ATTR_MEASUREMENT_DURATION,
- NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY,
-
- NL80211_ATTR_MESH_PEER_AID,
-
- NL80211_ATTR_NAN_MASTER_PREF,
- NL80211_ATTR_BANDS,
- NL80211_ATTR_NAN_FUNC,
- NL80211_ATTR_NAN_MATCH,
-
- NL80211_ATTR_FILS_KEK,
- NL80211_ATTR_FILS_NONCES,
-
- NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED,
-
- NL80211_ATTR_BSSID,
-
- NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI,
- NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST,
-
- NL80211_ATTR_TIMEOUT_REASON,
-
- NL80211_ATTR_FILS_ERP_USERNAME,
- NL80211_ATTR_FILS_ERP_REALM,
- NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM,
- NL80211_ATTR_FILS_ERP_RRK,
- NL80211_ATTR_FILS_CACHE_ID,
-
- NL80211_ATTR_PMK,
-
- NL80211_ATTR_SCHED_SCAN_MULTI,
- NL80211_ATTR_SCHED_SCAN_MAX_REQS,
-
- NL80211_ATTR_WANT_1X_4WAY_HS,
- NL80211_ATTR_PMKR0_NAME,
- NL80211_ATTR_PORT_AUTHORIZED,
-
- NL80211_ATTR_EXTERNAL_AUTH_ACTION,
- NL80211_ATTR_EXTERNAL_AUTH_SUPPORT,
-
- NL80211_ATTR_NSS,
- NL80211_ATTR_ACK_SIGNAL,
-
- NL80211_ATTR_CONTROL_PORT_OVER_NL80211,
-
- NL80211_ATTR_TXQ_STATS,
- NL80211_ATTR_TXQ_LIMIT,
- NL80211_ATTR_TXQ_MEMORY_LIMIT,
- NL80211_ATTR_TXQ_QUANTUM,
-
- NL80211_ATTR_HE_CAPABILITY,
-
- NL80211_ATTR_FTM_RESPONDER,
-
- NL80211_ATTR_FTM_RESPONDER_STATS,
-
- NL80211_ATTR_TIMEOUT,
-
- NL80211_ATTR_PEER_MEASUREMENTS,
-
- NL80211_ATTR_AIRTIME_WEIGHT,
- NL80211_ATTR_STA_TX_POWER_SETTING,
- NL80211_ATTR_STA_TX_POWER,
-
-
-//tianyan@2021.7.27 modify for add wifi6 module start
- NL80211_ATTR_SAE_PASSWORD,
-//tianyan@2021.7.27 modify for add wifi6 module end
-
- NL80211_ATTR_TWT_RESPONDER,
-
- NL80211_ATTR_HE_OBSS_PD,
-
- NL80211_ATTR_WIPHY_EDMG_CHANNELS,
- NL80211_ATTR_WIPHY_EDMG_BW_CONFIG,
-
- NL80211_ATTR_VLAN_ID,
-
- NL80211_ATTR_HE_BSS_COLOR,
-
- NL80211_ATTR_IFTYPE_AKM_SUITES,
-
- NL80211_ATTR_TID_CONFIG,
-
- NL80211_ATTR_CONTROL_PORT_NO_PREAUTH,
-
- NL80211_ATTR_PMK_LIFETIME,
- NL80211_ATTR_PMK_REAUTH_THRESHOLD,
-
- NL80211_ATTR_RECEIVE_MULTICAST,
- NL80211_ATTR_WIPHY_FREQ_OFFSET,
- NL80211_ATTR_CENTER_FREQ1_OFFSET,
- NL80211_ATTR_SCAN_FREQ_KHZ,
-
- NL80211_ATTR_HE_6GHZ_CAPABILITY,
-
- NL80211_ATTR_FILS_DISCOVERY,
-
- NL80211_ATTR_UNSOL_BCAST_PROBE_RESP,
-
- NL80211_ATTR_S1G_CAPABILITY,
- NL80211_ATTR_S1G_CAPABILITY_MASK,
-
- NL80211_ATTR_SAE_PWE,
-
- NL80211_ATTR_RECONNECT_REQUESTED,
-
- NL80211_ATTR_SAR_SPEC,
-
- NL80211_ATTR_DISABLE_HE,
-
- /* add attributes here, update the policy in nl80211.c */
-
- __NL80211_ATTR_AFTER_LAST,
- NUM_NL80211_ATTR = __NL80211_ATTR_AFTER_LAST,
- NL80211_ATTR_MAX = __NL80211_ATTR_AFTER_LAST - 1
-};
-
-/* source-level API compatibility */
-#define NL80211_ATTR_SCAN_GENERATION NL80211_ATTR_GENERATION
-#define NL80211_ATTR_MESH_PARAMS NL80211_ATTR_MESH_CONFIG
-#define NL80211_ATTR_IFACE_SOCKET_OWNER NL80211_ATTR_SOCKET_OWNER
-#define NL80211_ATTR_SAE_DATA NL80211_ATTR_AUTH_DATA
-
-/*
- * Allow user space programs to use #ifdef on new attributes by defining them
- * here
- */
-#define NL80211_CMD_CONNECT NL80211_CMD_CONNECT
-#define NL80211_ATTR_HT_CAPABILITY NL80211_ATTR_HT_CAPABILITY
-#define NL80211_ATTR_BSS_BASIC_RATES NL80211_ATTR_BSS_BASIC_RATES
-#define NL80211_ATTR_WIPHY_TXQ_PARAMS NL80211_ATTR_WIPHY_TXQ_PARAMS
-#define NL80211_ATTR_WIPHY_FREQ NL80211_ATTR_WIPHY_FREQ
-#define NL80211_ATTR_WIPHY_CHANNEL_TYPE NL80211_ATTR_WIPHY_CHANNEL_TYPE
-#define NL80211_ATTR_MGMT_SUBTYPE NL80211_ATTR_MGMT_SUBTYPE
-#define NL80211_ATTR_IE NL80211_ATTR_IE
-#define NL80211_ATTR_REG_INITIATOR NL80211_ATTR_REG_INITIATOR
-#define NL80211_ATTR_REG_TYPE NL80211_ATTR_REG_TYPE
-#define NL80211_ATTR_FRAME NL80211_ATTR_FRAME
-#define NL80211_ATTR_SSID NL80211_ATTR_SSID
-#define NL80211_ATTR_AUTH_TYPE NL80211_ATTR_AUTH_TYPE
-#define NL80211_ATTR_REASON_CODE NL80211_ATTR_REASON_CODE
-#define NL80211_ATTR_CIPHER_SUITES_PAIRWISE NL80211_ATTR_CIPHER_SUITES_PAIRWISE
-#define NL80211_ATTR_CIPHER_SUITE_GROUP NL80211_ATTR_CIPHER_SUITE_GROUP
-#define NL80211_ATTR_WPA_VERSIONS NL80211_ATTR_WPA_VERSIONS
-#define NL80211_ATTR_AKM_SUITES NL80211_ATTR_AKM_SUITES
-#define NL80211_ATTR_KEY NL80211_ATTR_KEY
-#define NL80211_ATTR_KEYS NL80211_ATTR_KEYS
-#define NL80211_ATTR_FEATURE_FLAGS NL80211_ATTR_FEATURE_FLAGS
-
-#define NL80211_WIPHY_NAME_MAXLEN 64
-
-#define NL80211_MAX_SUPP_RATES 32
-#define NL80211_MAX_SUPP_HT_RATES 77
-#define NL80211_MAX_SUPP_REG_RULES 64
-#define NL80211_TKIP_DATA_OFFSET_ENCR_KEY 0
-#define NL80211_TKIP_DATA_OFFSET_TX_MIC_KEY 16
-#define NL80211_TKIP_DATA_OFFSET_RX_MIC_KEY 24
-#define NL80211_HT_CAPABILITY_LEN 26
-#define NL80211_VHT_CAPABILITY_LEN 12
-#define NL80211_HE_MIN_CAPABILITY_LEN 16
-#define NL80211_HE_MAX_CAPABILITY_LEN 54
-#define NL80211_MAX_NR_CIPHER_SUITES 5
-#define NL80211_MAX_NR_AKM_SUITES 2
-
-#define NL80211_MIN_REMAIN_ON_CHANNEL_TIME 10
-
-/* default RSSI threshold for scan results if none specified. */
-#define NL80211_SCAN_RSSI_THOLD_OFF -300
-
-#define NL80211_CQM_TXE_MAX_INTVL 1800
-
-/**
- * enum nl80211_iftype - (virtual) interface types
- *
- * @NL80211_IFTYPE_UNSPECIFIED: unspecified type, driver decides
- * @NL80211_IFTYPE_ADHOC: independent BSS member
- * @NL80211_IFTYPE_STATION: managed BSS member
- * @NL80211_IFTYPE_AP: access point
- * @NL80211_IFTYPE_AP_VLAN: VLAN interface for access points; VLAN interfaces
- * are a bit special in that they must always be tied to a pre-existing
- * AP type interface.
- * @NL80211_IFTYPE_WDS: wireless distribution interface
- * @NL80211_IFTYPE_MONITOR: monitor interface receiving all frames
- * @NL80211_IFTYPE_MESH_POINT: mesh point
- * @NL80211_IFTYPE_P2P_CLIENT: P2P client
- * @NL80211_IFTYPE_P2P_GO: P2P group owner
- * @NL80211_IFTYPE_P2P_DEVICE: P2P device interface type, this is not a netdev
- * and therefore can't be created in the normal ways, use the
- * %NL80211_CMD_START_P2P_DEVICE and %NL80211_CMD_STOP_P2P_DEVICE
- * commands to create and destroy one
- * @NL80211_IF_TYPE_OCB: Outside Context of a BSS
- * This mode corresponds to the MIB variable dot11OCBActivated=true
- * @NL80211_IFTYPE_NAN: NAN device interface type (not a netdev)
- * @NL80211_IFTYPE_MAX: highest interface type number currently defined
- * @NUM_NL80211_IFTYPES: number of defined interface types
- *
- * These values are used with the %NL80211_ATTR_IFTYPE
- * to set the type of an interface.
- *
- */
-enum nl80211_iftype {
- NL80211_IFTYPE_UNSPECIFIED,
- NL80211_IFTYPE_ADHOC,
- NL80211_IFTYPE_STATION,
- NL80211_IFTYPE_AP,
- NL80211_IFTYPE_AP_VLAN,
- NL80211_IFTYPE_WDS,
- NL80211_IFTYPE_MONITOR,
- NL80211_IFTYPE_MESH_POINT,
- NL80211_IFTYPE_P2P_CLIENT,
- NL80211_IFTYPE_P2P_GO,
- NL80211_IFTYPE_P2P_DEVICE,
- NL80211_IFTYPE_OCB,
- NL80211_IFTYPE_NAN,
-
- /* keep last */
- NUM_NL80211_IFTYPES,
- NL80211_IFTYPE_MAX = NUM_NL80211_IFTYPES - 1
-};
-
-/**
- * enum nl80211_sta_flags - station flags
- *
- * Station flags. When a station is added to an AP interface, it is
- * assumed to be already associated (and hence authenticated.)
- *
- * @__NL80211_STA_FLAG_INVALID: attribute number 0 is reserved
- * @NL80211_STA_FLAG_AUTHORIZED: station is authorized (802.1X)
- * @NL80211_STA_FLAG_SHORT_PREAMBLE: station is capable of receiving frames
- * with short barker preamble
- * @NL80211_STA_FLAG_WME: station is WME/QoS capable
- * @NL80211_STA_FLAG_MFP: station uses management frame protection
- * @NL80211_STA_FLAG_AUTHENTICATED: station is authenticated
- * @NL80211_STA_FLAG_TDLS_PEER: station is a TDLS peer -- this flag should
- * only be used in managed mode (even in the flags mask). Note that the
- * flag can't be changed, it is only valid while adding a station, and
- * attempts to change it will silently be ignored (rather than rejected
- * as errors.)
- * @NL80211_STA_FLAG_ASSOCIATED: station is associated; used with drivers
- * that support %NL80211_FEATURE_FULL_AP_CLIENT_STATE to transition a
- * previously added station into associated state
- * @NL80211_STA_FLAG_MAX: highest station flag number currently defined
- * @__NL80211_STA_FLAG_AFTER_LAST: internal use
- */
-enum nl80211_sta_flags {
- __NL80211_STA_FLAG_INVALID,
- NL80211_STA_FLAG_AUTHORIZED,
- NL80211_STA_FLAG_SHORT_PREAMBLE,
- NL80211_STA_FLAG_WME,
- NL80211_STA_FLAG_MFP,
- NL80211_STA_FLAG_AUTHENTICATED,
- NL80211_STA_FLAG_TDLS_PEER,
- NL80211_STA_FLAG_ASSOCIATED,
-
- /* keep last */
- __NL80211_STA_FLAG_AFTER_LAST,
- NL80211_STA_FLAG_MAX = __NL80211_STA_FLAG_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_sta_p2p_ps_status - station support of P2P PS
- *
- * @NL80211_P2P_PS_UNSUPPORTED: station doesn't support P2P PS mechanism
- * @@NL80211_P2P_PS_SUPPORTED: station supports P2P PS mechanism
- * @NUM_NL80211_P2P_PS_STATUS: number of values
- */
-enum nl80211_sta_p2p_ps_status {
- NL80211_P2P_PS_UNSUPPORTED = 0,
- NL80211_P2P_PS_SUPPORTED,
-
- NUM_NL80211_P2P_PS_STATUS,
-};
-
-#define NL80211_STA_FLAG_MAX_OLD_API NL80211_STA_FLAG_TDLS_PEER
-
-/**
- * struct nl80211_sta_flag_update - station flags mask/set
- * @mask: mask of station flags to set
- * @set: which values to set them to
- *
- * Both mask and set contain bits as per &enum nl80211_sta_flags.
- */
-struct nl80211_sta_flag_update {
- __u32 mask;
- __u32 set;
-} __attribute__((packed));
-
-/**
- * enum nl80211_he_gi - HE guard interval
- * @NL80211_RATE_INFO_HE_GI_0_8: 0.8 usec
- * @NL80211_RATE_INFO_HE_GI_1_6: 1.6 usec
- * @NL80211_RATE_INFO_HE_GI_3_2: 3.2 usec
- */
-enum nl80211_he_gi {
- NL80211_RATE_INFO_HE_GI_0_8,
- NL80211_RATE_INFO_HE_GI_1_6,
- NL80211_RATE_INFO_HE_GI_3_2,
-};
-
-/**
- * enum nl80211_he_ru_alloc - HE RU allocation values
- * @NL80211_RATE_INFO_HE_RU_ALLOC_26: 26-tone RU allocation
- * @NL80211_RATE_INFO_HE_RU_ALLOC_52: 52-tone RU allocation
- * @NL80211_RATE_INFO_HE_RU_ALLOC_106: 106-tone RU allocation
- * @NL80211_RATE_INFO_HE_RU_ALLOC_242: 242-tone RU allocation
- * @NL80211_RATE_INFO_HE_RU_ALLOC_484: 484-tone RU allocation
- * @NL80211_RATE_INFO_HE_RU_ALLOC_996: 996-tone RU allocation
- * @NL80211_RATE_INFO_HE_RU_ALLOC_2x996: 2x996-tone RU allocation
- */
-enum nl80211_he_ru_alloc {
- NL80211_RATE_INFO_HE_RU_ALLOC_26,
- NL80211_RATE_INFO_HE_RU_ALLOC_52,
- NL80211_RATE_INFO_HE_RU_ALLOC_106,
- NL80211_RATE_INFO_HE_RU_ALLOC_242,
- NL80211_RATE_INFO_HE_RU_ALLOC_484,
- NL80211_RATE_INFO_HE_RU_ALLOC_996,
- NL80211_RATE_INFO_HE_RU_ALLOC_2x996,
-};
-
-/**
- * enum nl80211_rate_info - bitrate information
- *
- * These attribute types are used with %NL80211_STA_INFO_TXRATE
- * when getting information about the bitrate of a station.
- * There are 2 attributes for bitrate, a legacy one that represents
- * a 16-bit value, and new one that represents a 32-bit value.
- * If the rate value fits into 16 bit, both attributes are reported
- * with the same value. If the rate is too high to fit into 16 bits
- * (>6.5535Gbps) only 32-bit attribute is included.
- * User space tools encouraged to use the 32-bit attribute and fall
- * back to the 16-bit one for compatibility with older kernels.
- *
- * @__NL80211_RATE_INFO_INVALID: attribute number 0 is reserved
- * @NL80211_RATE_INFO_BITRATE: total bitrate (u16, 100kbit/s)
- * @NL80211_RATE_INFO_MCS: mcs index for 802.11n (u8)
- * @NL80211_RATE_INFO_40_MHZ_WIDTH: 40 MHz dualchannel bitrate
- * @NL80211_RATE_INFO_SHORT_GI: 400ns guard interval
- * @NL80211_RATE_INFO_BITRATE32: total bitrate (u32, 100kbit/s)
- * @NL80211_RATE_INFO_MAX: highest rate_info number currently defined
- * @NL80211_RATE_INFO_VHT_MCS: MCS index for VHT (u8)
- * @NL80211_RATE_INFO_VHT_NSS: number of streams in VHT (u8)
- * @NL80211_RATE_INFO_80_MHZ_WIDTH: 80 MHz VHT rate
- * @NL80211_RATE_INFO_80P80_MHZ_WIDTH: unused - 80+80 is treated the
- * same as 160 for purposes of the bitrates
- * @NL80211_RATE_INFO_160_MHZ_WIDTH: 160 MHz VHT rate
- * @NL80211_RATE_INFO_10_MHZ_WIDTH: 10 MHz width - note that this is
- * a legacy rate and will be reported as the actual bitrate, i.e.
- * half the base (20 MHz) rate
- * @NL80211_RATE_INFO_5_MHZ_WIDTH: 5 MHz width - note that this is
- * a legacy rate and will be reported as the actual bitrate, i.e.
- * a quarter of the base (20 MHz) rate
- * @NL80211_RATE_INFO_HE_MCS: HE MCS index (u8, 0-11)
- * @NL80211_RATE_INFO_HE_NSS: HE NSS value (u8, 1-8)
- * @NL80211_RATE_INFO_HE_GI: HE guard interval identifier
- * (u8, see &enum nl80211_he_gi)
- * @NL80211_RATE_INFO_HE_DCM: HE DCM value (u8, 0/1)
- * @NL80211_RATE_INFO_RU_ALLOC: HE RU allocation, if not present then
- * non-OFDMA was used (u8, see &enum nl80211_he_ru_alloc)
- * @__NL80211_RATE_INFO_AFTER_LAST: internal use
- */
-enum nl80211_rate_info {
- __NL80211_RATE_INFO_INVALID,
- NL80211_RATE_INFO_BITRATE,
- NL80211_RATE_INFO_MCS,
- NL80211_RATE_INFO_40_MHZ_WIDTH,
- NL80211_RATE_INFO_SHORT_GI,
- NL80211_RATE_INFO_BITRATE32,
- NL80211_RATE_INFO_VHT_MCS,
- NL80211_RATE_INFO_VHT_NSS,
- NL80211_RATE_INFO_80_MHZ_WIDTH,
- NL80211_RATE_INFO_80P80_MHZ_WIDTH,
- NL80211_RATE_INFO_160_MHZ_WIDTH,
- NL80211_RATE_INFO_10_MHZ_WIDTH,
- NL80211_RATE_INFO_5_MHZ_WIDTH,
- NL80211_RATE_INFO_HE_MCS,
- NL80211_RATE_INFO_HE_NSS,
- NL80211_RATE_INFO_HE_GI,
- NL80211_RATE_INFO_HE_DCM,
- NL80211_RATE_INFO_HE_RU_ALLOC,
-
- /* keep last */
- __NL80211_RATE_INFO_AFTER_LAST,
- NL80211_RATE_INFO_MAX = __NL80211_RATE_INFO_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_sta_bss_param - BSS information collected by STA
- *
- * These attribute types are used with %NL80211_STA_INFO_BSS_PARAM
- * when getting information about the bitrate of a station.
- *
- * @__NL80211_STA_BSS_PARAM_INVALID: attribute number 0 is reserved
- * @NL80211_STA_BSS_PARAM_CTS_PROT: whether CTS protection is enabled (flag)
- * @NL80211_STA_BSS_PARAM_SHORT_PREAMBLE: whether short preamble is enabled
- * (flag)
- * @NL80211_STA_BSS_PARAM_SHORT_SLOT_TIME: whether short slot time is enabled
- * (flag)
- * @NL80211_STA_BSS_PARAM_DTIM_PERIOD: DTIM period for beaconing (u8)
- * @NL80211_STA_BSS_PARAM_BEACON_INTERVAL: Beacon interval (u16)
- * @NL80211_STA_BSS_PARAM_MAX: highest sta_bss_param number currently defined
- * @__NL80211_STA_BSS_PARAM_AFTER_LAST: internal use
- */
-enum nl80211_sta_bss_param {
- __NL80211_STA_BSS_PARAM_INVALID,
- NL80211_STA_BSS_PARAM_CTS_PROT,
- NL80211_STA_BSS_PARAM_SHORT_PREAMBLE,
- NL80211_STA_BSS_PARAM_SHORT_SLOT_TIME,
- NL80211_STA_BSS_PARAM_DTIM_PERIOD,
- NL80211_STA_BSS_PARAM_BEACON_INTERVAL,
-
- /* keep last */
- __NL80211_STA_BSS_PARAM_AFTER_LAST,
- NL80211_STA_BSS_PARAM_MAX = __NL80211_STA_BSS_PARAM_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_sta_info - station information
- *
- * These attribute types are used with %NL80211_ATTR_STA_INFO
- * when getting information about a station.
- *
- * @__NL80211_STA_INFO_INVALID: attribute number 0 is reserved
- * @NL80211_STA_INFO_INACTIVE_TIME: time since last activity (u32, msecs)
- * @NL80211_STA_INFO_RX_BYTES: total received bytes (MPDU length)
- * (u32, from this station)
- * @NL80211_STA_INFO_TX_BYTES: total transmitted bytes (MPDU length)
- * (u32, to this station)
- * @NL80211_STA_INFO_RX_BYTES64: total received bytes (MPDU length)
- * (u64, from this station)
- * @NL80211_STA_INFO_TX_BYTES64: total transmitted bytes (MPDU length)
- * (u64, to this station)
- * @NL80211_STA_INFO_SIGNAL: signal strength of last received PPDU (u8, dBm)
- * @NL80211_STA_INFO_TX_BITRATE: current unicast tx rate, nested attribute
- * containing info as possible, see &enum nl80211_rate_info
- * @NL80211_STA_INFO_RX_PACKETS: total received packet (MSDUs and MMPDUs)
- * (u32, from this station)
- * @NL80211_STA_INFO_TX_PACKETS: total transmitted packets (MSDUs and MMPDUs)
- * (u32, to this station)
- * @NL80211_STA_INFO_TX_RETRIES: total retries (MPDUs) (u32, to this station)
- * @NL80211_STA_INFO_TX_FAILED: total failed packets (MPDUs)
- * (u32, to this station)
- * @NL80211_STA_INFO_SIGNAL_AVG: signal strength average (u8, dBm)
- * @NL80211_STA_INFO_LLID: the station's mesh LLID
- * @NL80211_STA_INFO_PLID: the station's mesh PLID
- * @NL80211_STA_INFO_PLINK_STATE: peer link state for the station
- * (see %enum nl80211_plink_state)
- * @NL80211_STA_INFO_RX_BITRATE: last unicast data frame rx rate, nested
- * attribute, like NL80211_STA_INFO_TX_BITRATE.
- * @NL80211_STA_INFO_BSS_PARAM: current station's view of BSS, nested attribute
- * containing info as possible, see &enum nl80211_sta_bss_param
- * @NL80211_STA_INFO_CONNECTED_TIME: time since the station is last connected
- * @NL80211_STA_INFO_STA_FLAGS: Contains a struct nl80211_sta_flag_update.
- * @NL80211_STA_INFO_BEACON_LOSS: count of times beacon loss was detected (u32)
- * @NL80211_STA_INFO_T_OFFSET: timing offset with respect to this STA (s64)
- * @NL80211_STA_INFO_LOCAL_PM: local mesh STA link-specific power mode
- * @NL80211_STA_INFO_PEER_PM: peer mesh STA link-specific power mode
- * @NL80211_STA_INFO_NONPEER_PM: neighbor mesh STA power save mode towards
- * non-peer STA
- * @NL80211_STA_INFO_CHAIN_SIGNAL: per-chain signal strength of last PPDU
- * Contains a nested array of signal strength attributes (u8, dBm)
- * @NL80211_STA_INFO_CHAIN_SIGNAL_AVG: per-chain signal strength average
- * Same format as NL80211_STA_INFO_CHAIN_SIGNAL.
- * @NL80211_STA_EXPECTED_THROUGHPUT: expected throughput considering also the
- * 802.11 header (u32, kbps)
- * @NL80211_STA_INFO_RX_DROP_MISC: RX packets dropped for unspecified reasons
- * (u64)
- * @NL80211_STA_INFO_BEACON_RX: number of beacons received from this peer (u64)
- * @NL80211_STA_INFO_BEACON_SIGNAL_AVG: signal strength average
- * for beacons only (u8, dBm)
- * @NL80211_STA_INFO_TID_STATS: per-TID statistics (see &enum nl80211_tid_stats)
- * This is a nested attribute where each the inner attribute number is the
- * TID+1 and the special TID 16 (i.e. value 17) is used for non-QoS frames;
- * each one of those is again nested with &enum nl80211_tid_stats
- * attributes carrying the actual values.
- * @NL80211_STA_INFO_RX_DURATION: aggregate PPDU duration for all frames
- * received from the station (u64, usec)
- * @NL80211_STA_INFO_PAD: attribute used for padding for 64-bit alignment
- * @NL80211_STA_INFO_ACK_SIGNAL: signal strength of the last ACK frame(u8, dBm)
- * @NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG: avg signal strength of (data)
- * ACK frame (s8, dBm)
- * @__NL80211_STA_INFO_AFTER_LAST: internal
- * @NL80211_STA_INFO_MAX: highest possible station info attribute
- */
-enum nl80211_sta_info {
- __NL80211_STA_INFO_INVALID,
- NL80211_STA_INFO_INACTIVE_TIME,
- NL80211_STA_INFO_RX_BYTES,
- NL80211_STA_INFO_TX_BYTES,
- NL80211_STA_INFO_LLID,
- NL80211_STA_INFO_PLID,
- NL80211_STA_INFO_PLINK_STATE,
- NL80211_STA_INFO_SIGNAL,
- NL80211_STA_INFO_TX_BITRATE,
- NL80211_STA_INFO_RX_PACKETS,
- NL80211_STA_INFO_TX_PACKETS,
- NL80211_STA_INFO_TX_RETRIES,
- NL80211_STA_INFO_TX_FAILED,
- NL80211_STA_INFO_SIGNAL_AVG,
- NL80211_STA_INFO_RX_BITRATE,
- NL80211_STA_INFO_BSS_PARAM,
- NL80211_STA_INFO_CONNECTED_TIME,
- NL80211_STA_INFO_STA_FLAGS,
- NL80211_STA_INFO_BEACON_LOSS,
- NL80211_STA_INFO_T_OFFSET,
- NL80211_STA_INFO_LOCAL_PM,
- NL80211_STA_INFO_PEER_PM,
- NL80211_STA_INFO_NONPEER_PM,
- NL80211_STA_INFO_RX_BYTES64,
- NL80211_STA_INFO_TX_BYTES64,
- NL80211_STA_INFO_CHAIN_SIGNAL,
- NL80211_STA_INFO_CHAIN_SIGNAL_AVG,
- NL80211_STA_INFO_EXPECTED_THROUGHPUT,
- NL80211_STA_INFO_RX_DROP_MISC,
- NL80211_STA_INFO_BEACON_RX,
- NL80211_STA_INFO_BEACON_SIGNAL_AVG,
- NL80211_STA_INFO_TID_STATS,
- NL80211_STA_INFO_RX_DURATION,
- NL80211_STA_INFO_PAD,
- NL80211_STA_INFO_ACK_SIGNAL,
- NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG,
-
- /* keep last */
- __NL80211_STA_INFO_AFTER_LAST,
- NL80211_STA_INFO_MAX = __NL80211_STA_INFO_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_tid_stats - per TID statistics attributes
- * @__NL80211_TID_STATS_INVALID: attribute number 0 is reserved
- * @NL80211_TID_STATS_RX_MSDU: number of MSDUs received (u64)
- * @NL80211_TID_STATS_TX_MSDU: number of MSDUs transmitted (or
- * attempted to transmit; u64)
- * @NL80211_TID_STATS_TX_MSDU_RETRIES: number of retries for
- * transmitted MSDUs (not counting the first attempt; u64)
- * @NL80211_TID_STATS_TX_MSDU_FAILED: number of failed transmitted
- * MSDUs (u64)
- * @NL80211_TID_STATS_PAD: attribute used for padding for 64-bit alignment
- * @NL80211_TID_STATS_TXQ_STATS: TXQ stats (nested attribute)
- * @NUM_NL80211_TID_STATS: number of attributes here
- * @NL80211_TID_STATS_MAX: highest numbered attribute here
- */
-enum nl80211_tid_stats {
- __NL80211_TID_STATS_INVALID,
- NL80211_TID_STATS_RX_MSDU,
- NL80211_TID_STATS_TX_MSDU,
- NL80211_TID_STATS_TX_MSDU_RETRIES,
- NL80211_TID_STATS_TX_MSDU_FAILED,
- NL80211_TID_STATS_PAD,
- NL80211_TID_STATS_TXQ_STATS,
-
- /* keep last */
- NUM_NL80211_TID_STATS,
- NL80211_TID_STATS_MAX = NUM_NL80211_TID_STATS - 1
-};
-
-/**
- * enum nl80211_txq_stats - per TXQ statistics attributes
- * @__NL80211_TXQ_STATS_INVALID: attribute number 0 is reserved
- * @NUM_NL80211_TXQ_STATS: number of attributes here
- * @NL80211_TXQ_STATS_BACKLOG_BYTES: number of bytes currently backlogged
- * @NL80211_TXQ_STATS_BACKLOG_PACKETS: number of packets currently
- * backlogged
- * @NL80211_TXQ_STATS_FLOWS: total number of new flows seen
- * @NL80211_TXQ_STATS_DROPS: total number of packet drops
- * @NL80211_TXQ_STATS_ECN_MARKS: total number of packet ECN marks
- * @NL80211_TXQ_STATS_OVERLIMIT: number of drops due to queue space overflow
- * @NL80211_TXQ_STATS_OVERMEMORY: number of drops due to memory limit overflow
- * (only for per-phy stats)
- * @NL80211_TXQ_STATS_COLLISIONS: number of hash collisions
- * @NL80211_TXQ_STATS_TX_BYTES: total number of bytes dequeued from TXQ
- * @NL80211_TXQ_STATS_TX_PACKETS: total number of packets dequeued from TXQ
- * @NL80211_TXQ_STATS_MAX_FLOWS: number of flow buckets for PHY
- * @NL80211_TXQ_STATS_MAX: highest numbered attribute here
- */
-enum nl80211_txq_stats {
- __NL80211_TXQ_STATS_INVALID,
- NL80211_TXQ_STATS_BACKLOG_BYTES,
- NL80211_TXQ_STATS_BACKLOG_PACKETS,
- NL80211_TXQ_STATS_FLOWS,
- NL80211_TXQ_STATS_DROPS,
- NL80211_TXQ_STATS_ECN_MARKS,
- NL80211_TXQ_STATS_OVERLIMIT,
- NL80211_TXQ_STATS_OVERMEMORY,
- NL80211_TXQ_STATS_COLLISIONS,
- NL80211_TXQ_STATS_TX_BYTES,
- NL80211_TXQ_STATS_TX_PACKETS,
- NL80211_TXQ_STATS_MAX_FLOWS,
-
- /* keep last */
- NUM_NL80211_TXQ_STATS,
- NL80211_TXQ_STATS_MAX = NUM_NL80211_TXQ_STATS - 1
-};
-
-/**
- * enum nl80211_mpath_flags - nl80211 mesh path flags
- *
- * @NL80211_MPATH_FLAG_ACTIVE: the mesh path is active
- * @NL80211_MPATH_FLAG_RESOLVING: the mesh path discovery process is running
- * @NL80211_MPATH_FLAG_SN_VALID: the mesh path contains a valid SN
- * @NL80211_MPATH_FLAG_FIXED: the mesh path has been manually set
- * @NL80211_MPATH_FLAG_RESOLVED: the mesh path discovery process succeeded
- */
-enum nl80211_mpath_flags {
- NL80211_MPATH_FLAG_ACTIVE = 1<<0,
- NL80211_MPATH_FLAG_RESOLVING = 1<<1,
- NL80211_MPATH_FLAG_SN_VALID = 1<<2,
- NL80211_MPATH_FLAG_FIXED = 1<<3,
- NL80211_MPATH_FLAG_RESOLVED = 1<<4,
-};
-
-/**
- * enum nl80211_mpath_info - mesh path information
- *
- * These attribute types are used with %NL80211_ATTR_MPATH_INFO when getting
- * information about a mesh path.
- *
- * @__NL80211_MPATH_INFO_INVALID: attribute number 0 is reserved
- * @NL80211_MPATH_INFO_FRAME_QLEN: number of queued frames for this destination
- * @NL80211_MPATH_INFO_SN: destination sequence number
- * @NL80211_MPATH_INFO_METRIC: metric (cost) of this mesh path
- * @NL80211_MPATH_INFO_EXPTIME: expiration time for the path, in msec from now
- * @NL80211_MPATH_INFO_FLAGS: mesh path flags, enumerated in
- * &enum nl80211_mpath_flags;
- * @NL80211_MPATH_INFO_DISCOVERY_TIMEOUT: total path discovery timeout, in msec
- * @NL80211_MPATH_INFO_DISCOVERY_RETRIES: mesh path discovery retries
- * @NL80211_MPATH_INFO_MAX: highest mesh path information attribute number
- * currently defind
- * @__NL80211_MPATH_INFO_AFTER_LAST: internal use
- */
-enum nl80211_mpath_info {
- __NL80211_MPATH_INFO_INVALID,
- NL80211_MPATH_INFO_FRAME_QLEN,
- NL80211_MPATH_INFO_SN,
- NL80211_MPATH_INFO_METRIC,
- NL80211_MPATH_INFO_EXPTIME,
- NL80211_MPATH_INFO_FLAGS,
- NL80211_MPATH_INFO_DISCOVERY_TIMEOUT,
- NL80211_MPATH_INFO_DISCOVERY_RETRIES,
-
- /* keep last */
- __NL80211_MPATH_INFO_AFTER_LAST,
- NL80211_MPATH_INFO_MAX = __NL80211_MPATH_INFO_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_band_iftype_attr - Interface type data attributes
- *
- * @__NL80211_BAND_IFTYPE_ATTR_INVALID: attribute number 0 is reserved
- * @NL80211_BAND_IFTYPE_ATTR_IFTYPES: nested attribute containing a flag attribute
- * for each interface type that supports the band data
- * @NL80211_BAND_IFTYPE_ATTR_HE_CAP_MAC: HE MAC capabilities as in HE
- * capabilities IE
- * @NL80211_BAND_IFTYPE_ATTR_HE_CAP_PHY: HE PHY capabilities as in HE
- * capabilities IE
- * @NL80211_BAND_IFTYPE_ATTR_HE_CAP_MCS_SET: HE supported NSS/MCS as in HE
- * capabilities IE
- * @NL80211_BAND_IFTYPE_ATTR_HE_CAP_PPE: HE PPE thresholds information as
- * defined in HE capabilities IE
- * @NL80211_BAND_IFTYPE_ATTR_MAX: highest band HE capability attribute currently
- * defined
- * @__NL80211_BAND_IFTYPE_ATTR_AFTER_LAST: internal use
- */
-enum nl80211_band_iftype_attr {
- __NL80211_BAND_IFTYPE_ATTR_INVALID,
-
- NL80211_BAND_IFTYPE_ATTR_IFTYPES,
- NL80211_BAND_IFTYPE_ATTR_HE_CAP_MAC,
- NL80211_BAND_IFTYPE_ATTR_HE_CAP_PHY,
- NL80211_BAND_IFTYPE_ATTR_HE_CAP_MCS_SET,
- NL80211_BAND_IFTYPE_ATTR_HE_CAP_PPE,
-
- /* keep last */
- __NL80211_BAND_IFTYPE_ATTR_AFTER_LAST,
- NL80211_BAND_IFTYPE_ATTR_MAX = __NL80211_BAND_IFTYPE_ATTR_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_band_attr - band attributes
- * @__NL80211_BAND_ATTR_INVALID: attribute number 0 is reserved
- * @NL80211_BAND_ATTR_FREQS: supported frequencies in this band,
- * an array of nested frequency attributes
- * @NL80211_BAND_ATTR_RATES: supported bitrates in this band,
- * an array of nested bitrate attributes
- * @NL80211_BAND_ATTR_HT_MCS_SET: 16-byte attribute containing the MCS set as
- * defined in 802.11n
- * @NL80211_BAND_ATTR_HT_CAPA: HT capabilities, as in the HT information IE
- * @NL80211_BAND_ATTR_HT_AMPDU_FACTOR: A-MPDU factor, as in 11n
- * @NL80211_BAND_ATTR_HT_AMPDU_DENSITY: A-MPDU density, as in 11n
- * @NL80211_BAND_ATTR_VHT_MCS_SET: 32-byte attribute containing the MCS set as
- * defined in 802.11ac
- * @NL80211_BAND_ATTR_VHT_CAPA: VHT capabilities, as in the HT information IE
- * @NL80211_BAND_ATTR_IFTYPE_DATA: nested array attribute, with each entry using
- * attributes from &enum nl80211_band_iftype_attr
- * @NL80211_BAND_ATTR_MAX: highest band attribute currently defined
- * @__NL80211_BAND_ATTR_AFTER_LAST: internal use
- */
-enum nl80211_band_attr {
- __NL80211_BAND_ATTR_INVALID,
- NL80211_BAND_ATTR_FREQS,
- NL80211_BAND_ATTR_RATES,
-
- NL80211_BAND_ATTR_HT_MCS_SET,
- NL80211_BAND_ATTR_HT_CAPA,
- NL80211_BAND_ATTR_HT_AMPDU_FACTOR,
- NL80211_BAND_ATTR_HT_AMPDU_DENSITY,
-
- NL80211_BAND_ATTR_VHT_MCS_SET,
- NL80211_BAND_ATTR_VHT_CAPA,
- NL80211_BAND_ATTR_IFTYPE_DATA,
-
- /* keep last */
- __NL80211_BAND_ATTR_AFTER_LAST,
- NL80211_BAND_ATTR_MAX = __NL80211_BAND_ATTR_AFTER_LAST - 1
-};
-
-#define NL80211_BAND_ATTR_HT_CAPA NL80211_BAND_ATTR_HT_CAPA
-
-/**
- * enum nl80211_wmm_rule - regulatory wmm rule
- *
- * @__NL80211_WMMR_INVALID: attribute number 0 is reserved
- * @NL80211_WMMR_CW_MIN: Minimum contention window slot.
- * @NL80211_WMMR_CW_MAX: Maximum contention window slot.
- * @NL80211_WMMR_AIFSN: Arbitration Inter Frame Space.
- * @NL80211_WMMR_TXOP: Maximum allowed tx operation time.
- * @nl80211_WMMR_MAX: highest possible wmm rule.
- * @__NL80211_WMMR_LAST: Internal use.
- */
-enum nl80211_wmm_rule {
- __NL80211_WMMR_INVALID,
- NL80211_WMMR_CW_MIN,
- NL80211_WMMR_CW_MAX,
- NL80211_WMMR_AIFSN,
- NL80211_WMMR_TXOP,
-
- /* keep last */
- __NL80211_WMMR_LAST,
- NL80211_WMMR_MAX = __NL80211_WMMR_LAST - 1
-};
-
-/**
- * enum nl80211_frequency_attr - frequency attributes
- * @__NL80211_FREQUENCY_ATTR_INVALID: attribute number 0 is reserved
- * @NL80211_FREQUENCY_ATTR_FREQ: Frequency in MHz
- * @NL80211_FREQUENCY_ATTR_DISABLED: Channel is disabled in current
- * regulatory domain.
- * @NL80211_FREQUENCY_ATTR_NO_IR: no mechanisms that initiate radiation
- * are permitted on this channel, this includes sending probe
- * requests, or modes of operation that require beaconing.
- * @NL80211_FREQUENCY_ATTR_RADAR: Radar detection is mandatory
- * on this channel in current regulatory domain.
- * @NL80211_FREQUENCY_ATTR_MAX_TX_POWER: Maximum transmission power in mBm
- * (100 * dBm).
- * @NL80211_FREQUENCY_ATTR_DFS_STATE: current state for DFS
- * (enum nl80211_dfs_state)
- * @NL80211_FREQUENCY_ATTR_DFS_TIME: time in miliseconds for how long
- * this channel is in this DFS state.
- * @NL80211_FREQUENCY_ATTR_NO_HT40_MINUS: HT40- isn't possible with this
- * channel as the control channel
- * @NL80211_FREQUENCY_ATTR_NO_HT40_PLUS: HT40+ isn't possible with this
- * channel as the control channel
- * @NL80211_FREQUENCY_ATTR_NO_80MHZ: any 80 MHz channel using this channel
- * as the primary or any of the secondary channels isn't possible,
- * this includes 80+80 channels
- * @NL80211_FREQUENCY_ATTR_NO_160MHZ: any 160 MHz (but not 80+80) channel
- * using this channel as the primary or any of the secondary channels
- * isn't possible
- * @NL80211_FREQUENCY_ATTR_DFS_CAC_TIME: DFS CAC time in milliseconds.
- * @NL80211_FREQUENCY_ATTR_INDOOR_ONLY: Only indoor use is permitted on this
- * channel. A channel that has the INDOOR_ONLY attribute can only be
- * used when there is a clear assessment that the device is operating in
- * an indoor surroundings, i.e., it is connected to AC power (and not
- * through portable DC inverters) or is under the control of a master
- * that is acting as an AP and is connected to AC power.
- * @NL80211_FREQUENCY_ATTR_IR_CONCURRENT: IR operation is allowed on this
- * channel if it's connected concurrently to a BSS on the same channel on
- * the 2 GHz band or to a channel in the same UNII band (on the 5 GHz
- * band), and IEEE80211_CHAN_RADAR is not set. Instantiating a GO or TDLS
- * off-channel on a channel that has the IR_CONCURRENT attribute set can be
- * done when there is a clear assessment that the device is operating under
- * the guidance of an authorized master, i.e., setting up a GO or TDLS
- * off-channel while the device is also connected to an AP with DFS and
- * radar detection on the UNII band (it is up to user-space, i.e.,
- * wpa_supplicant to perform the required verifications). Using this
- * attribute for IR is disallowed for master interfaces (IBSS, AP).
- * @NL80211_FREQUENCY_ATTR_NO_20MHZ: 20 MHz operation is not allowed
- * on this channel in current regulatory domain.
- * @NL80211_FREQUENCY_ATTR_NO_10MHZ: 10 MHz operation is not allowed
- * on this channel in current regulatory domain.
- * @NL80211_FREQUENCY_ATTR_WMM: this channel has wmm limitations.
- * This is a nested attribute that contains the wmm limitation per AC.
- * (see &enum nl80211_wmm_rule)
- * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
- * currently defined
- * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
- *
- * See https://apps.fcc.gov/eas/comments/GetPublishedDocument.html?id=327&tn=528122
- * for more information on the FCC description of the relaxations allowed
- * by NL80211_FREQUENCY_ATTR_INDOOR_ONLY and
- * NL80211_FREQUENCY_ATTR_IR_CONCURRENT.
- */
-enum nl80211_frequency_attr {
- __NL80211_FREQUENCY_ATTR_INVALID,
- NL80211_FREQUENCY_ATTR_FREQ,
- NL80211_FREQUENCY_ATTR_DISABLED,
- NL80211_FREQUENCY_ATTR_NO_IR,
- __NL80211_FREQUENCY_ATTR_NO_IBSS,
- NL80211_FREQUENCY_ATTR_RADAR,
- NL80211_FREQUENCY_ATTR_MAX_TX_POWER,
- NL80211_FREQUENCY_ATTR_DFS_STATE,
- NL80211_FREQUENCY_ATTR_DFS_TIME,
- NL80211_FREQUENCY_ATTR_NO_HT40_MINUS,
- NL80211_FREQUENCY_ATTR_NO_HT40_PLUS,
- NL80211_FREQUENCY_ATTR_NO_80MHZ,
- NL80211_FREQUENCY_ATTR_NO_160MHZ,
- NL80211_FREQUENCY_ATTR_DFS_CAC_TIME,
- NL80211_FREQUENCY_ATTR_INDOOR_ONLY,
- NL80211_FREQUENCY_ATTR_IR_CONCURRENT,
- NL80211_FREQUENCY_ATTR_NO_20MHZ,
- NL80211_FREQUENCY_ATTR_NO_10MHZ,
- NL80211_FREQUENCY_ATTR_WMM,
-
- /* keep last */
- __NL80211_FREQUENCY_ATTR_AFTER_LAST,
- NL80211_FREQUENCY_ATTR_MAX = __NL80211_FREQUENCY_ATTR_AFTER_LAST - 1
-};
-
-#define NL80211_FREQUENCY_ATTR_MAX_TX_POWER NL80211_FREQUENCY_ATTR_MAX_TX_POWER
-#define NL80211_FREQUENCY_ATTR_PASSIVE_SCAN NL80211_FREQUENCY_ATTR_NO_IR
-#define NL80211_FREQUENCY_ATTR_NO_IBSS NL80211_FREQUENCY_ATTR_NO_IR
-#define NL80211_FREQUENCY_ATTR_NO_IR NL80211_FREQUENCY_ATTR_NO_IR
-#define NL80211_FREQUENCY_ATTR_GO_CONCURRENT \
- NL80211_FREQUENCY_ATTR_IR_CONCURRENT
-
-/**
- * enum nl80211_bitrate_attr - bitrate attributes
- * @__NL80211_BITRATE_ATTR_INVALID: attribute number 0 is reserved
- * @NL80211_BITRATE_ATTR_RATE: Bitrate in units of 100 kbps
- * @NL80211_BITRATE_ATTR_2GHZ_SHORTPREAMBLE: Short preamble supported
- * in 2.4 GHz band.
- * @NL80211_BITRATE_ATTR_MAX: highest bitrate attribute number
- * currently defined
- * @__NL80211_BITRATE_ATTR_AFTER_LAST: internal use
- */
-enum nl80211_bitrate_attr {
- __NL80211_BITRATE_ATTR_INVALID,
- NL80211_BITRATE_ATTR_RATE,
- NL80211_BITRATE_ATTR_2GHZ_SHORTPREAMBLE,
-
- /* keep last */
- __NL80211_BITRATE_ATTR_AFTER_LAST,
- NL80211_BITRATE_ATTR_MAX = __NL80211_BITRATE_ATTR_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_initiator - Indicates the initiator of a reg domain request
- * @NL80211_REGDOM_SET_BY_CORE: Core queried CRDA for a dynamic world
- * regulatory domain.
- * @NL80211_REGDOM_SET_BY_USER: User asked the wireless core to set the
- * regulatory domain.
- * @NL80211_REGDOM_SET_BY_DRIVER: a wireless drivers has hinted to the
- * wireless core it thinks its knows the regulatory domain we should be in.
- * @NL80211_REGDOM_SET_BY_COUNTRY_IE: the wireless core has received an
- * 802.11 country information element with regulatory information it
- * thinks we should consider. cfg80211 only processes the country
- * code from the IE, and relies on the regulatory domain information
- * structure passed by userspace (CRDA) from our wireless-regdb.
- * If a channel is enabled but the country code indicates it should
- * be disabled we disable the channel and re-enable it upon disassociation.
- */
-enum nl80211_reg_initiator {
- NL80211_REGDOM_SET_BY_CORE,
- NL80211_REGDOM_SET_BY_USER,
- NL80211_REGDOM_SET_BY_DRIVER,
- NL80211_REGDOM_SET_BY_COUNTRY_IE,
-};
-
-/**
- * enum nl80211_reg_type - specifies the type of regulatory domain
- * @NL80211_REGDOM_TYPE_COUNTRY: the regulatory domain set is one that pertains
- * to a specific country. When this is set you can count on the
- * ISO / IEC 3166 alpha2 country code being valid.
- * @NL80211_REGDOM_TYPE_WORLD: the regulatory set domain is the world regulatory
- * domain.
- * @NL80211_REGDOM_TYPE_CUSTOM_WORLD: the regulatory domain set is a custom
- * driver specific world regulatory domain. These do not apply system-wide
- * and are only applicable to the individual devices which have requested
- * them to be applied.
- * @NL80211_REGDOM_TYPE_INTERSECTION: the regulatory domain set is the product
- * of an intersection between two regulatory domains -- the previously
- * set regulatory domain on the system and the last accepted regulatory
- * domain request to be processed.
- */
-enum nl80211_reg_type {
- NL80211_REGDOM_TYPE_COUNTRY,
- NL80211_REGDOM_TYPE_WORLD,
- NL80211_REGDOM_TYPE_CUSTOM_WORLD,
- NL80211_REGDOM_TYPE_INTERSECTION,
-};
-
-/**
- * enum nl80211_reg_rule_attr - regulatory rule attributes
- * @__NL80211_REG_RULE_ATTR_INVALID: attribute number 0 is reserved
- * @NL80211_ATTR_REG_RULE_FLAGS: a set of flags which specify additional
- * considerations for a given frequency range. These are the
- * &enum nl80211_reg_rule_flags.
- * @NL80211_ATTR_FREQ_RANGE_START: starting frequencry for the regulatory
- * rule in KHz. This is not a center of frequency but an actual regulatory
- * band edge.
- * @NL80211_ATTR_FREQ_RANGE_END: ending frequency for the regulatory rule
- * in KHz. This is not a center a frequency but an actual regulatory
- * band edge.
- * @NL80211_ATTR_FREQ_RANGE_MAX_BW: maximum allowed bandwidth for this
- * frequency range, in KHz.
- * @NL80211_ATTR_POWER_RULE_MAX_ANT_GAIN: the maximum allowed antenna gain
- * for a given frequency range. The value is in mBi (100 * dBi).
- * If you don't have one then don't send this.
- * @NL80211_ATTR_POWER_RULE_MAX_EIRP: the maximum allowed EIRP for
- * a given frequency range. The value is in mBm (100 * dBm).
- * @NL80211_ATTR_DFS_CAC_TIME: DFS CAC time in milliseconds.
- * If not present or 0 default CAC time will be used.
- * @NL80211_REG_RULE_ATTR_MAX: highest regulatory rule attribute number
- * currently defined
- * @__NL80211_REG_RULE_ATTR_AFTER_LAST: internal use
- */
-enum nl80211_reg_rule_attr {
- __NL80211_REG_RULE_ATTR_INVALID,
- NL80211_ATTR_REG_RULE_FLAGS,
-
- NL80211_ATTR_FREQ_RANGE_START,
- NL80211_ATTR_FREQ_RANGE_END,
- NL80211_ATTR_FREQ_RANGE_MAX_BW,
-
- NL80211_ATTR_POWER_RULE_MAX_ANT_GAIN,
- NL80211_ATTR_POWER_RULE_MAX_EIRP,
-
- NL80211_ATTR_DFS_CAC_TIME,
-
- /* keep last */
- __NL80211_REG_RULE_ATTR_AFTER_LAST,
- NL80211_REG_RULE_ATTR_MAX = __NL80211_REG_RULE_ATTR_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_sched_scan_match_attr - scheduled scan match attributes
- * @__NL80211_SCHED_SCAN_MATCH_ATTR_INVALID: attribute number 0 is reserved
- * @NL80211_SCHED_SCAN_MATCH_ATTR_SSID: SSID to be used for matching,
- * only report BSS with matching SSID.
- * (This cannot be used together with BSSID.)
- * @NL80211_SCHED_SCAN_MATCH_ATTR_RSSI: RSSI threshold (in dBm) for reporting a
- * BSS in scan results. Filtering is turned off if not specified. Note that
- * if this attribute is in a match set of its own, then it is treated as
- * the default value for all matchsets with an SSID, rather than being a
- * matchset of its own without an RSSI filter. This is due to problems with
- * how this API was implemented in the past. Also, due to the same problem,
- * the only way to create a matchset with only an RSSI filter (with this
- * attribute) is if there's only a single matchset with the RSSI attribute.
- * @NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI: Flag indicating whether
- * %NL80211_SCHED_SCAN_MATCH_ATTR_RSSI to be used as absolute RSSI or
- * relative to current bss's RSSI.
- * @NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST: When present the RSSI level for
- * BSS-es in the specified band is to be adjusted before doing
- * RSSI-based BSS selection. The attribute value is a packed structure
- * value as specified by &struct nl80211_bss_select_rssi_adjust.
- * @NL80211_SCHED_SCAN_MATCH_ATTR_BSSID: BSSID to be used for matching
- * (this cannot be used together with SSID).
- * @NL80211_SCHED_SCAN_MATCH_ATTR_MAX: highest scheduled scan filter
- * attribute number currently defined
- * @__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST: internal use
- */
-enum nl80211_sched_scan_match_attr {
- __NL80211_SCHED_SCAN_MATCH_ATTR_INVALID,
-
- NL80211_SCHED_SCAN_MATCH_ATTR_SSID,
- NL80211_SCHED_SCAN_MATCH_ATTR_RSSI,
- NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI,
- NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST,
- NL80211_SCHED_SCAN_MATCH_ATTR_BSSID,
-
- /* keep last */
- __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST,
- NL80211_SCHED_SCAN_MATCH_ATTR_MAX =
- __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST - 1
-};
-
-/* only for backward compatibility */
-#define NL80211_ATTR_SCHED_SCAN_MATCH_SSID NL80211_SCHED_SCAN_MATCH_ATTR_SSID
-
-/**
- * enum nl80211_reg_rule_flags - regulatory rule flags
- *
- * @NL80211_RRF_NO_OFDM: OFDM modulation not allowed
- * @NL80211_RRF_NO_CCK: CCK modulation not allowed
- * @NL80211_RRF_NO_INDOOR: indoor operation not allowed
- * @NL80211_RRF_NO_OUTDOOR: outdoor operation not allowed
- * @NL80211_RRF_DFS: DFS support is required to be used
- * @NL80211_RRF_PTP_ONLY: this is only for Point To Point links
- * @NL80211_RRF_PTMP_ONLY: this is only for Point To Multi Point links
- * @NL80211_RRF_NO_IR: no mechanisms that initiate radiation are allowed,
- * this includes probe requests or modes of operation that require
- * beaconing.
- * @NL80211_RRF_AUTO_BW: maximum available bandwidth should be calculated
- * base on contiguous rules and wider channels will be allowed to cross
- * multiple contiguous/overlapping frequency ranges.
- * @NL80211_RRF_IR_CONCURRENT: See %NL80211_FREQUENCY_ATTR_IR_CONCURRENT
- * @NL80211_RRF_NO_HT40MINUS: channels can't be used in HT40- operation
- * @NL80211_RRF_NO_HT40PLUS: channels can't be used in HT40+ operation
- * @NL80211_RRF_NO_80MHZ: 80MHz operation not allowed
- * @NL80211_RRF_NO_160MHZ: 160MHz operation not allowed
- */
-enum nl80211_reg_rule_flags {
- NL80211_RRF_NO_OFDM = 1<<0,
- NL80211_RRF_NO_CCK = 1<<1,
- NL80211_RRF_NO_INDOOR = 1<<2,
- NL80211_RRF_NO_OUTDOOR = 1<<3,
- NL80211_RRF_DFS = 1<<4,
- NL80211_RRF_PTP_ONLY = 1<<5,
- NL80211_RRF_PTMP_ONLY = 1<<6,
- NL80211_RRF_NO_IR = 1<<7,
- __NL80211_RRF_NO_IBSS = 1<<8,
- NL80211_RRF_AUTO_BW = 1<<11,
- NL80211_RRF_IR_CONCURRENT = 1<<12,
- NL80211_RRF_NO_HT40MINUS = 1<<13,
- NL80211_RRF_NO_HT40PLUS = 1<<14,
- NL80211_RRF_NO_80MHZ = 1<<15,
- NL80211_RRF_NO_160MHZ = 1<<16,
-};
-
-#define NL80211_RRF_PASSIVE_SCAN NL80211_RRF_NO_IR
-#define NL80211_RRF_NO_IBSS NL80211_RRF_NO_IR
-#define NL80211_RRF_NO_IR NL80211_RRF_NO_IR
-#define NL80211_RRF_NO_HT40 (NL80211_RRF_NO_HT40MINUS |\
- NL80211_RRF_NO_HT40PLUS)
-#define NL80211_RRF_GO_CONCURRENT NL80211_RRF_IR_CONCURRENT
-
-/* For backport compatibility with older userspace */
-#define NL80211_RRF_NO_IR_ALL (NL80211_RRF_NO_IR | __NL80211_RRF_NO_IBSS)
-
-/**
- * enum nl80211_dfs_regions - regulatory DFS regions
- *
- * @NL80211_DFS_UNSET: Country has no DFS master region specified
- * @NL80211_DFS_FCC: Country follows DFS master rules from FCC
- * @NL80211_DFS_ETSI: Country follows DFS master rules from ETSI
- * @NL80211_DFS_JP: Country follows DFS master rules from JP/MKK/Telec
- */
-enum nl80211_dfs_regions {
- NL80211_DFS_UNSET = 0,
- NL80211_DFS_FCC = 1,
- NL80211_DFS_ETSI = 2,
- NL80211_DFS_JP = 3,
-};
-
-/**
- * enum nl80211_user_reg_hint_type - type of user regulatory hint
- *
- * @NL80211_USER_REG_HINT_USER: a user sent the hint. This is always
- * assumed if the attribute is not set.
- * @NL80211_USER_REG_HINT_CELL_BASE: the hint comes from a cellular
- * base station. Device drivers that have been tested to work
- * properly to support this type of hint can enable these hints
- * by setting the NL80211_FEATURE_CELL_BASE_REG_HINTS feature
- * capability on the struct wiphy. The wireless core will
- * ignore all cell base station hints until at least one device
- * present has been registered with the wireless core that
- * has listed NL80211_FEATURE_CELL_BASE_REG_HINTS as a
- * supported feature.
- * @NL80211_USER_REG_HINT_INDOOR: a user sent an hint indicating that the
- * platform is operating in an indoor environment.
- */
-enum nl80211_user_reg_hint_type {
- NL80211_USER_REG_HINT_USER = 0,
- NL80211_USER_REG_HINT_CELL_BASE = 1,
- NL80211_USER_REG_HINT_INDOOR = 2,
-};
-
-/**
- * enum nl80211_survey_info - survey information
- *
- * These attribute types are used with %NL80211_ATTR_SURVEY_INFO
- * when getting information about a survey.
- *
- * @__NL80211_SURVEY_INFO_INVALID: attribute number 0 is reserved
- * @NL80211_SURVEY_INFO_FREQUENCY: center frequency of channel
- * @NL80211_SURVEY_INFO_NOISE: noise level of channel (u8, dBm)
- * @NL80211_SURVEY_INFO_IN_USE: channel is currently being used
- * @NL80211_SURVEY_INFO_TIME: amount of time (in ms) that the radio
- * was turned on (on channel or globally)
- * @NL80211_SURVEY_INFO_TIME_BUSY: amount of the time the primary
- * channel was sensed busy (either due to activity or energy detect)
- * @NL80211_SURVEY_INFO_TIME_EXT_BUSY: amount of time the extension
- * channel was sensed busy
- * @NL80211_SURVEY_INFO_TIME_RX: amount of time the radio spent
- * receiving data (on channel or globally)
- * @NL80211_SURVEY_INFO_TIME_TX: amount of time the radio spent
- * transmitting data (on channel or globally)
- * @NL80211_SURVEY_INFO_TIME_SCAN: time the radio spent for scan
- * (on this channel or globally)
- * @NL80211_SURVEY_INFO_PAD: attribute used for padding for 64-bit alignment
- * @NL80211_SURVEY_INFO_MAX: highest survey info attribute number
- * currently defined
- * @__NL80211_SURVEY_INFO_AFTER_LAST: internal use
- */
-enum nl80211_survey_info {
- __NL80211_SURVEY_INFO_INVALID,
- NL80211_SURVEY_INFO_FREQUENCY,
- NL80211_SURVEY_INFO_NOISE,
- NL80211_SURVEY_INFO_IN_USE,
- NL80211_SURVEY_INFO_TIME,
- NL80211_SURVEY_INFO_TIME_BUSY,
- NL80211_SURVEY_INFO_TIME_EXT_BUSY,
- NL80211_SURVEY_INFO_TIME_RX,
- NL80211_SURVEY_INFO_TIME_TX,
- NL80211_SURVEY_INFO_TIME_SCAN,
- NL80211_SURVEY_INFO_PAD,
-
- /* keep last */
- __NL80211_SURVEY_INFO_AFTER_LAST,
- NL80211_SURVEY_INFO_MAX = __NL80211_SURVEY_INFO_AFTER_LAST - 1
-};
-
-/* keep old names for compatibility */
-#define NL80211_SURVEY_INFO_CHANNEL_TIME NL80211_SURVEY_INFO_TIME
-#define NL80211_SURVEY_INFO_CHANNEL_TIME_BUSY NL80211_SURVEY_INFO_TIME_BUSY
-#define NL80211_SURVEY_INFO_CHANNEL_TIME_EXT_BUSY NL80211_SURVEY_INFO_TIME_EXT_BUSY
-#define NL80211_SURVEY_INFO_CHANNEL_TIME_RX NL80211_SURVEY_INFO_TIME_RX
-#define NL80211_SURVEY_INFO_CHANNEL_TIME_TX NL80211_SURVEY_INFO_TIME_TX
-
-/**
- * enum nl80211_mntr_flags - monitor configuration flags
- *
- * Monitor configuration flags.
- *
- * @__NL80211_MNTR_FLAG_INVALID: reserved
- *
- * @NL80211_MNTR_FLAG_FCSFAIL: pass frames with bad FCS
- * @NL80211_MNTR_FLAG_PLCPFAIL: pass frames with bad PLCP
- * @NL80211_MNTR_FLAG_CONTROL: pass control frames
- * @NL80211_MNTR_FLAG_OTHER_BSS: disable BSSID filtering
- * @NL80211_MNTR_FLAG_COOK_FRAMES: report frames after processing.
- * overrides all other flags.
- * @NL80211_MNTR_FLAG_ACTIVE: use the configured MAC address
- * and ACK incoming unicast packets.
- *
- * @__NL80211_MNTR_FLAG_AFTER_LAST: internal use
- * @NL80211_MNTR_FLAG_MAX: highest possible monitor flag
- */
-enum nl80211_mntr_flags {
- __NL80211_MNTR_FLAG_INVALID,
- NL80211_MNTR_FLAG_FCSFAIL,
- NL80211_MNTR_FLAG_PLCPFAIL,
- NL80211_MNTR_FLAG_CONTROL,
- NL80211_MNTR_FLAG_OTHER_BSS,
- NL80211_MNTR_FLAG_COOK_FRAMES,
- NL80211_MNTR_FLAG_ACTIVE,
-
- /* keep last */
- __NL80211_MNTR_FLAG_AFTER_LAST,
- NL80211_MNTR_FLAG_MAX = __NL80211_MNTR_FLAG_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_mesh_power_mode - mesh power save modes
- *
- * @NL80211_MESH_POWER_UNKNOWN: The mesh power mode of the mesh STA is
- * not known or has not been set yet.
- * @NL80211_MESH_POWER_ACTIVE: Active mesh power mode. The mesh STA is
- * in Awake state all the time.
- * @NL80211_MESH_POWER_LIGHT_SLEEP: Light sleep mode. The mesh STA will
- * alternate between Active and Doze states, but will wake up for
- * neighbor's beacons.
- * @NL80211_MESH_POWER_DEEP_SLEEP: Deep sleep mode. The mesh STA will
- * alternate between Active and Doze states, but may not wake up
- * for neighbor's beacons.
- *
- * @__NL80211_MESH_POWER_AFTER_LAST - internal use
- * @NL80211_MESH_POWER_MAX - highest possible power save level
- */
-
-enum nl80211_mesh_power_mode {
- NL80211_MESH_POWER_UNKNOWN,
- NL80211_MESH_POWER_ACTIVE,
- NL80211_MESH_POWER_LIGHT_SLEEP,
- NL80211_MESH_POWER_DEEP_SLEEP,
-
- __NL80211_MESH_POWER_AFTER_LAST,
- NL80211_MESH_POWER_MAX = __NL80211_MESH_POWER_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_meshconf_params - mesh configuration parameters
- *
- * Mesh configuration parameters. These can be changed while the mesh is
- * active.
- *
- * @__NL80211_MESHCONF_INVALID: internal use
- *
- * @NL80211_MESHCONF_RETRY_TIMEOUT: specifies the initial retry timeout in
- * millisecond units, used by the Peer Link Open message
- *
- * @NL80211_MESHCONF_CONFIRM_TIMEOUT: specifies the initial confirm timeout, in
- * millisecond units, used by the peer link management to close a peer link
- *
- * @NL80211_MESHCONF_HOLDING_TIMEOUT: specifies the holding timeout, in
- * millisecond units
- *
- * @NL80211_MESHCONF_MAX_PEER_LINKS: maximum number of peer links allowed
- * on this mesh interface
- *
- * @NL80211_MESHCONF_MAX_RETRIES: specifies the maximum number of peer link
- * open retries that can be sent to establish a new peer link instance in a
- * mesh
- *
- * @NL80211_MESHCONF_TTL: specifies the value of TTL field set at a source mesh
- * point.
- *
- * @NL80211_MESHCONF_AUTO_OPEN_PLINKS: whether we should automatically open
- * peer links when we detect compatible mesh peers. Disabled if
- * @NL80211_MESH_SETUP_USERSPACE_MPM or @NL80211_MESH_SETUP_USERSPACE_AMPE are
- * set.
- *
- * @NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES: the number of action frames
- * containing a PREQ that an MP can send to a particular destination (path
- * target)
- *
- * @NL80211_MESHCONF_PATH_REFRESH_TIME: how frequently to refresh mesh paths
- * (in milliseconds)
- *
- * @NL80211_MESHCONF_MIN_DISCOVERY_TIMEOUT: minimum length of time to wait
- * until giving up on a path discovery (in milliseconds)
- *
- * @NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT: The time (in TUs) for which mesh
- * points receiving a PREQ shall consider the forwarding information from
- * the root to be valid. (TU = time unit)
- *
- * @NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL: The minimum interval of time (in
- * TUs) during which an MP can send only one action frame containing a PREQ
- * reference element
- *
- * @NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME: The interval of time (in TUs)
- * that it takes for an HWMP information element to propagate across the
- * mesh
- *
- * @NL80211_MESHCONF_HWMP_ROOTMODE: whether root mode is enabled or not
- *
- * @NL80211_MESHCONF_ELEMENT_TTL: specifies the value of TTL field set at a
- * source mesh point for path selection elements.
- *
- * @NL80211_MESHCONF_HWMP_RANN_INTERVAL: The interval of time (in TUs) between
- * root announcements are transmitted.
- *
- * @NL80211_MESHCONF_GATE_ANNOUNCEMENTS: Advertise that this mesh station has
- * access to a broader network beyond the MBSS. This is done via Root
- * Announcement frames.
- *
- * @NL80211_MESHCONF_HWMP_PERR_MIN_INTERVAL: The minimum interval of time (in
- * TUs) during which a mesh STA can send only one Action frame containing a
- * PERR element.
- *
- * @NL80211_MESHCONF_FORWARDING: set Mesh STA as forwarding or non-forwarding
- * or forwarding entity (default is TRUE - forwarding entity)
- *
- * @NL80211_MESHCONF_RSSI_THRESHOLD: RSSI threshold in dBm. This specifies the
- * threshold for average signal strength of candidate station to establish
- * a peer link.
- *
- * @NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR: maximum number of neighbors
- * to synchronize to for 11s default synchronization method
- * (see 11C.12.2.2)
- *
- * @NL80211_MESHCONF_HT_OPMODE: set mesh HT protection mode.
- *
- * @NL80211_MESHCONF_ATTR_MAX: highest possible mesh configuration attribute
- *
- * @NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT: The time (in TUs) for
- * which mesh STAs receiving a proactive PREQ shall consider the forwarding
- * information to the root mesh STA to be valid.
- *
- * @NL80211_MESHCONF_HWMP_ROOT_INTERVAL: The interval of time (in TUs) between
- * proactive PREQs are transmitted.
- *
- * @NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL: The minimum interval of time
- * (in TUs) during which a mesh STA can send only one Action frame
- * containing a PREQ element for root path confirmation.
- *
- * @NL80211_MESHCONF_POWER_MODE: Default mesh power mode for new peer links.
- * type &enum nl80211_mesh_power_mode (u32)
- *
- * @NL80211_MESHCONF_AWAKE_WINDOW: awake window duration (in TUs)
- *
- * @NL80211_MESHCONF_PLINK_TIMEOUT: If no tx activity is seen from a STA we've
- * established peering with for longer than this time (in seconds), then
- * remove it from the STA's list of peers. You may set this to 0 to disable
- * the removal of the STA. Default is 30 minutes.
- *
- * @__NL80211_MESHCONF_ATTR_AFTER_LAST: internal use
- */
-enum nl80211_meshconf_params {
- __NL80211_MESHCONF_INVALID,
- NL80211_MESHCONF_RETRY_TIMEOUT,
- NL80211_MESHCONF_CONFIRM_TIMEOUT,
- NL80211_MESHCONF_HOLDING_TIMEOUT,
- NL80211_MESHCONF_MAX_PEER_LINKS,
- NL80211_MESHCONF_MAX_RETRIES,
- NL80211_MESHCONF_TTL,
- NL80211_MESHCONF_AUTO_OPEN_PLINKS,
- NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES,
- NL80211_MESHCONF_PATH_REFRESH_TIME,
- NL80211_MESHCONF_MIN_DISCOVERY_TIMEOUT,
- NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT,
- NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL,
- NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME,
- NL80211_MESHCONF_HWMP_ROOTMODE,
- NL80211_MESHCONF_ELEMENT_TTL,
- NL80211_MESHCONF_HWMP_RANN_INTERVAL,
- NL80211_MESHCONF_GATE_ANNOUNCEMENTS,
- NL80211_MESHCONF_HWMP_PERR_MIN_INTERVAL,
- NL80211_MESHCONF_FORWARDING,
- NL80211_MESHCONF_RSSI_THRESHOLD,
- NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR,
- NL80211_MESHCONF_HT_OPMODE,
- NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT,
- NL80211_MESHCONF_HWMP_ROOT_INTERVAL,
- NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL,
- NL80211_MESHCONF_POWER_MODE,
- NL80211_MESHCONF_AWAKE_WINDOW,
- NL80211_MESHCONF_PLINK_TIMEOUT,
-
- /* keep last */
- __NL80211_MESHCONF_ATTR_AFTER_LAST,
- NL80211_MESHCONF_ATTR_MAX = __NL80211_MESHCONF_ATTR_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_mesh_setup_params - mesh setup parameters
- *
- * Mesh setup parameters. These are used to start/join a mesh and cannot be
- * changed while the mesh is active.
- *
- * @__NL80211_MESH_SETUP_INVALID: Internal use
- *
- * @NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL: Enable this option to use a
- * vendor specific path selection algorithm or disable it to use the
- * default HWMP.
- *
- * @NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC: Enable this option to use a
- * vendor specific path metric or disable it to use the default Airtime
- * metric.
- *
- * @NL80211_MESH_SETUP_IE: Information elements for this mesh, for instance, a
- * robust security network ie, or a vendor specific information element
- * that vendors will use to identify the path selection methods and
- * metrics in use.
- *
- * @NL80211_MESH_SETUP_USERSPACE_AUTH: Enable this option if an authentication
- * daemon will be authenticating mesh candidates.
- *
- * @NL80211_MESH_SETUP_USERSPACE_AMPE: Enable this option if an authentication
- * daemon will be securing peer link frames. AMPE is a secured version of
- * Mesh Peering Management (MPM) and is implemented with the assistance of
- * a userspace daemon. When this flag is set, the kernel will send peer
- * management frames to a userspace daemon that will implement AMPE
- * functionality (security capabilities selection, key confirmation, and
- * key management). When the flag is unset (default), the kernel can
- * autonomously complete (unsecured) mesh peering without the need of a
- * userspace daemon.
- *
- * @NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC: Enable this option to use a
- * vendor specific synchronization method or disable it to use the default
- * neighbor offset synchronization
- *
- * @NL80211_MESH_SETUP_USERSPACE_MPM: Enable this option if userspace will
- * implement an MPM which handles peer allocation and state.
- *
- * @NL80211_MESH_SETUP_AUTH_PROTOCOL: Inform the kernel of the authentication
- * method (u8, as defined in IEEE 8.4.2.100.6, e.g. 0x1 for SAE).
- * Default is no authentication method required.
- *
- * @NL80211_MESH_SETUP_ATTR_MAX: highest possible mesh setup attribute number
- *
- * @__NL80211_MESH_SETUP_ATTR_AFTER_LAST: Internal use
- */
-enum nl80211_mesh_setup_params {
- __NL80211_MESH_SETUP_INVALID,
- NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL,
- NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC,
- NL80211_MESH_SETUP_IE,
- NL80211_MESH_SETUP_USERSPACE_AUTH,
- NL80211_MESH_SETUP_USERSPACE_AMPE,
- NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC,
- NL80211_MESH_SETUP_USERSPACE_MPM,
- NL80211_MESH_SETUP_AUTH_PROTOCOL,
-
- /* keep last */
- __NL80211_MESH_SETUP_ATTR_AFTER_LAST,
- NL80211_MESH_SETUP_ATTR_MAX = __NL80211_MESH_SETUP_ATTR_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_txq_attr - TX queue parameter attributes
- * @__NL80211_TXQ_ATTR_INVALID: Attribute number 0 is reserved
- * @NL80211_TXQ_ATTR_AC: AC identifier (NL80211_AC_*)
- * @NL80211_TXQ_ATTR_TXOP: Maximum burst time in units of 32 usecs, 0 meaning
- * disabled
- * @NL80211_TXQ_ATTR_CWMIN: Minimum contention window [a value of the form
- * 2^n-1 in the range 1..32767]
- * @NL80211_TXQ_ATTR_CWMAX: Maximum contention window [a value of the form
- * 2^n-1 in the range 1..32767]
- * @NL80211_TXQ_ATTR_AIFS: Arbitration interframe space [0..255]
- * @__NL80211_TXQ_ATTR_AFTER_LAST: Internal
- * @NL80211_TXQ_ATTR_MAX: Maximum TXQ attribute number
- */
-enum nl80211_txq_attr {
- __NL80211_TXQ_ATTR_INVALID,
- NL80211_TXQ_ATTR_AC,
- NL80211_TXQ_ATTR_TXOP,
- NL80211_TXQ_ATTR_CWMIN,
- NL80211_TXQ_ATTR_CWMAX,
- NL80211_TXQ_ATTR_AIFS,
-
- /* keep last */
- __NL80211_TXQ_ATTR_AFTER_LAST,
- NL80211_TXQ_ATTR_MAX = __NL80211_TXQ_ATTR_AFTER_LAST - 1
-};
-
-enum nl80211_ac {
- NL80211_AC_VO,
- NL80211_AC_VI,
- NL80211_AC_BE,
- NL80211_AC_BK,
- NL80211_NUM_ACS
-};
-
-/* backward compat */
-#define NL80211_TXQ_ATTR_QUEUE NL80211_TXQ_ATTR_AC
-#define NL80211_TXQ_Q_VO NL80211_AC_VO
-#define NL80211_TXQ_Q_VI NL80211_AC_VI
-#define NL80211_TXQ_Q_BE NL80211_AC_BE
-#define NL80211_TXQ_Q_BK NL80211_AC_BK
-
-/**
- * enum nl80211_channel_type - channel type
- * @NL80211_CHAN_NO_HT: 20 MHz, non-HT channel
- * @NL80211_CHAN_HT20: 20 MHz HT channel
- * @NL80211_CHAN_HT40MINUS: HT40 channel, secondary channel
- * below the control channel
- * @NL80211_CHAN_HT40PLUS: HT40 channel, secondary channel
- * above the control channel
- */
-enum nl80211_channel_type {
- NL80211_CHAN_NO_HT,
- NL80211_CHAN_HT20,
- NL80211_CHAN_HT40MINUS,
- NL80211_CHAN_HT40PLUS
-};
-
-/**
- * enum nl80211_chan_width - channel width definitions
- *
- * These values are used with the %NL80211_ATTR_CHANNEL_WIDTH
- * attribute.
- *
- * @NL80211_CHAN_WIDTH_20_NOHT: 20 MHz, non-HT channel
- * @NL80211_CHAN_WIDTH_20: 20 MHz HT channel
- * @NL80211_CHAN_WIDTH_40: 40 MHz channel, the %NL80211_ATTR_CENTER_FREQ1
- * attribute must be provided as well
- * @NL80211_CHAN_WIDTH_80: 80 MHz channel, the %NL80211_ATTR_CENTER_FREQ1
- * attribute must be provided as well
- * @NL80211_CHAN_WIDTH_80P80: 80+80 MHz channel, the %NL80211_ATTR_CENTER_FREQ1
- * and %NL80211_ATTR_CENTER_FREQ2 attributes must be provided as well
- * @NL80211_CHAN_WIDTH_160: 160 MHz channel, the %NL80211_ATTR_CENTER_FREQ1
- * attribute must be provided as well
- * @NL80211_CHAN_WIDTH_5: 5 MHz OFDM channel
- * @NL80211_CHAN_WIDTH_10: 10 MHz OFDM channel
- */
-enum nl80211_chan_width {
- NL80211_CHAN_WIDTH_20_NOHT,
- NL80211_CHAN_WIDTH_20,
- NL80211_CHAN_WIDTH_40,
- NL80211_CHAN_WIDTH_80,
- NL80211_CHAN_WIDTH_80P80,
- NL80211_CHAN_WIDTH_160,
- NL80211_CHAN_WIDTH_5,
- NL80211_CHAN_WIDTH_10,
-};
-
-/**
- * enum nl80211_bss_scan_width - control channel width for a BSS
- *
- * These values are used with the %NL80211_BSS_CHAN_WIDTH attribute.
- *
- * @NL80211_BSS_CHAN_WIDTH_20: control channel is 20 MHz wide or compatible
- * @NL80211_BSS_CHAN_WIDTH_10: control channel is 10 MHz wide
- * @NL80211_BSS_CHAN_WIDTH_5: control channel is 5 MHz wide
- */
-enum nl80211_bss_scan_width {
- NL80211_BSS_CHAN_WIDTH_20,
- NL80211_BSS_CHAN_WIDTH_10,
- NL80211_BSS_CHAN_WIDTH_5,
-};
-
-/**
- * enum nl80211_bss - netlink attributes for a BSS
- *
- * @__NL80211_BSS_INVALID: invalid
- * @NL80211_BSS_BSSID: BSSID of the BSS (6 octets)
- * @NL80211_BSS_FREQUENCY: frequency in MHz (u32)
- * @NL80211_BSS_TSF: TSF of the received probe response/beacon (u64)
- * (if @NL80211_BSS_PRESP_DATA is present then this is known to be
- * from a probe response, otherwise it may be from the same beacon
- * that the NL80211_BSS_BEACON_TSF will be from)
- * @NL80211_BSS_BEACON_INTERVAL: beacon interval of the (I)BSS (u16)
- * @NL80211_BSS_CAPABILITY: capability field (CPU order, u16)
- * @NL80211_BSS_INFORMATION_ELEMENTS: binary attribute containing the
- * raw information elements from the probe response/beacon (bin);
- * if the %NL80211_BSS_BEACON_IES attribute is present and the data is
- * different then the IEs here are from a Probe Response frame; otherwise
- * they are from a Beacon frame.
- * However, if the driver does not indicate the source of the IEs, these
- * IEs may be from either frame subtype.
- * If present, the @NL80211_BSS_PRESP_DATA attribute indicates that the
- * data here is known to be from a probe response, without any heuristics.
- * @NL80211_BSS_SIGNAL_MBM: signal strength of probe response/beacon
- * in mBm (100 * dBm) (s32)
- * @NL80211_BSS_SIGNAL_UNSPEC: signal strength of the probe response/beacon
- * in unspecified units, scaled to 0..100 (u8)
- * @NL80211_BSS_STATUS: status, if this BSS is "used"
- * @NL80211_BSS_SEEN_MS_AGO: age of this BSS entry in ms
- * @NL80211_BSS_BEACON_IES: binary attribute containing the raw information
- * elements from a Beacon frame (bin); not present if no Beacon frame has
- * yet been received
- * @NL80211_BSS_CHAN_WIDTH: channel width of the control channel
- * (u32, enum nl80211_bss_scan_width)
- * @NL80211_BSS_BEACON_TSF: TSF of the last received beacon (u64)
- * (not present if no beacon frame has been received yet)
- * @NL80211_BSS_PRESP_DATA: the data in @NL80211_BSS_INFORMATION_ELEMENTS and
- * @NL80211_BSS_TSF is known to be from a probe response (flag attribute)
- * @NL80211_BSS_LAST_SEEN_BOOTTIME: CLOCK_BOOTTIME timestamp when this entry
- * was last updated by a received frame. The value is expected to be
- * accurate to about 10ms. (u64, nanoseconds)
- * @NL80211_BSS_PAD: attribute used for padding for 64-bit alignment
- * @NL80211_BSS_PARENT_TSF: the time at the start of reception of the first
- * octet of the timestamp field of the last beacon/probe received for
- * this BSS. The time is the TSF of the BSS specified by
- * @NL80211_BSS_PARENT_BSSID. (u64).
- * @NL80211_BSS_PARENT_BSSID: the BSS according to which @NL80211_BSS_PARENT_TSF
- * is set.
- * @NL80211_BSS_CHAIN_SIGNAL: per-chain signal strength of last BSS update.
- * Contains a nested array of signal strength attributes (u8, dBm),
- * using the nesting index as the antenna number.
- * @__NL80211_BSS_AFTER_LAST: internal
- * @NL80211_BSS_MAX: highest BSS attribute
- */
-enum nl80211_bss {
- __NL80211_BSS_INVALID,
- NL80211_BSS_BSSID,
- NL80211_BSS_FREQUENCY,
- NL80211_BSS_TSF,
- NL80211_BSS_BEACON_INTERVAL,
- NL80211_BSS_CAPABILITY,
- NL80211_BSS_INFORMATION_ELEMENTS,
- NL80211_BSS_SIGNAL_MBM,
- NL80211_BSS_SIGNAL_UNSPEC,
- NL80211_BSS_STATUS,
- NL80211_BSS_SEEN_MS_AGO,
- NL80211_BSS_BEACON_IES,
- NL80211_BSS_CHAN_WIDTH,
- NL80211_BSS_BEACON_TSF,
- NL80211_BSS_PRESP_DATA,
- NL80211_BSS_LAST_SEEN_BOOTTIME,
- NL80211_BSS_PAD,
- NL80211_BSS_PARENT_TSF,
- NL80211_BSS_PARENT_BSSID,
- NL80211_BSS_CHAIN_SIGNAL,
-
- /* keep last */
- __NL80211_BSS_AFTER_LAST,
- NL80211_BSS_MAX = __NL80211_BSS_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_bss_status - BSS "status"
- * @NL80211_BSS_STATUS_AUTHENTICATED: Authenticated with this BSS.
- * Note that this is no longer used since cfg80211 no longer
- * keeps track of whether or not authentication was done with
- * a given BSS.
- * @NL80211_BSS_STATUS_ASSOCIATED: Associated with this BSS.
- * @NL80211_BSS_STATUS_IBSS_JOINED: Joined to this IBSS.
- *
- * The BSS status is a BSS attribute in scan dumps, which
- * indicates the status the interface has wrt. this BSS.
- */
-enum nl80211_bss_status {
- NL80211_BSS_STATUS_AUTHENTICATED,
- NL80211_BSS_STATUS_ASSOCIATED,
- NL80211_BSS_STATUS_IBSS_JOINED,
-};
-
-/**
- * enum nl80211_auth_type - AuthenticationType
- *
- * @NL80211_AUTHTYPE_OPEN_SYSTEM: Open System authentication
- * @NL80211_AUTHTYPE_SHARED_KEY: Shared Key authentication (WEP only)
- * @NL80211_AUTHTYPE_FT: Fast BSS Transition (IEEE 802.11r)
- * @NL80211_AUTHTYPE_NETWORK_EAP: Network EAP (some Cisco APs and mainly LEAP)
- * @NL80211_AUTHTYPE_SAE: Simultaneous authentication of equals
- * @NL80211_AUTHTYPE_FILS_SK: Fast Initial Link Setup shared key
- * @NL80211_AUTHTYPE_FILS_SK_PFS: Fast Initial Link Setup shared key with PFS
- * @NL80211_AUTHTYPE_FILS_PK: Fast Initial Link Setup public key
- * @__NL80211_AUTHTYPE_NUM: internal
- * @NL80211_AUTHTYPE_MAX: maximum valid auth algorithm
- * @NL80211_AUTHTYPE_AUTOMATIC: determine automatically (if necessary by
- * trying multiple times); this is invalid in netlink -- leave out
- * the attribute for this on CONNECT commands.
- */
-enum nl80211_auth_type {
- NL80211_AUTHTYPE_OPEN_SYSTEM,
- NL80211_AUTHTYPE_SHARED_KEY,
- NL80211_AUTHTYPE_FT,
- NL80211_AUTHTYPE_NETWORK_EAP,
- NL80211_AUTHTYPE_SAE,
- NL80211_AUTHTYPE_FILS_SK,
- NL80211_AUTHTYPE_FILS_SK_PFS,
- NL80211_AUTHTYPE_FILS_PK,
-
- /* keep last */
- __NL80211_AUTHTYPE_NUM,
- NL80211_AUTHTYPE_MAX = __NL80211_AUTHTYPE_NUM - 1,
- NL80211_AUTHTYPE_AUTOMATIC
-};
-
-/**
- * enum nl80211_key_type - Key Type
- * @NL80211_KEYTYPE_GROUP: Group (broadcast/multicast) key
- * @NL80211_KEYTYPE_PAIRWISE: Pairwise (unicast/individual) key
- * @NL80211_KEYTYPE_PEERKEY: PeerKey (DLS)
- * @NUM_NL80211_KEYTYPES: number of defined key types
- */
-enum nl80211_key_type {
- NL80211_KEYTYPE_GROUP,
- NL80211_KEYTYPE_PAIRWISE,
- NL80211_KEYTYPE_PEERKEY,
-
- NUM_NL80211_KEYTYPES
-};
-
-/**
- * enum nl80211_mfp - Management frame protection state
- * @NL80211_MFP_NO: Management frame protection not used
- * @NL80211_MFP_REQUIRED: Management frame protection required
- * @NL80211_MFP_OPTIONAL: Management frame protection is optional
- */
-enum nl80211_mfp {
- NL80211_MFP_NO,
- NL80211_MFP_REQUIRED,
- NL80211_MFP_OPTIONAL,
-};
-
-enum nl80211_wpa_versions {
- NL80211_WPA_VERSION_1 = 1 << 0,
- NL80211_WPA_VERSION_2 = 1 << 1,
-//tianyan@2021.7.27 modify for add wifi6 module start
- NL80211_WPA_VERSION_3 = 1 << 2,
-//tianyan@2021.7.27 modify for add wifi6 module end
-};
-
-/**
- * enum nl80211_key_default_types - key default types
- * @__NL80211_KEY_DEFAULT_TYPE_INVALID: invalid
- * @NL80211_KEY_DEFAULT_TYPE_UNICAST: key should be used as default
- * unicast key
- * @NL80211_KEY_DEFAULT_TYPE_MULTICAST: key should be used as default
- * multicast key
- * @NUM_NL80211_KEY_DEFAULT_TYPES: number of default types
- */
-enum nl80211_key_default_types {
- __NL80211_KEY_DEFAULT_TYPE_INVALID,
- NL80211_KEY_DEFAULT_TYPE_UNICAST,
- NL80211_KEY_DEFAULT_TYPE_MULTICAST,
-
- NUM_NL80211_KEY_DEFAULT_TYPES
-};
-
-/**
- * enum nl80211_key_attributes - key attributes
- * @__NL80211_KEY_INVALID: invalid
- * @NL80211_KEY_DATA: (temporal) key data; for TKIP this consists of
- * 16 bytes encryption key followed by 8 bytes each for TX and RX MIC
- * keys
- * @NL80211_KEY_IDX: key ID (u8, 0-3)
- * @NL80211_KEY_CIPHER: key cipher suite (u32, as defined by IEEE 802.11
- * section 7.3.2.25.1, e.g. 0x000FAC04)
- * @NL80211_KEY_SEQ: transmit key sequence number (IV/PN) for TKIP and
- * CCMP keys, each six bytes in little endian
- * @NL80211_KEY_DEFAULT: flag indicating default key
- * @NL80211_KEY_DEFAULT_MGMT: flag indicating default management key
- * @NL80211_KEY_TYPE: the key type from enum nl80211_key_type, if not
- * specified the default depends on whether a MAC address was
- * given with the command using the key or not (u32)
- * @NL80211_KEY_DEFAULT_TYPES: A nested attribute containing flags
- * attributes, specifying what a key should be set as default as.
- * See &enum nl80211_key_default_types.
- * @__NL80211_KEY_AFTER_LAST: internal
- * @NL80211_KEY_MAX: highest key attribute
- */
-enum nl80211_key_attributes {
- __NL80211_KEY_INVALID,
- NL80211_KEY_DATA,
- NL80211_KEY_IDX,
- NL80211_KEY_CIPHER,
- NL80211_KEY_SEQ,
- NL80211_KEY_DEFAULT,
- NL80211_KEY_DEFAULT_MGMT,
- NL80211_KEY_TYPE,
- NL80211_KEY_DEFAULT_TYPES,
-
- /* keep last */
- __NL80211_KEY_AFTER_LAST,
- NL80211_KEY_MAX = __NL80211_KEY_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_tx_rate_attributes - TX rate set attributes
- * @__NL80211_TXRATE_INVALID: invalid
- * @NL80211_TXRATE_LEGACY: Legacy (non-MCS) rates allowed for TX rate selection
- * in an array of rates as defined in IEEE 802.11 7.3.2.2 (u8 values with
- * 1 = 500 kbps) but without the IE length restriction (at most
- * %NL80211_MAX_SUPP_RATES in a single array).
- * @NL80211_TXRATE_HT: HT (MCS) rates allowed for TX rate selection
- * in an array of MCS numbers.
- * @NL80211_TXRATE_VHT: VHT rates allowed for TX rate selection,
- * see &struct nl80211_txrate_vht
- * @NL80211_TXRATE_GI: configure GI, see &enum nl80211_txrate_gi
- * @__NL80211_TXRATE_AFTER_LAST: internal
- * @NL80211_TXRATE_MAX: highest TX rate attribute
- */
-enum nl80211_tx_rate_attributes {
- __NL80211_TXRATE_INVALID,
- NL80211_TXRATE_LEGACY,
- NL80211_TXRATE_HT,
- NL80211_TXRATE_VHT,
- NL80211_TXRATE_GI,
-
- /* keep last */
- __NL80211_TXRATE_AFTER_LAST,
- NL80211_TXRATE_MAX = __NL80211_TXRATE_AFTER_LAST - 1
-};
-
-#define NL80211_TXRATE_MCS NL80211_TXRATE_HT
-#define NL80211_VHT_NSS_MAX 8
-
-/**
- * struct nl80211_txrate_vht - VHT MCS/NSS txrate bitmap
- * @mcs: MCS bitmap table for each NSS (array index 0 for 1 stream, etc.)
- */
-struct nl80211_txrate_vht {
- __u16 mcs[NL80211_VHT_NSS_MAX];
-};
-
-enum nl80211_txrate_gi {
- NL80211_TXRATE_DEFAULT_GI,
- NL80211_TXRATE_FORCE_SGI,
- NL80211_TXRATE_FORCE_LGI,
-};
-
-/**
- * enum nl80211_band - Frequency band
- * @NL80211_BAND_2GHZ: 2.4 GHz ISM band
- * @NL80211_BAND_5GHZ: around 5 GHz band (4.9 - 5.7 GHz)
- * @NL80211_BAND_60GHZ: around 60 GHz band (58.32 - 64.80 GHz)
- * @NUM_NL80211_BANDS: number of bands, avoid using this in userspace
- * since newer kernel versions may support more bands
- */
-enum nl80211_band {
- NL80211_BAND_2GHZ,
- NL80211_BAND_5GHZ,
- NL80211_BAND_60GHZ,
-
- NUM_NL80211_BANDS,
-};
-
-/**
- * enum nl80211_ps_state - powersave state
- * @NL80211_PS_DISABLED: powersave is disabled
- * @NL80211_PS_ENABLED: powersave is enabled
- */
-enum nl80211_ps_state {
- NL80211_PS_DISABLED,
- NL80211_PS_ENABLED,
-};
-
-/**
- * enum nl80211_attr_cqm - connection quality monitor attributes
- * @__NL80211_ATTR_CQM_INVALID: invalid
- * @NL80211_ATTR_CQM_RSSI_THOLD: RSSI threshold in dBm. This value specifies
- * the threshold for the RSSI level at which an event will be sent. Zero
- * to disable. Alternatively, if %NL80211_EXT_FEATURE_CQM_RSSI_LIST is
- * set, multiple values can be supplied as a low-to-high sorted array of
- * threshold values in dBm. Events will be sent when the RSSI value
- * crosses any of the thresholds.
- * @NL80211_ATTR_CQM_RSSI_HYST: RSSI hysteresis in dBm. This value specifies
- * the minimum amount the RSSI level must change after an event before a
- * new event may be issued (to reduce effects of RSSI oscillation).
- * @NL80211_ATTR_CQM_RSSI_THRESHOLD_EVENT: RSSI threshold event
- * @NL80211_ATTR_CQM_PKT_LOSS_EVENT: a u32 value indicating that this many
- * consecutive packets were not acknowledged by the peer
- * @NL80211_ATTR_CQM_TXE_RATE: TX error rate in %. Minimum % of TX failures
- * during the given %NL80211_ATTR_CQM_TXE_INTVL before an
- * %NL80211_CMD_NOTIFY_CQM with reported %NL80211_ATTR_CQM_TXE_RATE and
- * %NL80211_ATTR_CQM_TXE_PKTS is generated.
- * @NL80211_ATTR_CQM_TXE_PKTS: number of attempted packets in a given
- * %NL80211_ATTR_CQM_TXE_INTVL before %NL80211_ATTR_CQM_TXE_RATE is
- * checked.
- * @NL80211_ATTR_CQM_TXE_INTVL: interval in seconds. Specifies the periodic
- * interval in which %NL80211_ATTR_CQM_TXE_PKTS and
- * %NL80211_ATTR_CQM_TXE_RATE must be satisfied before generating an
- * %NL80211_CMD_NOTIFY_CQM. Set to 0 to turn off TX error reporting.
- * @NL80211_ATTR_CQM_BEACON_LOSS_EVENT: flag attribute that's set in a beacon
- * loss event
- * @NL80211_ATTR_CQM_RSSI_LEVEL: the RSSI value in dBm that triggered the
- * RSSI threshold event.
- * @__NL80211_ATTR_CQM_AFTER_LAST: internal
- * @NL80211_ATTR_CQM_MAX: highest key attribute
- */
-enum nl80211_attr_cqm {
- __NL80211_ATTR_CQM_INVALID,
- NL80211_ATTR_CQM_RSSI_THOLD,
- NL80211_ATTR_CQM_RSSI_HYST,
- NL80211_ATTR_CQM_RSSI_THRESHOLD_EVENT,
- NL80211_ATTR_CQM_PKT_LOSS_EVENT,
- NL80211_ATTR_CQM_TXE_RATE,
- NL80211_ATTR_CQM_TXE_PKTS,
- NL80211_ATTR_CQM_TXE_INTVL,
- NL80211_ATTR_CQM_BEACON_LOSS_EVENT,
- NL80211_ATTR_CQM_RSSI_LEVEL,
-
- /* keep last */
- __NL80211_ATTR_CQM_AFTER_LAST,
- NL80211_ATTR_CQM_MAX = __NL80211_ATTR_CQM_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_cqm_rssi_threshold_event - RSSI threshold event
- * @NL80211_CQM_RSSI_THRESHOLD_EVENT_LOW: The RSSI level is lower than the
- * configured threshold
- * @NL80211_CQM_RSSI_THRESHOLD_EVENT_HIGH: The RSSI is higher than the
- * configured threshold
- * @NL80211_CQM_RSSI_BEACON_LOSS_EVENT: (reserved, never sent)
- */
-enum nl80211_cqm_rssi_threshold_event {
- NL80211_CQM_RSSI_THRESHOLD_EVENT_LOW,
- NL80211_CQM_RSSI_THRESHOLD_EVENT_HIGH,
- NL80211_CQM_RSSI_BEACON_LOSS_EVENT,
-};
-
-
-/**
- * enum nl80211_tx_power_setting - TX power adjustment
- * @NL80211_TX_POWER_AUTOMATIC: automatically determine transmit power
- * @NL80211_TX_POWER_LIMITED: limit TX power by the mBm parameter
- * @NL80211_TX_POWER_FIXED: fix TX power to the mBm parameter
- */
-enum nl80211_tx_power_setting {
- NL80211_TX_POWER_AUTOMATIC,
- NL80211_TX_POWER_LIMITED,
- NL80211_TX_POWER_FIXED,
-};
-
-/**
- * enum nl80211_packet_pattern_attr - packet pattern attribute
- * @__NL80211_PKTPAT_INVALID: invalid number for nested attribute
- * @NL80211_PKTPAT_PATTERN: the pattern, values where the mask has
- * a zero bit are ignored
- * @NL80211_PKTPAT_MASK: pattern mask, must be long enough to have
- * a bit for each byte in the pattern. The lowest-order bit corresponds
- * to the first byte of the pattern, but the bytes of the pattern are
- * in a little-endian-like format, i.e. the 9th byte of the pattern
- * corresponds to the lowest-order bit in the second byte of the mask.
- * For example: The match 00:xx:00:00:xx:00:00:00:00:xx:xx:xx (where
- * xx indicates "don't care") would be represented by a pattern of
- * twelve zero bytes, and a mask of "0xed,0x01".
- * Note that the pattern matching is done as though frames were not
- * 802.11 frames but 802.3 frames, i.e. the frame is fully unpacked
- * first (including SNAP header unpacking) and then matched.
- * @NL80211_PKTPAT_OFFSET: packet offset, pattern is matched after
- * these fixed number of bytes of received packet
- * @NUM_NL80211_PKTPAT: number of attributes
- * @MAX_NL80211_PKTPAT: max attribute number
- */
-enum nl80211_packet_pattern_attr {
- __NL80211_PKTPAT_INVALID,
- NL80211_PKTPAT_MASK,
- NL80211_PKTPAT_PATTERN,
- NL80211_PKTPAT_OFFSET,
-
- NUM_NL80211_PKTPAT,
- MAX_NL80211_PKTPAT = NUM_NL80211_PKTPAT - 1,
-};
-
-/**
- * struct nl80211_pattern_support - packet pattern support information
- * @max_patterns: maximum number of patterns supported
- * @min_pattern_len: minimum length of each pattern
- * @max_pattern_len: maximum length of each pattern
- * @max_pkt_offset: maximum Rx packet offset
- *
- * This struct is carried in %NL80211_WOWLAN_TRIG_PKT_PATTERN when
- * that is part of %NL80211_ATTR_WOWLAN_TRIGGERS_SUPPORTED or in
- * %NL80211_ATTR_COALESCE_RULE_PKT_PATTERN when that is part of
- * %NL80211_ATTR_COALESCE_RULE in the capability information given
- * by the kernel to userspace.
- */
-struct nl80211_pattern_support {
- __u32 max_patterns;
- __u32 min_pattern_len;
- __u32 max_pattern_len;
- __u32 max_pkt_offset;
-} __attribute__((packed));
-
-/* only for backward compatibility */
-#define __NL80211_WOWLAN_PKTPAT_INVALID __NL80211_PKTPAT_INVALID
-#define NL80211_WOWLAN_PKTPAT_MASK NL80211_PKTPAT_MASK
-#define NL80211_WOWLAN_PKTPAT_PATTERN NL80211_PKTPAT_PATTERN
-#define NL80211_WOWLAN_PKTPAT_OFFSET NL80211_PKTPAT_OFFSET
-#define NUM_NL80211_WOWLAN_PKTPAT NUM_NL80211_PKTPAT
-#define MAX_NL80211_WOWLAN_PKTPAT MAX_NL80211_PKTPAT
-#define nl80211_wowlan_pattern_support nl80211_pattern_support
-
-/**
- * enum nl80211_wowlan_triggers - WoWLAN trigger definitions
- * @__NL80211_WOWLAN_TRIG_INVALID: invalid number for nested attributes
- * @NL80211_WOWLAN_TRIG_ANY: wake up on any activity, do not really put
- * the chip into a special state -- works best with chips that have
- * support for low-power operation already (flag)
- * Note that this mode is incompatible with all of the others, if
- * any others are even supported by the device.
- * @NL80211_WOWLAN_TRIG_DISCONNECT: wake up on disconnect, the way disconnect
- * is detected is implementation-specific (flag)
- * @NL80211_WOWLAN_TRIG_MAGIC_PKT: wake up on magic packet (6x 0xff, followed
- * by 16 repetitions of MAC addr, anywhere in payload) (flag)
- * @NL80211_WOWLAN_TRIG_PKT_PATTERN: wake up on the specified packet patterns
- * which are passed in an array of nested attributes, each nested attribute
- * defining a with attributes from &struct nl80211_wowlan_trig_pkt_pattern.
- * Each pattern defines a wakeup packet. Packet offset is associated with
- * each pattern which is used while matching the pattern. The matching is
- * done on the MSDU, i.e. as though the packet was an 802.3 packet, so the
- * pattern matching is done after the packet is converted to the MSDU.
- *
- * In %NL80211_ATTR_WOWLAN_TRIGGERS_SUPPORTED, it is a binary attribute
- * carrying a &struct nl80211_pattern_support.
- *
- * When reporting wakeup. it is a u32 attribute containing the 0-based
- * index of the pattern that caused the wakeup, in the patterns passed
- * to the kernel when configuring.
- * @NL80211_WOWLAN_TRIG_GTK_REKEY_SUPPORTED: Not a real trigger, and cannot be
- * used when setting, used only to indicate that GTK rekeying is supported
- * by the device (flag)
- * @NL80211_WOWLAN_TRIG_GTK_REKEY_FAILURE: wake up on GTK rekey failure (if
- * done by the device) (flag)
- * @NL80211_WOWLAN_TRIG_EAP_IDENT_REQUEST: wake up on EAP Identity Request
- * packet (flag)
- * @NL80211_WOWLAN_TRIG_4WAY_HANDSHAKE: wake up on 4-way handshake (flag)
- * @NL80211_WOWLAN_TRIG_RFKILL_RELEASE: wake up when rfkill is released
- * (on devices that have rfkill in the device) (flag)
- * @NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211: For wakeup reporting only, contains
- * the 802.11 packet that caused the wakeup, e.g. a deauth frame. The frame
- * may be truncated, the @NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211_LEN
- * attribute contains the original length.
- * @NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211_LEN: Original length of the 802.11
- * packet, may be bigger than the @NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211
- * attribute if the packet was truncated somewhere.
- * @NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023: For wakeup reporting only, contains the
- * 802.11 packet that caused the wakeup, e.g. a magic packet. The frame may
- * be truncated, the @NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023_LEN attribute
- * contains the original length.
- * @NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023_LEN: Original length of the 802.3
- * packet, may be bigger than the @NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023
- * attribute if the packet was truncated somewhere.
- * @NL80211_WOWLAN_TRIG_TCP_CONNECTION: TCP connection wake, see DOC section
- * "TCP connection wakeup" for more details. This is a nested attribute
- * containing the exact information for establishing and keeping alive
- * the TCP connection.
- * @NL80211_WOWLAN_TRIG_TCP_WAKEUP_MATCH: For wakeup reporting only, the
- * wakeup packet was received on the TCP connection
- * @NL80211_WOWLAN_TRIG_WAKEUP_TCP_CONNLOST: For wakeup reporting only, the
- * TCP connection was lost or failed to be established
- * @NL80211_WOWLAN_TRIG_WAKEUP_TCP_NOMORETOKENS: For wakeup reporting only,
- * the TCP connection ran out of tokens to use for data to send to the
- * service
- * @NL80211_WOWLAN_TRIG_NET_DETECT: wake up when a configured network
- * is detected. This is a nested attribute that contains the
- * same attributes used with @NL80211_CMD_START_SCHED_SCAN. It
- * specifies how the scan is performed (e.g. the interval, the
- * channels to scan and the initial delay) as well as the scan
- * results that will trigger a wake (i.e. the matchsets). This
- * attribute is also sent in a response to
- * @NL80211_CMD_GET_WIPHY, indicating the number of match sets
- * supported by the driver (u32).
- * @NL80211_WOWLAN_TRIG_NET_DETECT_RESULTS: nested attribute
- * containing an array with information about what triggered the
- * wake up. If no elements are present in the array, it means
- * that the information is not available. If more than one
- * element is present, it means that more than one match
- * occurred.
- * Each element in the array is a nested attribute that contains
- * one optional %NL80211_ATTR_SSID attribute and one optional
- * %NL80211_ATTR_SCAN_FREQUENCIES attribute. At least one of
- * these attributes must be present. If
- * %NL80211_ATTR_SCAN_FREQUENCIES contains more than one
- * frequency, it means that the match occurred in more than one
- * channel.
- * @NUM_NL80211_WOWLAN_TRIG: number of wake on wireless triggers
- * @MAX_NL80211_WOWLAN_TRIG: highest wowlan trigger attribute number
- *
- * These nested attributes are used to configure the wakeup triggers and
- * to report the wakeup reason(s).
- */
-enum nl80211_wowlan_triggers {
- __NL80211_WOWLAN_TRIG_INVALID,
- NL80211_WOWLAN_TRIG_ANY,
- NL80211_WOWLAN_TRIG_DISCONNECT,
- NL80211_WOWLAN_TRIG_MAGIC_PKT,
- NL80211_WOWLAN_TRIG_PKT_PATTERN,
- NL80211_WOWLAN_TRIG_GTK_REKEY_SUPPORTED,
- NL80211_WOWLAN_TRIG_GTK_REKEY_FAILURE,
- NL80211_WOWLAN_TRIG_EAP_IDENT_REQUEST,
- NL80211_WOWLAN_TRIG_4WAY_HANDSHAKE,
- NL80211_WOWLAN_TRIG_RFKILL_RELEASE,
- NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211,
- NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211_LEN,
- NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023,
- NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023_LEN,
- NL80211_WOWLAN_TRIG_TCP_CONNECTION,
- NL80211_WOWLAN_TRIG_WAKEUP_TCP_MATCH,
- NL80211_WOWLAN_TRIG_WAKEUP_TCP_CONNLOST,
- NL80211_WOWLAN_TRIG_WAKEUP_TCP_NOMORETOKENS,
- NL80211_WOWLAN_TRIG_NET_DETECT,
- NL80211_WOWLAN_TRIG_NET_DETECT_RESULTS,
-
- /* keep last */
- NUM_NL80211_WOWLAN_TRIG,
- MAX_NL80211_WOWLAN_TRIG = NUM_NL80211_WOWLAN_TRIG - 1
-};
-
-/**
- * DOC: TCP connection wakeup
- *
- * Some devices can establish a TCP connection in order to be woken up by a
- * packet coming in from outside their network segment, or behind NAT. If
- * configured, the device will establish a TCP connection to the given
- * service, and periodically send data to that service. The first data
- * packet is usually transmitted after SYN/ACK, also ACKing the SYN/ACK.
- * The data packets can optionally include a (little endian) sequence
- * number (in the TCP payload!) that is generated by the device, and, also
- * optionally, a token from a list of tokens. This serves as a keep-alive
- * with the service, and for NATed connections, etc.
- *
- * During this keep-alive period, the server doesn't send any data to the
- * client. When receiving data, it is compared against the wakeup pattern
- * (and mask) and if it matches, the host is woken up. Similarly, if the
- * connection breaks or cannot be established to start with, the host is
- * also woken up.
- *
- * Developer's note: ARP offload is required for this, otherwise TCP
- * response packets might not go through correctly.
- */
-
-/**
- * struct nl80211_wowlan_tcp_data_seq - WoWLAN TCP data sequence
- * @start: starting value
- * @offset: offset of sequence number in packet
- * @len: length of the sequence value to write, 1 through 4
- *
- * Note: don't confuse with the TCP sequence number(s), this is for the
- * keepalive packet payload. The actual value is written into the packet
- * in little endian.
- */
-struct nl80211_wowlan_tcp_data_seq {
- __u32 start, offset, len;
-};
-
-/**
- * struct nl80211_wowlan_tcp_data_token - WoWLAN TCP data token config
- * @offset: offset of token in packet
- * @len: length of each token
- * @token_stream: stream of data to be used for the tokens, the length must
- * be a multiple of @len for this to make sense
- */
-struct nl80211_wowlan_tcp_data_token {
- __u32 offset, len;
- __u8 token_stream[];
-};
-
-/**
- * struct nl80211_wowlan_tcp_data_token_feature - data token features
- * @min_len: minimum token length
- * @max_len: maximum token length
- * @bufsize: total available token buffer size (max size of @token_stream)
- */
-struct nl80211_wowlan_tcp_data_token_feature {
- __u32 min_len, max_len, bufsize;
-};
-
-/**
- * enum nl80211_wowlan_tcp_attrs - WoWLAN TCP connection parameters
- * @__NL80211_WOWLAN_TCP_INVALID: invalid number for nested attributes
- * @NL80211_WOWLAN_TCP_SRC_IPV4: source IPv4 address (in network byte order)
- * @NL80211_WOWLAN_TCP_DST_IPV4: destination IPv4 address
- * (in network byte order)
- * @NL80211_WOWLAN_TCP_DST_MAC: destination MAC address, this is given because
- * route lookup when configured might be invalid by the time we suspend,
- * and doing a route lookup when suspending is no longer possible as it
- * might require ARP querying.
- * @NL80211_WOWLAN_TCP_SRC_PORT: source port (u16); optional, if not given a
- * socket and port will be allocated
- * @NL80211_WOWLAN_TCP_DST_PORT: destination port (u16)
- * @NL80211_WOWLAN_TCP_DATA_PAYLOAD: data packet payload, at least one byte.
- * For feature advertising, a u32 attribute holding the maximum length
- * of the data payload.
- * @NL80211_WOWLAN_TCP_DATA_PAYLOAD_SEQ: data packet sequence configuration
- * (if desired), a &struct nl80211_wowlan_tcp_data_seq. For feature
- * advertising it is just a flag
- * @NL80211_WOWLAN_TCP_DATA_PAYLOAD_TOKEN: data packet token configuration,
- * see &struct nl80211_wowlan_tcp_data_token and for advertising see
- * &struct nl80211_wowlan_tcp_data_token_feature.
- * @NL80211_WOWLAN_TCP_DATA_INTERVAL: data interval in seconds, maximum
- * interval in feature advertising (u32)
- * @NL80211_WOWLAN_TCP_WAKE_PAYLOAD: wake packet payload, for advertising a
- * u32 attribute holding the maximum length
- * @NL80211_WOWLAN_TCP_WAKE_MASK: Wake packet payload mask, not used for
- * feature advertising. The mask works like @NL80211_PKTPAT_MASK
- * but on the TCP payload only.
- * @NUM_NL80211_WOWLAN_TCP: number of TCP attributes
- * @MAX_NL80211_WOWLAN_TCP: highest attribute number
- */
-enum nl80211_wowlan_tcp_attrs {
- __NL80211_WOWLAN_TCP_INVALID,
- NL80211_WOWLAN_TCP_SRC_IPV4,
- NL80211_WOWLAN_TCP_DST_IPV4,
- NL80211_WOWLAN_TCP_DST_MAC,
- NL80211_WOWLAN_TCP_SRC_PORT,
- NL80211_WOWLAN_TCP_DST_PORT,
- NL80211_WOWLAN_TCP_DATA_PAYLOAD,
- NL80211_WOWLAN_TCP_DATA_PAYLOAD_SEQ,
- NL80211_WOWLAN_TCP_DATA_PAYLOAD_TOKEN,
- NL80211_WOWLAN_TCP_DATA_INTERVAL,
- NL80211_WOWLAN_TCP_WAKE_PAYLOAD,
- NL80211_WOWLAN_TCP_WAKE_MASK,
-
- /* keep last */
- NUM_NL80211_WOWLAN_TCP,
- MAX_NL80211_WOWLAN_TCP = NUM_NL80211_WOWLAN_TCP - 1
-};
-
-/**
- * struct nl80211_coalesce_rule_support - coalesce rule support information
- * @max_rules: maximum number of rules supported
- * @pat: packet pattern support information
- * @max_delay: maximum supported coalescing delay in msecs
- *
- * This struct is carried in %NL80211_ATTR_COALESCE_RULE in the
- * capability information given by the kernel to userspace.
- */
-struct nl80211_coalesce_rule_support {
- __u32 max_rules;
- struct nl80211_pattern_support pat;
- __u32 max_delay;
-} __attribute__((packed));
-
-/**
- * enum nl80211_attr_coalesce_rule - coalesce rule attribute
- * @__NL80211_COALESCE_RULE_INVALID: invalid number for nested attribute
- * @NL80211_ATTR_COALESCE_RULE_DELAY: delay in msecs used for packet coalescing
- * @NL80211_ATTR_COALESCE_RULE_CONDITION: condition for packet coalescence,
- * see &enum nl80211_coalesce_condition.
- * @NL80211_ATTR_COALESCE_RULE_PKT_PATTERN: packet offset, pattern is matched
- * after these fixed number of bytes of received packet
- * @NUM_NL80211_ATTR_COALESCE_RULE: number of attributes
- * @NL80211_ATTR_COALESCE_RULE_MAX: max attribute number
- */
-enum nl80211_attr_coalesce_rule {
- __NL80211_COALESCE_RULE_INVALID,
- NL80211_ATTR_COALESCE_RULE_DELAY,
- NL80211_ATTR_COALESCE_RULE_CONDITION,
- NL80211_ATTR_COALESCE_RULE_PKT_PATTERN,
-
- /* keep last */
- NUM_NL80211_ATTR_COALESCE_RULE,
- NL80211_ATTR_COALESCE_RULE_MAX = NUM_NL80211_ATTR_COALESCE_RULE - 1
-};
-
-/**
- * enum nl80211_coalesce_condition - coalesce rule conditions
- * @NL80211_COALESCE_CONDITION_MATCH: coalaesce Rx packets when patterns
- * in a rule are matched.
- * @NL80211_COALESCE_CONDITION_NO_MATCH: coalesce Rx packets when patterns
- * in a rule are not matched.
- */
-enum nl80211_coalesce_condition {
- NL80211_COALESCE_CONDITION_MATCH,
- NL80211_COALESCE_CONDITION_NO_MATCH
-};
-
-/**
- * enum nl80211_iface_limit_attrs - limit attributes
- * @NL80211_IFACE_LIMIT_UNSPEC: (reserved)
- * @NL80211_IFACE_LIMIT_MAX: maximum number of interfaces that
- * can be chosen from this set of interface types (u32)
- * @NL80211_IFACE_LIMIT_TYPES: nested attribute containing a
- * flag attribute for each interface type in this set
- * @NUM_NL80211_IFACE_LIMIT: number of attributes
- * @MAX_NL80211_IFACE_LIMIT: highest attribute number
- */
-enum nl80211_iface_limit_attrs {
- NL80211_IFACE_LIMIT_UNSPEC,
- NL80211_IFACE_LIMIT_MAX,
- NL80211_IFACE_LIMIT_TYPES,
-
- /* keep last */
- NUM_NL80211_IFACE_LIMIT,
- MAX_NL80211_IFACE_LIMIT = NUM_NL80211_IFACE_LIMIT - 1
-};
-
-/**
- * enum nl80211_if_combination_attrs -- interface combination attributes
- *
- * @NL80211_IFACE_COMB_UNSPEC: (reserved)
- * @NL80211_IFACE_COMB_LIMITS: Nested attributes containing the limits
- * for given interface types, see &enum nl80211_iface_limit_attrs.
- * @NL80211_IFACE_COMB_MAXNUM: u32 attribute giving the total number of
- * interfaces that can be created in this group. This number doesn't
- * apply to interfaces purely managed in software, which are listed
- * in a separate attribute %NL80211_ATTR_INTERFACES_SOFTWARE.
- * @NL80211_IFACE_COMB_STA_AP_BI_MATCH: flag attribute specifying that
- * beacon intervals within this group must be all the same even for
- * infrastructure and AP/GO combinations, i.e. the GO(s) must adopt
- * the infrastructure network's beacon interval.
- * @NL80211_IFACE_COMB_NUM_CHANNELS: u32 attribute specifying how many
- * different channels may be used within this group.
- * @NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS: u32 attribute containing the bitmap
- * of supported channel widths for radar detection.
- * @NL80211_IFACE_COMB_RADAR_DETECT_REGIONS: u32 attribute containing the bitmap
- * of supported regulatory regions for radar detection.
- * @NL80211_IFACE_COMB_BI_MIN_GCD: u32 attribute specifying the minimum GCD of
- * different beacon intervals supported by all the interface combinations
- * in this group (if not present, all beacon intervals be identical).
- * @NUM_NL80211_IFACE_COMB: number of attributes
- * @MAX_NL80211_IFACE_COMB: highest attribute number
- *
- * Examples:
- * limits = [ #{STA} <= 1, #{AP} <= 1 ], matching BI, channels = 1, max = 2
- * => allows an AP and a STA that must match BIs
- *
- * numbers = [ #{AP, P2P-GO} <= 8 ], BI min gcd, channels = 1, max = 8,
- * => allows 8 of AP/GO that can have BI gcd >= min gcd
- *
- * numbers = [ #{STA} <= 2 ], channels = 2, max = 2
- * => allows two STAs on different channels
- *
- * numbers = [ #{STA} <= 1, #{P2P-client,P2P-GO} <= 3 ], max = 4
- * => allows a STA plus three P2P interfaces
- *
- * The list of these four possiblities could completely be contained
- * within the %NL80211_ATTR_INTERFACE_COMBINATIONS attribute to indicate
- * that any of these groups must match.
- *
- * "Combinations" of just a single interface will not be listed here,
- * a single interface of any valid interface type is assumed to always
- * be possible by itself. This means that implicitly, for each valid
- * interface type, the following group always exists:
- * numbers = [ #{<type>} <= 1 ], channels = 1, max = 1
- */
-enum nl80211_if_combination_attrs {
- NL80211_IFACE_COMB_UNSPEC,
- NL80211_IFACE_COMB_LIMITS,
- NL80211_IFACE_COMB_MAXNUM,
- NL80211_IFACE_COMB_STA_AP_BI_MATCH,
- NL80211_IFACE_COMB_NUM_CHANNELS,
- NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS,
- NL80211_IFACE_COMB_RADAR_DETECT_REGIONS,
- NL80211_IFACE_COMB_BI_MIN_GCD,
-
- /* keep last */
- NUM_NL80211_IFACE_COMB,
- MAX_NL80211_IFACE_COMB = NUM_NL80211_IFACE_COMB - 1
-};
-
-
-/**
- * enum nl80211_plink_state - state of a mesh peer link finite state machine
- *
- * @NL80211_PLINK_LISTEN: initial state, considered the implicit
- * state of non existant mesh peer links
- * @NL80211_PLINK_OPN_SNT: mesh plink open frame has been sent to
- * this mesh peer
- * @NL80211_PLINK_OPN_RCVD: mesh plink open frame has been received
- * from this mesh peer
- * @NL80211_PLINK_CNF_RCVD: mesh plink confirm frame has been
- * received from this mesh peer
- * @NL80211_PLINK_ESTAB: mesh peer link is established
- * @NL80211_PLINK_HOLDING: mesh peer link is being closed or cancelled
- * @NL80211_PLINK_BLOCKED: all frames transmitted from this mesh
- * plink are discarded
- * @NUM_NL80211_PLINK_STATES: number of peer link states
- * @MAX_NL80211_PLINK_STATES: highest numerical value of plink states
- */
-enum nl80211_plink_state {
- NL80211_PLINK_LISTEN,
- NL80211_PLINK_OPN_SNT,
- NL80211_PLINK_OPN_RCVD,
- NL80211_PLINK_CNF_RCVD,
- NL80211_PLINK_ESTAB,
- NL80211_PLINK_HOLDING,
- NL80211_PLINK_BLOCKED,
-
- /* keep last */
- NUM_NL80211_PLINK_STATES,
- MAX_NL80211_PLINK_STATES = NUM_NL80211_PLINK_STATES - 1
-};
-
-/**
- * enum nl80211_plink_action - actions to perform in mesh peers
- *
- * @NL80211_PLINK_ACTION_NO_ACTION: perform no action
- * @NL80211_PLINK_ACTION_OPEN: start mesh peer link establishment
- * @NL80211_PLINK_ACTION_BLOCK: block traffic from this mesh peer
- * @NUM_NL80211_PLINK_ACTIONS: number of possible actions
- */
-enum plink_actions {
- NL80211_PLINK_ACTION_NO_ACTION,
- NL80211_PLINK_ACTION_OPEN,
- NL80211_PLINK_ACTION_BLOCK,
-
- NUM_NL80211_PLINK_ACTIONS,
-};
-
-
-#define NL80211_KCK_LEN 16
-#define NL80211_KEK_LEN 16
-#define NL80211_REPLAY_CTR_LEN 8
-
-/**
- * enum nl80211_rekey_data - attributes for GTK rekey offload
- * @__NL80211_REKEY_DATA_INVALID: invalid number for nested attributes
- * @NL80211_REKEY_DATA_KEK: key encryption key (binary)
- * @NL80211_REKEY_DATA_KCK: key confirmation key (binary)
- * @NL80211_REKEY_DATA_REPLAY_CTR: replay counter (binary)
- * @NUM_NL80211_REKEY_DATA: number of rekey attributes (internal)
- * @MAX_NL80211_REKEY_DATA: highest rekey attribute (internal)
- */
-enum nl80211_rekey_data {
- __NL80211_REKEY_DATA_INVALID,
- NL80211_REKEY_DATA_KEK,
- NL80211_REKEY_DATA_KCK,
- NL80211_REKEY_DATA_REPLAY_CTR,
-
- /* keep last */
- NUM_NL80211_REKEY_DATA,
- MAX_NL80211_REKEY_DATA = NUM_NL80211_REKEY_DATA - 1
-};
-
-/**
- * enum nl80211_hidden_ssid - values for %NL80211_ATTR_HIDDEN_SSID
- * @NL80211_HIDDEN_SSID_NOT_IN_USE: do not hide SSID (i.e., broadcast it in
- * Beacon frames)
- * @NL80211_HIDDEN_SSID_ZERO_LEN: hide SSID by using zero-length SSID element
- * in Beacon frames
- * @NL80211_HIDDEN_SSID_ZERO_CONTENTS: hide SSID by using correct length of SSID
- * element in Beacon frames but zero out each byte in the SSID
- */
-enum nl80211_hidden_ssid {
- NL80211_HIDDEN_SSID_NOT_IN_USE,
- NL80211_HIDDEN_SSID_ZERO_LEN,
- NL80211_HIDDEN_SSID_ZERO_CONTENTS
-};
-
-/**
- * enum nl80211_sta_wme_attr - station WME attributes
- * @__NL80211_STA_WME_INVALID: invalid number for nested attribute
- * @NL80211_STA_WME_UAPSD_QUEUES: bitmap of uapsd queues. the format
- * is the same as the AC bitmap in the QoS info field.
- * @NL80211_STA_WME_MAX_SP: max service period. the format is the same
- * as the MAX_SP field in the QoS info field (but already shifted down).
- * @__NL80211_STA_WME_AFTER_LAST: internal
- * @NL80211_STA_WME_MAX: highest station WME attribute
- */
-enum nl80211_sta_wme_attr {
- __NL80211_STA_WME_INVALID,
- NL80211_STA_WME_UAPSD_QUEUES,
- NL80211_STA_WME_MAX_SP,
-
- /* keep last */
- __NL80211_STA_WME_AFTER_LAST,
- NL80211_STA_WME_MAX = __NL80211_STA_WME_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_pmksa_candidate_attr - attributes for PMKSA caching candidates
- * @__NL80211_PMKSA_CANDIDATE_INVALID: invalid number for nested attributes
- * @NL80211_PMKSA_CANDIDATE_INDEX: candidate index (u32; the smaller, the higher
- * priority)
- * @NL80211_PMKSA_CANDIDATE_BSSID: candidate BSSID (6 octets)
- * @NL80211_PMKSA_CANDIDATE_PREAUTH: RSN pre-authentication supported (flag)
- * @NUM_NL80211_PMKSA_CANDIDATE: number of PMKSA caching candidate attributes
- * (internal)
- * @MAX_NL80211_PMKSA_CANDIDATE: highest PMKSA caching candidate attribute
- * (internal)
- */
-enum nl80211_pmksa_candidate_attr {
- __NL80211_PMKSA_CANDIDATE_INVALID,
- NL80211_PMKSA_CANDIDATE_INDEX,
- NL80211_PMKSA_CANDIDATE_BSSID,
- NL80211_PMKSA_CANDIDATE_PREAUTH,
-
- /* keep last */
- NUM_NL80211_PMKSA_CANDIDATE,
- MAX_NL80211_PMKSA_CANDIDATE = NUM_NL80211_PMKSA_CANDIDATE - 1
-};
-
-/**
- * enum nl80211_tdls_operation - values for %NL80211_ATTR_TDLS_OPERATION
- * @NL80211_TDLS_DISCOVERY_REQ: Send a TDLS discovery request
- * @NL80211_TDLS_SETUP: Setup TDLS link
- * @NL80211_TDLS_TEARDOWN: Teardown a TDLS link which is already established
- * @NL80211_TDLS_ENABLE_LINK: Enable TDLS link
- * @NL80211_TDLS_DISABLE_LINK: Disable TDLS link
- */
-enum nl80211_tdls_operation {
- NL80211_TDLS_DISCOVERY_REQ,
- NL80211_TDLS_SETUP,
- NL80211_TDLS_TEARDOWN,
- NL80211_TDLS_ENABLE_LINK,
- NL80211_TDLS_DISABLE_LINK,
-};
-
-/*
- * enum nl80211_ap_sme_features - device-integrated AP features
- * Reserved for future use, no bits are defined in
- * NL80211_ATTR_DEVICE_AP_SME yet.
-enum nl80211_ap_sme_features {
-};
- */
-
-/**
- * enum nl80211_feature_flags - device/driver features
- * @NL80211_FEATURE_SK_TX_STATUS: This driver supports reflecting back
- * TX status to the socket error queue when requested with the
- * socket option.
- * @NL80211_FEATURE_HT_IBSS: This driver supports IBSS with HT datarates.
- * @NL80211_FEATURE_INACTIVITY_TIMER: This driver takes care of freeing up
- * the connected inactive stations in AP mode.
- * @NL80211_FEATURE_CELL_BASE_REG_HINTS: This driver has been tested
- * to work properly to suppport receiving regulatory hints from
- * cellular base stations.
- * @NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL: (no longer available, only
- * here to reserve the value for API/ABI compatibility)
- * @NL80211_FEATURE_SAE: This driver supports simultaneous authentication of
- * equals (SAE) with user space SME (NL80211_CMD_AUTHENTICATE) in station
- * mode
- * @NL80211_FEATURE_LOW_PRIORITY_SCAN: This driver supports low priority scan
- * @NL80211_FEATURE_SCAN_FLUSH: Scan flush is supported
- * @NL80211_FEATURE_AP_SCAN: Support scanning using an AP vif
- * @NL80211_FEATURE_VIF_TXPOWER: The driver supports per-vif TX power setting
- * @NL80211_FEATURE_NEED_OBSS_SCAN: The driver expects userspace to perform
- * OBSS scans and generate 20/40 BSS coex reports. This flag is used only
- * for drivers implementing the CONNECT API, for AUTH/ASSOC it is implied.
- * @NL80211_FEATURE_P2P_GO_CTWIN: P2P GO implementation supports CT Window
- * setting
- * @NL80211_FEATURE_P2P_GO_OPPPS: P2P GO implementation supports opportunistic
- * powersave
- * @NL80211_FEATURE_FULL_AP_CLIENT_STATE: The driver supports full state
- * transitions for AP clients. Without this flag (and if the driver
- * doesn't have the AP SME in the device) the driver supports adding
- * stations only when they're associated and adds them in associated
- * state (to later be transitioned into authorized), with this flag
- * they should be added before even sending the authentication reply
- * and then transitioned into authenticated, associated and authorized
- * states using station flags.
- * Note that even for drivers that support this, the default is to add
- * stations in authenticated/associated state, so to add unauthenticated
- * stations the authenticated/associated bits have to be set in the mask.
- * @NL80211_FEATURE_ADVERTISE_CHAN_LIMITS: cfg80211 advertises channel limits
- * (HT40, VHT 80/160 MHz) if this flag is set
- * @NL80211_FEATURE_USERSPACE_MPM: This driver supports a userspace Mesh
- * Peering Management entity which may be implemented by registering for
- * beacons or NL80211_CMD_NEW_PEER_CANDIDATE events. The mesh beacon is
- * still generated by the driver.
- * @NL80211_FEATURE_ACTIVE_MONITOR: This driver supports an active monitor
- * interface. An active monitor interface behaves like a normal monitor
- * interface, but gets added to the driver. It ensures that incoming
- * unicast packets directed at the configured interface address get ACKed.
- * @NL80211_FEATURE_AP_MODE_CHAN_WIDTH_CHANGE: This driver supports dynamic
- * channel bandwidth change (e.g., HT 20 <-> 40 MHz channel) during the
- * lifetime of a BSS.
- * @NL80211_FEATURE_DS_PARAM_SET_IE_IN_PROBES: This device adds a DS Parameter
- * Set IE to probe requests.
- * @NL80211_FEATURE_WFA_TPC_IE_IN_PROBES: This device adds a WFA TPC Report IE
- * to probe requests.
- * @NL80211_FEATURE_QUIET: This device, in client mode, supports Quiet Period
- * requests sent to it by an AP.
- * @NL80211_FEATURE_TX_POWER_INSERTION: This device is capable of inserting the
- * current tx power value into the TPC Report IE in the spectrum
- * management TPC Report action frame, and in the Radio Measurement Link
- * Measurement Report action frame.
- * @NL80211_FEATURE_ACKTO_ESTIMATION: This driver supports dynamic ACK timeout
- * estimation (dynack). %NL80211_ATTR_WIPHY_DYN_ACK flag attribute is used
- * to enable dynack.
- * @NL80211_FEATURE_STATIC_SMPS: Device supports static spatial
- * multiplexing powersave, ie. can turn off all but one chain
- * even on HT connections that should be using more chains.
- * @NL80211_FEATURE_DYNAMIC_SMPS: Device supports dynamic spatial
- * multiplexing powersave, ie. can turn off all but one chain
- * and then wake the rest up as required after, for example,
- * rts/cts handshake.
- * @NL80211_FEATURE_SUPPORTS_WMM_ADMISSION: the device supports setting up WMM
- * TSPEC sessions (TID aka TSID 0-7) with the %NL80211_CMD_ADD_TX_TS
- * command. Standard IEEE 802.11 TSPEC setup is not yet supported, it
- * needs to be able to handle Block-Ack agreements and other things.
- * @NL80211_FEATURE_MAC_ON_CREATE: Device supports configuring
- * the vif's MAC address upon creation.
- * See 'macaddr' field in the vif_params (cfg80211.h).
- * @NL80211_FEATURE_TDLS_CHANNEL_SWITCH: Driver supports channel switching when
- * operating as a TDLS peer.
- * @NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR: This device/driver supports using a
- * random MAC address during scan (if the device is unassociated); the
- * %NL80211_SCAN_FLAG_RANDOM_ADDR flag may be set for scans and the MAC
- * address mask/value will be used.
- * @NL80211_FEATURE_SCHED_SCAN_RANDOM_MAC_ADDR: This device/driver supports
- * using a random MAC address for every scan iteration during scheduled
- * scan (while not associated), the %NL80211_SCAN_FLAG_RANDOM_ADDR may
- * be set for scheduled scan and the MAC address mask/value will be used.
- * @NL80211_FEATURE_ND_RANDOM_MAC_ADDR: This device/driver supports using a
- * random MAC address for every scan iteration during "net detect", i.e.
- * scan in unassociated WoWLAN, the %NL80211_SCAN_FLAG_RANDOM_ADDR may
- * be set for scheduled scan and the MAC address mask/value will be used.
- */
-enum nl80211_feature_flags {
- NL80211_FEATURE_SK_TX_STATUS = 1 << 0,
- NL80211_FEATURE_HT_IBSS = 1 << 1,
- NL80211_FEATURE_INACTIVITY_TIMER = 1 << 2,
- NL80211_FEATURE_CELL_BASE_REG_HINTS = 1 << 3,
- NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL = 1 << 4,
- NL80211_FEATURE_SAE = 1 << 5,
- NL80211_FEATURE_LOW_PRIORITY_SCAN = 1 << 6,
- NL80211_FEATURE_SCAN_FLUSH = 1 << 7,
- NL80211_FEATURE_AP_SCAN = 1 << 8,
- NL80211_FEATURE_VIF_TXPOWER = 1 << 9,
- NL80211_FEATURE_NEED_OBSS_SCAN = 1 << 10,
- NL80211_FEATURE_P2P_GO_CTWIN = 1 << 11,
- NL80211_FEATURE_P2P_GO_OPPPS = 1 << 12,
- /* bit 13 is reserved */
- NL80211_FEATURE_ADVERTISE_CHAN_LIMITS = 1 << 14,
- NL80211_FEATURE_FULL_AP_CLIENT_STATE = 1 << 15,
- NL80211_FEATURE_USERSPACE_MPM = 1 << 16,
- NL80211_FEATURE_ACTIVE_MONITOR = 1 << 17,
- NL80211_FEATURE_AP_MODE_CHAN_WIDTH_CHANGE = 1 << 18,
- NL80211_FEATURE_DS_PARAM_SET_IE_IN_PROBES = 1 << 19,
- NL80211_FEATURE_WFA_TPC_IE_IN_PROBES = 1 << 20,
- NL80211_FEATURE_QUIET = 1 << 21,
- NL80211_FEATURE_TX_POWER_INSERTION = 1 << 22,
- NL80211_FEATURE_ACKTO_ESTIMATION = 1 << 23,
- NL80211_FEATURE_STATIC_SMPS = 1 << 24,
- NL80211_FEATURE_DYNAMIC_SMPS = 1 << 25,
- NL80211_FEATURE_SUPPORTS_WMM_ADMISSION = 1 << 26,
- NL80211_FEATURE_MAC_ON_CREATE = 1 << 27,
- NL80211_FEATURE_TDLS_CHANNEL_SWITCH = 1 << 28,
- NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR = 1 << 29,
- NL80211_FEATURE_SCHED_SCAN_RANDOM_MAC_ADDR = 1 << 30,
- NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 1 << 31,
-};
-
-/**
- * enum nl80211_ext_feature_index - bit index of extended features.
- * @NL80211_EXT_FEATURE_VHT_IBSS: This driver supports IBSS with VHT datarates.
- * @NL80211_EXT_FEATURE_RRM: This driver supports RRM. When featured, user can
- * can request to use RRM (see %NL80211_ATTR_USE_RRM) with
- * %NL80211_CMD_ASSOCIATE and %NL80211_CMD_CONNECT requests, which will set
- * the ASSOC_REQ_USE_RRM flag in the association request even if
- * NL80211_FEATURE_QUIET is not advertized.
- * @NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER: This device supports MU-MIMO air
- * sniffer which means that it can be configured to hear packets from
- * certain groups which can be configured by the
- * %NL80211_ATTR_MU_MIMO_GROUP_DATA attribute,
- * or can be configured to follow a station by configuring the
- * %NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR attribute.
- * @NL80211_EXT_FEATURE_SCAN_START_TIME: This driver includes the actual
- * time the scan started in scan results event. The time is the TSF of
- * the BSS that the interface that requested the scan is connected to
- * (if available).
- * @NL80211_EXT_FEATURE_BSS_PARENT_TSF: Per BSS, this driver reports the
- * time the last beacon/probe was received. The time is the TSF of the
- * BSS that the interface that requested the scan is connected to
- * (if available).
- * @NL80211_EXT_FEATURE_SET_SCAN_DWELL: This driver supports configuration of
- * channel dwell time.
- * @NL80211_EXT_FEATURE_BEACON_RATE_LEGACY: Driver supports beacon rate
- * configuration (AP/mesh), supporting a legacy (non HT/VHT) rate.
- * @NL80211_EXT_FEATURE_BEACON_RATE_HT: Driver supports beacon rate
- * configuration (AP/mesh) with HT rates.
- * @NL80211_EXT_FEATURE_BEACON_RATE_VHT: Driver supports beacon rate
- * configuration (AP/mesh) with VHT rates.
- * @NL80211_EXT_FEATURE_FILS_STA: This driver supports Fast Initial Link Setup
- * with user space SME (NL80211_CMD_AUTHENTICATE) in station mode.
- * @NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA: This driver supports randomized TA
- * in @NL80211_CMD_FRAME while not associated.
- * @NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED: This driver supports
- * randomized TA in @NL80211_CMD_FRAME while associated.
- * @NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI: The driver supports sched_scan
- * for reporting BSSs with better RSSI than the current connected BSS
- * (%NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI).
- * @NL80211_EXT_FEATURE_CQM_RSSI_LIST: With this driver the
- * %NL80211_ATTR_CQM_RSSI_THOLD attribute accepts a list of zero or more
- * RSSI threshold values to monitor rather than exactly one threshold.
- * @NL80211_EXT_FEATURE_FILS_SK_OFFLOAD: Driver SME supports FILS shared key
- * authentication with %NL80211_CMD_CONNECT.
- * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK: Device wants to do 4-way
- * handshake with PSK in station mode (PSK is passed as part of the connect
- * and associate commands), doing it in the host might not be supported.
- * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X: Device wants to do doing 4-way
- * handshake with 802.1X in station mode (will pass EAP frames to the host
- * and accept the set_pmk/del_pmk commands), doing it in the host might not
- * be supported.
- * @NL80211_EXT_FEATURE_FILS_MAX_CHANNEL_TIME: Driver is capable of overriding
- * the max channel attribute in the FILS request params IE with the
- * actual dwell time.
- * @NL80211_EXT_FEATURE_ACCEPT_BCAST_PROBE_RESP: Driver accepts broadcast probe
- * response
- * @NL80211_EXT_FEATURE_OCE_PROBE_REQ_HIGH_TX_RATE: Driver supports sending
- * the first probe request in each channel at rate of at least 5.5Mbps.
- * @NL80211_EXT_FEATURE_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION: Driver supports
- * probe request tx deferral and suppression
- * @NL80211_EXT_FEATURE_MFP_OPTIONAL: Driver supports the %NL80211_MFP_OPTIONAL
- * value in %NL80211_ATTR_USE_MFP.
- * @NL80211_EXT_FEATURE_LOW_SPAN_SCAN: Driver supports low span scan.
- * @NL80211_EXT_FEATURE_LOW_POWER_SCAN: Driver supports low power scan.
- * @NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN: Driver supports high accuracy scan.
- * @NL80211_EXT_FEATURE_DFS_OFFLOAD: HW/driver will offload DFS actions.
- * Device or driver will do all DFS-related actions by itself,
- * informing user-space about CAC progress, radar detection event,
- * channel change triggered by radar detection event.
- * No need to start CAC from user-space, no need to react to
- * "radar detected" event.
- * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211: Driver supports sending and
- * receiving control port frames over nl80211 instead of the netdevice.
- * @NL80211_EXT_FEATURE_DATA_ACK_SIGNAL_SUPPORT: This Driver support data ack
- * rssi if firmware support, this flag is to intimate about ack rssi
- * support to nl80211.
- * @NL80211_EXT_FEATURE_TXQS: Driver supports FQ-CoDel-enabled intermediate
- * TXQs.
- * @NL80211_EXT_FEATURE_SCAN_RANDOM_SN: Driver/device supports randomizing the
- * SN in probe request frames if requested by %NL80211_SCAN_FLAG_RANDOM_SN.
- * @NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT: Driver/device can omit all data
- * except for supported rates from the probe request content if requested
- * by the %NL80211_SCAN_FLAG_MIN_PREQ_CONTENT flag.
- * @NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER: Driver supports enabling fine
- * timing measurement responder role.
- *
- * @NL80211_EXT_FEATURE_CAN_REPLACE_PTK0: Driver/device confirm that they are
- * able to rekey an in-use key correctly. Userspace must not rekey PTK keys
- * if this flag is not set. Ignoring this can leak clear text packets and/or
- * freeze the connection.
- * @NL80211_EXT_FEATURE_EXT_KEY_ID: Driver supports "Extended Key ID for
- * Individually Addressed Frames" from IEEE802.11-2016.
- *
- * @NL80211_EXT_FEATURE_AIRTIME_FAIRNESS: Driver supports getting airtime
- * fairness for transmitted packets and has enabled airtime fairness
- * scheduling.
- *
- * @NL80211_EXT_FEATURE_AP_PMKSA_CACHING: Driver/device supports PMKSA caching
- * (set/del PMKSA operations) in AP mode.
- *
- * @NL80211_EXT_FEATURE_SCHED_SCAN_BAND_SPECIFIC_RSSI_THOLD: Driver supports
- * filtering of sched scan results using band specific RSSI thresholds.
- *
- * @NL80211_EXT_FEATURE_STA_TX_PWR: This driver supports controlling tx power
- * to a station.
- *
- * @NL80211_EXT_FEATURE_SAE_OFFLOAD: Device wants to do SAE authentication in
- * station mode (SAE password is passed as part of the connect command).
- *
- * @NL80211_EXT_FEATURE_VLAN_OFFLOAD: The driver supports a single netdev
- * with VLAN tagged frames and separate VLAN-specific netdevs added using
- * vconfig similarly to the Ethernet case.
- *
- * @NL80211_EXT_FEATURE_AQL: The driver supports the Airtime Queue Limit (AQL)
- * feature, which prevents bufferbloat by using the expected transmission
- * time to limit the amount of data buffered in the hardware.
- *
- * @NL80211_EXT_FEATURE_BEACON_PROTECTION: The driver supports Beacon protection
- * and can receive key configuration for BIGTK using key indexes 6 and 7.
- * @NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT: The driver supports Beacon
- * protection as a client only and cannot transmit protected beacons.
- *
- * @NL80211_EXT_FEATURE_CONTROL_PORT_NO_PREAUTH: The driver can disable the
- * forwarding of preauth frames over the control port. They are then
- * handled as ordinary data frames.
- *
- * @NL80211_EXT_FEATURE_PROTECTED_TWT: Driver supports protected TWT frames
- *
- * @NL80211_EXT_FEATURE_DEL_IBSS_STA: The driver supports removing stations
- * in IBSS mode, essentially by dropping their state.
- *
- * @NL80211_EXT_FEATURE_MULTICAST_REGISTRATIONS: management frame registrations
- * are possible for multicast frames and those will be reported properly.
- *
- * @NL80211_EXT_FEATURE_SCAN_FREQ_KHZ: This driver supports receiving and
- * reporting scan request with %NL80211_ATTR_SCAN_FREQ_KHZ. In order to
- * report %NL80211_ATTR_SCAN_FREQ_KHZ, %NL80211_SCAN_FLAG_FREQ_KHZ must be
- * included in the scan request.
- *
- * @NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_TX_STATUS: The driver
- * can report tx status for control port over nl80211 tx operations.
- *
- * @NL80211_EXT_FEATURE_OPERATING_CHANNEL_VALIDATION: Driver supports Operating
- * Channel Validation (OCV) when using driver's SME for RSNA handshakes.
- *
- * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_AP_PSK: Device wants to do 4-way
- * handshake with PSK in AP mode (PSK is passed as part of the start AP
- * command).
- *
- * @NL80211_EXT_FEATURE_SAE_OFFLOAD_AP: Device wants to do SAE authentication
- * in AP mode (SAE password is passed as part of the start AP command).
- *
- * @NL80211_EXT_FEATURE_FILS_DISCOVERY: Driver/device supports FILS discovery
- * frames transmission
- *
- * @NL80211_EXT_FEATURE_UNSOL_BCAST_PROBE_RESP: Driver/device supports
- * unsolicited broadcast probe response transmission
- *
- * @NL80211_EXT_FEATURE_BEACON_RATE_HE: Driver supports beacon rate
- * configuration (AP/mesh) with HE rates.
- *
- * @NL80211_EXT_FEATURE_SECURE_LTF: Device supports secure LTF measurement
- * exchange protocol.
- *
- * @NL80211_EXT_FEATURE_SECURE_RTT: Device supports secure RTT measurement
- * exchange protocol.
- *
- * @NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE: Device supports management
- * frame protection for all management frames exchanged during the
- * negotiation and range measurement procedure.
- *
- * @NUM_NL80211_EXT_FEATURES: number of extended features.
- * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
- */
-enum nl80211_ext_feature_index {
- NL80211_EXT_FEATURE_VHT_IBSS,
- NL80211_EXT_FEATURE_RRM,
- NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER,
- NL80211_EXT_FEATURE_SCAN_START_TIME,
- NL80211_EXT_FEATURE_BSS_PARENT_TSF,
- NL80211_EXT_FEATURE_SET_SCAN_DWELL,
- NL80211_EXT_FEATURE_BEACON_RATE_LEGACY,
- NL80211_EXT_FEATURE_BEACON_RATE_HT,
- NL80211_EXT_FEATURE_BEACON_RATE_VHT,
- NL80211_EXT_FEATURE_FILS_STA,
- NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA,
- NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED,
- NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI,
- NL80211_EXT_FEATURE_CQM_RSSI_LIST,
- NL80211_EXT_FEATURE_FILS_SK_OFFLOAD,
- NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK,
- NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X,
- NL80211_EXT_FEATURE_FILS_MAX_CHANNEL_TIME,
- NL80211_EXT_FEATURE_ACCEPT_BCAST_PROBE_RESP,
- NL80211_EXT_FEATURE_OCE_PROBE_REQ_HIGH_TX_RATE,
- NL80211_EXT_FEATURE_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION,
- NL80211_EXT_FEATURE_MFP_OPTIONAL,
- NL80211_EXT_FEATURE_LOW_SPAN_SCAN,
- NL80211_EXT_FEATURE_LOW_POWER_SCAN,
- NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN,
- NL80211_EXT_FEATURE_DFS_OFFLOAD,
- NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211,
- NL80211_EXT_FEATURE_ACK_SIGNAL_SUPPORT,
- /* we renamed this - stay compatible */
- NL80211_EXT_FEATURE_DATA_ACK_SIGNAL_SUPPORT = NL80211_EXT_FEATURE_ACK_SIGNAL_SUPPORT,
- NL80211_EXT_FEATURE_TXQS,
- NL80211_EXT_FEATURE_SCAN_RANDOM_SN,
- NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT,
- NL80211_EXT_FEATURE_CAN_REPLACE_PTK0,
- NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER,
- NL80211_EXT_FEATURE_AIRTIME_FAIRNESS,
- NL80211_EXT_FEATURE_AP_PMKSA_CACHING,
- NL80211_EXT_FEATURE_SCHED_SCAN_BAND_SPECIFIC_RSSI_THOLD,
- NL80211_EXT_FEATURE_EXT_KEY_ID,
- NL80211_EXT_FEATURE_STA_TX_PWR,
-
-//tianyan@2021.7.27 modify for add wifi6 module start
- NL80211_EXT_FEATURE_SAE_OFFLOAD,
-//tianyan@2021.7.27 modify for add wifi6 module end
- NL80211_EXT_FEATURE_VLAN_OFFLOAD,
- NL80211_EXT_FEATURE_AQL,
- NL80211_EXT_FEATURE_BEACON_PROTECTION,
- NL80211_EXT_FEATURE_CONTROL_PORT_NO_PREAUTH,
- NL80211_EXT_FEATURE_PROTECTED_TWT,
- NL80211_EXT_FEATURE_DEL_IBSS_STA,
- NL80211_EXT_FEATURE_MULTICAST_REGISTRATIONS,
- NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT,
- NL80211_EXT_FEATURE_SCAN_FREQ_KHZ,
- NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_TX_STATUS,
- NL80211_EXT_FEATURE_OPERATING_CHANNEL_VALIDATION,
- NL80211_EXT_FEATURE_4WAY_HANDSHAKE_AP_PSK,
- NL80211_EXT_FEATURE_SAE_OFFLOAD_AP,
- NL80211_EXT_FEATURE_FILS_DISCOVERY,
- NL80211_EXT_FEATURE_UNSOL_BCAST_PROBE_RESP,
- NL80211_EXT_FEATURE_BEACON_RATE_HE,
- NL80211_EXT_FEATURE_SECURE_LTF,
- NL80211_EXT_FEATURE_SECURE_RTT,
- NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE,
-
- /* add new features before the definition below */
- NUM_NL80211_EXT_FEATURES,
- MAX_NL80211_EXT_FEATURES = NUM_NL80211_EXT_FEATURES - 1
-};
-
-/**
- * enum nl80211_probe_resp_offload_support_attr - optional supported
- * protocols for probe-response offloading by the driver/FW.
- * To be used with the %NL80211_ATTR_PROBE_RESP_OFFLOAD attribute.
- * Each enum value represents a bit in the bitmap of supported
- * protocols. Typically a subset of probe-requests belonging to a
- * supported protocol will be excluded from offload and uploaded
- * to the host.
- *
- * @NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS: Support for WPS ver. 1
- * @NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS2: Support for WPS ver. 2
- * @NL80211_PROBE_RESP_OFFLOAD_SUPPORT_P2P: Support for P2P
- * @NL80211_PROBE_RESP_OFFLOAD_SUPPORT_80211U: Support for 802.11u
- */
-enum nl80211_probe_resp_offload_support_attr {
- NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS = 1<<0,
- NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS2 = 1<<1,
- NL80211_PROBE_RESP_OFFLOAD_SUPPORT_P2P = 1<<2,
- NL80211_PROBE_RESP_OFFLOAD_SUPPORT_80211U = 1<<3,
-};
-
-/**
- * enum nl80211_connect_failed_reason - connection request failed reasons
- * @NL80211_CONN_FAIL_MAX_CLIENTS: Maximum number of clients that can be
- * handled by the AP is reached.
- * @NL80211_CONN_FAIL_BLOCKED_CLIENT: Connection request is rejected due to ACL.
- */
-enum nl80211_connect_failed_reason {
- NL80211_CONN_FAIL_MAX_CLIENTS,
- NL80211_CONN_FAIL_BLOCKED_CLIENT,
-};
-
-/**
- * enum nl80211_timeout_reason - timeout reasons
- *
- * @NL80211_TIMEOUT_UNSPECIFIED: Timeout reason unspecified.
- * @NL80211_TIMEOUT_SCAN: Scan (AP discovery) timed out.
- * @NL80211_TIMEOUT_AUTH: Authentication timed out.
- * @NL80211_TIMEOUT_ASSOC: Association timed out.
- */
-enum nl80211_timeout_reason {
- NL80211_TIMEOUT_UNSPECIFIED,
- NL80211_TIMEOUT_SCAN,
- NL80211_TIMEOUT_AUTH,
- NL80211_TIMEOUT_ASSOC,
-};
-
-/**
- * enum nl80211_scan_flags - scan request control flags
- *
- * Scan request control flags are used to control the handling
- * of NL80211_CMD_TRIGGER_SCAN and NL80211_CMD_START_SCHED_SCAN
- * requests.
- *
- * NL80211_SCAN_FLAG_LOW_SPAN, NL80211_SCAN_FLAG_LOW_POWER, and
- * NL80211_SCAN_FLAG_HIGH_ACCURACY flags are exclusive of each other, i.e., only
- * one of them can be used in the request.
- *
- * @NL80211_SCAN_FLAG_LOW_PRIORITY: scan request has low priority
- * @NL80211_SCAN_FLAG_FLUSH: flush cache before scanning
- * @NL80211_SCAN_FLAG_AP: force a scan even if the interface is configured
- * as AP and the beaconing has already been configured. This attribute is
- * dangerous because will destroy stations performance as a lot of frames
- * will be lost while scanning off-channel, therefore it must be used only
- * when really needed
- * @NL80211_SCAN_FLAG_RANDOM_ADDR: use a random MAC address for this scan (or
- * for scheduled scan: a different one for every scan iteration). When the
- * flag is set, depending on device capabilities the @NL80211_ATTR_MAC and
- * @NL80211_ATTR_MAC_MASK attributes may also be given in which case only
- * the masked bits will be preserved from the MAC address and the remainder
- * randomised. If the attributes are not given full randomisation (46 bits,
- * locally administered 1, multicast 0) is assumed.
- * This flag must not be requested when the feature isn't supported, check
- * the nl80211 feature flags for the device.
- * @NL80211_SCAN_FLAG_FILS_MAX_CHANNEL_TIME: fill the dwell time in the FILS
- * request parameters IE in the probe request
- * @NL80211_SCAN_FLAG_ACCEPT_BCAST_PROBE_RESP: accept broadcast probe responses
- * @NL80211_SCAN_FLAG_OCE_PROBE_REQ_HIGH_TX_RATE: send probe request frames at
- * rate of at least 5.5M. In case non OCE AP is dicovered in the channel,
- * only the first probe req in the channel will be sent in high rate.
- * @NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION: allow probe request
- * tx deferral (dot11FILSProbeDelay shall be set to 15ms)
- * and suppression (if it has received a broadcast Probe Response frame,
- * Beacon frame or FILS Discovery frame from an AP that the STA considers
- * a suitable candidate for (re-)association - suitable in terms of
- * SSID and/or RSSI.
- * @NL80211_SCAN_FLAG_LOW_SPAN: Span corresponds to the total time taken to
- * accomplish the scan. Thus, this flag intends the driver to perform the
- * scan request with lesser span/duration. It is specific to the driver
- * implementations on how this is accomplished. Scan accuracy may get
- * impacted with this flag.
- * @NL80211_SCAN_FLAG_LOW_POWER: This flag intends the scan attempts to consume
- * optimal possible power. Drivers can resort to their specific means to
- * optimize the power. Scan accuracy may get impacted with this flag.
- * @NL80211_SCAN_FLAG_HIGH_ACCURACY: Accuracy here intends to the extent of scan
- * results obtained. Thus HIGH_ACCURACY scan flag aims to get maximum
- * possible scan results. This flag hints the driver to use the best
- * possible scan configuration to improve the accuracy in scanning.
- * Latency and power use may get impacted with this flag.
- * @NL80211_SCAN_FLAG_RANDOM_SN: randomize the sequence number in probe
- * request frames from this scan to avoid correlation/tracking being
- * possible.
- * @NL80211_SCAN_FLAG_MIN_PREQ_CONTENT: minimize probe request content to
- * only have supported rates and no additional capabilities (unless
- * added by userspace explicitly.)
- */
-enum nl80211_scan_flags {
- NL80211_SCAN_FLAG_LOW_PRIORITY = 1<<0,
- NL80211_SCAN_FLAG_FLUSH = 1<<1,
- NL80211_SCAN_FLAG_AP = 1<<2,
- NL80211_SCAN_FLAG_RANDOM_ADDR = 1<<3,
- NL80211_SCAN_FLAG_FILS_MAX_CHANNEL_TIME = 1<<4,
- NL80211_SCAN_FLAG_ACCEPT_BCAST_PROBE_RESP = 1<<5,
- NL80211_SCAN_FLAG_OCE_PROBE_REQ_HIGH_TX_RATE = 1<<6,
- NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION = 1<<7,
- NL80211_SCAN_FLAG_LOW_SPAN = 1<<8,
- NL80211_SCAN_FLAG_LOW_POWER = 1<<9,
- NL80211_SCAN_FLAG_HIGH_ACCURACY = 1<<10,
- NL80211_SCAN_FLAG_RANDOM_SN = 1<<11,
- NL80211_SCAN_FLAG_MIN_PREQ_CONTENT = 1<<12,
-};
-
-/**
- * enum nl80211_acl_policy - access control policy
- *
- * Access control policy is applied on a MAC list set by
- * %NL80211_CMD_START_AP and %NL80211_CMD_SET_MAC_ACL, to
- * be used with %NL80211_ATTR_ACL_POLICY.
- *
- * @NL80211_ACL_POLICY_ACCEPT_UNLESS_LISTED: Deny stations which are
- * listed in ACL, i.e. allow all the stations which are not listed
- * in ACL to authenticate.
- * @NL80211_ACL_POLICY_DENY_UNLESS_LISTED: Allow the stations which are listed
- * in ACL, i.e. deny all the stations which are not listed in ACL.
- */
-enum nl80211_acl_policy {
- NL80211_ACL_POLICY_ACCEPT_UNLESS_LISTED,
- NL80211_ACL_POLICY_DENY_UNLESS_LISTED,
-};
-
-/**
- * enum nl80211_smps_mode - SMPS mode
- *
- * Requested SMPS mode (for AP mode)
- *
- * @NL80211_SMPS_OFF: SMPS off (use all antennas).
- * @NL80211_SMPS_STATIC: static SMPS (use a single antenna)
- * @NL80211_SMPS_DYNAMIC: dynamic smps (start with a single antenna and
- * turn on other antennas after CTS/RTS).
- */
-enum nl80211_smps_mode {
- NL80211_SMPS_OFF,
- NL80211_SMPS_STATIC,
- NL80211_SMPS_DYNAMIC,
-
- __NL80211_SMPS_AFTER_LAST,
- NL80211_SMPS_MAX = __NL80211_SMPS_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_radar_event - type of radar event for DFS operation
- *
- * Type of event to be used with NL80211_ATTR_RADAR_EVENT to inform userspace
- * about detected radars or success of the channel available check (CAC)
- *
- * @NL80211_RADAR_DETECTED: A radar pattern has been detected. The channel is
- * now unusable.
- * @NL80211_RADAR_CAC_FINISHED: Channel Availability Check has been finished,
- * the channel is now available.
- * @NL80211_RADAR_CAC_ABORTED: Channel Availability Check has been aborted, no
- * change to the channel status.
- * @NL80211_RADAR_NOP_FINISHED: The Non-Occupancy Period for this channel is
- * over, channel becomes usable.
- * @NL80211_RADAR_PRE_CAC_EXPIRED: Channel Availability Check done on this
- * non-operating channel is expired and no longer valid. New CAC must
- * be done on this channel before starting the operation. This is not
- * applicable for ETSI dfs domain where pre-CAC is valid for ever.
- * @NL80211_RADAR_CAC_STARTED: Channel Availability Check has been started,
- * should be generated by HW if NL80211_EXT_FEATURE_DFS_OFFLOAD is enabled.
- */
-enum nl80211_radar_event {
- NL80211_RADAR_DETECTED,
- NL80211_RADAR_CAC_FINISHED,
- NL80211_RADAR_CAC_ABORTED,
- NL80211_RADAR_NOP_FINISHED,
- NL80211_RADAR_PRE_CAC_EXPIRED,
- NL80211_RADAR_CAC_STARTED,
-};
-
-/**
- * enum nl80211_dfs_state - DFS states for channels
- *
- * Channel states used by the DFS code.
- *
- * @NL80211_DFS_USABLE: The channel can be used, but channel availability
- * check (CAC) must be performed before using it for AP or IBSS.
- * @NL80211_DFS_UNAVAILABLE: A radar has been detected on this channel, it
- * is therefore marked as not available.
- * @NL80211_DFS_AVAILABLE: The channel has been CAC checked and is available.
- */
-enum nl80211_dfs_state {
- NL80211_DFS_USABLE,
- NL80211_DFS_UNAVAILABLE,
- NL80211_DFS_AVAILABLE,
-};
-
-/**
- * enum enum nl80211_protocol_features - nl80211 protocol features
- * @NL80211_PROTOCOL_FEATURE_SPLIT_WIPHY_DUMP: nl80211 supports splitting
- * wiphy dumps (if requested by the application with the attribute
- * %NL80211_ATTR_SPLIT_WIPHY_DUMP. Also supported is filtering the
- * wiphy dump by %NL80211_ATTR_WIPHY, %NL80211_ATTR_IFINDEX or
- * %NL80211_ATTR_WDEV.
- */
-enum nl80211_protocol_features {
- NL80211_PROTOCOL_FEATURE_SPLIT_WIPHY_DUMP = 1 << 0,
-};
-
-/**
- * enum nl80211_crit_proto_id - nl80211 critical protocol identifiers
- *
- * @NL80211_CRIT_PROTO_UNSPEC: protocol unspecified.
- * @NL80211_CRIT_PROTO_DHCP: BOOTP or DHCPv6 protocol.
- * @NL80211_CRIT_PROTO_EAPOL: EAPOL protocol.
- * @NL80211_CRIT_PROTO_APIPA: APIPA protocol.
- * @NUM_NL80211_CRIT_PROTO: must be kept last.
- */
-enum nl80211_crit_proto_id {
- NL80211_CRIT_PROTO_UNSPEC,
- NL80211_CRIT_PROTO_DHCP,
- NL80211_CRIT_PROTO_EAPOL,
- NL80211_CRIT_PROTO_APIPA,
- /* add other protocols before this one */
- NUM_NL80211_CRIT_PROTO
-};
-
-/* maximum duration for critical protocol measures */
-#define NL80211_CRIT_PROTO_MAX_DURATION 5000 /* msec */
-
-/**
- * enum nl80211_rxmgmt_flags - flags for received management frame.
- *
- * Used by cfg80211_rx_mgmt()
- *
- * @NL80211_RXMGMT_FLAG_ANSWERED: frame was answered by device/driver.
- * @NL80211_RXMGMT_FLAG_EXTERNAL_AUTH: Host driver intends to offload
- * the authentication. Exclusively defined for host drivers that
- * advertises the SME functionality but would like the userspace
- * to handle certain authentication algorithms (e.g. SAE).
- */
-enum nl80211_rxmgmt_flags {
- NL80211_RXMGMT_FLAG_ANSWERED = 1 << 0,
-//tianyan@2021.7.27 modify for add wifi6 module start
- NL80211_RXMGMT_FLAG_EXTERNAL_AUTH = 1 << 1,
-//tianyan@2021.7.27 modify for add wifi6 module end
-};
-
-/*
- * If this flag is unset, the lower 24 bits are an OUI, if set
- * a Linux nl80211 vendor ID is used (no such IDs are allocated
- * yet, so that's not valid so far)
- */
-#define NL80211_VENDOR_ID_IS_LINUX 0x80000000
-
-/**
- * struct nl80211_vendor_cmd_info - vendor command data
- * @vendor_id: If the %NL80211_VENDOR_ID_IS_LINUX flag is clear, then the
- * value is a 24-bit OUI; if it is set then a separately allocated ID
- * may be used, but no such IDs are allocated yet. New IDs should be
- * added to this file when needed.
- * @subcmd: sub-command ID for the command
- */
-struct nl80211_vendor_cmd_info {
- __u32 vendor_id;
- __u32 subcmd;
-};
-
-/**
- * enum nl80211_tdls_peer_capability - TDLS peer flags.
- *
- * Used by tdls_mgmt() to determine which conditional elements need
- * to be added to TDLS Setup frames.
- *
- * @NL80211_TDLS_PEER_HT: TDLS peer is HT capable.
- * @NL80211_TDLS_PEER_VHT: TDLS peer is VHT capable.
- * @NL80211_TDLS_PEER_WMM: TDLS peer is WMM capable.
- */
-enum nl80211_tdls_peer_capability {
- NL80211_TDLS_PEER_HT = 1<<0,
- NL80211_TDLS_PEER_VHT = 1<<1,
- NL80211_TDLS_PEER_WMM = 1<<2,
-};
-
-/**
- * enum nl80211_sched_scan_plan - scanning plan for scheduled scan
- * @__NL80211_SCHED_SCAN_PLAN_INVALID: attribute number 0 is reserved
- * @NL80211_SCHED_SCAN_PLAN_INTERVAL: interval between scan iterations. In
- * seconds (u32).
- * @NL80211_SCHED_SCAN_PLAN_ITERATIONS: number of scan iterations in this
- * scan plan (u32). The last scan plan must not specify this attribute
- * because it will run infinitely. A value of zero is invalid as it will
- * make the scan plan meaningless.
- * @NL80211_SCHED_SCAN_PLAN_MAX: highest scheduled scan plan attribute number
- * currently defined
- * @__NL80211_SCHED_SCAN_PLAN_AFTER_LAST: internal use
- */
-enum nl80211_sched_scan_plan {
- __NL80211_SCHED_SCAN_PLAN_INVALID,
- NL80211_SCHED_SCAN_PLAN_INTERVAL,
- NL80211_SCHED_SCAN_PLAN_ITERATIONS,
-
- /* keep last */
- __NL80211_SCHED_SCAN_PLAN_AFTER_LAST,
- NL80211_SCHED_SCAN_PLAN_MAX =
- __NL80211_SCHED_SCAN_PLAN_AFTER_LAST - 1
-};
-
-/**
- * struct nl80211_bss_select_rssi_adjust - RSSI adjustment parameters.
- *
- * @band: band of BSS that must match for RSSI value adjustment. The value
- * of this field is according to &enum nl80211_band.
- * @delta: value used to adjust the RSSI value of matching BSS in dB.
- */
-struct nl80211_bss_select_rssi_adjust {
- __u8 band;
- __s8 delta;
-} __attribute__((packed));
-
-/**
- * enum nl80211_bss_select_attr - attributes for bss selection.
- *
- * @__NL80211_BSS_SELECT_ATTR_INVALID: reserved.
- * @NL80211_BSS_SELECT_ATTR_RSSI: Flag indicating only RSSI-based BSS selection
- * is requested.
- * @NL80211_BSS_SELECT_ATTR_BAND_PREF: attribute indicating BSS
- * selection should be done such that the specified band is preferred.
- * When there are multiple BSS-es in the preferred band, the driver
- * shall use RSSI-based BSS selection as a second step. The value of
- * this attribute is according to &enum nl80211_band (u32).
- * @NL80211_BSS_SELECT_ATTR_RSSI_ADJUST: When present the RSSI level for
- * BSS-es in the specified band is to be adjusted before doing
- * RSSI-based BSS selection. The attribute value is a packed structure
- * value as specified by &struct nl80211_bss_select_rssi_adjust.
- * @NL80211_BSS_SELECT_ATTR_MAX: highest bss select attribute number.
- * @__NL80211_BSS_SELECT_ATTR_AFTER_LAST: internal use.
- *
- * One and only one of these attributes are found within %NL80211_ATTR_BSS_SELECT
- * for %NL80211_CMD_CONNECT. It specifies the required BSS selection behaviour
- * which the driver shall use.
- */
-enum nl80211_bss_select_attr {
- __NL80211_BSS_SELECT_ATTR_INVALID,
- NL80211_BSS_SELECT_ATTR_RSSI,
- NL80211_BSS_SELECT_ATTR_BAND_PREF,
- NL80211_BSS_SELECT_ATTR_RSSI_ADJUST,
-
- /* keep last */
- __NL80211_BSS_SELECT_ATTR_AFTER_LAST,
- NL80211_BSS_SELECT_ATTR_MAX = __NL80211_BSS_SELECT_ATTR_AFTER_LAST - 1
-};
-
-/**
- * enum nl80211_nan_function_type - NAN function type
- *
- * Defines the function type of a NAN function
- *
- * @NL80211_NAN_FUNC_PUBLISH: function is publish
- * @NL80211_NAN_FUNC_SUBSCRIBE: function is subscribe
- * @NL80211_NAN_FUNC_FOLLOW_UP: function is follow-up
- */
-enum nl80211_nan_function_type {
- NL80211_NAN_FUNC_PUBLISH,
- NL80211_NAN_FUNC_SUBSCRIBE,
- NL80211_NAN_FUNC_FOLLOW_UP,
-
- /* keep last */
- __NL80211_NAN_FUNC_TYPE_AFTER_LAST,
- NL80211_NAN_FUNC_MAX_TYPE = __NL80211_NAN_FUNC_TYPE_AFTER_LAST - 1,
-};
-
-/**
- * enum nl80211_nan_publish_type - NAN publish tx type
- *
- * Defines how to send publish Service Discovery Frames
- *
- * @NL80211_NAN_SOLICITED_PUBLISH: publish function is solicited
- * @NL80211_NAN_UNSOLICITED_PUBLISH: publish function is unsolicited
- */
-enum nl80211_nan_publish_type {
- NL80211_NAN_SOLICITED_PUBLISH = 1 << 0,
- NL80211_NAN_UNSOLICITED_PUBLISH = 1 << 1,
-};
-
-/**
- * enum nl80211_nan_func_term_reason - NAN functions termination reason
- *
- * Defines termination reasons of a NAN function
- *
- * @NL80211_NAN_FUNC_TERM_REASON_USER_REQUEST: requested by user
- * @NL80211_NAN_FUNC_TERM_REASON_TTL_EXPIRED: timeout
- * @NL80211_NAN_FUNC_TERM_REASON_ERROR: errored
- */
-enum nl80211_nan_func_term_reason {
- NL80211_NAN_FUNC_TERM_REASON_USER_REQUEST,
- NL80211_NAN_FUNC_TERM_REASON_TTL_EXPIRED,
- NL80211_NAN_FUNC_TERM_REASON_ERROR,
-};
-
-#define NL80211_NAN_FUNC_SERVICE_ID_LEN 6
-#define NL80211_NAN_FUNC_SERVICE_SPEC_INFO_MAX_LEN 0xff
-#define NL80211_NAN_FUNC_SRF_MAX_LEN 0xff
-
-/**
- * enum nl80211_nan_func_attributes - NAN function attributes
- * @__NL80211_NAN_FUNC_INVALID: invalid
- * @NL80211_NAN_FUNC_TYPE: &enum nl80211_nan_function_type (u8).
- * @NL80211_NAN_FUNC_SERVICE_ID: 6 bytes of the service ID hash as
- * specified in NAN spec. This is a binary attribute.
- * @NL80211_NAN_FUNC_PUBLISH_TYPE: relevant if the function's type is
- * publish. Defines the transmission type for the publish Service Discovery
- * Frame, see &enum nl80211_nan_publish_type. Its type is u8.
- * @NL80211_NAN_FUNC_PUBLISH_BCAST: relevant if the function is a solicited
- * publish. Should the solicited publish Service Discovery Frame be sent to
- * the NAN Broadcast address. This is a flag.
- * @NL80211_NAN_FUNC_SUBSCRIBE_ACTIVE: relevant if the function's type is
- * subscribe. Is the subscribe active. This is a flag.
- * @NL80211_NAN_FUNC_FOLLOW_UP_ID: relevant if the function's type is follow up.
- * The instance ID for the follow up Service Discovery Frame. This is u8.
- * @NL80211_NAN_FUNC_FOLLOW_UP_REQ_ID: relevant if the function's type
- * is follow up. This is a u8.
- * The requestor instance ID for the follow up Service Discovery Frame.
- * @NL80211_NAN_FUNC_FOLLOW_UP_DEST: the MAC address of the recipient of the
- * follow up Service Discovery Frame. This is a binary attribute.
- * @NL80211_NAN_FUNC_CLOSE_RANGE: is this function limited for devices in a
- * close range. The range itself (RSSI) is defined by the device.
- * This is a flag.
- * @NL80211_NAN_FUNC_TTL: strictly positive number of DWs this function should
- * stay active. If not present infinite TTL is assumed. This is a u32.
- * @NL80211_NAN_FUNC_SERVICE_INFO: array of bytes describing the service
- * specific info. This is a binary attribute.
- * @NL80211_NAN_FUNC_SRF: Service Receive Filter. This is a nested attribute.
- * See &enum nl80211_nan_srf_attributes.
- * @NL80211_NAN_FUNC_RX_MATCH_FILTER: Receive Matching filter. This is a nested
- * attribute. It is a list of binary values.
- * @NL80211_NAN_FUNC_TX_MATCH_FILTER: Transmit Matching filter. This is a
- * nested attribute. It is a list of binary values.
- * @NL80211_NAN_FUNC_INSTANCE_ID: The instance ID of the function.
- * Its type is u8 and it cannot be 0.
- * @NL80211_NAN_FUNC_TERM_REASON: NAN function termination reason.
- * See &enum nl80211_nan_func_term_reason.
- *
- * @NUM_NL80211_NAN_FUNC_ATTR: internal
- * @NL80211_NAN_FUNC_ATTR_MAX: highest NAN function attribute
- */
-enum nl80211_nan_func_attributes {
- __NL80211_NAN_FUNC_INVALID,
- NL80211_NAN_FUNC_TYPE,
- NL80211_NAN_FUNC_SERVICE_ID,
- NL80211_NAN_FUNC_PUBLISH_TYPE,
- NL80211_NAN_FUNC_PUBLISH_BCAST,
- NL80211_NAN_FUNC_SUBSCRIBE_ACTIVE,
- NL80211_NAN_FUNC_FOLLOW_UP_ID,
- NL80211_NAN_FUNC_FOLLOW_UP_REQ_ID,
- NL80211_NAN_FUNC_FOLLOW_UP_DEST,
- NL80211_NAN_FUNC_CLOSE_RANGE,
- NL80211_NAN_FUNC_TTL,
- NL80211_NAN_FUNC_SERVICE_INFO,
- NL80211_NAN_FUNC_SRF,
- NL80211_NAN_FUNC_RX_MATCH_FILTER,
- NL80211_NAN_FUNC_TX_MATCH_FILTER,
- NL80211_NAN_FUNC_INSTANCE_ID,
- NL80211_NAN_FUNC_TERM_REASON,
-
- /* keep last */
- NUM_NL80211_NAN_FUNC_ATTR,
- NL80211_NAN_FUNC_ATTR_MAX = NUM_NL80211_NAN_FUNC_ATTR - 1
-};
-
-/**
- * enum nl80211_nan_srf_attributes - NAN Service Response filter attributes
- * @__NL80211_NAN_SRF_INVALID: invalid
- * @NL80211_NAN_SRF_INCLUDE: present if the include bit of the SRF set.
- * This is a flag.
- * @NL80211_NAN_SRF_BF: Bloom Filter. Present if and only if
- * %NL80211_NAN_SRF_MAC_ADDRS isn't present. This attribute is binary.
- * @NL80211_NAN_SRF_BF_IDX: index of the Bloom Filter. Mandatory if
- * %NL80211_NAN_SRF_BF is present. This is a u8.
- * @NL80211_NAN_SRF_MAC_ADDRS: list of MAC addresses for the SRF. Present if
- * and only if %NL80211_NAN_SRF_BF isn't present. This is a nested
- * attribute. Each nested attribute is a MAC address.
- * @NUM_NL80211_NAN_SRF_ATTR: internal
- * @NL80211_NAN_SRF_ATTR_MAX: highest NAN SRF attribute
- */
-enum nl80211_nan_srf_attributes {
- __NL80211_NAN_SRF_INVALID,
- NL80211_NAN_SRF_INCLUDE,
- NL80211_NAN_SRF_BF,
- NL80211_NAN_SRF_BF_IDX,
- NL80211_NAN_SRF_MAC_ADDRS,
-
- /* keep last */
- NUM_NL80211_NAN_SRF_ATTR,
- NL80211_NAN_SRF_ATTR_MAX = NUM_NL80211_NAN_SRF_ATTR - 1,
-};
-
-/**
- * enum nl80211_nan_match_attributes - NAN match attributes
- * @__NL80211_NAN_MATCH_INVALID: invalid
- * @NL80211_NAN_MATCH_FUNC_LOCAL: the local function that had the
- * match. This is a nested attribute.
- * See &enum nl80211_nan_func_attributes.
- * @NL80211_NAN_MATCH_FUNC_PEER: the peer function
- * that caused the match. This is a nested attribute.
- * See &enum nl80211_nan_func_attributes.
- *
- * @NUM_NL80211_NAN_MATCH_ATTR: internal
- * @NL80211_NAN_MATCH_ATTR_MAX: highest NAN match attribute
- */
-enum nl80211_nan_match_attributes {
- __NL80211_NAN_MATCH_INVALID,
- NL80211_NAN_MATCH_FUNC_LOCAL,
- NL80211_NAN_MATCH_FUNC_PEER,
-
- /* keep last */
- NUM_NL80211_NAN_MATCH_ATTR,
- NL80211_NAN_MATCH_ATTR_MAX = NUM_NL80211_NAN_MATCH_ATTR - 1
-};
-
-/**
- * nl80211_external_auth_action - Action to perform with external
- * authentication request. Used by NL80211_ATTR_EXTERNAL_AUTH_ACTION.
- * @NL80211_EXTERNAL_AUTH_START: Start the authentication.
- * @NL80211_EXTERNAL_AUTH_ABORT: Abort the ongoing authentication.
- */
-enum nl80211_external_auth_action {
- NL80211_EXTERNAL_AUTH_START,
- NL80211_EXTERNAL_AUTH_ABORT,
-};
-
-#endif /* __LINUX_NL80211_H */
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11ax.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11ax.h
old mode 100755
new mode 100644
index 1566a1b..24fe183
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11ax.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11ax.h
@@ -2,9 +2,9 @@
* Basic types and constants relating to 802.11ax/HE STA
* This is a portion of 802.11ax definition. The rest are in 802.11.h.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11e.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11e.h
index 65fb149..fc6bc80 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11e.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11e.h
@@ -1,9 +1,9 @@
/*
* 802.11e protocol header file
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11s.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11s.h
index fb55aa0..384fbe6 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11s.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.11s.h
@@ -1,9 +1,9 @@
/*
* Fundamental types and constants relating to 802.11s Mesh
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.1d.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.1d.h
index 5ef8935..7fdaae9 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.1d.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.1d.h
@@ -1,9 +1,9 @@
/*
* Fundamental types and constants relating to 802.1D
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.3.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.3.h
index 769e33a..b3b5edc 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.3.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/802.3.h
@@ -1,9 +1,9 @@
/*
* Fundamental constants relating to 802.3
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/aidmp.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/aidmp.h
index 59436e7..e915c5c 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/aidmp.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/aidmp.h
@@ -1,9 +1,9 @@
/*
* Broadcom AMBA Interconnect definitions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_cfg.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_cfg.h
index f070d89..110accc 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_cfg.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_cfg.h
@@ -1,9 +1,9 @@
/*
* BCM common config options
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_mpool_pub.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_mpool_pub.h
index 78219d7..81a370c 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_mpool_pub.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_mpool_pub.h
@@ -35,9 +35,9 @@
* and instrumentation on top of the heap, without modifying the heap
* allocation implementation.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_ring.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_ring.h
index 644d588..63e41f4 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_ring.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcm_ring.h
@@ -6,9 +6,9 @@
*
* NOTE: A ring of size N, may only hold N-1 elements.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
@@ -103,9 +103,9 @@
* private L1 data cache.
* +----------------------------------------------------------------------------
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmarp.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmarp.h
index 0ba1099..df28421 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmarp.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmarp.h
@@ -1,9 +1,9 @@
/*
* Fundamental constants relating to ARP Protocol
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmbloom.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmbloom.h
index ccf9b9c..263657f 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmbloom.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmbloom.h
@@ -1,9 +1,9 @@
/*
* Bloom filter support
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmcdc.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmcdc.h
index e53a236..c4c0bd8 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmcdc.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmcdc.h
@@ -4,9 +4,9 @@
*
* Definitions subject to change without notice.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmdefs.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmdefs.h
index 99e3f83..014c7ce 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmdefs.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmdefs.h
@@ -1,9 +1,9 @@
/*
* Misc system wide definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmdhcp.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmdhcp.h
index 04f0abb..e4f1d20 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmdhcp.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmdhcp.h
@@ -1,9 +1,9 @@
/*
* Fundamental constants relating to DHCP Protocol
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmendian.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmendian.h
index 5d145f9..091ba18 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmendian.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmendian.h
@@ -1,9 +1,9 @@
/*
* Byte order utilities
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmeth.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmeth.h
index 5a8c70d..bf833e9 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmeth.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmeth.h
@@ -1,9 +1,9 @@
/*
* Broadcom Ethernettype protocol definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmicmp.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmicmp.h
index 007ba14..807bf37 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmicmp.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmicmp.h
@@ -1,9 +1,9 @@
/*
* Fundamental constants relating to ICMP Protocol
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmiov.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmiov.h
index e0290f2..5bd754e 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmiov.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmiov.h
@@ -4,9 +4,9 @@
* To be used in firmware and host apps or dhd - reducing code size,
* duplication, and maintenance overhead.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmip.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmip.h
index 6ed708a..ee0abe6 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmip.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmip.h
@@ -1,9 +1,9 @@
/*
* Fundamental constants relating to IP Protocol
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmipv6.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmipv6.h
index 245cf5f..db87441 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmipv6.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmipv6.h
@@ -1,9 +1,9 @@
/*
* Fundamental constants relating to Neighbor Discovery Protocol
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmmsgbuf.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmmsgbuf.h
index cf6707e..6ebe60c 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmmsgbuf.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmmsgbuf.h
@@ -4,9 +4,9 @@
*
* Definitions subject to change without notice.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmnvram.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmnvram.h
index 9f37464..dd410b6 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmnvram.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmnvram.h
@@ -1,9 +1,9 @@
/*
* NVRAM variable manipulation
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmpcie.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmpcie.h
index bd7eb5a..5d16fed 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmpcie.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmpcie.h
@@ -3,9 +3,9 @@
* Software-specific definitions shared between device and host side
* Explains the shared area between host and dongle
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmpcispi.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmpcispi.h
index 1662bf1..2b5a2bb 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmpcispi.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmpcispi.h
@@ -1,9 +1,9 @@
/*
* Broadcom PCI-SPI Host Controller Register Definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmperf.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmperf.h
index f7f4d94..55cfd34 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmperf.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmperf.h
@@ -1,9 +1,9 @@
/*
* Performance counters software interface.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdbus.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdbus.h
index f1f46d4..bded9f7 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdbus.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdbus.h
@@ -2,9 +2,9 @@
* Definitions for API from sdio common code (bcmsdh) to individual
* host controller drivers.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h
index 17c119f..26c5bd2 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdh_sdmmc.h
@@ -1,9 +1,9 @@
/*
* BCMSDH Function Driver for the native SDIO/MMC driver in the Linux Kernel
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdpcm.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdpcm.h
old mode 100755
new mode 100644
index 6d18f53..37d968b
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdpcm.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdpcm.h
@@ -2,9 +2,9 @@
* Broadcom SDIO/PCMCIA
* Software-specific definitions shared between device and host side
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdspi.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdspi.h
old mode 100755
new mode 100644
index 8860bc6..52883dd
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdspi.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdspi.h
@@ -1,9 +1,9 @@
/*
* SD-SPI Protocol Conversion - BCMSDH->SPI Translation Layer
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdstd.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdstd.h
old mode 100755
new mode 100644
index 2f07291..7485343
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdstd.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsdstd.h
@@ -1,9 +1,9 @@
/*
* 'Standard' SDIO HOST CONTROLLER driver
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmspi.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmspi.h
old mode 100755
new mode 100644
index 22f78b2..5146a7f
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmspi.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmspi.h
@@ -1,9 +1,9 @@
/*
* Broadcom SPI Low-Level Hardware Driver API
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmspibrcm.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmspibrcm.h
old mode 100755
new mode 100644
index afb157b..74b9abc
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmspibrcm.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmspibrcm.h
@@ -1,9 +1,9 @@
/*
* SD-SPI Protocol Conversion - BCMSDH->gSPI Translation Layer
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h
old mode 100755
new mode 100644
index a8bc9d2..e6d90cd
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsrom_fmt.h
@@ -1,9 +1,9 @@
/*
* SROM format definition.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h
old mode 100755
new mode 100644
index 59a9d52..e42663b
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmsrom_tbl.h
@@ -1,9 +1,9 @@
/*
* Table that encodes the srom formats for PCI/PCIe NICs.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmstdlib_s.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmstdlib_s.h
old mode 100755
new mode 100644
index a235bd5..582612e
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmstdlib_s.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmstdlib_s.h
@@ -1,9 +1,9 @@
/*
* Broadcom Secure Standard Library.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmtcp.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmtcp.h
old mode 100755
new mode 100644
index 2890dfc..610f878
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmtcp.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmtcp.h
@@ -1,9 +1,9 @@
/*
* Fundamental constants relating to TCP Protocol
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmtlv.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmtlv.h
old mode 100755
new mode 100644
index 979324b..83d4c91
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmtlv.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmtlv.h
@@ -1,9 +1,9 @@
/*
* TLV and XTLV support
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmudp.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmudp.h
old mode 100755
new mode 100644
index 0f61b81..5c4a10c
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmudp.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmudp.h
@@ -1,9 +1,9 @@
/*
* Fundamental constants relating to UDP Protocol
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmutils.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmutils.h
old mode 100755
new mode 100644
index 69110f3..cacf4fd
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmutils.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/bcmutils.h
@@ -1,9 +1,9 @@
/*
* Misc useful os-independent macros and functions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dbus.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dbus.h
old mode 100755
new mode 100644
index ff8be44..3b6a7c2
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dbus.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dbus.h
@@ -2,9 +2,9 @@
* Dongle BUS interface Abstraction layer
* target serial buses like USB, SDIO, SPI, etc.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dhd_daemon.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dhd_daemon.h
old mode 100755
new mode 100644
index 06f062e..90ad408
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dhd_daemon.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dhd_daemon.h
@@ -1,9 +1,9 @@
/*
* Header file for DHD daemon to handle timeouts
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dhdioctl.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dhdioctl.h
old mode 100755
new mode 100644
index cdcbdb1..6b0582a
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dhdioctl.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dhdioctl.h
@@ -5,9 +5,9 @@
*
* Definitions subject to change without notice.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dnglevent.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dnglevent.h
old mode 100755
new mode 100644
index a554dea..46defe2
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dnglevent.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/dnglevent.h
@@ -1,9 +1,9 @@
/*
* Broadcom Event protocol definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/eapol.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/eapol.h
old mode 100755
new mode 100644
index 74dd9ee..440a7fa
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/eapol.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/eapol.h
@@ -5,9 +5,9 @@
* IEEE Std 802.1X-2001
* IEEE 802.1X RADIUS Usage Guidelines
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/epivers.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/epivers.h
index 651b4cb..46c98b9 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/epivers.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/epivers.h
@@ -15,26 +15,26 @@
#define EPI_MINOR_VERSION 10
-#define EPI_RC_NUMBER 96
+#define EPI_RC_NUMBER 80
#define EPI_INCREMENTAL_NUMBER 0
#define EPI_BUILD_NUMBER 0
-#define EPI_VERSION 100, 10, 96, 0
+#define EPI_VERSION 100, 10, 80, 0
-#define EPI_VERSION_NUM 0x640a6000
+#define EPI_VERSION_NUM 0x640a5000
-#define EPI_VERSION_DEV 100.10.96
+#define EPI_VERSION_DEV 100.10.80
/* Driver Version String, ASCII, 32 chars max */
#ifdef BCMINTERNAL
-#define EPI_VERSION_STR "100.10.96 (8c0aa58 BCMINT)"
+#define EPI_VERSION_STR "100.10.80 (b285849 BCMINT)"
#else
#ifdef WLTEST
-#define EPI_VERSION_STR "100.10.96 (8c0aa58 WLTEST)"
+#define EPI_VERSION_STR "100.10.80 (b285849 WLTEST)"
#else
-#define EPI_VERSION_STR "100.10.96 (8c0aa58)"
+#define EPI_VERSION_STR "100.10.80 (b285849)"
#endif
#endif /* BCMINTERNAL */
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/etd.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/etd.h
old mode 100755
new mode 100644
index c36034f..daa69bc
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/etd.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/etd.h
@@ -1,9 +1,9 @@
/*
* Extended Trap data component interface file.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/ethernet.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/ethernet.h
old mode 100755
new mode 100644
index 078047b..6408ffb
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/ethernet.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/ethernet.h
@@ -1,9 +1,9 @@
/*
* From FreeBSD 2.2.7: Fundamental constants relating to ethernet.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log.h
old mode 100755
new mode 100644
index 2a0af2d..b1aee3a
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log.h
@@ -1,9 +1,9 @@
/*
* EVENT_LOG system definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_payload.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_payload.h
old mode 100755
new mode 100644
index ddcdcc4..a33064f
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_payload.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_payload.h
@@ -4,9 +4,9 @@
* This file describes the payloads of event log entries that are data buffers
* rather than formatted string entries. The contents are generally XTLVs.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_set.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_set.h
old mode 100755
new mode 100644
index 7a23a0e..7541a81
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_set.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_set.h
@@ -1,9 +1,9 @@
/*
* EVENT_LOG system definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_tag.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_tag.h
old mode 100755
new mode 100644
index 6de9b94..0e33635
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_tag.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_log_tag.h
@@ -1,9 +1,9 @@
/*
* EVENT_LOG system definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_trace.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_trace.h
old mode 100755
new mode 100644
index 0c665da..3495ecb
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_trace.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/event_trace.h
@@ -1,9 +1,9 @@
/*
* Trace log blocks sent over HBUS
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/fils.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/fils.h
old mode 100755
new mode 100644
index 40a7cb6..c5cf876
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/fils.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/fils.h
@@ -1,8 +1,8 @@
/*
* Fundamental types and constants relating to FILS AUTHENTICATION
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_armtrap.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_armtrap.h
old mode 100755
new mode 100644
index 7d6c5da..ac61c90
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_armtrap.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_armtrap.h
@@ -1,9 +1,9 @@
/*
* HND arm trap handling.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_cons.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_cons.h
old mode 100755
new mode 100644
index f6825e8..94af2fe
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_cons.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_cons.h
@@ -1,9 +1,9 @@
/*
* Console support for RTE - for host use only.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_debug.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_debug.h
old mode 100755
new mode 100644
index 7b723de..d21715f
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_debug.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_debug.h
@@ -1,9 +1,9 @@
/*
* HND Run Time Environment debug info area
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_pktpool.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_pktpool.h
old mode 100755
new mode 100644
index a79f9bb..a437230
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_pktpool.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_pktpool.h
@@ -1,9 +1,9 @@
/*
* HND generic packet pool operation primitives
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_pktq.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_pktq.h
old mode 100755
new mode 100644
index 47911b6..88fab42
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_pktq.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_pktq.h
@@ -1,9 +1,9 @@
/*
* HND generic pktq operation primitives
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_trap.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_trap.h
old mode 100755
new mode 100644
index 7ecf449..5482654
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_trap.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hnd_trap.h
@@ -1,9 +1,9 @@
/*
* HND Trap handling.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndchipc.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndchipc.h
old mode 100755
new mode 100644
index a0ecc7b..e12545a
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndchipc.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndchipc.h
@@ -1,9 +1,9 @@
/*
* HND SiliconBackplane chipcommon support - OS independent.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndlhl.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndlhl.h
old mode 100755
new mode 100644
index e0af659..f7f4611
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndlhl.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndlhl.h
@@ -1,9 +1,9 @@
/*
* HND SiliconBackplane PMU support.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndmem.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndmem.h
old mode 100755
new mode 100644
index fd4a174..8b40e91
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndmem.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndmem.h
@@ -1,9 +1,9 @@
/*
* Utility routines for configuring different memories in Broadcom chips.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndoobr.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndoobr.h
old mode 100755
new mode 100644
index d6de88a..f277e5c
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndoobr.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndoobr.h
@@ -1,9 +1,9 @@
/*
* HND OOBR interface header
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndpmu.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndpmu.h
old mode 100755
new mode 100644
index 9e25aff..d2e11b1
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndpmu.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndpmu.h
@@ -1,9 +1,9 @@
/*
* HND SiliconBackplane PMU support.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndsoc.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndsoc.h
old mode 100755
new mode 100644
index bf4a503..c3942a8
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndsoc.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/hndsoc.h
@@ -1,9 +1,9 @@
/*
* Broadcom HND chip & on-chip-interconnect-related definitions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/linux_pkt.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/linux_pkt.h
old mode 100755
new mode 100644
index ad3f9ac..1292b1a
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/linux_pkt.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/linux_pkt.h
@@ -1,9 +1,9 @@
/*
* Linux Packet (skb) interface
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/lpflags.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/lpflags.h
old mode 100755
new mode 100644
index 9ef3362..6f56f97
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/lpflags.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/lpflags.h
@@ -1,9 +1,9 @@
/*
* Chip related low power flags
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/mbo.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/mbo.h
old mode 100755
new mode 100644
index 2b9ddbc..a52198b
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/mbo.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/mbo.h
@@ -1,9 +1,9 @@
/*
* Fundamental types and constants relating to WFA MBO
* (Multiband Operation)
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/miniopt.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/miniopt.h
old mode 100755
new mode 100644
index 0efa45f..2db807b
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/miniopt.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/miniopt.h
@@ -1,9 +1,9 @@
/*
* Command line options parser.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/msf.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/msf.h
old mode 100755
new mode 100644
index 1ec021b..9491806
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/msf.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/msf.h
@@ -1,9 +1,9 @@
/*
* Common interface to MSF (multi-segment format) definitions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/msgtrace.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/msgtrace.h
old mode 100755
new mode 100644
index 82b03ca..1d1cfe0
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/msgtrace.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/msgtrace.h
@@ -1,9 +1,9 @@
/*
* Trace messages sent over HBUS
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/nan.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/nan.h
old mode 100755
new mode 100644
index 01f2b48..7c37f6d
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/nan.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/nan.h
@@ -2,9 +2,9 @@
* Fundamental types and constants relating to WFA NAN
* (Neighbor Awareness Networking)
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl.h
old mode 100755
new mode 100644
index a6dc799..0d8c4a3
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl.h
@@ -1,9 +1,9 @@
/*
* OS Abstraction Layer
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl_decl.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl_decl.h
old mode 100755
new mode 100644
index 5ca76a7..a36c7c4
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl_decl.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl_decl.h
@@ -1,9 +1,9 @@
/*
* osl forward declarations
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl_ext.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl_ext.h
old mode 100755
new mode 100644
index 490356e..97fa174
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl_ext.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/osl_ext.h
@@ -2,9 +2,9 @@
* OS Abstraction Layer Extension - the APIs defined by the "extension" API
* are only supported by a subset of all operating systems.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/p2p.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/p2p.h
old mode 100755
new mode 100644
index 0365d54..9e1d9a8
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/p2p.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/p2p.h
@@ -1,9 +1,9 @@
/*
* Fundamental types and constants relating to WFA P2P (aka WiFi Direct)
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/packed_section_end.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/packed_section_end.h
old mode 100755
new mode 100644
index 70518fd..c1654c8
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/packed_section_end.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/packed_section_end.h
@@ -15,9 +15,9 @@
* #include <packed_section_end.h>
*
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/packed_section_start.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/packed_section_start.h
old mode 100755
new mode 100644
index 536e8ed..56b21fd
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/packed_section_start.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/packed_section_start.h
@@ -15,9 +15,9 @@
* #include <packed_section_end.h>
*
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/pcicfg.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/pcicfg.h
old mode 100755
new mode 100644
index 168b375..03d53f0
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/pcicfg.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/pcicfg.h
@@ -1,9 +1,9 @@
/*
* pcicfg.h: PCI configuration constants and structures.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/pcie_core.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/pcie_core.h
old mode 100755
new mode 100644
index de72080..4a6ff73
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/pcie_core.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/pcie_core.h
@@ -1,9 +1,9 @@
/*
* BCM43XX PCIE core hardware definitions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/rte_ioctl.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/rte_ioctl.h
old mode 100755
new mode 100644
index a4874f5..76e24e7
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/rte_ioctl.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/rte_ioctl.h
@@ -1,9 +1,9 @@
/*
* HND Run Time Environment ioctl.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbchipc.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbchipc.h
old mode 100755
new mode 100644
index 531f393..731ef6c
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbchipc.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbchipc.h
@@ -7,9 +7,9 @@
*
* $Id: sbchipc.h 701163 2017-05-23 22:21:03Z $
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbconfig.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbconfig.h
old mode 100755
new mode 100644
index 71b8711..285084b
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbconfig.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbconfig.h
@@ -1,9 +1,9 @@
/*
* Broadcom SiliconBackplane hardware register definitions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbgci.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbgci.h
old mode 100755
new mode 100644
index 17ae67e..cd27717
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbgci.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbgci.h
@@ -1,9 +1,9 @@
/*
* SiliconBackplane GCI core hardware definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbhndarm.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbhndarm.h
old mode 100755
new mode 100644
index 6bc8cd7..7f8787f
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbhndarm.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbhndarm.h
@@ -1,9 +1,9 @@
/*
* Broadcom SiliconBackplane ARM definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbpcmcia.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbpcmcia.h
old mode 100755
new mode 100644
index 7b39833..c194719
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbpcmcia.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbpcmcia.h
@@ -1,9 +1,9 @@
/*
* BCM43XX Sonics SiliconBackplane PCMCIA core hardware definitions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsdio.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsdio.h
old mode 100755
new mode 100644
index d8870a0..19f921c
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsdio.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsdio.h
@@ -4,9 +4,9 @@
*
* SDIO core support 1bit, 4 bit SDIO mode as well as SPI mode.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsocram.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsocram.h
old mode 100755
new mode 100644
index 3b6f088..75587be
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsocram.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsocram.h
@@ -1,9 +1,9 @@
/*
* BCM47XX Sonics SiliconBackplane embedded ram core
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsysmem.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsysmem.h
old mode 100755
new mode 100644
index d05649d..d41d87d
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsysmem.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sbsysmem.h
@@ -1,9 +1,9 @@
/*
* SiliconBackplane System Memory core
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdio.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdio.h
index e6c5c17..a0d95d5 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdio.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdio.h
@@ -2,9 +2,9 @@
* SDIO spec header file
* Protocol and standard (common) device definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdioh.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdioh.h
old mode 100755
new mode 100644
index db64440..6ab58ab
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdioh.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdioh.h
@@ -2,9 +2,9 @@
* SDIO Host Controller Spec header file
* Register map and definitions for the Standard Host Controller
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdiovar.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdiovar.h
old mode 100755
new mode 100644
index 9894791..b580264
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdiovar.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdiovar.h
@@ -2,9 +2,9 @@
* Structure used by apps whose drivers access SDIO drivers.
* Pulled out separately so dhdu and wlu can both use it.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdspi.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdspi.h
old mode 100755
new mode 100644
index 2e3a719..291fd54
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdspi.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/sdspi.h
@@ -1,9 +1,9 @@
/*
* SD-SPI Protocol Standard
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/siutils.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/siutils.h
old mode 100755
new mode 100644
index fba4e73..03b2ab8
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/siutils.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/siutils.h
@@ -2,9 +2,9 @@
* Misc utility routines for accessing the SOC Interconnects
* of Broadcom HNBU chips.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/spid.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/spid.h
old mode 100755
new mode 100644
index 4a6ee31..9426078
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/spid.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/spid.h
@@ -1,9 +1,9 @@
/*
* SPI device spec header file
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/trxhdr.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/trxhdr.h
old mode 100755
new mode 100644
index 85b2247..41f1166
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/trxhdr.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/trxhdr.h
@@ -1,9 +1,9 @@
/*
* TRX image file header format.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/vlan.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/vlan.h
old mode 100755
new mode 100644
index 6e0a2d4..5c5ebdf
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/vlan.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/vlan.h
@@ -1,9 +1,9 @@
/*
* 802.1Q VLAN protocol definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wl_iw.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wl_iw.h
old mode 100755
new mode 100644
index 511a217..bfb9955
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wl_iw.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wl_iw.h
@@ -1,9 +1,9 @@
/*
* Linux Wireless Extensions support
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wlfc_proto.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wlfc_proto.h
old mode 100755
new mode 100644
index d46faa0..1e91e74
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wlfc_proto.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wlfc_proto.h
@@ -1,7 +1,7 @@
/*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wlioctl_utils.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wlioctl_utils.h
old mode 100755
new mode 100644
index 0b3d272..f8d5155
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wlioctl_utils.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wlioctl_utils.h
@@ -1,9 +1,9 @@
/*
* Custom OID/ioctl related helper functions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wpa.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wpa.h
index d823dbf..c6f4619 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wpa.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wpa.h
@@ -1,9 +1,9 @@
/*
* Fundamental types and constants relating to WPA
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wps.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wps.h
old mode 100755
new mode 100644
index 3cfd277..d5f2e4c
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wps.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/include/wps.h
@@ -1,9 +1,9 @@
/*
* WPS IE definitions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_osl.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_osl.c
index 43cfeaa..d7d0c79 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_osl.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_osl.c
@@ -1,9 +1,9 @@
/*
* Linux OS Independent Layer
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_osl_priv.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_osl_priv.h
old mode 100755
new mode 100644
index 61d3a4e..ca71d66
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_osl_priv.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_osl_priv.h
@@ -1,9 +1,9 @@
/*
* Private header file for Linux OS Independent Layer
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_pkt.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_pkt.c
old mode 100755
new mode 100644
index 83d8654..b42dac9
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_pkt.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/linux_pkt.c
@@ -1,9 +1,9 @@
/*
* Linux Packet (skb) interface
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/otpdefs.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/otpdefs.h
old mode 100755
new mode 100644
index 6bd45c6..dff03f9
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/otpdefs.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/otpdefs.h
@@ -1,9 +1,9 @@
/*
* otpdefs.h SROM/OTP definitions.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright 2016 Broadcom
+ * Copyright 2021 Broadcom
*
* This program is the proprietary software of Broadcom and/or
* its licensors, and may only be used, duplicated, modified or distributed
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/pcie_core.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/pcie_core.c
old mode 100755
new mode 100644
index 8a03251..6fb018a
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/pcie_core.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/pcie_core.c
@@ -3,9 +3,9 @@
* Contains PCIe related functions that are shared between different driver models (e.g. firmware
* builds, DHD builds, BMAC builds), in order to avoid code duplication.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/sbutils.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/sbutils.c
old mode 100755
new mode 100644
index 42853fe..55c7aad
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/sbutils.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/sbutils.c
@@ -2,9 +2,9 @@
* Misc utility routines for accessing chip-specific features
* of the SiliconBackplane-based Broadcom chips.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/siutils_priv.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/siutils_priv.h
old mode 100755
new mode 100644
index 27a30fa..e42df98
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/siutils_priv.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/siutils_priv.h
@@ -1,9 +1,9 @@
/*
* Include file private to the SOC Interconnect support files.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_android.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_android.h
old mode 100755
new mode 100644
index 0542c5b..4b43ad5
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_android.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_android.h
@@ -1,9 +1,9 @@
/*
* Linux cfg80211 driver - Android related functions
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg80211.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg80211.c
index 02e3590..19021bf 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg80211.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg80211.c
@@ -10909,14 +10909,6 @@
chspec = wf_channel2chspec(_chan, bw);
if (wf_chspec_valid(chspec)) {
- if (IS_RADAR_CHAN(chan->flags)) {
- WL_ERR(("enable radar center_freq:%d, chan->flags:0x%x, dfs_state:%d \n", chan->center_freq, chan->flags, chan->dfs_state));
- err = wldev_iovar_setint(dev, "radar", 1);
- }
- else {
- WL_ERR(("disable radar center_freq:%d, chan->flags:0x%x, dfs_state:%d \n", chan->center_freq, chan->flags, chan->dfs_state));
- err = wldev_iovar_setint(dev, "radar", 0);
- }
fw_chspec = wl_chspec_host_to_driver(chspec);
if (fw_chspec != INVCHANSPEC) {
if ((err = wldev_iovar_setint(dev, "chanspec",
@@ -13097,10 +13089,12 @@
if ((err = wldev_iovar_setint(dev, "closednet", 1)) < 0)
WL_ERR(("failed to set hidden : %d\n", err));
WL_DBG(("hidden_ssid_enum_val: %d \n", info->hidden_ssid));
+//add by qs.xiong 20221102 to fix ap unhidden fail
}else{
- if ((err = wldev_iovar_setint(dev, "closednet",1 )) < 0)
- WL_ERR(("failed to set unhidden : %d\n", err));
- }
+ if ((err = wldev_iovar_setint(dev, "closednet",0 )) < 0)
+ WL_ERR(("failed to set hidden 0 : %d\n", err));
+ }
+//add by qs.xiong 20221102 to fix ap unhidden fail
#ifdef SUPPORT_AP_RADIO_PWRSAVE
if (dev_role == NL80211_IFTYPE_AP) {
@@ -21279,8 +21273,6 @@
cfg->wdev->wiphy->features |= NL80211_FEATURE_FW_4WAY_HANDSHAKE;
}
#endif /* BCMSUP_4WAY_HANDSHAKE */
- /* Set the flag of DFS offload to the driver */
- wiphy_ext_feature_set(cfg->wdev->wiphy, NL80211_EXT_FEATURE_DFS_OFFLOAD);
err = __wl_cfg80211_up(cfg);
if (unlikely(err))
WL_ERR(("__wl_cfg80211_up failed\n"));
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg80211.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg80211.h
index e5d0bf3..d1e400b 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg80211.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg80211.h
@@ -100,12 +100,6 @@
#define IS_AKM_OWE(akm) FALSE
#endif // endif
-#if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 14, 0))
-#define IS_RADAR_CHAN(flags) (flags & (IEEE80211_CHAN_RADAR | IEEE80211_CHAN_PASSIVE_SCAN))
-#else
-#define IS_RADAR_CHAN(flags) (flags & (IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IR))
-#endif // endif
-
#define htod32(i) (i)
#define htod16(i) (i)
#define dtoh64(i) (i)
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg_btcoex.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg_btcoex.c
old mode 100755
new mode 100644
index 46d7bef..d364b6b
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg_btcoex.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfg_btcoex.c
@@ -1,9 +1,9 @@
/*
* Linux cfg80211 driver - Dongle Host Driver (DHD) related
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgp2p.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgp2p.h
old mode 100755
new mode 100644
index 9b45d0e..95be464
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgp2p.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgp2p.h
@@ -1,9 +1,9 @@
/*
* Linux cfgp2p driver
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgscan.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgscan.c
index e6e03d4..866e843 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgscan.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgscan.c
@@ -937,6 +937,11 @@
}
#endif /* WL_SCAN_TYPE */
+#if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 14, 0))
+#define IS_RADAR_CHAN(flags) (flags & (IEEE80211_CHAN_RADAR | IEEE80211_CHAN_PASSIVE_SCAN))
+#else
+#define IS_RADAR_CHAN(flags) (flags & (IEEE80211_CHAN_RADAR | IEEE80211_CHAN_NO_IR))
+#endif // endif
static void
wl_cfgscan_populate_scan_channels(struct bcm_cfg80211 *cfg, u16 *channel_list,
struct cfg80211_scan_request *request, u32 *num_channels)
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgscan.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgscan.h
old mode 100755
new mode 100644
index 8694a6e..2e29cf1
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgscan.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgscan.h
@@ -1,9 +1,9 @@
/*
* Header for Linux cfg80211 scan
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgvendor.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgvendor.c
index 26f697d..c905a3d 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgvendor.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_cfgvendor.c
@@ -9204,6 +9204,7 @@
[IFX_VENDOR_ATTR_TWT_PARAM_MAX] = {.type = NLA_U8},
};
+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 3, 0))
const struct nla_policy ifx_vendor_attr_twt_policy[IFX_VENDOR_ATTR_TWT_MAX + 1] = {
[IFX_VENDOR_ATTR_TWT_UNSPEC] = {.type = NLA_U8},
[IFX_VENDOR_ATTR_TWT_OPER] = {.type = NLA_U8},
@@ -9211,6 +9212,8 @@
NLA_POLICY_NESTED(ifx_vendor_attr_twt_param_policy),
[IFX_VENDOR_ATTR_TWT_MAX] = {.type = NLA_U8},
};
+#endif
+
#endif /* WL11AX */
const struct nla_policy ifx_vendor_attr_policy[IFX_VENDOR_ATTR_MAX + 1] = {
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_dbg.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_dbg.h
old mode 100755
new mode 100644
index 3e61e82..56fa7ad
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_dbg.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_dbg.h
@@ -2,9 +2,9 @@
* Minimal debug/trace/assert driver definitions for
* Broadcom 802.11 Networking Adapter.
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_iw.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_iw.c
index cd5e759..c16478f 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_iw.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_iw.c
@@ -1,9 +1,9 @@
/*
* Linux Wireless Extensions support
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_linux_mon.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_linux_mon.c
old mode 100755
new mode 100644
index 13d1a86..643bfe4
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_linux_mon.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_linux_mon.c
@@ -1,9 +1,9 @@
/*
* Broadcom Dongle Host Driver (DHD), Linux monitor network interface
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_roam.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_roam.c
index 5a95976..e3be4aa 100755
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_roam.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wl_roam.c
@@ -1,9 +1,9 @@
/*
* Linux roam cache
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2022 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wldev_common.c b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wldev_common.c
old mode 100755
new mode 100644
index 8722def..f25adf1
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wldev_common.c
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wldev_common.c
@@ -1,9 +1,9 @@
/*
* Common function shared by Linux WEXT, cfg80211 and p2p drivers
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wldev_common.h b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wldev_common.h
old mode 100755
new mode 100644
index 7e7899f..98996fc
--- a/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wldev_common.h
+++ b/src/kernel/linux/v4.19/drivers/net/wireless/bcmdhd/wldev_common.h
@@ -1,9 +1,9 @@
/*
* Common function shared by Linux WEXT, cfg80211 and p2p drivers
*
- * Portions of this code are copyright (c) 2023 Cypress Semiconductor Corporation
+ * Portions of this code are copyright (c) 2021 Cypress Semiconductor Corporation
*
- * Copyright (C) 1999-2016, Broadcom Corporation
+ * Copyright (C) 1999-2017, Broadcom Corporation
*
* Unless you and Broadcom execute a separate written software license
* agreement governing use of this software, this software is licensed to you
diff --git a/src/lynq/common_file/ril/lib_common/lynq_module_common.h b/src/lynq/common_file/ril/lib_common/lynq_module_common.h
new file mode 100755
index 0000000..812ed1e
--- /dev/null
+++ b/src/lynq/common_file/ril/lib_common/lynq_module_common.h
@@ -0,0 +1,52 @@
+#ifndef LYNQ_MODULE_COMMON_H
+#define LYNQ_MODULE_COMMON_H
+
+#include "lynq_interface.h"
+
+#define RESULT_OK (0)
+#define RESULT_ERROR (-1)
+
+
+
+typedef enum{
+ /*base abnormal*/
+ LYNQ_E_PARAMETER_ANONALY=7000,
+ LYNQ_E_SEND_REQUEST_FAIL=7001,
+ LYNQ_E_GET_HEAD_ERROR=7002,
+ LYNQ_E_INNER_ERROR=7100,
+ LYNQ_E_MALLOC_ERROR=7101,
+ /**/
+ LYNQ_E_CARDSTATE_ERROR=8000,
+ /* The voice service state is out of service*/
+ LYNQ_E_STATE_OUT_OF_SERVICE=8001,
+ /* The voice service state is EMERGENCY_ONLY*/
+ LYNQ_E_STATE_EMERGENCY_ONLY=8002,
+ /* The radio power is power off*/
+ LYNQ_E_STATE_POWER_OFF=8003,
+ LYNQ_E_TIME_OUT=8004,
+ /*create or open sms DB fail */
+ LYNQ_E_SMS_DB_FAIL=8005,
+ /*Failed to execute sql statement*/
+ LYNQ_E_SMS_SQL_FAIL = 8006,
+ LYNQ_E_SMS_NOT_FIND = 8007,
+ /* The logic conflict*/
+ LYNQ_E_CONFLICT=9000,
+ /*Null anomaly*/
+ LYNQ_E_NULL_ANONALY=9001,
+ /*Invalid id anomaly*/
+ LYNQ_E_INVALID_ID_ANONALY=9002,
+#ifdef ECALL_SUPPORT
+ LYNQ_E_ECALL_BEING_RUNNING =9003,
+ LYNQ_E_ECALL_MSD_LENGTH_ERROR =9004,
+ LYNQ_E_ECALL_DAILING_NO_ANSWER =9005,
+#endif
+ LYNQ_E_SMS_MSGLEN_OUT_OF_RANGE = 9006,
+}LYNQ_E;
+
+#define MODULE_CLOSED (0)
+#define MODULE_SWITCHING (1)
+#define MODULE_RUNNING (2)
+
+extern int g_module_init_flag;
+
+#endif
diff --git a/src/lynq/common_file/ril/lib_common/lynq_module_socket.cpp b/src/lynq/common_file/ril/lib_common/lynq_module_socket.cpp
new file mode 100755
index 0000000..7139cce
--- /dev/null
+++ b/src/lynq/common_file/ril/lib_common/lynq_module_socket.cpp
@@ -0,0 +1,747 @@
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <arpa/inet.h>
+#include <string.h>
+#include <unistd.h>
+#include <binder/Parcel.h>
+#include <log/log.h>
+#include <cutils/jstring.h>
+#include <pthread.h>
+#include <list>
+#include <vendor-ril/telephony/ril.h>
+#include <vendor-ril/telephony/mtk_ril_sp.h>
+#include "lynq_module_common.h"
+#include "lynq_module_socket.h"
+#include "liblog/lynq_deflog.h"
+#include "lynq_shm.h"
+
+#define LYNQ_SERVICE_PORT 8088
+#define LYNQ_ADDRESS "127.0.0.1"
+#define LYNQ_URC_SERVICE_PORT 8086
+#define LYNQ_URC_ADDRESS "0.0.0.0"
+#define LYNQ_REQUEST_PARAM_BUF 8192
+#define LYNQ_REC_BUF 8192
+
+#define USER_LOG_TAG "LYNQ_RIL_LIB_COMMON"
+
+typedef struct{
+ int uToken;
+ int request;
+ int paramLen;
+ char param[LYNQ_REQUEST_PARAM_BUF];
+}lynq_client_t;
+
+typedef struct{
+ int resp_type;
+ int token;
+ int request;
+ int slot_id;
+ int error;
+}lynq_resp_t;
+
+typedef struct{
+ int resp_type;
+ int urcid;
+}lynq_head_t;
+
+lynq_client_t client_t;
+lynq_resp_t response;
+
+int module_len_rc_addr_serv;
+int module_len_urc_addr_serv;
+struct sockaddr_in module_rc_addr_serv;
+struct sockaddr_in module_urc_addr_serv;
+static int module_rc_sock_fd = -1;
+static int module_urc_sock_fd = -1;
+int module_urc_status = 1;
+int module_rc_status = 1;
+pthread_t module_urc_tid = -1;
+pthread_t module_rc_tid = -1;
+static pthread_mutex_t s_urc_mutex = PTHREAD_MUTEX_INITIALIZER;
+
+/*hq add for set waiting time 2022/09/13 begin*/
+static pthread_mutex_t s_sendto_mutex = PTHREAD_MUTEX_INITIALIZER;
+static pthread_mutex_t s_RecvMsgBlockMutex = PTHREAD_MUTEX_INITIALIZER;
+static pthread_cond_t s_WaitRecvMsgCond = PTHREAD_COND_INITIALIZER;
+#define BLOCK_RECV_MSG_LOCK() pthread_mutex_lock(&s_RecvMsgBlockMutex)
+#define BLOCK_RECV_MSG_UNLOCK() pthread_mutex_unlock(&s_RecvMsgBlockMutex)
+#define BLOCK_WAIT_RECV_MSG_TIME_OUT(a) pthread_cond_timedwait(&s_WaitRecvMsgCond, &s_RecvMsgBlockMutex,(a))
+#define BLOCK_WAKEUP_RECV_MSG() pthread_cond_broadcast(&s_WaitRecvMsgCond)
+static std::list<Parcel*> s_recv_parcel_list;
+const int waitResponse(int token,int time_out);
+/*hq add for set waiting time 2022/09/13 end*/
+
+/*hq add for urc process asynchronous 2022/12/26 begin*/
+static pthread_mutex_t s_ProcessUrcMsgBlockMutex = PTHREAD_MUTEX_INITIALIZER;
+static pthread_cond_t s_WaitProcessUrcMsgCond = PTHREAD_COND_INITIALIZER;
+
+#define BLOCK_PROCESS_URC_MSG_INIT() pthread_mutex_init(&s_ProcessUrcMsgBlockMutex,NULL)
+#define BLOCK_PROCESS_URC_MSG_LOCK() pthread_mutex_lock(&s_ProcessUrcMsgBlockMutex)
+#define BLOCK_PROCESS_URC_MSG_UNLOCK() pthread_mutex_unlock(&s_ProcessUrcMsgBlockMutex)
+#define BLOCK_WAIT_PROCESS_URC_MSG() pthread_cond_wait(&s_WaitProcessUrcMsgCond, &s_ProcessUrcMsgBlockMutex)
+#define BLOCK_WAKEUP_PROCESS_URC_MSG() pthread_cond_broadcast(&s_WaitProcessUrcMsgCond)
+static std::list<Parcel*> s_recv_urc_parcel_list;
+void *thread_urc_process(void *p);
+pthread_t module_urc_process_tid = -1;
+int module_urc_process_status = 1;
+/*hq add for urc process asynchronous 2022/12/26 end*/
+
+int g_module_Global_uToken = 0;
+int g_wait_time=5;
+
+/*inner test*/
+static int s_inner_test=0;
+
+/**@brief just for inner test
+* @param test_mode [IN]: test mode
+* 0:success
+* other:failure
+*/
+extern "C" void lynq_set_test_mode(const int test_mode);
+
+void lynq_set_test_mode(const int test_mode)
+{
+ if(test_mode<0)
+ {
+ g_wait_time = -test_mode;
+ }
+ else if(test_mode==9999)
+ {
+ LYERRLOG("%s inner test para %d %d",__func__,s_inner_test,g_wait_time);
+ }
+ else
+ {
+ s_inner_test = test_mode;
+ }
+}
+
+void cleanup_RecvMsgBlock_mutex(void *arg)
+{
+ BLOCK_RECV_MSG_UNLOCK();
+}
+
+/**@brief wait response with expected token and write msg to parcel in some time
+* @param p [IN]: pointer the parcel
+* @param token [IN]: the expected token for the response msg
+* @param time_out [IN]: timeout.
+* @return
+* 0:success
+* other:failure
+*/
+const int waitResponse(Parcel*& p, int token,int time_out)
+{
+ int waitToken = token;
+ int wakeup_token=-1;
+ int resp_type;
+ struct timeval now;
+ struct timespec timeout;
+ int ret;
+ std::list<Parcel*>::iterator iter;
+ int cnt=0;
+
+ gettimeofday(&now,NULL);
+ timeout.tv_sec = now.tv_sec+time_out; //timeout is 1min
+ timeout.tv_nsec = now.tv_usec*1000;
+
+ LYINFLOG("%s wait token is %d, wait time is %d",__func__,waitToken,time_out);
+
+ BLOCK_RECV_MSG_LOCK();
+ pthread_cleanup_push(cleanup_RecvMsgBlock_mutex, NULL); // thread cleanup handler
+ while(module_rc_status) {
+ cnt++;
+ for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
+ {
+ (*iter)->setDataPosition(0);
+ (*iter)->readInt32(&resp_type);
+ (*iter)->readInt32(&wakeup_token);
+ if(wakeup_token==waitToken)
+ {
+ LYINFLOG("%s get waitToken",__func__);
+ p=(*iter);
+ p->setDataPosition(0);
+ s_recv_parcel_list.erase(iter);
+ goto waitResponse_end;
+ }
+ }
+ LYINFLOG("%s no wait Token in msg list, list size is %d",__func__,s_recv_parcel_list.size());
+ ret=BLOCK_WAIT_RECV_MSG_TIME_OUT(&timeout);
+ if(ret!=0)
+ {
+ LYERRLOG("%s no expected token %d after %d second",__func__,waitToken,time_out);
+ break;
+ }
+ }
+waitResponse_end:
+ LYINFLOG("%s wait token is %d wakeup_token is %d, cnt is %d",__func__,waitToken,wakeup_token,cnt);
+ pthread_cleanup_pop(0);
+ BLOCK_RECV_MSG_UNLOCK();
+ return wakeup_token==waitToken ? 0:LYNQ_E_TIME_OUT;
+}
+
+/**@brief print solicied response msg's head information
+* @param head [IN]: head information
+* @return none
+*/
+void PrintHeader(lynq_resp_t& head)
+{
+ LYINFLOG("resp_type=%d,token=%d,request=%d,slot_id=%d,error_code=%d",head.resp_type,head.token,head.request,head.slot_id,head.error);
+}
+
+/**@brief get solicied response msg's head
+* @param head [OUT]: head information
+* @return
+* 0:success
+* other:failure
+*/
+int GetHeader(Parcel* &p, lynq_resp_t& head)
+{
+ LYINFLOG("get header");
+ if(p->dataAvail() > 0)
+ {
+ p->readInt32(&(head.resp_type));
+ p->readInt32(&(head.token));
+ p->readInt32(&(head.request));
+ p->readInt32(&(head.slot_id));
+ p->readInt32(&(head.error));
+ PrintHeader(head);
+ return RESULT_OK;
+ }
+ else
+ {
+ return RESULT_ERROR;
+ }
+}
+
+/**@brief send msg to service and get response from service
+* @param request_id [IN]: request id
+* @param time_out [IN]: wait time uplimit
+* @param p [IN]: point to response msg's parcel
+* @param argc [IN]: how many parameters in parameter string
+* @param format [IN]: parameter string's format
+* @param ... [IN]: the specific parameter
+* @return
+* 0:success
+* other:failure
+*/
+int lynq_send_common_request(Parcel*& p, int time_out, int request_id, int argc, const char* format,...)
+{
+ lynq_client_t client;
+ int ret;
+ int send_num;
+
+ client.uToken = g_module_Global_uToken;
+ g_module_Global_uToken=(g_module_Global_uToken+1)%10000;/*0-10000*/
+ client.request = request_id;
+ client.paramLen = argc;
+ bzero(client.param,LYNQ_REQUEST_PARAM_BUF);
+ if(argc!=0)
+ {
+ va_list args;
+ va_start(args, format);
+ vsnprintf(client.param, LYNQ_REQUEST_PARAM_BUF, format, args);
+ va_end(args);
+ }
+ LYINFLOG("uToken=%d,request=%d,paralen=%d,param=%s",client.uToken,client.request,client.paramLen,client.param);
+ pthread_mutex_lock(&s_sendto_mutex);
+ if(s_inner_test==1)
+ {
+ send_num = 1;
+ }
+ else
+ {
+ send_num = sendto(module_rc_sock_fd,&client,sizeof(client),0,(struct sockaddr *)&module_rc_addr_serv,module_len_rc_addr_serv);
+ }
+ if(s_inner_test>=1000)
+ {
+ time_out = s_inner_test-1000;
+ }
+ pthread_mutex_unlock(&s_sendto_mutex);
+
+ if(send_num <= 0)
+ {
+ LYERRLOG("send request fail, send num is %d", send_num);
+ return LYNQ_E_SEND_REQUEST_FAIL;
+ }
+ ret = waitResponse(p, client.uToken,time_out);
+
+ if(ret==0)
+ {
+ lynq_resp_t head;
+ ret=GetHeader(p,head);
+ if(ret!=0)
+ {
+ LYERRLOG("%s %d get head error %d",__func__,client.uToken,ret);
+ delete p;
+ return LYNQ_E_GET_HEAD_ERROR;
+ }
+ if(head.error!=0)
+ {
+ LYERRLOG("%s %d mdm return head error %d",__func__,client.uToken,head.error);
+ delete p;
+ return head.error;
+ }
+ LYERRLOG("%s %d suc",__func__,client.uToken);
+ return RESULT_OK;
+ }
+
+ LYERRLOG("%s %d fail, ret is %d",__func__,client.uToken,ret);
+
+ return ret;
+}
+
+/*hq add for urc broadcase optimisson 2023/01/03 begin*/
+#define SHM_BUFFER_INDEX_OFFSET 1
+#define SHM_BUFFER_SIZE_OFFSET 16
+#define SHM_BUFFER_INDEX_MASK 0x0000007F
+#define SHM_BUFFER_SIZE_MASK 0x0000FFFF
+
+bool urc_data_is_in_shm_data(int responseType,int& level, int& index, int& size)
+{
+ int shm_index=((responseType>>SHM_BUFFER_INDEX_OFFSET)&SHM_BUFFER_INDEX_MASK);
+ if (shm_index>0)
+ {
+ index=shm_index-1;
+ size=((responseType>>SHM_BUFFER_SIZE_OFFSET)&SHM_BUFFER_SIZE_MASK);
+ if(size>=sizeof(int32_t)*3 && get_shem_buffer_level(size,&level))
+ {
+ LYINFLOG("urc_data_is_in_shm_data level is %d, index is %d size is %d",level,index,size);
+ return true;
+ }
+ }
+ LYINFLOG("urc_data_is_in_shm_data return false, responseType is %d",responseType);
+ return false;
+}
+/*hq add for urc broadcase optimisson 2023/01/03 end*/
+
+void *thread_urc_recv(void *p)
+{
+ Parcel *urc_p =NULL;
+ char urc_data[LYNQ_REC_BUF];
+ int res = 0;
+ lynq_head_t* phead;
+ int level,index,size;
+ uint8_t * shm_buffer;
+
+ LYINFLOG("urc recv thread is running");
+ while(module_urc_status)
+ {
+ bzero(urc_data,LYNQ_REC_BUF);
+ LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __func__, __LINE__);
+ res = recvfrom(module_urc_sock_fd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&module_urc_addr_serv,(socklen_t*)&module_len_urc_addr_serv);
+ if(res<sizeof(int32_t)*2)
+ {
+ LYERRLOG("thread_urc_recv step2 fail: res is %d",res);
+ continue;
+ }
+ LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __func__, __LINE__);
+ phead=(lynq_head_t*) urc_data;
+ if(is_support_urc(phead->urcid)==false)
+ {
+ continue;
+ }
+ urc_p = new Parcel();
+ if(urc_p == NULL)
+ {
+ LYERRLOG("new parcel failure!!!");
+ continue;
+ }
+ if(urc_data_is_in_shm_data(phead->resp_type,level,index,size))
+ {
+ shm_buffer = (uint8_t *) get_shem_buffer(level,index);
+ LYINFLOG("shm pointer is %p", shm_buffer);
+ urc_p->setData(shm_buffer,size); // p.setData((uint8_t *) buffer, buflen);
+ }
+ else if(res>=sizeof(int32_t)*3)
+ {
+ urc_p->setData((uint8_t *)urc_data,res); // p.setData((uint8_t *) buffer, buflen);
+ }
+ else
+ {
+ LYERRLOG("res %d error!!!", res);
+ delete urc_p;
+ urc_p = NULL;
+ continue;
+ }
+ urc_p->setDataPosition(0);
+ if(urc_p->dataAvail()>0)
+ {
+ BLOCK_PROCESS_URC_MSG_LOCK();
+ s_recv_urc_parcel_list.push_back(urc_p);
+ BLOCK_WAKEUP_PROCESS_URC_MSG();
+ BLOCK_PROCESS_URC_MSG_UNLOCK();
+ }
+ else
+ {
+ delete urc_p;
+ urc_p = NULL;
+ }
+ }
+ LYINFLOG("urc recv thread ended");
+ return NULL;
+}
+
+void cleanup_urc_process_mutex(void *arg)
+{
+ BLOCK_PROCESS_URC_MSG_UNLOCK();
+}
+
+void *thread_urc_process(void *p)
+{
+ Parcel *urc_p =NULL;
+ std::list<Parcel*>::iterator iter;
+
+ LYINFLOG("urc process thread is running");
+ pthread_cleanup_push(cleanup_urc_process_mutex, NULL); // thread cleanup handler
+ while(module_urc_process_status)
+ {
+ BLOCK_PROCESS_URC_MSG_LOCK();
+ while(s_recv_urc_parcel_list.empty())
+ {
+ BLOCK_WAIT_PROCESS_URC_MSG();
+ }
+ iter=s_recv_urc_parcel_list.begin();
+ urc_p=(*iter);
+ s_recv_urc_parcel_list.erase(iter);
+ BLOCK_PROCESS_URC_MSG_UNLOCK();
+ urc_p->setDataPosition(0);
+ if(urc_p->dataAvail()>0)
+ {
+ pthread_mutex_lock(&s_urc_mutex);
+ urc_msg_process(urc_p);
+ pthread_mutex_unlock(&s_urc_mutex);
+ }
+ delete urc_p;
+ urc_p = NULL;
+ }
+ pthread_cleanup_pop(0);
+ LYINFLOG("urc process thread ended");
+ return NULL;
+}
+
+void lynq_close_urc_rev_thread()
+{
+ int ret;
+
+ BLOCK_PROCESS_URC_MSG_LOCK(); //just cancel urc process tid when recv from
+ module_urc_status = 0;
+ if(module_urc_tid!=-1)
+ {
+ ret = pthread_cancel(module_urc_tid);
+ LYINFLOG("pthread cancel urc rev ret = %d",ret);
+ }
+ BLOCK_PROCESS_URC_MSG_UNLOCK();
+ if(module_urc_tid != -1)
+ {
+ ret = pthread_join(module_urc_tid,NULL);
+ LYINFLOG("pthread join urc tid ret = %d",ret);
+ module_urc_tid =-1;
+ }
+}
+
+void lynq_close_urc_process_thread()
+{
+ int ret;
+ BLOCK_PROCESS_URC_MSG_LOCK(); //just cancel urc process tid when not process urc msg in list
+ pthread_mutex_lock(&s_urc_mutex); //just cancel urc process tid when not process urg msg avoid mutual lock for tid may call pthread_cond_wait
+ module_urc_process_status = 0;
+ if(module_urc_process_tid!=-1)
+ {
+ ret = pthread_cancel(module_urc_process_tid);
+ LYINFLOG("pthread cancel urc process ret = %d",ret);
+ }
+ pthread_mutex_unlock(&s_urc_mutex);
+ BLOCK_PROCESS_URC_MSG_UNLOCK();
+ if(module_urc_process_tid != -1)
+ {
+ ret = pthread_join(module_urc_process_tid,NULL);
+ LYINFLOG("pthread join urc process tid ret = %d",ret);
+ module_urc_process_tid =-1;
+ }
+}
+
+int lynq_setup_urc_socket()
+{
+ int on = 1;
+ int ret = 0;
+ module_len_urc_addr_serv = sizeof(sockaddr_in);
+ module_urc_sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
+ if (module_urc_sock_fd <0){
+ LYERRLOG("urc socket error");
+ return RESULT_ERROR;
+ }
+ module_urc_addr_serv.sin_family = AF_INET;
+ module_urc_addr_serv.sin_port = htons(LYNQ_URC_SERVICE_PORT);
+ module_urc_addr_serv.sin_addr.s_addr = inet_addr(LYNQ_URC_ADDRESS);
+ /* Set socket to allow reuse of address and port, SO_REUSEADDR value is 2*/
+ ret = setsockopt(module_urc_sock_fd,SOL_SOCKET,SO_REUSEADDR,&on,sizeof on);
+ if(ret <0)
+ {
+ LYERRLOG("urc socket set error");
+ close(module_urc_sock_fd);
+ module_urc_sock_fd =-1;
+ return RESULT_ERROR;
+ }
+ ret = bind(module_urc_sock_fd ,(struct sockaddr*)&module_urc_addr_serv, sizeof(module_urc_addr_serv));
+ if(ret <0)
+ {
+ LYERRLOG("urc socket bind error");
+ close(module_urc_sock_fd);
+ module_urc_sock_fd =-1;
+ return RESULT_ERROR;
+ }
+ return RESULT_OK;
+}
+
+void lynq_close_urc_socket()
+{
+ if (module_urc_sock_fd >= 0)
+ {
+ close(module_urc_sock_fd);
+ module_urc_sock_fd =-1;
+ }
+}
+
+int lynq_start_all_urc_socket_thread()
+{
+
+ if(ril_init_mem()!=0)
+ {
+ LYERRLOG("ril_init_mem fail");
+ return RESULT_ERROR;
+ }
+
+ int ret= lynq_setup_urc_socket();
+ if(ret!=RESULT_OK)
+ {
+ LYERRLOG("call lynq_setup_urc_socket fail");
+ ril_deinit_mem();
+ return RESULT_ERROR;
+ }
+
+ BLOCK_PROCESS_URC_MSG_INIT();
+ BLOCK_PROCESS_URC_MSG_LOCK();
+ std::list<Parcel*>::iterator iter;
+ for(iter=s_recv_urc_parcel_list.begin();iter!=s_recv_urc_parcel_list.end();++iter)
+ {
+ delete (*iter);
+ }
+ s_recv_urc_parcel_list.clear();
+ BLOCK_PROCESS_URC_MSG_UNLOCK();
+
+ pthread_mutex_init(&s_urc_mutex, NULL);
+
+ module_urc_status = 1;
+ // pthread_attr_init(&attr);
+ // pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
+ ret = pthread_create(&module_urc_tid,/*&attr*/NULL,thread_urc_recv,NULL);
+ if(ret <0)
+ {
+ LYERRLOG("urc recv pthread create error");
+ module_urc_status = 0;
+ lynq_close_urc_socket();
+ ril_deinit_mem();
+ return RESULT_ERROR;
+ }
+
+ module_urc_process_status = 1;
+ ret = pthread_create(&module_urc_process_tid,/*&attr*/NULL,thread_urc_process,NULL);
+ if(ret <0)
+ {
+ LYERRLOG("urc process pthread create error");
+ module_urc_process_status = 0;
+ lynq_close_urc_socket();
+ lynq_close_urc_rev_thread();
+ ril_deinit_mem();
+ return RESULT_ERROR;
+ }
+
+ LYINFLOG("urc start success");
+
+ return RESULT_OK;
+}
+
+void lynq_close_all_urc_socket_thread()
+{
+
+ lynq_close_urc_rev_thread();
+ lynq_close_urc_socket();
+ lynq_close_urc_process_thread();
+
+ BLOCK_PROCESS_URC_MSG_LOCK();
+ std::list<Parcel*>::iterator iter;
+ for(iter=s_recv_urc_parcel_list.begin();iter!=s_recv_urc_parcel_list.end();++iter)
+ {
+ delete (*iter);
+ }
+ s_recv_urc_parcel_list.clear();
+ BLOCK_PROCESS_URC_MSG_UNLOCK();
+
+ ril_deinit_mem();
+}
+
+/**@ a thread just for recv\buffer solicited msg's response and notice waiting thread
+* @param p [IN]: no meaning
+* @return
+* always null
+*/
+void *thread_rc_recv(void *p)
+{
+ Parcel* rc_p;
+ std::list<Parcel*>::iterator iter;
+ int resp_type = -1;
+ char rc_data[LYNQ_REC_BUF];
+ int rc_len;
+ int null_cnt=0;
+ int wakeup_token;
+
+ LYINFLOG("rc thread is running");
+ while(module_rc_status)
+ {
+ bzero(rc_data,LYNQ_REC_BUF);
+ while(true)
+ {
+ rc_len = recvfrom(module_rc_sock_fd,rc_data,sizeof(rc_data),0,(struct sockaddr *)&module_rc_addr_serv,(socklen_t *)&module_len_rc_addr_serv);
+ if(rc_len<sizeof(int32_t)*2)
+ {
+ LYERRLOG("%s recv len %d less %d",__func__, rc_len,sizeof(int)*2);
+ continue;
+ }
+ rc_p= new Parcel;
+ if(rc_p==NULL)
+ {
+ null_cnt++;
+ LYERRLOG("%s rc_p is NULL, cnt is %d",__func__, null_cnt);
+ if(null_cnt>20)
+ {
+ goto rc_recv_end;
+ }
+ continue;
+ }
+ else
+ {
+ null_cnt=0;
+ }
+
+ rc_p->setData((uint8_t *)rc_data,rc_len); // p.setData((uint8_t *) buffer, buflen);
+ rc_p->setDataPosition(0);
+ if(rc_p->dataAvail()>0)
+ {
+ rc_p->readInt32(&resp_type);
+ rc_p->readInt32(&wakeup_token);
+ BLOCK_RECV_MSG_LOCK();
+ s_recv_parcel_list.push_back(rc_p);
+ LYINFLOG("%s wakeup token is %d, list size is %d!",__func__,wakeup_token,s_recv_parcel_list.size());
+ if(s_recv_parcel_list.size()>20) //max 20
+ {
+ iter=s_recv_parcel_list.begin();
+ (*iter)->setDataPosition(0);
+ (*iter)->readInt32(&resp_type);
+ (*iter)->readInt32(&wakeup_token);
+ delete (*(s_recv_parcel_list.begin()));
+ LYERRLOG("%s wakeup token %d is deleted!",__func__,wakeup_token);
+ s_recv_parcel_list.erase(iter);
+ }
+ BLOCK_WAKEUP_RECV_MSG();
+ BLOCK_RECV_MSG_UNLOCK();
+ break;
+ }
+ else
+ {
+ LYERRLOG("%s rc_p data Avail %d not greater than 0",__func__, rc_p->dataAvail());
+ delete rc_p;
+ }
+ }
+ }
+
+rc_recv_end:
+ LYINFLOG("rc thread ended");
+ return NULL;
+}
+
+int lynq_start_all_rc_socket_thread()
+{
+ module_rc_sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
+ if(module_rc_sock_fd < 0)
+ {
+ LYERRLOG("socket open error");
+ return -1;
+ }
+
+ LYINFLOG("module_rc_sock_fd = %d",module_rc_sock_fd);
+
+ memset(&module_rc_addr_serv, 0, sizeof(module_rc_addr_serv));
+ module_rc_addr_serv.sin_family = AF_INET;
+ module_rc_addr_serv.sin_addr.s_addr = inet_addr(LYNQ_ADDRESS);
+ module_rc_addr_serv.sin_port = htons(LYNQ_SERVICE_PORT);
+ module_len_rc_addr_serv = sizeof(module_rc_addr_serv);
+
+ BLOCK_RECV_MSG_LOCK();
+ std::list<Parcel*>::iterator iter;
+ for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
+ {
+ delete (*iter);
+ }
+ s_recv_parcel_list.clear();
+ BLOCK_RECV_MSG_UNLOCK();
+
+// pthread_attr_t attr;
+ int ret;
+
+ pthread_mutex_init(&s_sendto_mutex, NULL);
+ pthread_mutex_init(&s_RecvMsgBlockMutex, NULL);
+
+ module_rc_status = 1;
+// pthread_attr_init(&attr);
+// pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
+ ret = pthread_create(&module_rc_tid,/*&attr*/NULL,thread_rc_recv,NULL);
+ if(ret <0)
+ {
+ LYERRLOG("rc pthread create error");
+ module_rc_status =0;
+ close(module_rc_sock_fd);
+ module_rc_sock_fd =-1;
+ return ret;
+ }
+
+ LYINFLOG("rc start success");
+
+ return RESULT_OK;
+}
+
+void lynq_close_all_rc_socket_thread()
+{
+ int ret;
+ BLOCK_RECV_MSG_LOCK();
+ module_rc_status = 0;
+ BLOCK_WAKEUP_RECV_MSG();
+ if(module_rc_tid != -1)
+ {
+ ret = pthread_cancel(module_rc_tid);
+ LYINFLOG("pthread cancel rc ret = %d",ret);
+ }
+ BLOCK_RECV_MSG_UNLOCK();
+ if(module_rc_tid != -1)
+ {
+ ret = pthread_join(module_rc_tid,NULL);
+ module_rc_tid =-1;
+ LYINFLOG("pthread join rc tid ret = %d",ret);
+
+ }
+
+ if (module_rc_sock_fd > 0)
+ {
+ close(module_rc_sock_fd);
+ module_rc_sock_fd =-1;
+ }
+
+ BLOCK_RECV_MSG_LOCK();
+ std::list<Parcel*>::iterator iter;
+ for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
+ {
+ delete (*iter);
+ }
+ s_recv_parcel_list.clear();
+ BLOCK_RECV_MSG_UNLOCK();
+}
+
diff --git a/src/lynq/common_file/ril/lib_common/lynq_module_socket.h b/src/lynq/common_file/ril/lib_common/lynq_module_socket.h
new file mode 100755
index 0000000..b2fb908
--- /dev/null
+++ b/src/lynq/common_file/ril/lib_common/lynq_module_socket.h
@@ -0,0 +1,18 @@
+#ifndef LYNQ_MODULE_SOCKET_H
+#define LYNQ_MODULE_SOCKET_H
+
+using ::android::Parcel;
+
+int lynq_set_test_network(const int test_mode);
+
+extern int g_module_Global_uToken;
+extern int g_wait_time;
+int lynq_send_common_request(Parcel*& p, int time_out, int request_id, int argc, const char* format,...);
+int lynq_start_all_urc_socket_thread();
+void lynq_close_all_urc_socket_thread();
+int lynq_start_all_rc_socket_thread();
+void lynq_close_all_rc_socket_thread();
+void urc_msg_process(Parcel *p);
+bool is_support_urc(int urc_id);
+
+#endif
diff --git a/src/lynq/common_file/ril/lib_service_common/lynq_interface.h b/src/lynq/common_file/ril/lib_service_common/lynq_interface.h
new file mode 100755
index 0000000..401b9bd
--- /dev/null
+++ b/src/lynq/common_file/ril/lib_service_common/lynq_interface.h
@@ -0,0 +1,60 @@
+#ifndef __LYNQ_INTERFACE_H__
+#define __LYNQ_INTERFACE_H__
+
+
+#define LYNQ_REQUEST_VENDOR_BASE 8000
+#define LYNQ_URC_VENDOR_BASE 9000
+#define LYNQ_AT_SNED (LYNQ_REQUEST_VENDOR_BASE +1)
+#define LYNQ_URC_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+1)
+#define LYNQ_URC_DATA_STATUS_IND (LYNQ_URC_VENDOR_BASE+2)
+#define LYNQ_URC_DATA_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+3)
+#define LYNQ_AUTO_ANSWER_CALL (LYNQ_REQUEST_VENDOR_BASE +2)
+#define LYNQ_REQUEST_SET_DTMF_VOLUME (LYNQ_REQUEST_VENDOR_BASE +3)
+#define LYNQ_URC_MODIFY_APNDB (LYNQ_URC_VENDOR_BASE+4)
+#define LYNQ_URC_RESET_APNDB (LYNQ_URC_VENDOR_BASE+5)
+
+
+#define LYNQ_REQUEST_WRITE_SMS_TO_MEMORY (LYNQ_REQUEST_VENDOR_BASE +4)
+#define LYNQ_REQUEST_READ_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 5)
+#define LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 6)
+#define LYNQ_REQUEST_LIST_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 7)
+#define LYNQ_REQUEST_SET_DEFAULT_SIM_ALL (LYNQ_REQUEST_VENDOR_BASE + 8)
+
+#define LYNQ_REQUEST_SET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +9)
+#define LYNQ_REQUEST_GET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +10)
+#define LYNQ_REQUEST_RECORD (LYNQ_REQUEST_VENDOR_BASE +11)
+#define LYNQ_REQUEST_OOS_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +12)
+#define LYNQ_REQUEST_OOS_DEEP_SLEEP_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +13)
+#define LYNQ_REQUEST_CHANGE_SCREEN_STATE (LYNQ_REQUEST_VENDOR_BASE + 14)/*jb.qi add for two sim suspend 2022/9/19*/
+#define LYNQ_REQUEST_CHANGE_RADIO (LYNQ_REQUEST_VENDOR_BASE + 15)
+#define LYNQ_REQUEST_SET_VOICE_AUDIO_MODE (LYNQ_REQUEST_VENDOR_BASE + 16)
+#define LYNQ_REQUEST_SET_REMOTE_RTP_IP (LYNQ_REQUEST_VENDOR_BASE + 17)
+#define LYNQ_REQUEST_SET_VLAN_INFO (LYNQ_REQUEST_VENDOR_BASE + 18)
+#define LYNQ_REQUEST_SET_RTP_PORT (LYNQ_REQUEST_VENDOR_BASE + 19)
+#define LYNQ_REQUEST_SET_RTP_PARAM (LYNQ_REQUEST_VENDOR_BASE + 20)
+#define LYNQ_REQUEST_GET_VOICE_AUDIO_MODE (LYNQ_REQUEST_VENDOR_BASE + 21)
+#define LYNQ_REQUEST_GET_REMOTE_RTP_IP (LYNQ_REQUEST_VENDOR_BASE + 22)
+#define LYNQ_REQUEST_GET_VLAN_INFO (LYNQ_REQUEST_VENDOR_BASE + 23)
+#define LYNQ_REQUEST_GET_RTP_PORT (LYNQ_REQUEST_VENDOR_BASE + 24)
+#define LYNQ_REQUEST_GET_RTP_PARAM (LYNQ_REQUEST_VENDOR_BASE + 25)
+#define LYNQ_REQUEST_SET_CALL_RTP_SSRC (LYNQ_REQUEST_VENDOR_BASE + 26)
+#define LYNQ_REQUEST_GET_CALL_RTP_SSRC (LYNQ_REQUEST_VENDOR_BASE + 27)
+
+#ifdef ECALL_SUPPORT
+#define RIL_UNSOL_ECALL_T2_TIMER_OUT 9000
+#define RIL_UNSOL_ECALL_T5_TIMER_OUT 9001
+#define RIL_UNSOL_ECALL_T6_TIMER_OUT 9002
+#define RIL_UNSOL_ECALL_T7_TIMER_OUT 9003
+#define RIL_UNSOL_ECALL_REDIAL_TIMER_OUT 9004
+#define RIL_UNSOL_ECALL_AUTO_ANS_TIMER_OUT 9005
+#define RIL_UNSOL_ECALL_AUTO_ANS_IMS_TIMER_OUT 9006
+#endif
+
+typedef struct{
+ int request;
+ int waitTime;
+ char * name;
+}lynq_sp_command_t;
+
+#endif //__LYNQ_INTERFACE_H__
+
diff --git a/src/lynq/common_file/ril/lib_service_common/service_lib_common.cpp b/src/lynq/common_file/ril/lib_service_common/service_lib_common.cpp
new file mode 100755
index 0000000..7843c7a
--- /dev/null
+++ b/src/lynq/common_file/ril/lib_service_common/service_lib_common.cpp
@@ -0,0 +1,288 @@
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <ctype.h>
+#include "lynq_interface.h"
+#include <vendor-ril/telephony/ril.h>
+#include "service_lib_common.h"
+
+const char *
+android::requestToString(int request) {
+/*
+ cat libs/telephony/ril_commands.h \
+ | egrep "^ *{RIL_" \
+ | sed -re 's/\{RIL_([^,]+),[^,]+,([^}]+).+/case RIL_\1: return "\1";/'
+
+
+ cat libs/telephony/ril_unsol_commands.h \
+ | egrep "^ *{RIL_" \
+ | sed -re 's/\{RIL_([^,]+),([^}]+).+/case RIL_\1: return "\1";/'
+
+*/
+ switch(request) {
+ case RIL_REQUEST_GET_SIM_STATUS: return "GET_SIM_STATUS";
+ case RIL_REQUEST_ENTER_SIM_PIN: return "ENTER_SIM_PIN";
+ case RIL_REQUEST_ENTER_SIM_PUK: return "ENTER_SIM_PUK";
+ case RIL_REQUEST_ENTER_SIM_PIN2: return "ENTER_SIM_PIN2";
+ case RIL_REQUEST_ENTER_SIM_PUK2: return "ENTER_SIM_PUK2";
+ case RIL_REQUEST_CHANGE_SIM_PIN: return "CHANGE_SIM_PIN";
+ case RIL_REQUEST_CHANGE_SIM_PIN2: return "CHANGE_SIM_PIN2";
+ case RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION: return "ENTER_NETWORK_DEPERSONALIZATION";
+ case RIL_REQUEST_GET_CURRENT_CALLS: return "GET_CURRENT_CALLS";
+ case RIL_REQUEST_DIAL: return "DIAL";
+ case RIL_REQUEST_GET_IMSI: return "GET_IMSI";
+ case RIL_REQUEST_HANGUP: return "HANGUP";
+ case RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND: return "HANGUP_WAITING_OR_BACKGROUND";
+ case RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND: return "HANGUP_FOREGROUND_RESUME_BACKGROUND";
+ case RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE: return "SWITCH_WAITING_OR_HOLDING_AND_ACTIVE";
+ case RIL_REQUEST_CONFERENCE: return "CONFERENCE";
+ case RIL_REQUEST_UDUB: return "UDUB";
+ case RIL_REQUEST_LAST_CALL_FAIL_CAUSE: return "LAST_CALL_FAIL_CAUSE";
+ case RIL_REQUEST_SIGNAL_STRENGTH: return "SIGNAL_STRENGTH";
+ case RIL_REQUEST_VOICE_REGISTRATION_STATE: return "VOICE_REGISTRATION_STATE";
+ case RIL_REQUEST_DATA_REGISTRATION_STATE: return "DATA_REGISTRATION_STATE";
+ case RIL_REQUEST_OPERATOR: return "OPERATOR";
+ case RIL_REQUEST_RADIO_POWER: return "RADIO_POWER";
+ case RIL_REQUEST_DTMF: return "DTMF";
+ case RIL_REQUEST_SEND_SMS: return "SEND_SMS";
+ case RIL_REQUEST_SEND_SMS_EXPECT_MORE: return "SEND_SMS_EXPECT_MORE";
+ case RIL_REQUEST_SETUP_DATA_CALL: return "SETUP_DATA_CALL";
+ case RIL_REQUEST_SIM_IO: return "SIM_IO";
+ case RIL_REQUEST_SEND_USSD: return "SEND_USSD";
+ case RIL_REQUEST_CANCEL_USSD: return "CANCEL_USSD";
+ case RIL_REQUEST_GET_CLIR: return "GET_CLIR";
+ case RIL_REQUEST_SET_CLIR: return "SET_CLIR";
+ case RIL_REQUEST_QUERY_CALL_FORWARD_STATUS: return "QUERY_CALL_FORWARD_STATUS";
+ case RIL_REQUEST_SET_CALL_FORWARD: return "SET_CALL_FORWARD";
+ case RIL_REQUEST_QUERY_CALL_WAITING: return "QUERY_CALL_WAITING";
+ case RIL_REQUEST_SET_CALL_WAITING: return "SET_CALL_WAITING";
+ case RIL_REQUEST_SMS_ACKNOWLEDGE: return "SMS_ACKNOWLEDGE";
+ case RIL_REQUEST_GET_IMEI: return "GET_IMEI";
+ case RIL_REQUEST_GET_IMEISV: return "GET_IMEISV";
+ case RIL_REQUEST_ANSWER: return "ANSWER";
+ case RIL_REQUEST_DEACTIVATE_DATA_CALL: return "DEACTIVATE_DATA_CALL";
+ case RIL_REQUEST_QUERY_FACILITY_LOCK: return "QUERY_FACILITY_LOCK";
+ case RIL_REQUEST_SET_FACILITY_LOCK: return "SET_FACILITY_LOCK";
+ case RIL_REQUEST_CHANGE_BARRING_PASSWORD: return "CHANGE_BARRING_PASSWORD";
+ case RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE: return "QUERY_NETWORK_SELECTION_MODE";
+ case RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC: return "SET_NETWORK_SELECTION_AUTOMATIC";
+ case RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL: return "SET_NETWORK_SELECTION_MANUAL";
+ case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS : return "QUERY_AVAILABLE_NETWORKS ";
+ case RIL_REQUEST_DTMF_START: return "DTMF_START";
+ case RIL_REQUEST_DTMF_STOP: return "DTMF_STOP";
+ case RIL_REQUEST_BASEBAND_VERSION: return "BASEBAND_VERSION";
+ case RIL_REQUEST_SEPARATE_CONNECTION: return "SEPARATE_CONNECTION";
+ case RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE: return "SET_PREFERRED_NETWORK_TYPE";
+ case RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE: return "GET_PREFERRED_NETWORK_TYPE";
+ case RIL_REQUEST_GET_NEIGHBORING_CELL_IDS: return "GET_NEIGHBORING_CELL_IDS";
+ case RIL_REQUEST_SET_MUTE: return "SET_MUTE";
+ case RIL_REQUEST_GET_MUTE: return "GET_MUTE";
+ case RIL_REQUEST_QUERY_CLIP: return "QUERY_CLIP";
+ case RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE: return "LAST_DATA_CALL_FAIL_CAUSE";
+ case RIL_REQUEST_DATA_CALL_LIST: return "DATA_CALL_LIST";
+ case RIL_REQUEST_RESET_RADIO: return "RESET_RADIO";
+ case RIL_REQUEST_OEM_HOOK_RAW: return "OEM_HOOK_RAW";
+ case RIL_REQUEST_OEM_HOOK_STRINGS: return "OEM_HOOK_STRINGS";
+ case RIL_REQUEST_SET_BAND_MODE: return "SET_BAND_MODE";
+ case RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE: return "QUERY_AVAILABLE_BAND_MODE";
+ case RIL_REQUEST_STK_GET_PROFILE: return "STK_GET_PROFILE";
+ case RIL_REQUEST_STK_SET_PROFILE: return "STK_SET_PROFILE";
+ case RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND: return "STK_SEND_ENVELOPE_COMMAND";
+ case RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE: return "STK_SEND_TERMINAL_RESPONSE";
+ case RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM: return "STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM";
+ case RIL_REQUEST_SCREEN_STATE: return "SCREEN_STATE";
+ case RIL_REQUEST_EXPLICIT_CALL_TRANSFER: return "EXPLICIT_CALL_TRANSFER";
+ case RIL_REQUEST_SET_LOCATION_UPDATES: return "SET_LOCATION_UPDATES";
+ case RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE:return"CDMA_SET_SUBSCRIPTION_SOURCE";
+ case RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE:return"CDMA_SET_ROAMING_PREFERENCE";
+ case RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE:return"CDMA_QUERY_ROAMING_PREFERENCE";
+ case RIL_REQUEST_SET_TTY_MODE:return"SET_TTY_MODE";
+ case RIL_REQUEST_QUERY_TTY_MODE:return"QUERY_TTY_MODE";
+ case RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE";
+ case RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE";
+ case RIL_REQUEST_CDMA_FLASH:return"CDMA_FLASH";
+ case RIL_REQUEST_CDMA_BURST_DTMF:return"CDMA_BURST_DTMF";
+ case RIL_REQUEST_CDMA_SEND_SMS:return"CDMA_SEND_SMS";
+ case RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE:return"CDMA_SMS_ACKNOWLEDGE";
+ case RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG:return"GSM_GET_BROADCAST_SMS_CONFIG";
+ case RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG:return"GSM_SET_BROADCAST_SMS_CONFIG";
+ case RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION:return "GSM_SMS_BROADCAST_ACTIVATION";
+ case RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG:return "CDMA_GET_BROADCAST_SMS_CONFIG";
+ case RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG:return "CDMA_SET_BROADCAST_SMS_CONFIG";
+ case RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION:return "CDMA_SMS_BROADCAST_ACTIVATION";
+ case RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY: return"CDMA_VALIDATE_AND_WRITE_AKEY";
+ case RIL_REQUEST_CDMA_SUBSCRIPTION: return"CDMA_SUBSCRIPTION";
+ case RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM: return "CDMA_WRITE_SMS_TO_RUIM";
+ case RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM: return "CDMA_DELETE_SMS_ON_RUIM";
+ case RIL_REQUEST_DEVICE_IDENTITY: return "DEVICE_IDENTITY";
+ case RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE: return "EXIT_EMERGENCY_CALLBACK_MODE";
+ case RIL_REQUEST_GET_SMSC_ADDRESS: return "GET_SMSC_ADDRESS";
+ case RIL_REQUEST_SET_SMSC_ADDRESS: return "SET_SMSC_ADDRESS";
+ case RIL_REQUEST_REPORT_SMS_MEMORY_STATUS: return "REPORT_SMS_MEMORY_STATUS";
+ case RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING: return "REPORT_STK_SERVICE_IS_RUNNING";
+ case RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE: return "CDMA_GET_SUBSCRIPTION_SOURCE";
+ case RIL_REQUEST_ISIM_AUTHENTICATION: return "ISIM_AUTHENTICATION";
+ case RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU: return "RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU";
+ case RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS: return "RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS";
+ case RIL_REQUEST_VOICE_RADIO_TECH: return "VOICE_RADIO_TECH";
+ case RIL_REQUEST_GET_CELL_INFO_LIST: return"GET_CELL_INFO_LIST";
+ case RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE: return"SET_UNSOL_CELL_INFO_LIST_RATE";
+ case RIL_REQUEST_SET_INITIAL_ATTACH_APN: return "RIL_REQUEST_SET_INITIAL_ATTACH_APN";
+ case RIL_REQUEST_IMS_REGISTRATION_STATE: return "IMS_REGISTRATION_STATE";
+ case RIL_REQUEST_IMS_SEND_SMS: return "IMS_SEND_SMS";
+ case RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC: return "SIM_TRANSMIT_APDU_BASIC";
+ case RIL_REQUEST_SIM_OPEN_CHANNEL: return "SIM_OPEN_CHANNEL";
+ case RIL_REQUEST_SIM_CLOSE_CHANNEL: return "SIM_CLOSE_CHANNEL";
+ case RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL: return "SIM_TRANSMIT_APDU_CHANNEL";
+ case RIL_REQUEST_GET_RADIO_CAPABILITY: return "RIL_REQUEST_GET_RADIO_CAPABILITY";
+ case RIL_REQUEST_SET_RADIO_CAPABILITY: return "RIL_REQUEST_SET_RADIO_CAPABILITY";
+ case RIL_REQUEST_SET_UICC_SUBSCRIPTION: return "SET_UICC_SUBSCRIPTION";
+ case RIL_REQUEST_ALLOW_DATA: return "ALLOW_DATA";
+ case RIL_REQUEST_GET_HARDWARE_CONFIG: return "GET_HARDWARE_CONFIG";
+ case RIL_REQUEST_SIM_AUTHENTICATION: return "SIM_AUTHENTICATION";
+ case RIL_REQUEST_GET_DC_RT_INFO: return "GET_DC_RT_INFO";
+ case RIL_REQUEST_SET_DC_RT_INFO_RATE: return "SET_DC_RT_INFO_RATE";
+ case RIL_REQUEST_SET_DATA_PROFILE: return "SET_DATA_PROFILE";
+ case RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED: return "UNSOL_RESPONSE_RADIO_STATE_CHANGED";
+ case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED: return "UNSOL_RESPONSE_CALL_STATE_CHANGED";
+ case RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
+ case RIL_UNSOL_RESPONSE_PS_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
+ case RIL_UNSOL_RESPONSE_NEW_SMS: return "UNSOL_RESPONSE_NEW_SMS";
+ case RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT: return "UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT";
+ case RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM: return "UNSOL_RESPONSE_NEW_SMS_ON_SIM";
+ case RIL_UNSOL_ON_USSD: return "UNSOL_ON_USSD";
+ case RIL_UNSOL_ON_USSD_REQUEST: return "UNSOL_ON_USSD_REQUEST(obsolete)";
+ case RIL_UNSOL_NITZ_TIME_RECEIVED: return "UNSOL_NITZ_TIME_RECEIVED";
+ case RIL_UNSOL_SIGNAL_STRENGTH: return "UNSOL_SIGNAL_STRENGTH";
+ case RIL_UNSOL_STK_SESSION_END: return "UNSOL_STK_SESSION_END";
+ case RIL_UNSOL_STK_PROACTIVE_COMMAND: return "UNSOL_STK_PROACTIVE_COMMAND";
+ case RIL_UNSOL_STK_EVENT_NOTIFY: return "UNSOL_STK_EVENT_NOTIFY";
+ case RIL_UNSOL_STK_CALL_SETUP: return "UNSOL_STK_CALL_SETUP";
+ case RIL_UNSOL_SIM_SMS_STORAGE_FULL: return "UNSOL_SIM_SMS_STORAGE_FUL";
+ case RIL_UNSOL_SIM_REFRESH: return "UNSOL_SIM_REFRESH";
+ case RIL_UNSOL_DATA_CALL_LIST_CHANGED: return "UNSOL_DATA_CALL_LIST_CHANGED";
+ case RIL_UNSOL_CALL_RING: return "UNSOL_CALL_RING";
+ case RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED: return "UNSOL_RESPONSE_SIM_STATUS_CHANGED";
+ case RIL_UNSOL_RESPONSE_CDMA_NEW_SMS: return "UNSOL_NEW_CDMA_SMS";
+ case RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS: return "UNSOL_NEW_BROADCAST_SMS";
+ case RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL: return "UNSOL_CDMA_RUIM_SMS_STORAGE_FULL";
+ case RIL_UNSOL_RESTRICTED_STATE_CHANGED: return "UNSOL_RESTRICTED_STATE_CHANGED";
+ case RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE: return "UNSOL_ENTER_EMERGENCY_CALLBACK_MODE";
+ case RIL_UNSOL_CDMA_CALL_WAITING: return "UNSOL_CDMA_CALL_WAITING";
+ case RIL_UNSOL_CDMA_OTA_PROVISION_STATUS: return "UNSOL_CDMA_OTA_PROVISION_STATUS";
+ case RIL_UNSOL_CDMA_INFO_REC: return "UNSOL_CDMA_INFO_REC";
+ case RIL_UNSOL_OEM_HOOK_RAW: return "UNSOL_OEM_HOOK_RAW";
+ case RIL_UNSOL_RINGBACK_TONE: return "UNSOL_RINGBACK_TONE";
+ case RIL_UNSOL_RESEND_INCALL_MUTE: return "UNSOL_RESEND_INCALL_MUTE";
+ case RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED: return "UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED";
+ case RIL_UNSOL_CDMA_PRL_CHANGED: return "UNSOL_CDMA_PRL_CHANGED";
+ case RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE: return "UNSOL_EXIT_EMERGENCY_CALLBACK_MODE";
+ case RIL_UNSOL_RIL_CONNECTED: return "UNSOL_RIL_CONNECTED";
+ case RIL_UNSOL_VOICE_RADIO_TECH_CHANGED: return "UNSOL_VOICE_RADIO_TECH_CHANGED";
+ case RIL_UNSOL_CELL_INFO_LIST: return "UNSOL_CELL_INFO_LIST";
+ case RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED: return "RESPONSE_IMS_NETWORK_STATE_CHANGED";
+ case RIL_UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED: return "UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED";
+ case RIL_UNSOL_SRVCC_STATE_NOTIFY: return "UNSOL_SRVCC_STATE_NOTIFY";
+ case RIL_UNSOL_HARDWARE_CONFIG_CHANGED: return "HARDWARE_CONFIG_CHANGED";
+ case RIL_UNSOL_DC_RT_INFO_CHANGED: return "UNSOL_DC_RT_INFO_CHANGED";
+ case RIL_REQUEST_SHUTDOWN: return "SHUTDOWN";
+ case RIL_UNSOL_RADIO_CAPABILITY: return "RIL_UNSOL_RADIO_CAPABILITY";
+ case RIL_REQUEST_SET_TRM: return "RIL_REQUEST_SET_TRM";
+ case RIL_REQUEST_SET_IMS_ENABLE:return "RIL_REQUEST_SET_IMS_ENABLE";
+ case RIL_REQUEST_SET_AUDIO_PATH: return "SET_AUDIO_PATH";
+ case RIL_REQUEST_HANGUP_ALL: return "HANGUP_ALL";
+ case RIL_REQUEST_FORCE_RELEASE_CALL: return "FORCE_RELEASE_CALL";
+ case RIL_REQUEST_EMERGENCY_DIAL: return "RIL_REQUEST_EMERGENCY_DIAL";
+ case RIL_REQUEST_SET_ECC_SERVICE_CATEGORY: return "RIL_REQUEST_SET_ECC_SERVICE_CATEGORY";
+ case RIL_REQUEST_SET_ECC_LIST: return "RIL_REQUEST_SET_ECC_LIST";
+ case RIL_REQUEST_AT_COMMAND_WITH_PROXY: return "AT_COMMAND_WITH_PROXY";
+ case RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION: return "RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION";
+ case RIL_REQUEST_SET_CLIP: return "RIL_REQUEST_SET_CLIP";
+ case RIL_REQUEST_GET_COLP: return "RIL_REQUEST_GET_COLP";
+ case RIL_REQUEST_SET_COLP: return "RIL_REQUEST_SET_COLP";
+ case RIL_REQUEST_GET_COLR: return "RIL_REQUEST_GET_COLR";
+ case RIL_REQUEST_ADD_IMS_CONFERENCE_CALL_MEMBER: return "ADD_IMS_CONFERENCE_CALL_MEMBER";
+ case RIL_REQUEST_REMOVE_IMS_CONFERENCE_CALL_MEMBER: return "REMOVE_IMS_CONFERENCE_CALL_MEMBER";
+ case RIL_REQUEST_CONFERENCE_DIAL: return "CONFERENCE_DIAL";
+ case RIL_REQUEST_DIAL_WITH_SIP_URI: return "DIAL_WITH_SIP_URI";
+ case RIL_REQUEST_HOLD_CALL: return "HOLD_CALL";
+ case RIL_REQUEST_RESUME_CALL: return "RESUME_CALL";
+ case RIL_UNSOL_ECONF_SRVCC_INDICATION : return "ECONF_SRVCC_INDICATION";
+ case RIL_UNSOL_ECONF_RESULT_INDICATION : return "ECONF_RESULT_INDICATION";
+ case RIL_UNSOL_MAL_AT_INFO : return "UNSOL_MAL_AT_INFO";
+ case RIL_REQUEST_MODEM_POWEROFF: return "MODEM_POWEROFF";
+ case RIL_REQUEST_MODEM_POWERON: return "MODEM_POWERON";
+ case RIL_REQUEST_WRITE_SMS_TO_SIM: return "WRITE_SMS_TO_SIM";
+ case RIL_REQUEST_QUERY_ICCID: return "RIL_REQUEST_QUERY_ICCID";
+ case RIL_UNSOL_TX_POWER: return "RIL_UNSOL_TX_POWER";
+ case RIL_UNSOL_NETWORK_INFO: return "RIL_UNSOL_NETWORK_INFO";
+ case RIL_REQUEST_DELETE_SMS_ON_SIM: return "DELETE_SMS_ON_SIM";
+ case RIL_REQUEST_SET_IMSCFG: return "RIL_REQUEST_SET_IMSCFG";
+#ifdef ECALL_SUPPORT
+ case RIL_REQUEST_ECALL_FAST_MAKE_ECALL: return "ECALL_FAST_MAKE_ECALL";
+ case RIL_REQUEST_ECALL_SET_IVS: return "RIL_REQUEST_ECALL_SET_IVS";
+ case RIL_REQUEST_ECALL_SET_PSAP: return "RIL_REQUEST_ECALL_SET_PSAP";
+ case RIL_REQUEST_ECALL_MAKE_ECALL: return "RIL_REQUEST_ECALL_MAKE_ECALL";
+ case RIL_REQUEST_ECALL_IVS_PUSH_MSD: return "RIL_REQUEST_ECALL_IVS_PUSH_MSD";
+ case RIL_REQUEST_ECALL_PSAP_PULL_MSD: return "RIL_REQUEST_ECALL_PSAP_PULL_MSD";
+ case RIL_UNSOL_ECALL_MSDHACK : return "ECALL_MSDHACK";
+ case RIL_REQUEST_ECALL_SET_MSD: return "RIL_REQUEST_ECALL_SET_MSD";
+ case RIL_REQUEST_ECALL_CTRL_SEQUENCE: return "ECALL_SET_CTRL_SEQUENCE";
+ case RIL_UNSOL_ECALL_INDICATIONS : return "ECALL_INDICATIONS";
+ case RIL_REQUEST_ECALL_RESET_IVS: return "RIL_REQUEST_ECALL_RESET_IVS";
+ case RIL_REQUEST_ECALL_SET_PRI: return "RIL_REQUEST_ECALL_SET_PRI";
+ case RIL_REQUEST_ECALL_SET_TEST_NUM: return "RIL_REQUEST_ECALL_SET_TEST_NUM";
+ case RIL_REQUEST_ECALL_SET_RECONF_NUM: return "RIL_REQUEST_ECALL_SET_RECONF_NUM";
+ case RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD: return "RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD";
+ case RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME: return "RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME";
+ case RIL_REQUEST_ECALL_SET_REGISTRATION_STATE: return "RIL_REQUEST_ECALL_SET_REGISTRATION_STATE";
+#endif /*ECALL_SUPPORT*/
+#ifdef KEEP_ALIVE
+ case RIL_REQUEST_START_KEEPALIVE_PRO: return "RIL_REQUEST_START_KEEPALIVE_PRO";
+ case RIL_REQUEST_STOP_KEEPALIVE_PRO: return "RIL_REQUEST_STOP_KEEPALIVE_PRO";
+ case RIL_UNSOL_KEEPALIVE_STATUS_PRO: return "RIL_UNSOL_KEEPALIVE_STATUS_PRO";
+#endif /*KEEP_ALIVE*/
+ case RIL_REQUEST_SEND_USSI: return "SEND_USSI";
+ case RIL_REQUEST_CANCEL_USSI: return "CANCEL_USSI";
+ case RIL_REQUEST_GET_SMS_SIM_MEM_STATUS: return "GET_SMS_SIM_MEM_STATUS";
+ case RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR: return "RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR";
+ case RIL_REQUEST_REPORT_AIRPLANE_MODE: return "RIL_REQUEST_REPORT_AIRPLANE_MODE";
+ case RIL_REQUEST_SET_ECC_NUM: return "RIL_REQUEST_SET_ECC_NUM";
+ case RIL_REQUEST_GET_ECC_NUM: return "RIL_REQUEST_GET_ECC_NUM";
+ case RIL_UNSOL_ECC_NUM: return "RIL_UNSOL_ECC_NUM";
+ case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT: return "RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT";
+ case RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE";
+ case RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE";
+ case RIL_UNSOL_CALL_INFO_INDICATION: return "RIL_UNSOL_CALL_INFO_INDICATION";
+ case RIL_REQUEST_MODIFY_APN: return "RIL_REQUEST_MODIFY_APN";
+ case RIL_REQUEST_RESET_APN: return "RIL_REQUEST_RESET_APN";
+ case RIL_REQUEST_QUERY_SIM_RETRY_COUNT: return "RIL_REQUEST_QUERY_SIM_RETRY_COUNT";
+ case RIL_REQUEST_QUERY_EID: return "RIL_REQUEST_QUERY_EID";
+ case LYNQ_REQUEST_SET_DTMF_VOLUME: return "RIL_REQUEST_SET_DTMF_VOLUME";
+ case LYNQ_REQUEST_SET_SPEECH_VOLUME: return "RIL_REQUEST_SET_SPEECH_VOLUME";
+ case LYNQ_REQUEST_GET_SPEECH_VOLUME: return "RIL_REQUEST_GET_SPEECH_VOLUME";
+ case LYNQ_REQUEST_RECORD: return "RIL_REQUEST_RECORD";
+ /*warren add for t800 ril service 2022/1/22 start*/
+ case LYNQ_REQUEST_WRITE_SMS_TO_MEMORY: return "LYNQ_REQUEST_WRITE_SMS_TO_MEMORY";
+ case LYNQ_REQUEST_READ_SMS_FROM_MEMORY: return "LYNQ_REQUEST_READ_SMS_FROM_MEMORY";
+ case LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY: return "LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY";
+ case LYNQ_REQUEST_LIST_SMS_FROM_MEMORY: return "LYNQ_REQUEST_LIST_SMS_FROM_MEMORY";
+ case LYNQ_REQUEST_SET_DEFAULT_SIM_ALL:return "SET_DEFAULT_SIM_ALL";
+ case LYNQ_REQUEST_CHANGE_SCREEN_STATE:return "LYNQ_REQUEST_CHANGE_SCREEN_STATE";/*jb.qi add for two sim sleep 2022/9/19*/
+ case LYNQ_REQUEST_CHANGE_RADIO:return "LYNQ_REQUEST_CHANGE_RADIO";/*lei add for factory test of sleep 2022/9/19*/
+ case LYNQ_REQUEST_SET_VOICE_AUDIO_MODE:return "LYNQ_REQUEST_SET_VOICE_AUDIO_MODE";
+ case LYNQ_REQUEST_SET_REMOTE_RTP_IP:return "LYNQ_REQUEST_SET_REMOTE_RTP_IP";
+ case LYNQ_REQUEST_SET_VLAN_INFO:return "LYNQ_REQUEST_SET_VLAN_INFO";
+ case LYNQ_REQUEST_SET_RTP_PORT:return "LYNQ_REQUEST_SET_RTP_PORT";
+ case LYNQ_REQUEST_SET_RTP_PARAM:return "LYNQ_REQUEST_SET_RTP_PARAM";
+ case LYNQ_REQUEST_GET_VOICE_AUDIO_MODE:return "LYNQ_REQUEST_GET_VOICE_AUDIO_MODE";
+ case LYNQ_REQUEST_GET_REMOTE_RTP_IP:return "LYNQ_REQUEST_GET_REMOTE_RTP_IP";
+ case LYNQ_REQUEST_GET_VLAN_INFO:return "LYNQ_REQUEST_GET_VLAN_INFO";
+ case LYNQ_REQUEST_GET_RTP_PORT:return "LYNQ_REQUEST_GET_RTP_PORT";
+ case LYNQ_REQUEST_GET_RTP_PARAM:return "LYNQ_REQUEST_GET_RTP_PARAM";
+ case LYNQ_REQUEST_SET_CALL_RTP_SSRC:return "LYNQ_REQUEST_SET_CALL_RTP_SSRC";
+ case LYNQ_REQUEST_GET_CALL_RTP_SSRC:return "LYNQ_REQUEST_GET_CALL_RTP_SSRC";
+ /*warren add for t800 ril service 2022/1/22 end*/
+ default: return "<unknown request>";
+ }
+}
\ No newline at end of file
diff --git a/src/lynq/common_file/ril/lib_service_common/service_lib_common.h b/src/lynq/common_file/ril/lib_service_common/service_lib_common.h
new file mode 100755
index 0000000..20a4be4
--- /dev/null
+++ b/src/lynq/common_file/ril/lib_service_common/service_lib_common.h
@@ -0,0 +1,8 @@
+#ifndef __SERVICE_LIB_COMMON_H__
+#define __SERVICE_LIB_COMMON_H__
+
+namespace android {
+const char * requestToString(int request);
+}
+
+#endif //__SERVICE_LIB_COMMON_H__
\ No newline at end of file
diff --git a/src/lynq/framework/lynq-ril-service/src/cc.cpp b/src/lynq/framework/lynq-ril-service/src/cc.cpp
index 8afb2d3..f7c89e3 100755
--- a/src/lynq/framework/lynq-ril-service/src/cc.cpp
+++ b/src/lynq/framework/lynq-ril-service/src/cc.cpp
@@ -50,6 +50,7 @@
#ifdef LED_SUPPORT
#include "led.h"
#endif
+#include "call_rtp.h"
using android::Parcel;
/*Warren add for t800 ril servie 2021/12/23 end*/
@@ -170,10 +171,19 @@
//set mixer ctl to om:1 or off:0
if(value){
- ret = set_mixer_ctrl_value_int(isEcallAudioPath() ? g_mixer_name_ecall: g_mixer_name, value);
- RLOGD("mixer_set(%s) = %d, ret: %d", (isEcallAudioPath() ? g_mixer_name_ecall: g_mixer_name), value, ret);
- } else {
- //setEcallAudioPathOn(false);
+ //ret = set_mixer_ctrl_value_int(isEcallAudioPath() ? g_mixer_name_ecall: g_mixer_name, value);
+ if(isEcallAudioPath())
+ {
+ exe_set_voice_audio_mode(AUDIO_MODE_CODEC);
+ }
+ else
+ {
+ exe_set_voice_audio_mode(AUDIO_MODE_RTP);
+ }
+ // RLOGD("mixer_set(%s) = %d, ret: %d", (isEcallAudioPath() ? g_mixer_name_ecall: g_mixer_name), value, ret);
+ } else {
+ exe_set_voice_audio_mode(AUDIO_MODE_ALL_CLOSE);
+/*
ret = get_mixer_ctrl_value_int(g_mixer_name);
RLOGD("mixer_set(get_mixer_ctrl_value_int: %s) = %d", g_mixer_name, ret);
if(ret > 0) {
@@ -183,6 +193,7 @@
ret = set_mixer_ctrl_value_int(g_mixer_name_ecall, value);
RLOGD("mixer_set(%s) = %d", g_mixer_name_ecall, ret);
}
+*/
}
@@ -390,7 +401,7 @@
}
}
p.setDataPosition(pos);
- setEcallAudioPathOn(false);
+// setEcallAudioPathOn(false);
pRI->pCI->dispatchFunction(p, pRI);
inCallstatus = CALL_ON;
return 0;
@@ -710,7 +721,7 @@
#endif
p.setDataPosition(pos);
- setEcallAudioPathOn(false);
+// setEcallAudioPathOn(false);
pRI->pCI->dispatchFunction(p, pRI);
return 0;
}
@@ -1013,7 +1024,7 @@
}
}
p.setDataPosition(pos);
- setEcallAudioPathOn(false);
+//setEcallAudioPathOn(false);
pRI->pCI->dispatchFunction(p, pRI);
return 0;
}
@@ -1262,6 +1273,139 @@
}
return;
}
+
+#ifdef ZK_RIL_CFG
+/*dongyu@2023.5.31 Add ZK set codec tlv320aic3x API register start*/
+void set_codec(int open)
+{
+ RLOGD("set_codec %d",open);
+ if(open==0)
+ {
+ system("echo out 201 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo out 113 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo out 29 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ }
+ else
+ {
+ system("echo out 201 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ usleep(10);//just open need usleep 10us
+ system("echo out 113 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ usleep(10);//just open need usleep 10us
+ system("echo out 29 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo 0x00 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x01 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x02 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x03 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x04 0x04 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x05 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x06 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x07 0xa0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x08 0x20 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x09 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0b 0x32 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0f 0x10 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x10 0x20 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x11 0xf8 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x12 0xff > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x13 0x7a > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x14 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x15 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x16 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x17 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x18 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x19 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1b 0xfe > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1e 0xfe > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1f 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x20 0x18 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x21 0x18 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x22 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x23 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x24 0xc0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x25 0xc0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x26 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x27 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x28 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x29 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2b 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2c 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2e 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2f 0x85 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x30 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x31 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x32 0x85 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x33 0x9f > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x34 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x35 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x36 0x82 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x37 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x38 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x39 0x82 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3a 0x9f > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3e 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3f 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x40 0xaf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x41 0x0d > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x42 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x43 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x44 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x45 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x46 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x47 0xaf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x48 0x0d > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x49 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4e 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4f 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x50 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x51 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x52 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x53 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x54 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x55 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x56 0x9b > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x57 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x58 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x59 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5c 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5d 0x08 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5e 0xde > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5f 0x0c > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x60 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x61 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x62 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x63 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x64 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x65 0x01 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x66 0xa2 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x67 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x68 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x69 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6c 0x40 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ }
+}
+/*dongyu@2023.5.31 Add ZK set codec tlv320aic3x API register end*/
+#endif
+
#ifdef GSW_RIL_CFG
/*hqing add for Geely demand on 11/07/2022, after cs call, codec should sleep*/
@@ -1398,8 +1542,9 @@
static int callIndex = 0;
RLOGD("callnum = %d, Call State Change then judge speech on/off!", callnum);
callIndex = callnum;
-#ifdef GSW_RIL_CFG
- if( callIndex >= 1 && speechStatus == SPEECH_OFF) { //speech on
+ lock_rtp_audio_mtx();
+#if (defined GSW_RIL_CFG) || (defined ZK_RIL_CFG)
+ if( callIndex > 0 && speechStatus == SPEECH_OFF) { //speech on
//RLOGD("DemoAPP Call shell command (pactl set-card-profile 0 phonecall)");
//system("pactl set-card-profile 0 phonecall");
//RLOGD("DemoAPP Call shell command end");
@@ -1407,7 +1552,7 @@
#endif
#ifdef MOBILETEK_RIL_CFG
- if( callIndex == 1 && speechStatus == SPEECH_OFF) { //speech on
+ if( callIndex > 0 && speechStatus == SPEECH_OFF) { //speech on
//RLOGD("DemoAPP Call shell command (pactl set-card-profile 0 phonecall)");
//system("pactl set-card-profile 0 phonecall");
//RLOGD("DemoAPP Call shell command end");
@@ -1420,6 +1565,7 @@
speechStatus = BT_SPEECH_ON;
}
inCallstatus = CALL_ON;
+ unlock_rtp_audio_mtx();
RLOGD("[speech]: set on");
sendCallMsg(true); //for Power Manager test
} else if (callIndex == 0
@@ -1440,11 +1586,13 @@
speechStatus = SPEECH_OFF;
inCallstatus = CALL_OFF;
resetMute();
-#ifdef GSW_RIL_CFG
+ unlock_rtp_audio_mtx();
+#if (defined GSW_RIL_CFG) || (defined ZK_RIL_CFG)
set_codec(0); //hqing add for Geely demand on 11/07/2022, after cs call, close codec for power Manager
#endif
RLOGD("[speech]: set off");
} else {
+ unlock_rtp_audio_mtx();
RLOGD("callIndex is %d, speechStatus is %d.",callIndex, speechStatus);
}
diff --git a/src/lynq/framework/lynq-ril-service/src/commands.h b/src/lynq/framework/lynq-ril-service/src/commands.h
index c1686ed..115e16d 100755
--- a/src/lynq/framework/lynq-ril-service/src/commands.h
+++ b/src/lynq/framework/lynq-ril-service/src/commands.h
@@ -235,6 +235,20 @@
{"RIL_REQUEST_DEMO_LOCAL_SET_GOST_DEFAULT",gostTransmitDefaultSet,"Set gost ecall default",-1},
#endif /*ECALL_SUPPORT*/
+ //rtp
+ {"LYNQ_REQUEST_SET_VOICE_AUDIO_MODE",set_voice_audio_mode,"set voice audio mode",LYNQ_REQUEST_SET_VOICE_AUDIO_MODE},
+ {"LYNQ_REQUEST_SET_REMOTE_RTP_IP",set_remote_rtp_ip,"set remote rtp ip",LYNQ_REQUEST_SET_REMOTE_RTP_IP},
+ {"LYNQ_REQUEST_SET_VLAN_INFO",set_vlan_info,"set vlan info",LYNQ_REQUEST_SET_VLAN_INFO},
+ {"LYNQ_REQUEST_SET_RTP_PORT",set_rtp_port,"set rtp port",LYNQ_REQUEST_SET_RTP_PORT},
+ {"LYNQ_REQUEST_SET_RTP_PARAM",set_rtp_param,"set rtp para",LYNQ_REQUEST_SET_RTP_PARAM},
+ {"LYNQ_REQUEST_GET_VOICE_AUDIO_MODE",get_voice_audio_mode,"get voice audio mode",LYNQ_REQUEST_GET_VOICE_AUDIO_MODE},
+ {"LYNQ_REQUEST_GET_REMOTE_RTP_IP",get_remote_rtp_ip,"get remote rtp ip",LYNQ_REQUEST_GET_REMOTE_RTP_IP},
+ {"LYNQ_REQUEST_GET_VLAN_INFO",get_vlan_info,"get vlan info",LYNQ_REQUEST_GET_VLAN_INFO},
+ {"LYNQ_REQUEST_GET_RTP_PORT",get_rtp_port,"get rtp port",LYNQ_REQUEST_GET_RTP_PORT},
+ {"LYNQ_REQUEST_GET_RTP_PARAM",get_rtp_param,"get rtp para",LYNQ_REQUEST_GET_RTP_PARAM},
+ {"LYNQ_REQUEST_SET_CALL_RTP_SSRC",set_call_rtp_ssrc,"set call rtp ssrc",LYNQ_REQUEST_SET_CALL_RTP_SSRC},
+ {"LYNQ_REQUEST_GET_CALL_RTP_SSRC",get_call_rtp_ssrc,"get call rtp ssrc",LYNQ_REQUEST_GET_CALL_RTP_SSRC},
+
#ifdef MODE_DSDS
{"SET_DEFAULT_SIM_ALL",set_default_sim_all, "set default sim_all", -1},
{"GET_DEFAULT_SIM_ALL",get_default_sim_all, "get default sim_all", -1},
diff --git a/src/lynq/framework/lynq-ril-service/src/common.cpp b/src/lynq/framework/lynq-ril-service/src/common.cpp
index 9132652..402aad1 100755
--- a/src/lynq/framework/lynq-ril-service/src/common.cpp
+++ b/src/lynq/framework/lynq-ril-service/src/common.cpp
@@ -99,6 +99,8 @@
/*Warren add for SZZT 2021/11/14 end*/
+int g_ril_test;
+
/*hq add for key information output start 2022/03/01*/
// extern int lynq_output_LINFO_enable =0;
diff --git a/src/lynq/framework/lynq-ril-service/src/common.h b/src/lynq/framework/lynq-ril-service/src/common.h
index b0bdb3e..c0812a1 100755
--- a/src/lynq/framework/lynq-ril-service/src/common.h
+++ b/src/lynq/framework/lynq-ril-service/src/common.h
@@ -51,6 +51,7 @@
#include <sys/socket.h>
#include <netinet/in.h>
/*Warren add for t800 ril service 2021/12/15 start*/
+#include "service_lib_common.h"
#define DEBUG 0
@@ -82,6 +83,10 @@
#define PROP_DEFAULT_DATA_SIM_STATUS "vendor.radio.data.enable"
#define ATCI_SIM "persist.vendor.service.atci.sim"
//#define PROP_DATA_ALLOW_STATUS "vendor.ril.data.allow.status"
+
+#define RIL_STUB_TEST_SWTICH_RTP_RECORD (1)
+extern int g_ril_test;
+
//Warren add for plantform 2021_08_11 start
/*
**The range of error values unique to LYNQ is 8000 to 10000.
@@ -255,7 +260,6 @@
#endif /*ECALL_SUPPORT*/
namespace android {
void initRequestInfo(RequestInfo *pRI, int request, int mode, RIL_SOCKET_ID soc_id);
- const char * requestToString(int request);
const int RspDispFunction(int request,char* arg, RIL_SOCKET_ID socket_id);
void requestSMSACKNOWLEDGE(RIL_SOCKET_ID soc_id);
void requestAnswer(RIL_SOCKET_ID soc_id);
diff --git a/src/lynq/framework/lynq-ril-service/src/data/data.cpp b/src/lynq/framework/lynq-ril-service/src/data/data.cpp
index 8d81825..0f8d6ce 100755
--- a/src/lynq/framework/lynq-ril-service/src/data/data.cpp
+++ b/src/lynq/framework/lynq-ril-service/src/data/data.cpp
@@ -783,13 +783,13 @@
if(argc > 2)
{
/*Warren add for t800 ril service 2021/12/25 start*/
- char* apnType = argv[1];
+ char* apnType = argv[2];
int result=0;
RLOGD("[setupDataCall] apn_count1:%d\n",apn_count);
for(int i = 0;i< LYNQ_APN_CHANNEL_MAX;i++)//代表已经有argv[1]类型的APN 已经被建立,
{
- RLOGD("apnType:%s,argv[1]:%s\n",apn_table[i].apntype,argv[1]);
- if(strcmp(apn_table[i].apntype,argv[1])==0)
+ RLOGD("apnType:%s,argv[2]:%s\n",apn_table[i].apntype,argv[2]);
+ if(strcmp(apn_table[i].apntype,argv[2])==0)
{
/*此处直接返回response,给client成功的结果码,并返回iface*/
Parcel urc_p;
@@ -801,7 +801,7 @@
urc_p.writeInt32(1);
urc_p.writeInt32(LYNQ_URC_DATA_CALL_STATUS_IND);
urc_p.writeInt32(socket_id);
- urc_p.writeInt32(apn_table[i].apnstatus);
+ urc_p.writeInt32(apn_table[i].pdpstate);
writeStringToParcel(urc_p, apn_table[i].apn);
writeStringToParcel(urc_p, apn_table[i].apntype);
writeStringToParcel(urc_p, apn_table[i].ifaceName);
@@ -839,7 +839,7 @@
urc_p.writeInt32(1);
urc_p.writeInt32(LYNQ_URC_DATA_CALL_STATUS_IND);
urc_p.writeInt32(socket_id);
- urc_p.writeInt32(apn_table[i].apnstatus);
+ urc_p.writeInt32(apn_table[i].pdpstate);
writeStringToParcel(urc_p, apn_table[i].apn);
writeStringToParcel(urc_p, apn_table[i].apntype);
writeStringToParcel(urc_p, apn_table[i].ifaceName);
diff --git a/src/lynq/framework/lynq-ril-service/src/data/data_gdbus.cpp b/src/lynq/framework/lynq-ril-service/src/data/data_gdbus.cpp
index dafea1a..9d3e4d2 100755
--- a/src/lynq/framework/lynq-ril-service/src/data/data_gdbus.cpp
+++ b/src/lynq/framework/lynq-ril-service/src/data/data_gdbus.cpp
@@ -130,7 +130,9 @@
p.writeInt32 (LYNQ_URC_DATA_CALL_STATUS_IND);
p.writeInt32 (0);//temporary plan
p.writeInt32(PDN_DISCONNECTED);
+ writeStringToParcel(p,urc_response->apnName);
writeStringToParcel(p,urc_response->apnType);
+ writeStringToParcel(p,urc_response->ifname);
android::LYNQ_RIL_urcBroadcast(p,LYNQ_URC_DATA_CALL_STATUS_IND);
RLOGD("removed apn:%s,apntype:%s",apn_table[i].apn,apn_table[i].apntype);
#ifdef LED_SUPPORT
@@ -273,6 +275,41 @@
{
apnHasCreated = FALSE;
RLOGD("[cid < 0] apn_count:%d\n",apn_count);
+ if(urc_response->pdnState==PDN_DISCONNECTED)//if user disable data call,the pdn state wiil change to disconnected.
+ {
+ for(int i = 0;i < LYNQ_APN_CHANNEL_MAX;i++)
+ {
+ #if DEBUG
+ printf("line %d [PDN_DISCONNECTED]apn_table[%d],apntype:%s,apnstatus:%d,,,urc_response->apnName:%s\n",__LINE__, i,apn_table[i].apntype,apn_table[i].apnstatus,urc_response->apnType);
+ #endif
+ RLOGD("[PDN_DISCONNECTED]apn_table[%d],apntype:%s,apnstatus:%d,,,urc_response->apnName:%s\n",i,apn_table[i].apntype,apn_table[i].apnstatus,urc_response->apnType);
+ if((strcmp(apn_table[i].apntype,urc_response->apnType)==0)&&(apn_table[i].apnstatus==0))
+ {
+ bzero(apn_table[i].apn,LYNQ_APN_LEN_MAX);
+ bzero(apn_table[i].apntype,LYNQ_APNTPYE_LEN_MAX);
+ apn_table[i].used = 0;
+ apn_table[i].netId = 0;
+ apn_table[i].pdpstate = PDN_DISCONNECTED;
+ apn_count--;
+ p.writeInt32 (1);
+ p.writeInt32 (LYNQ_URC_DATA_CALL_STATUS_IND);
+ p.writeInt32 (0);//temporary plan
+ p.writeInt32(PDN_DISCONNECTED);
+ writeStringToParcel(p,urc_response->apnName);
+ writeStringToParcel(p,urc_response->apnType);
+ writeStringToParcel(p,urc_response->ifname);
+ android::LYNQ_RIL_urcBroadcast(p,LYNQ_URC_DATA_CALL_STATUS_IND);
+ RLOGD("removed apn:%s,apntype:%s",apn_table[i].apn,apn_table[i].apntype);
+ break;
+ }
+ }
+ for(int i = 0;i < LYNQ_APN_CHANNEL_MAX;i++)
+ {
+ RLOGD("for apn_table[%d].apn:%s,apntype:%s,used:%d,apnstatus:%d\n",i,apn_table[i].apn,
+ apn_table[i].apntype,apn_table[i].used,apn_table[i].apnstatus);
+ }
+ return 0;
+ }
if(apn_count>0)
{
int i = 0;
diff --git a/src/lynq/framework/lynq-ril-service/src/ecall/eCall.cpp b/src/lynq/framework/lynq-ril-service/src/ecall/eCall.cpp
index 5d1ea71..7cffc64 100755
--- a/src/lynq/framework/lynq-ril-service/src/ecall/eCall.cpp
+++ b/src/lynq/framework/lynq-ril-service/src/ecall/eCall.cpp
@@ -70,7 +70,7 @@
static ECALL_TYPE ecall_type = ECALL_TYPE::EN16454_ECALL;
static bool inNeedRegister = false;
static bool gostFastEcallFlg = false;
-static bool is_ecall_audio_path = false;
+static bool is_ecall_audio_path = true;
int gost_sms_argc = 0;
std::vector<std::string> gost_sms_argv;
@@ -187,19 +187,23 @@
}
void setEcallAudioPathOn(bool on) {
+#if 0
RLOGD("%s() , is_ecall_audio_path: %d, on: %d", __FUNCTION__, is_ecall_audio_path, on);
if((is_ecall_audio_path != on) && (isEcallAutoanswerTimerFinish())) {
is_ecall_audio_path = on;
}
RLOGD("%s() , is_ecall_audio_path: %d", __FUNCTION__, is_ecall_audio_path);
+#endif
}
+void setEcallAudioPathOn_New(bool on) {
+ is_ecall_audio_path = on;
+ RLOGD("%s() , set is_ecall_audio_path: %d, on: %d", __FUNCTION__, is_ecall_audio_path, on);
+}
+
+
void autoAnswerEcall(bool on) {
- RLOGD("%s() , is_ecall_audio_path: %d, on: %d", __FUNCTION__, is_ecall_audio_path, on);
- if(is_ecall_audio_path != on) {
- is_ecall_audio_path = on;
- }
if(on) {
char* argv[2] = {"", "1"};
autoAnswerCall(2, argv, RIL_SOCKET_ID(0), NULL); //unused socket id;
@@ -423,8 +427,7 @@
}
else if(sig.sival_int == redial_sig_value) {
redial_tag = REDIAL_EXPIRES;
- RequestInfo* pRI = creatRILInfoAndInit(RIL_REQUEST_ECALL_RESET_IVS, UDP,RIL_SOCKET_ID(fast_ecall_socket_id));
- resetIVS(0, NULL, RIL_SOCKET_ID(fast_ecall_socket_id), pRI);
+ resetEcallIVSandAudio(UDP, RIL_SOCKET_ID(fast_ecall_socket_id));
fast_argc = 0;
fast_argv.clear();
@@ -627,9 +630,9 @@
stop_ecall_timer(sT6,sT6_sig_value);
stop_ecall_timer(sT7,sT7_sig_value);
stop_ecall_timer(sRedialTimer, redial_sig_value);
-
+
redial_tag = REDIAL_SUCCESS;
- resetEcallIVSandAudio(RSPD, soc_id);
+ resetEcallIVSandAudio(RSPD, RIL_SOCKET_ID(fast_ecall_socket_id));
saveEcallRecord(p_cur->ind);
act_fecall_socid = soc_id;
@@ -638,7 +641,7 @@
}
case RIL_UNSOL_ECALL_ALACK_CLEARDOWN_RECEIVED: // = 5,
{
- fast_argc = 0;
+ fast_argc = 0;
fast_argv.clear();
stop_ecall_timer(sT2,sT2_sig_value);
stop_ecall_timer(sT5,sT5_sig_value);
@@ -721,8 +724,7 @@
stop_ecall_timer(sT6,sT6_sig_value);
stop_ecall_timer(sT7,sT7_sig_value);
ecall_test_sub_recover();
- RequestInfo* pRI = creatRILInfoAndInit(RIL_REQUEST_ECALL_RESET_IVS, UDP, soc_id);
- resetIVS(0, NULL, soc_id, pRI);
+ resetEcallIVSandAudio(UDP, soc_id);
redialFastEcall(soc_id);
}
else { /* redial_tag == REDIAL_SUCCESS || redial_tag == REDIAL_EXPIRES */
@@ -795,7 +797,7 @@
redial_tag = REDIAL_SUCCESS;
stop_ecall_timer(sAutoAnsTimer, autoAns_sig_value);
- stop_ecall_timer(sAutoAnsTimer_ims, autoAns_sig_value_ims);
+ stop_ecall_timer(sAutoAnsTimer_ims, autoAns_sig_value_ims);
autoAnswerEcall(false);
fast_argc = 0;
@@ -871,6 +873,14 @@
free(pRI);
return 0;
}
+ else if(-300 < enable && enable<=-200)
+ {
+ g_ril_test=-enable-200;
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,RIL_REQUEST_ECALL_SET_IVS,0,0);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ return 0;
+ }
if (getSpeechStatus() == SPEECH_OFF) {
if (get_audio_path() == 0) {
@@ -1009,7 +1019,7 @@
//RIL_REQUEST_ECALL_RESET_IVS
int resetIVS(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI) {
android::Parcel p;
-
+/*
if (getSpeechStatus() == SPEECH_OFF) {
if (get_audio_path() == 0) {
setSpeechAndStatus(1);
@@ -1017,7 +1027,7 @@
setSpeechAndStatus(2);
}
}
-
+*/
//paramter none
pRI->pCI->dispatchFunction(p, pRI);
return 0;
diff --git a/src/lynq/framework/lynq-ril-service/src/ecall/eCall.h b/src/lynq/framework/lynq-ril-service/src/ecall/eCall.h
index 7c5e668..5c44eff 100755
--- a/src/lynq/framework/lynq-ril-service/src/ecall/eCall.h
+++ b/src/lynq/framework/lynq-ril-service/src/ecall/eCall.h
@@ -97,6 +97,7 @@
void gostFastEcallFlgSet(bool flags);
bool isEcallAudioPath();
void setEcallAudioPathOn(bool on);
+void setEcallAudioPathOn_New(bool on);
void init_redial_flag();
#endif /*ECALL_SUPPORT*/
#endif
diff --git a/src/lynq/framework/lynq-ril-service/src/lynq_interface.cpp b/src/lynq/framework/lynq-ril-service/src/lynq_interface.cpp
deleted file mode 100755
index f0943aa..0000000
--- a/src/lynq/framework/lynq-ril-service/src/lynq_interface.cpp
+++ /dev/null
@@ -1 +0,0 @@
-#include "lynq_interface.h"
\ No newline at end of file
diff --git a/src/lynq/framework/lynq-ril-service/src/lynq_interface.h b/src/lynq/framework/lynq-ril-service/src/lynq_interface.h
deleted file mode 100755
index 4a94b10..0000000
--- a/src/lynq/framework/lynq-ril-service/src/lynq_interface.h
+++ /dev/null
@@ -1,40 +0,0 @@
-#define LYNQ_REQUEST_VENDOR_BASE 8000
-#define LYNQ_URC_VENDOR_BASE 9000
-#define LYNQ_AT_SNED (LYNQ_REQUEST_VENDOR_BASE +1)
-#define LYNQ_URC_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+1)
-#define LYNQ_URC_DATA_STATUS_IND (LYNQ_URC_VENDOR_BASE+2)
-#define LYNQ_URC_DATA_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+3)
-#define LYNQ_AUTO_ANSWER_CALL (LYNQ_REQUEST_VENDOR_BASE +2)
-#define LYNQ_REQUEST_SET_DTMF_VOLUME (LYNQ_REQUEST_VENDOR_BASE +3)
-#define LYNQ_URC_MODIFY_APNDB (LYNQ_URC_VENDOR_BASE+4)
-#define LYNQ_URC_RESET_APNDB (LYNQ_URC_VENDOR_BASE+5)
-
-
-#define LYNQ_REQUEST_WRITE_SMS_TO_MEMORY (LYNQ_REQUEST_VENDOR_BASE +4)
-#define LYNQ_REQUEST_READ_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 5)
-#define LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 6)
-#define LYNQ_REQUEST_LIST_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 7)
-#define LYNQ_REQUEST_SET_DEFAULT_SIM_ALL (LYNQ_REQUEST_VENDOR_BASE + 8)
-
-#define LYNQ_REQUEST_SET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +9)
-#define LYNQ_REQUEST_GET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +10)
-#define LYNQ_REQUEST_RECORD (LYNQ_REQUEST_VENDOR_BASE +11)
-#define LYNQ_REQUEST_OOS_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +12)
-#define LYNQ_REQUEST_OOS_DEEP_SLEEP_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +13)
-#define LYNQ_REQUEST_CHANGE_SCREEN_STATE (LYNQ_REQUEST_VENDOR_BASE + 14)/*jb.qi add for two sim suspend 2022/9/19*/
-#define LYNQ_REQUEST_CHANGE_RADIO (LYNQ_REQUEST_VENDOR_BASE + 15)
-#ifdef ECALL_SUPPORT
-#define RIL_UNSOL_ECALL_T2_TIMER_OUT 9000
-#define RIL_UNSOL_ECALL_T5_TIMER_OUT 9001
-#define RIL_UNSOL_ECALL_T6_TIMER_OUT 9002
-#define RIL_UNSOL_ECALL_T7_TIMER_OUT 9003
-#define RIL_UNSOL_ECALL_REDIAL_TIMER_OUT 9004
-#define RIL_UNSOL_ECALL_AUTO_ANS_TIMER_OUT 9005
-#define RIL_UNSOL_ECALL_AUTO_ANS_IMS_TIMER_OUT 9006
-#endif
-
-typedef struct{
- int request;
- int waitTime;
- char * name;
-}lynq_sp_command_t;
diff --git a/src/lynq/framework/lynq-ril-service/src/makefile b/src/lynq/framework/lynq-ril-service/src/makefile
index 7eaf082..a01484d 100755
--- a/src/lynq/framework/lynq-ril-service/src/makefile
+++ b/src/lynq/framework/lynq-ril-service/src/makefile
@@ -58,6 +58,10 @@
endif
+ifeq ($(strip $(MOBILETEK_RIL_CFG)), ZK)
+ LOCAL_CFLAGS += -DZK_RIL_CFG
+endif
+
ifeq ($(strip $(MOBILETEK_RIL_CFG)), PLATFORM)
LOCAL_CFLAGS += -DMOBILETEK_RIL_CFG
@@ -91,6 +95,7 @@
-I$(LOCAL_PATH)/factory \
-I$(LOCAL_PATH)/temp \
-I$(LOCAL_PATH)/led/include \
+ -I$(LOCAL_PATH)/rtp \
-I$(ROOT)$(includedir)/logger \
-I$(ROOT)$(includedir)/liblog \
-I$(ROOT)$(includedir)/liblynq-thermal \
@@ -148,7 +153,7 @@
endif
-SOURCES = $(wildcard util/*.cpp *.cpp ecall/*.cpp ecall/gost/*.cpp ecall/gost/utils/*.cpp ecall/gost/sslp/*.cpp ecall/gost/sslp/auth/*.cpp ecall/gost/sslp/firmware/*.cpp ecall/gost/sslp/commands/*.cpp ecall/gost/sslp/ecall/*.cpp ecall/gost/sslp/teledata/*.cpp data/*.cpp em/rfdesense/*.cpp em/networkinfo/*.cpp em/*.cpp sms/*.cpp sms/gsm/*.cpp sms/cdma/*.cpp atci/*.cpp stateManager/*.cpp sms/lynqSmsManager/*.cpp rndis/*.cpp factory/*.cpp temp/*.cpp led/*.cpp)
+SOURCES = $(wildcard util/*.cpp *.cpp ecall/*.cpp ecall/gost/*.cpp ecall/gost/utils/*.cpp ecall/gost/sslp/*.cpp ecall/gost/sslp/auth/*.cpp ecall/gost/sslp/firmware/*.cpp ecall/gost/sslp/commands/*.cpp ecall/gost/sslp/ecall/*.cpp ecall/gost/sslp/teledata/*.cpp data/*.cpp em/rfdesense/*.cpp em/networkinfo/*.cpp em/*.cpp sms/*.cpp sms/gsm/*.cpp sms/cdma/*.cpp atci/*.cpp stateManager/*.cpp sms/lynqSmsManager/*.cpp rndis/*.cpp factory/*.cpp temp/*.cpp led/*.cpp rtp/*.cpp)
EXECUTABLE = lynq-ril-service
diff --git a/src/lynq/framework/lynq-ril-service/src/ril.cpp b/src/lynq/framework/lynq-ril-service/src/ril.cpp
index 6bce06e..81d70af 100755
--- a/src/lynq/framework/lynq-ril-service/src/ril.cpp
+++ b/src/lynq/framework/lynq-ril-service/src/ril.cpp
@@ -94,6 +94,7 @@
#include "led.h"
#endif
#include "lynq_shm.h"
+#include "call_rtp.h"
#define LOG_TAG "DEMO_RIL"
#define WAIT_TIME_FOR_SIM_SWITCH 30
@@ -5136,275 +5137,18 @@
case LYNQ_REQUEST_SET_DEFAULT_SIM_ALL:return "SET_DEFAULT_SIM_ALL";
case LYNQ_REQUEST_CHANGE_SCREEN_STATE:return "LYNQ_REQUEST_CHANGE_SCREEN_STATE";/*jb.qi add for two sim sleep 2022/9/19*/
case LYNQ_REQUEST_CHANGE_RADIO:return "LYNQ_REQUEST_CHANGE_RADIO";/*lei add for factory test of sleep 2022/9/19*/
- /*warren add for t800 ril service 2022/1/22 end*/
- default: return "<unknown request>";
- }
-}
-
-const char *
-requestToString(int request) {
-/*
- cat libs/telephony/ril_commands.h \
- | egrep "^ *{RIL_" \
- | sed -re 's/\{RIL_([^,]+),[^,]+,([^}]+).+/case RIL_\1: return "\1";/'
-
-
- cat libs/telephony/ril_unsol_commands.h \
- | egrep "^ *{RIL_" \
- | sed -re 's/\{RIL_([^,]+),([^}]+).+/case RIL_\1: return "\1";/'
-
-*/
- switch(request) {
- case RIL_REQUEST_GET_SIM_STATUS: return "GET_SIM_STATUS";
- case RIL_REQUEST_ENTER_SIM_PIN: return "ENTER_SIM_PIN";
- case RIL_REQUEST_ENTER_SIM_PUK: return "ENTER_SIM_PUK";
- case RIL_REQUEST_ENTER_SIM_PIN2: return "ENTER_SIM_PIN2";
- case RIL_REQUEST_ENTER_SIM_PUK2: return "ENTER_SIM_PUK2";
- case RIL_REQUEST_CHANGE_SIM_PIN: return "CHANGE_SIM_PIN";
- case RIL_REQUEST_CHANGE_SIM_PIN2: return "CHANGE_SIM_PIN2";
- case RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION: return "ENTER_NETWORK_DEPERSONALIZATION";
- case RIL_REQUEST_GET_CURRENT_CALLS: return "GET_CURRENT_CALLS";
- case RIL_REQUEST_DIAL: return "DIAL";
- case RIL_REQUEST_GET_IMSI: return "GET_IMSI";
- case RIL_REQUEST_HANGUP: return "HANGUP";
- case RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND: return "HANGUP_WAITING_OR_BACKGROUND";
- case RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND: return "HANGUP_FOREGROUND_RESUME_BACKGROUND";
- case RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE: return "SWITCH_WAITING_OR_HOLDING_AND_ACTIVE";
- case RIL_REQUEST_CONFERENCE: return "CONFERENCE";
- case RIL_REQUEST_UDUB: return "UDUB";
- case RIL_REQUEST_LAST_CALL_FAIL_CAUSE: return "LAST_CALL_FAIL_CAUSE";
- case RIL_REQUEST_SIGNAL_STRENGTH: return "SIGNAL_STRENGTH";
- case RIL_REQUEST_VOICE_REGISTRATION_STATE: return "VOICE_REGISTRATION_STATE";
- case RIL_REQUEST_DATA_REGISTRATION_STATE: return "DATA_REGISTRATION_STATE";
- case RIL_REQUEST_OPERATOR: return "OPERATOR";
- case RIL_REQUEST_RADIO_POWER: return "RADIO_POWER";
- case RIL_REQUEST_DTMF: return "DTMF";
- case RIL_REQUEST_SEND_SMS: return "SEND_SMS";
- case RIL_REQUEST_SEND_SMS_EXPECT_MORE: return "SEND_SMS_EXPECT_MORE";
- case RIL_REQUEST_SETUP_DATA_CALL: return "SETUP_DATA_CALL";
- case RIL_REQUEST_SIM_IO: return "SIM_IO";
- case RIL_REQUEST_SEND_USSD: return "SEND_USSD";
- case RIL_REQUEST_CANCEL_USSD: return "CANCEL_USSD";
- case RIL_REQUEST_GET_CLIR: return "GET_CLIR";
- case RIL_REQUEST_SET_CLIR: return "SET_CLIR";
- case RIL_REQUEST_QUERY_CALL_FORWARD_STATUS: return "QUERY_CALL_FORWARD_STATUS";
- case RIL_REQUEST_SET_CALL_FORWARD: return "SET_CALL_FORWARD";
- case RIL_REQUEST_QUERY_CALL_WAITING: return "QUERY_CALL_WAITING";
- case RIL_REQUEST_SET_CALL_WAITING: return "SET_CALL_WAITING";
- case RIL_REQUEST_SMS_ACKNOWLEDGE: return "SMS_ACKNOWLEDGE";
- case RIL_REQUEST_GET_IMEI: return "GET_IMEI";
- case RIL_REQUEST_GET_IMEISV: return "GET_IMEISV";
- case RIL_REQUEST_ANSWER: return "ANSWER";
- case RIL_REQUEST_DEACTIVATE_DATA_CALL: return "DEACTIVATE_DATA_CALL";
- case RIL_REQUEST_QUERY_FACILITY_LOCK: return "QUERY_FACILITY_LOCK";
- case RIL_REQUEST_SET_FACILITY_LOCK: return "SET_FACILITY_LOCK";
- case RIL_REQUEST_CHANGE_BARRING_PASSWORD: return "CHANGE_BARRING_PASSWORD";
- case RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE: return "QUERY_NETWORK_SELECTION_MODE";
- case RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC: return "SET_NETWORK_SELECTION_AUTOMATIC";
- case RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL: return "SET_NETWORK_SELECTION_MANUAL";
- case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS : return "QUERY_AVAILABLE_NETWORKS ";
- case RIL_REQUEST_DTMF_START: return "DTMF_START";
- case RIL_REQUEST_DTMF_STOP: return "DTMF_STOP";
- case RIL_REQUEST_BASEBAND_VERSION: return "BASEBAND_VERSION";
- case RIL_REQUEST_SEPARATE_CONNECTION: return "SEPARATE_CONNECTION";
- case RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE: return "SET_PREFERRED_NETWORK_TYPE";
- case RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE: return "GET_PREFERRED_NETWORK_TYPE";
- case RIL_REQUEST_GET_NEIGHBORING_CELL_IDS: return "GET_NEIGHBORING_CELL_IDS";
- case RIL_REQUEST_SET_MUTE: return "SET_MUTE";
- case RIL_REQUEST_GET_MUTE: return "GET_MUTE";
- case RIL_REQUEST_QUERY_CLIP: return "QUERY_CLIP";
- case RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE: return "LAST_DATA_CALL_FAIL_CAUSE";
- case RIL_REQUEST_DATA_CALL_LIST: return "DATA_CALL_LIST";
- case RIL_REQUEST_RESET_RADIO: return "RESET_RADIO";
- case RIL_REQUEST_OEM_HOOK_RAW: return "OEM_HOOK_RAW";
- case RIL_REQUEST_OEM_HOOK_STRINGS: return "OEM_HOOK_STRINGS";
- case RIL_REQUEST_SET_BAND_MODE: return "SET_BAND_MODE";
- case RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE: return "QUERY_AVAILABLE_BAND_MODE";
- case RIL_REQUEST_STK_GET_PROFILE: return "STK_GET_PROFILE";
- case RIL_REQUEST_STK_SET_PROFILE: return "STK_SET_PROFILE";
- case RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND: return "STK_SEND_ENVELOPE_COMMAND";
- case RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE: return "STK_SEND_TERMINAL_RESPONSE";
- case RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM: return "STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM";
- case RIL_REQUEST_SCREEN_STATE: return "SCREEN_STATE";
- case RIL_REQUEST_EXPLICIT_CALL_TRANSFER: return "EXPLICIT_CALL_TRANSFER";
- case RIL_REQUEST_SET_LOCATION_UPDATES: return "SET_LOCATION_UPDATES";
- case RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE:return"CDMA_SET_SUBSCRIPTION_SOURCE";
- case RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE:return"CDMA_SET_ROAMING_PREFERENCE";
- case RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE:return"CDMA_QUERY_ROAMING_PREFERENCE";
- case RIL_REQUEST_SET_TTY_MODE:return"SET_TTY_MODE";
- case RIL_REQUEST_QUERY_TTY_MODE:return"QUERY_TTY_MODE";
- case RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE";
- case RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE";
- case RIL_REQUEST_CDMA_FLASH:return"CDMA_FLASH";
- case RIL_REQUEST_CDMA_BURST_DTMF:return"CDMA_BURST_DTMF";
- case RIL_REQUEST_CDMA_SEND_SMS:return"CDMA_SEND_SMS";
- case RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE:return"CDMA_SMS_ACKNOWLEDGE";
- case RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG:return"GSM_GET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG:return"GSM_SET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION:return "GSM_SMS_BROADCAST_ACTIVATION";
- case RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG:return "CDMA_GET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG:return "CDMA_SET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION:return "CDMA_SMS_BROADCAST_ACTIVATION";
- case RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY: return"CDMA_VALIDATE_AND_WRITE_AKEY";
- case RIL_REQUEST_CDMA_SUBSCRIPTION: return"CDMA_SUBSCRIPTION";
- case RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM: return "CDMA_WRITE_SMS_TO_RUIM";
- case RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM: return "CDMA_DELETE_SMS_ON_RUIM";
- case RIL_REQUEST_DEVICE_IDENTITY: return "DEVICE_IDENTITY";
- case RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE: return "EXIT_EMERGENCY_CALLBACK_MODE";
- case RIL_REQUEST_GET_SMSC_ADDRESS: return "GET_SMSC_ADDRESS";
- case RIL_REQUEST_SET_SMSC_ADDRESS: return "SET_SMSC_ADDRESS";
- case RIL_REQUEST_REPORT_SMS_MEMORY_STATUS: return "REPORT_SMS_MEMORY_STATUS";
- case RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING: return "REPORT_STK_SERVICE_IS_RUNNING";
- case RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE: return "CDMA_GET_SUBSCRIPTION_SOURCE";
- case RIL_REQUEST_ISIM_AUTHENTICATION: return "ISIM_AUTHENTICATION";
- case RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU: return "RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU";
- case RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS: return "RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS";
- case RIL_REQUEST_VOICE_RADIO_TECH: return "VOICE_RADIO_TECH";
- case RIL_REQUEST_GET_CELL_INFO_LIST: return"GET_CELL_INFO_LIST";
- case RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE: return"SET_UNSOL_CELL_INFO_LIST_RATE";
- case RIL_REQUEST_SET_INITIAL_ATTACH_APN: return "RIL_REQUEST_SET_INITIAL_ATTACH_APN";
- case RIL_REQUEST_IMS_REGISTRATION_STATE: return "IMS_REGISTRATION_STATE";
- case RIL_REQUEST_IMS_SEND_SMS: return "IMS_SEND_SMS";
- case RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC: return "SIM_TRANSMIT_APDU_BASIC";
- case RIL_REQUEST_SIM_OPEN_CHANNEL: return "SIM_OPEN_CHANNEL";
- case RIL_REQUEST_SIM_CLOSE_CHANNEL: return "SIM_CLOSE_CHANNEL";
- case RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL: return "SIM_TRANSMIT_APDU_CHANNEL";
- case RIL_REQUEST_GET_RADIO_CAPABILITY: return "RIL_REQUEST_GET_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_RADIO_CAPABILITY: return "RIL_REQUEST_SET_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_UICC_SUBSCRIPTION: return "SET_UICC_SUBSCRIPTION";
- case RIL_REQUEST_ALLOW_DATA: return "ALLOW_DATA";
- case RIL_REQUEST_GET_HARDWARE_CONFIG: return "GET_HARDWARE_CONFIG";
- case RIL_REQUEST_SIM_AUTHENTICATION: return "SIM_AUTHENTICATION";
- case RIL_REQUEST_GET_DC_RT_INFO: return "GET_DC_RT_INFO";
- case RIL_REQUEST_SET_DC_RT_INFO_RATE: return "SET_DC_RT_INFO_RATE";
- case RIL_REQUEST_SET_DATA_PROFILE: return "SET_DATA_PROFILE";
- case RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED: return "UNSOL_RESPONSE_RADIO_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED: return "UNSOL_RESPONSE_CALL_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_PS_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_NEW_SMS: return "UNSOL_RESPONSE_NEW_SMS";
- case RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT: return "UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT";
- case RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM: return "UNSOL_RESPONSE_NEW_SMS_ON_SIM";
- case RIL_UNSOL_ON_USSD: return "UNSOL_ON_USSD";
- case RIL_UNSOL_ON_USSD_REQUEST: return "UNSOL_ON_USSD_REQUEST(obsolete)";
- case RIL_UNSOL_NITZ_TIME_RECEIVED: return "UNSOL_NITZ_TIME_RECEIVED";
- case RIL_UNSOL_SIGNAL_STRENGTH: return "UNSOL_SIGNAL_STRENGTH";
- case RIL_UNSOL_STK_SESSION_END: return "UNSOL_STK_SESSION_END";
- case RIL_UNSOL_STK_PROACTIVE_COMMAND: return "UNSOL_STK_PROACTIVE_COMMAND";
- case RIL_UNSOL_STK_EVENT_NOTIFY: return "UNSOL_STK_EVENT_NOTIFY";
- case RIL_UNSOL_STK_CALL_SETUP: return "UNSOL_STK_CALL_SETUP";
- case RIL_UNSOL_SIM_SMS_STORAGE_FULL: return "UNSOL_SIM_SMS_STORAGE_FUL";
- case RIL_UNSOL_SIM_REFRESH: return "UNSOL_SIM_REFRESH";
- case RIL_UNSOL_DATA_CALL_LIST_CHANGED: return "UNSOL_DATA_CALL_LIST_CHANGED";
- case RIL_UNSOL_CALL_RING: return "UNSOL_CALL_RING";
- case RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED: return "UNSOL_RESPONSE_SIM_STATUS_CHANGED";
- case RIL_UNSOL_RESPONSE_CDMA_NEW_SMS: return "UNSOL_NEW_CDMA_SMS";
- case RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS: return "UNSOL_NEW_BROADCAST_SMS";
- case RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL: return "UNSOL_CDMA_RUIM_SMS_STORAGE_FULL";
- case RIL_UNSOL_RESTRICTED_STATE_CHANGED: return "UNSOL_RESTRICTED_STATE_CHANGED";
- case RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE: return "UNSOL_ENTER_EMERGENCY_CALLBACK_MODE";
- case RIL_UNSOL_CDMA_CALL_WAITING: return "UNSOL_CDMA_CALL_WAITING";
- case RIL_UNSOL_CDMA_OTA_PROVISION_STATUS: return "UNSOL_CDMA_OTA_PROVISION_STATUS";
- case RIL_UNSOL_CDMA_INFO_REC: return "UNSOL_CDMA_INFO_REC";
- case RIL_UNSOL_OEM_HOOK_RAW: return "UNSOL_OEM_HOOK_RAW";
- case RIL_UNSOL_RINGBACK_TONE: return "UNSOL_RINGBACK_TONE";
- case RIL_UNSOL_RESEND_INCALL_MUTE: return "UNSOL_RESEND_INCALL_MUTE";
- case RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED: return "UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED";
- case RIL_UNSOL_CDMA_PRL_CHANGED: return "UNSOL_CDMA_PRL_CHANGED";
- case RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE: return "UNSOL_EXIT_EMERGENCY_CALLBACK_MODE";
- case RIL_UNSOL_RIL_CONNECTED: return "UNSOL_RIL_CONNECTED";
- case RIL_UNSOL_VOICE_RADIO_TECH_CHANGED: return "UNSOL_VOICE_RADIO_TECH_CHANGED";
- case RIL_UNSOL_CELL_INFO_LIST: return "UNSOL_CELL_INFO_LIST";
- case RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED: return "RESPONSE_IMS_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED: return "UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED";
- case RIL_UNSOL_SRVCC_STATE_NOTIFY: return "UNSOL_SRVCC_STATE_NOTIFY";
- case RIL_UNSOL_HARDWARE_CONFIG_CHANGED: return "HARDWARE_CONFIG_CHANGED";
- case RIL_UNSOL_DC_RT_INFO_CHANGED: return "UNSOL_DC_RT_INFO_CHANGED";
- case RIL_REQUEST_SHUTDOWN: return "SHUTDOWN";
- case RIL_UNSOL_RADIO_CAPABILITY: return "RIL_UNSOL_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_TRM: return "RIL_REQUEST_SET_TRM";
- case RIL_REQUEST_SET_IMS_ENABLE:return "RIL_REQUEST_SET_IMS_ENABLE";
- case RIL_REQUEST_SET_AUDIO_PATH: return "SET_AUDIO_PATH";
- case RIL_REQUEST_HANGUP_ALL: return "HANGUP_ALL";
- case RIL_REQUEST_FORCE_RELEASE_CALL: return "FORCE_RELEASE_CALL";
- case RIL_REQUEST_EMERGENCY_DIAL: return "RIL_REQUEST_EMERGENCY_DIAL";
- case RIL_REQUEST_SET_ECC_SERVICE_CATEGORY: return "RIL_REQUEST_SET_ECC_SERVICE_CATEGORY";
- case RIL_REQUEST_SET_ECC_LIST: return "RIL_REQUEST_SET_ECC_LIST";
- case RIL_REQUEST_AT_COMMAND_WITH_PROXY: return "AT_COMMAND_WITH_PROXY";
- case RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION: return "RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION";
- case RIL_REQUEST_SET_CLIP: return "RIL_REQUEST_SET_CLIP";
- case RIL_REQUEST_GET_COLP: return "RIL_REQUEST_GET_COLP";
- case RIL_REQUEST_SET_COLP: return "RIL_REQUEST_SET_COLP";
- case RIL_REQUEST_GET_COLR: return "RIL_REQUEST_GET_COLR";
- case RIL_REQUEST_ADD_IMS_CONFERENCE_CALL_MEMBER: return "ADD_IMS_CONFERENCE_CALL_MEMBER";
- case RIL_REQUEST_REMOVE_IMS_CONFERENCE_CALL_MEMBER: return "REMOVE_IMS_CONFERENCE_CALL_MEMBER";
- case RIL_REQUEST_CONFERENCE_DIAL: return "CONFERENCE_DIAL";
- case RIL_REQUEST_DIAL_WITH_SIP_URI: return "DIAL_WITH_SIP_URI";
- case RIL_REQUEST_HOLD_CALL: return "HOLD_CALL";
- case RIL_REQUEST_RESUME_CALL: return "RESUME_CALL";
- case RIL_UNSOL_ECONF_SRVCC_INDICATION : return "ECONF_SRVCC_INDICATION";
- case RIL_UNSOL_ECONF_RESULT_INDICATION : return "ECONF_RESULT_INDICATION";
- case RIL_UNSOL_MAL_AT_INFO : return "UNSOL_MAL_AT_INFO";
- case RIL_REQUEST_MODEM_POWEROFF: return "MODEM_POWEROFF";
- case RIL_REQUEST_MODEM_POWERON: return "MODEM_POWERON";
- case RIL_REQUEST_WRITE_SMS_TO_SIM: return "WRITE_SMS_TO_SIM";
- case RIL_REQUEST_QUERY_ICCID: return "RIL_REQUEST_QUERY_ICCID";
- case RIL_UNSOL_TX_POWER: return "RIL_UNSOL_TX_POWER";
- case RIL_UNSOL_NETWORK_INFO: return "RIL_UNSOL_NETWORK_INFO";
- case RIL_REQUEST_DELETE_SMS_ON_SIM: return "DELETE_SMS_ON_SIM";
- case RIL_REQUEST_SET_IMSCFG: return "RIL_REQUEST_SET_IMSCFG";
-#ifdef ECALL_SUPPORT
- case RIL_REQUEST_ECALL_FAST_MAKE_ECALL: return "ECALL_FAST_MAKE_ECALL";
- case RIL_REQUEST_ECALL_SET_IVS: return "RIL_REQUEST_ECALL_SET_IVS";
- case RIL_REQUEST_ECALL_SET_PSAP: return "RIL_REQUEST_ECALL_SET_PSAP";
- case RIL_REQUEST_ECALL_MAKE_ECALL: return "RIL_REQUEST_ECALL_MAKE_ECALL";
- case RIL_REQUEST_ECALL_IVS_PUSH_MSD: return "RIL_REQUEST_ECALL_IVS_PUSH_MSD";
- case RIL_REQUEST_ECALL_PSAP_PULL_MSD: return "RIL_REQUEST_ECALL_PSAP_PULL_MSD";
- case RIL_UNSOL_ECALL_MSDHACK : return "ECALL_MSDHACK";
- case RIL_REQUEST_ECALL_SET_MSD: return "RIL_REQUEST_ECALL_SET_MSD";
- case RIL_REQUEST_ECALL_CTRL_SEQUENCE: return "ECALL_SET_CTRL_SEQUENCE";
- case RIL_UNSOL_ECALL_INDICATIONS : return "ECALL_INDICATIONS";
- case RIL_REQUEST_ECALL_RESET_IVS: return "RIL_REQUEST_ECALL_RESET_IVS";
- case RIL_REQUEST_ECALL_SET_PRI: return "RIL_REQUEST_ECALL_SET_PRI";
- case RIL_REQUEST_ECALL_SET_TEST_NUM: return "RIL_REQUEST_ECALL_SET_TEST_NUM";
- case RIL_REQUEST_ECALL_SET_RECONF_NUM: return "RIL_REQUEST_ECALL_SET_RECONF_NUM";
- case RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD: return "RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD";
- case RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME: return "RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME";
- case RIL_REQUEST_ECALL_SET_REGISTRATION_STATE: return "RIL_REQUEST_ECALL_SET_REGISTRATION_STATE";
-#endif /*ECALL_SUPPORT*/
-#ifdef KEEP_ALIVE
- case RIL_REQUEST_START_KEEPALIVE_PRO: return "RIL_REQUEST_START_KEEPALIVE_PRO";
- case RIL_REQUEST_STOP_KEEPALIVE_PRO: return "RIL_REQUEST_STOP_KEEPALIVE_PRO";
- case RIL_UNSOL_KEEPALIVE_STATUS_PRO: return "RIL_UNSOL_KEEPALIVE_STATUS_PRO";
-#endif /*KEEP_ALIVE*/
- case RIL_REQUEST_SEND_USSI: return "SEND_USSI";
- case RIL_REQUEST_CANCEL_USSI: return "CANCEL_USSI";
- case RIL_REQUEST_GET_SMS_SIM_MEM_STATUS: return "GET_SMS_SIM_MEM_STATUS";
- case RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR: return "RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR";
- case RIL_REQUEST_REPORT_AIRPLANE_MODE: return "RIL_REQUEST_REPORT_AIRPLANE_MODE";
- case RIL_REQUEST_SET_ECC_NUM: return "RIL_REQUEST_SET_ECC_NUM";
- case RIL_REQUEST_GET_ECC_NUM: return "RIL_REQUEST_GET_ECC_NUM";
- case RIL_UNSOL_ECC_NUM: return "RIL_UNSOL_ECC_NUM";
- case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT: return "RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT";
- case RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE";
- case RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE";
- case RIL_UNSOL_CALL_INFO_INDICATION: return "RIL_UNSOL_CALL_INFO_INDICATION";
- case RIL_REQUEST_MODIFY_APN: return "RIL_REQUEST_MODIFY_APN";
- case RIL_REQUEST_RESET_APN: return "RIL_REQUEST_RESET_APN";
- case RIL_REQUEST_QUERY_SIM_RETRY_COUNT: return "RIL_REQUEST_QUERY_SIM_RETRY_COUNT";
- case RIL_REQUEST_QUERY_EID: return "RIL_REQUEST_QUERY_EID";
- case LYNQ_REQUEST_SET_DTMF_VOLUME: return "RIL_REQUEST_SET_DTMF_VOLUME";
- case LYNQ_REQUEST_SET_SPEECH_VOLUME: return "RIL_REQUEST_SET_SPEECH_VOLUME";
- case LYNQ_REQUEST_GET_SPEECH_VOLUME: return "RIL_REQUEST_GET_SPEECH_VOLUME";
- case LYNQ_REQUEST_RECORD: return "RIL_REQUEST_RECORD";
- /*warren add for t800 ril service 2022/1/22 start*/
- case LYNQ_REQUEST_WRITE_SMS_TO_MEMORY: return "LYNQ_REQUEST_WRITE_SMS_TO_MEMORY";
- case LYNQ_REQUEST_READ_SMS_FROM_MEMORY: return "LYNQ_REQUEST_READ_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY: return "LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_LIST_SMS_FROM_MEMORY: return "LYNQ_REQUEST_LIST_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_SET_DEFAULT_SIM_ALL:return "SET_DEFAULT_SIM_ALL";
- case LYNQ_REQUEST_CHANGE_SCREEN_STATE:return "LYNQ_REQUEST_CHANGE_SCREEN_STATE";/*jb.qi add for two sim sleep 2022/9/19*/
- case LYNQ_REQUEST_CHANGE_RADIO:return "LYNQ_REQUEST_CHANGE_RADIO";/*lei add for factory test of sleep 2022/9/19*/
+ case LYNQ_REQUEST_SET_VOICE_AUDIO_MODE:return "LYNQ_REQUEST_SET_VOICE_AUDIO_MODE";
+ case LYNQ_REQUEST_SET_REMOTE_RTP_IP:return "LYNQ_REQUEST_SET_REMOTE_RTP_IP";
+ case LYNQ_REQUEST_SET_VLAN_INFO:return "LYNQ_REQUEST_SET_VLAN_INFO";
+ case LYNQ_REQUEST_SET_RTP_PORT:return "LYNQ_REQUEST_SET_RTP_PORT";
+ case LYNQ_REQUEST_SET_RTP_PARAM:return "LYNQ_REQUEST_SET_RTP_PARAM";
+ case LYNQ_REQUEST_GET_VOICE_AUDIO_MODE:return "LYNQ_REQUEST_GET_VOICE_AUDIO_MODE";
+ case LYNQ_REQUEST_GET_REMOTE_RTP_IP:return "LYNQ_REQUEST_GET_REMOTE_RTP_IP";
+ case LYNQ_REQUEST_GET_VLAN_INFO:return "LYNQ_REQUEST_GET_VLAN_INFO";
+ case LYNQ_REQUEST_GET_RTP_PORT:return "LYNQ_REQUEST_GET_RTP_PORT";
+ case LYNQ_REQUEST_GET_RTP_PARAM:return "LYNQ_REQUEST_GET_RTP_PARAM";
+ case LYNQ_REQUEST_SET_CALL_RTP_SSRC:return "LYNQ_REQUEST_SET_CALL_RTP_SSRC";
+ case LYNQ_REQUEST_GET_CALL_RTP_SSRC:return "LYNQ_REQUEST_GET_CALL_RTP_SSRC";
/*warren add for t800 ril service 2022/1/22 end*/
default: return "<unknown request>";
}
@@ -5593,6 +5337,8 @@
mbtk_netled_init();
#endif
mixer_init();
+ lynq_init_rtp();
+
if(utils::is_support_dsds()) {
for(int i = 0; i < 2 ; i++) {
init(i);
@@ -5602,7 +5348,7 @@
if(utils::is_suppport_dsss()) {
int id = Phone_utils::get_enable_sim_for_dsss();
init(id);
- }
+ }
}
diff --git a/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp.cpp b/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp.cpp
new file mode 100755
index 0000000..af38e3d
--- /dev/null
+++ b/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp.cpp
@@ -0,0 +1,766 @@
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <arpa/inet.h>
+#include <fcntl.h>
+#include <string.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <binder/Parcel.h>
+#include <log/log.h>
+#include <cutils/jstring.h>
+#include <pthread.h>
+#include "liblog/lynq_deflog.h"
+#include <sys/time.h>
+#include <string.h>
+//#include "lynq_call.h"
+//#include "lynq_module_common.h"
+//#include "lynq_call_common.h"
+#include "common.h"
+#include "call_rtp.h"
+#include "call_rtp_inner.h"
+#include "lynq_interface.h"
+#include "ecall/eCall.h"
+#include "cc.h"
+
+#undef LOG_TAG
+#define LOG_TAG "ECALL_RTP"
+
+static lynq_rtp_client_info g_rtp_client_info;
+static lynq_rtp_server_info g_rtp_server_info;
+
+static pthread_t g_rtp_thread[RTP_MODE_MAX];
+static bool g_rtp_thread_valid[RTP_MODE_MAX]={0};
+
+static pthread_mutex_t mtx = PTHREAD_MUTEX_INITIALIZER;
+
+int lock_rtp_audio_mtx()
+{
+ return pthread_mutex_lock(&mtx);
+}
+
+int unlock_rtp_audio_mtx()
+{
+ return pthread_mutex_unlock(&mtx);
+}
+
+
+int set_voice_audio_mode(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ android::Parcel p;
+ int setValue = 0;
+
+ if(argc < 2) {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_VOICE_AUDIO_MODE,0,2);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ RLOGW("%s fail! argc is %d",__FUNCTION__,argc);
+ return -1;
+ }
+
+ setValue = atoi(argv[1]);
+ RLOGD("%s %d start",__FUNCTION__,setValue);
+ if(setValue < AUDIO_MODE_CODEC || setValue > AUDIO_MODE_RTP ) {
+ RLOGW("Warning: parameter %d is over-range!",setValue);
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_VOICE_AUDIO_MODE,0,3);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ return -1;
+ }
+
+ int s = lock_rtp_audio_mtx();
+ if(s != 0) {
+ RLOGE("%s lock_rtp_audio_mtx fail",__FUNCTION__);
+ }
+
+ int old_EcallAudioPath = isEcallAudioPath();
+
+ setEcallAudioPathOn_New(setValue==AUDIO_MODE_CODEC);
+
+ if((get_call_status() == CALL_ON) && getSpeechStatus() == NORMAL_SPEECH_ON)
+ {
+ if(isEcallAudioPath()!=old_EcallAudioPath)
+ {
+ RLOGD("%s, change mode in real time",__FUNCTION__);
+ if(exe_set_voice_audio_mode((isEcallAudioPath())? AUDIO_MODE_CODEC:AUDIO_MODE_RTP)!=RESULT_OK)
+ {
+ setEcallAudioPathOn_New(old_EcallAudioPath);
+ s = unlock_rtp_audio_mtx();
+ if(s != 0) {
+ RLOGE("%s, unlock_rtp_audio_mtx fail",__FUNCTION__);
+ }
+
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_VOICE_AUDIO_MODE,0,5);
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_ERROR;
+ }
+ }
+ }
+
+ s = unlock_rtp_audio_mtx();
+ if(s != 0) {
+ RLOGE("%s, unlock_rtp_audio_mtx fail",__FUNCTION__);
+ }
+
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_VOICE_AUDIO_MODE,0,0);
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ RLOGD("%s %d finish",__FUNCTION__,setValue);
+ return RESULT_OK;
+}
+
+int set_remote_rtp_ip(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ RLOGD("%s start!",__FUNCTION__);
+ android::Parcel p;
+
+ if(argc < 2) {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_REMOTE_RTP_IP,0,2);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ RLOGW("Warning: no %s!",__FUNCTION__);
+ return -1;
+ }
+
+ if(exe_set_remote_rtp_ip(argv[1],strlen(argv[1])+1)==RESULT_OK)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_REMOTE_RTP_IP,0,0);
+ RLOGD(">>>>%s<<<< success value is %s!\n", __FUNCTION__, argv[1]);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_REMOTE_RTP_IP,0,4);
+ RLOGD(">>>>%s <<<< failure value is %s!\n",__FUNCTION__, argv[1]);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_OK;
+}
+int set_vlan_info(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ RLOGD("%s start!",__FUNCTION__);
+ android::Parcel p;
+
+ if(argc < 2)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_VLAN_INFO,0,2);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ RLOGW("Warning: no %s!",__FUNCTION__);
+ return -1;
+ }
+
+ if(exe_set_vlan_info(argv[1],strlen(argv[1])+1)==RESULT_OK)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_VLAN_INFO,0,0);
+ RLOGD(">>>>%s<<<< success value is %s!\n", __FUNCTION__, argv[1]);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_VLAN_INFO,0,4);
+ RLOGE(">>>>%s <<<< failure value is %s!\n",__FUNCTION__, argv[1]);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_OK;
+}
+
+int set_rtp_port(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ RLOGD("%s start!",__FUNCTION__);
+ android::Parcel p;
+
+ if(argc < 3)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_RTP_PORT,0,2);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ RLOGW("Warning: no %s!",__FUNCTION__);
+ return -1;
+ }
+
+ if(exe_set_rtp_port((LYNQ_Rtp_Mode)(atoi(argv[1])),atoi(argv[2])==RESULT_OK))
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_RTP_PORT,0,0);
+ RLOGD(">>>>%s<<<< success value is %s %s!\n", __FUNCTION__, argv[1],argv[2]);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_RTP_PORT,0,4);
+ RLOGE(">>>>%s <<<< failure value is %s %s!\n",__FUNCTION__, argv[1],argv[2]);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+
+ return RESULT_OK;
+}
+
+
+int set_rtp_param(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ RLOGD("%s start!",__FUNCTION__);
+ android::Parcel p;
+
+ if(argc < 4) {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_RTP_PARAM,0,2);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ RLOGW("Warning: no %s!",__FUNCTION__);
+ return -1;
+ }
+
+ if(exe_set_rtp_param(atoi(argv[1]),atoi(argv[2]),atoi(argv[3])))
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_RTP_PARAM,0,0);
+ RLOGD(">>>>%s<<<< success value is %s %s %s!\n", __FUNCTION__, argv[1],argv[2],argv[3]);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_RTP_PARAM,0,4);
+ RLOGE(">>>>%s <<<< failure value is %s %s %s!\n",__FUNCTION__, argv[1],argv[2],argv[3]);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+
+ return RESULT_OK;
+}
+
+int set_call_rtp_ssrc(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ RLOGD("%s start!",__FUNCTION__);
+ android::Parcel p;
+
+ if(argc < 3) {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_CALL_RTP_SSRC,0,2);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ RLOGW("Warning: no %s!",__FUNCTION__);
+ return -1;
+ }
+
+ if(exe_set_call_rtp_ssrc(atoi(argv[1]),strtoul(argv[2],0,0))==RESULT_OK)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_CALL_RTP_SSRC,0,0);
+ RLOGD(">>>>%s<<<< success value is %s %s!\n", __FUNCTION__, argv[1],argv[2]);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_CALL_RTP_SSRC,0,4);
+ RLOGE(">>>>%s <<<< failure value is %s %s!\n",__FUNCTION__, argv[1],argv[2]);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+
+ return RESULT_OK;
+}
+
+
+int get_voice_audio_mode(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ android::Parcel p;
+ int mode = exe_get_voice_audio_mode();
+
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_VOICE_AUDIO_MODE,0,0);
+
+ p.writeInt32(mode);
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_OK;
+}
+
+int get_remote_rtp_ip(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ char rtp_ip[MAX_VLAN_INFO_LENGTH]={0};
+
+ android::Parcel p;
+ if(exe_get_remote_rtp_ip(rtp_ip,MAX_IP_LENGTH)==RESULT_OK)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_REMOTE_RTP_IP,0,0);
+ p.writeInt32(1);
+ android::writeStringToParcel(p,rtp_ip);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_REMOTE_RTP_IP,0,2);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_OK;
+}
+
+int get_vlan_info(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ char vlan_info[MAX_VLAN_INFO_LENGTH]={0};
+
+ android::Parcel p;
+ if(exe_get_vlan_info(vlan_info,MAX_VLAN_INFO_LENGTH)==RESULT_OK)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_VLAN_INFO,0,0);
+ p.writeInt32(1);
+ android::writeStringToParcel(p,vlan_info);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_VLAN_INFO,0,2);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_OK;
+}
+
+int get_rtp_port(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ int rtp_port;
+ android::Parcel p;
+
+
+ if(argc < 2) {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_SET_RTP_PORT,0,2);
+ android::LYNQ_RIL_respSocket_sp(p,pRI);
+ free(pRI);
+ RLOGW("Warning: no %s!",__FUNCTION__);
+ return RESULT_ERROR;
+ }
+ if(exe_get_rtp_port((LYNQ_Rtp_Mode) (atoi(argv[1])),&rtp_port)==RESULT_OK)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_VLAN_INFO,0,0);
+ p.writeInt32(rtp_port);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_VLAN_INFO,0,3);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_OK;
+}
+
+int get_rtp_param(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ int clock_rate, channels, latency;
+ android::Parcel p;
+
+ if(exe_get_rtp_param(&clock_rate, &channels, &latency)==RESULT_OK)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_RTP_PARAM,0,0);
+ p.writeInt32(clock_rate);
+ p.writeInt32(channels);
+ p.writeInt32(latency);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_RTP_PARAM,0,2);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_OK;
+}
+
+int get_call_rtp_ssrc(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI)
+{
+ android::Parcel p;
+
+ int ssrc_mode;
+ unsigned int ssrc;
+
+ if(exe_get_call_rtp_ssrc(&ssrc_mode, &ssrc)==RESULT_OK)
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_CALL_RTP_SSRC,0,0);
+ p.writeInt32(ssrc_mode);
+ p.writeUint32(ssrc);
+ }
+ else
+ {
+ android::lynqAssemblyParcelheader(p,socket_id,pRI->uToken,LYNQ_REQUEST_GET_CALL_RTP_SSRC,0,2);
+ }
+
+ android::LYNQ_RIL_respSocket(p,(void *)pRI);
+ free(pRI);
+ return RESULT_OK;
+}
+
+
+void lynq_init_rtp()
+{
+ memset(&g_rtp_client_info,0,sizeof(g_rtp_client_info));
+ memset(&g_rtp_server_info,0,sizeof(g_rtp_server_info));
+
+
+ exe_set_rtp_param(8000,1,400);
+
+ for(int i=0;i<RTP_MODE_MAX;i++)
+ {
+ exe_set_rtp_port((LYNQ_Rtp_Mode)i,6666);
+ g_rtp_thread_valid[i] = 0;
+ }
+
+ exe_set_voice_audio_mode(AUDIO_MODE_INIT);
+
+ RLOGD("lynq init rtp success!!!");
+ return;
+}
+
+/*Audio Path setting begin*/
+/*sub function*/
+void exe_set_rtp_mixer_ctrl(int audio_mode)
+{
+ char cmd[256];
+ RLOGD("set_rtp_mixer_ctrl, audio mode is %d", audio_mode);
+ if(audio_mode==AUDIO_MODE_RTP)
+ {
+ sprintf(cmd, "amixer -D mtk_phonecall cset name=\"Speech_on_ecall\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -D mtk_phonecall cset name=\"M2M_Speech_on\" %d", 1);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH1 DL2_CH1\" %d", 1);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH2 DL2_CH2\" %d", 1);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"UL2_CH1 PCM_2_CAP_CH1\" %d", 1);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"UL2_CH2 PCM_2_CAP_CH1\" %d", 1);
+ system(cmd);
+ }
+ else if(audio_mode==AUDIO_MODE_CODEC)
+ {
+ sprintf(cmd, "amixer -D mtk_phonecall cset name=\"M2M_Speech_on\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH1 DL2_CH1\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH2 DL2_CH2\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"UL2_CH1 PCM_2_CAP_CH1\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"UL2_CH2 PCM_2_CAP_CH1\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -D mtk_phonecall cset name=\"Speech_on_ecall\" %d", 1);
+ system(cmd);
+ }
+ else
+ {
+ if(audio_mode==AUDIO_MODE_INIT)
+ {
+ sprintf(cmd, "amixer -D mtk_phonecall cset name=\"Speech_on\" %d", 0);
+ system(cmd);
+ }
+ sprintf(cmd, "amixer -D mtk_phonecall cset name=\"Speech_on_ecall\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -D mtk_phonecall cset name=\"M2M_Speech_on\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH1 DL2_CH1\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH2 DL2_CH2\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"UL2_CH1 PCM_2_CAP_CH1\" %d", 0);
+ system(cmd);
+ sprintf(cmd, "amixer -c0 cset name=\"UL2_CH2 PCM_2_CAP_CH1\" %d", 0);
+ system(cmd);
+ }
+}
+
+static int record_count=0;
+void* exe_start_rtp_cmd(void *arg)
+{
+ int* rtp_mode= (int*) arg;
+ char cmd[384];
+ char vlan_para_string[sizeof(RTP_VLAN_INFO_FORMAT)+MAX_VLAN_INFO_LENGTH-2/*sizeof "%s"*/]={0};
+ char ssrc_para_string[sizeof(RTP_SSRC_INFO_FORMAT)+MAX_SSRC_INFO_LENGTH-2/*sizeof "%u"*/]={0};
+ RLOGD("exe_start_rtp_cmd: rtp_mode is %d",(*rtp_mode));
+ if ((*rtp_mode) == RTP_CLIENT)
+ {
+ if(g_ril_test==RIL_STUB_TEST_SWTICH_RTP_RECORD)
+ {
+ system("sleep 30");
+ }
+ else
+ {
+ sprintf(cmd,RTP_FROM_CMD, \
+ g_rtp_client_info.port,g_rtp_client_info.clockrate,g_rtp_client_info.channels, \
+ g_rtp_client_info.latency);
+ RLOGD("start from rtp play: cmd is %s",cmd);
+ system(cmd);
+ }
+ }
+ else if ((*rtp_mode) == RTP_SERVER)
+ {
+ if(g_ril_test==RIL_STUB_TEST_SWTICH_RTP_RECORD)
+ {
+ const char* record_fmt="arecord -D hw:0,6 -c 2 -d 10 -r 32000 -f S16_LE --period-size=1280 --buffer-size=5120 /data/record_%d.wav";
+ sprintf(cmd,record_fmt,record_count);
+ RLOGD("start to rtp play: cmd is %s",cmd);
+ record_count++;
+ system(cmd);
+ }
+ else
+ {
+ if(strlen(g_rtp_server_info.vlan_info)>0)
+ {
+ sprintf(vlan_para_string,RTP_VLAN_INFO_FORMAT,g_rtp_server_info.vlan_info);
+ }
+
+ if(g_rtp_server_info.ssrc_mode == Rtp_Ssrc_specific)
+ {
+ sprintf(ssrc_para_string,RTP_SSRC_INFO_FORMAT,g_rtp_server_info.ssrc);
+ }
+ sprintf(cmd,RTP_TO_CMD, \
+ ssrc_para_string, g_rtp_server_info.ip,vlan_para_string,g_rtp_server_info.port);
+
+ RLOGD("start to rtp play: cmd is %s",cmd);
+ system(cmd);
+ }
+
+ }
+ return NULL;
+}
+
+int exe_start_rtp_thread(int rtp_mode)
+{
+ int ret;
+ pthread_attr_t attr;
+ static int start_mode[RTP_MODE_MAX]={0,1};
+
+ pthread_attr_init(&attr);
+ pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
+ ret = pthread_create(&(g_rtp_thread[rtp_mode]),&attr,exe_start_rtp_cmd,&(start_mode[rtp_mode]));
+ if(ret != 0)
+ {
+ g_rtp_thread_valid[rtp_mode]=0;
+ RLOGE("rtp create %d pthread error, ret is %d",rtp_mode, ret);
+ return ret;
+ }
+ g_rtp_thread_valid[rtp_mode]=1;
+ return RESULT_OK;
+}
+
+/*set*/
+int exe_set_voice_audio_mode(const LYNQ_Audio_Mode audio_mode)
+{
+ int ret;
+ int i;
+
+ RLOGD("%s %d",__FUNCTION__,audio_mode);
+ if(audio_mode==AUDIO_MODE_RTP)
+ {
+ exe_set_rtp_mixer_ctrl(audio_mode);
+ for(i=0;i<RTP_MODE_MAX;i++)
+ {
+ if(!g_rtp_thread_valid[i])
+ {
+ if(exe_start_rtp_thread(i)!= 0)
+ {
+ RLOGE("start rtp thread %d fail",i);
+ break;
+ }
+ else
+ {
+ RLOGD("start rtp thread %d suc",i);
+ }
+ }
+ else
+ {
+ RLOGE("rtp thread %d needn't start",i);
+ }
+ }
+ if(i!= RTP_MODE_MAX)
+ {
+ RLOGD("%s %d fail",__FUNCTION__,audio_mode);
+ exe_set_voice_audio_mode(AUDIO_MODE_CODEC);
+ return RESULT_ERROR;
+ }
+ }
+ else if(audio_mode==AUDIO_MODE_CODEC)
+ {
+ for(i=0;i<RTP_MODE_MAX;i++)
+ {
+ if(g_rtp_thread_valid[i])
+ {
+ ret = pthread_cancel(g_rtp_thread[i]);
+ RLOGD("pthread cancel rtp %d ret = %d",i,ret);
+ ret = pthread_join(g_rtp_thread[i],NULL);
+ RLOGD("pthread join rtp %d ret = %d",i,ret);
+ g_rtp_thread_valid[i] = 0;
+ }
+ else
+ {
+ RLOGD("rtp thread %d needn't stop",i);
+ }
+ }
+ exe_set_rtp_mixer_ctrl(audio_mode);
+ }
+ else // audio_mode==AUDIO_MODE_ALL_CLOSE /AUDIO_MODE_INIT
+ {
+ for(i=0;i<RTP_MODE_MAX;i++)
+ {
+ if(g_rtp_thread_valid[i])
+ {
+ ret = pthread_cancel(g_rtp_thread[i]);
+ RLOGD("pthread cancel rtp %d ret = %d",i,ret);
+ ret = pthread_join(g_rtp_thread[i],NULL);
+ RLOGD("pthread join rtp %d ret = %d",i,ret);
+ g_rtp_thread_valid[i] = 0;
+ }
+ else
+ {
+ RLOGD("rtp thread %d needn't stop",i);
+ }
+ }
+ exe_set_rtp_mixer_ctrl(audio_mode);
+ }
+ RLOGD("%s %d suc",__FUNCTION__,audio_mode);
+ return RESULT_OK;
+}
+int exe_set_remote_rtp_ip(const char* ip, const int ip_length)
+{
+ if (NULL == ip)
+ {
+ RLOGE("ip is NULL!!!");
+ return LYNQ_E_PARAMETER_ANONALY;
+ }
+ if ((ip_length < strlen(ip)+1) || (ip_length > MAX_IP_LENGTH))
+ {
+ RLOGE("incoming ip length error %d", ip_length);
+ return LYNQ_E_PARAMETER_ANONALY;
+ }
+
+ bzero(g_rtp_server_info.ip,MAX_IP_LENGTH);
+ strcpy(g_rtp_server_info.ip,ip);
+
+ RLOGD("exe_set_remote_rtp_ip suc: ip is %s, length is %d", ip,ip_length);
+
+ return RESULT_OK;
+}
+int exe_set_vlan_info(const char* vlan_info, const int vlan_info_length)
+{
+ if (NULL == vlan_info)
+ {
+ RLOGE("vlan_info is NULL!!!");
+ return LYNQ_E_PARAMETER_ANONALY;
+ }
+
+ if ((vlan_info_length < strlen(vlan_info)+1) || (vlan_info_length > MAX_VLAN_INFO_LENGTH))
+ {
+ RLOGE("incoming vlan_info error, vlan info length %d", vlan_info_length);
+ return LYNQ_E_PARAMETER_ANONALY;
+ }
+
+
+ bzero(g_rtp_server_info.vlan_info,MAX_VLAN_INFO_LENGTH);
+ strcpy(g_rtp_server_info.vlan_info,vlan_info);
+
+ RLOGD("exe_set_vlan_info suc: vlan is %s, length is %d", vlan_info,vlan_info_length);
+
+ return RESULT_OK;
+}
+int exe_set_rtp_port(const LYNQ_Rtp_Mode rtp_mode, const int port)
+{
+ if (port < 0)
+ {
+ RLOGE("invalid port number %d", port);
+ return LYNQ_E_PARAMETER_ANONALY;
+ }
+ if (rtp_mode == 0)
+ {
+ g_rtp_client_info.port = port;
+ }
+ else if (rtp_mode == 1)
+ {
+ g_rtp_server_info.port = port;
+ }
+ RLOGD("exe_set_rtp_port suc: LYNQ_Rtp_Mode is %d, port is %d", rtp_mode, port);
+ return RESULT_OK;
+}
+int exe_set_rtp_param(const int clock_rate,const int channels,const int latency) //only for client mode
+{
+ g_rtp_client_info.clockrate = clock_rate;
+ g_rtp_client_info.channels = channels;
+ g_rtp_client_info.latency = latency;
+ RLOGD("exe_set_rtp_param suc: clockrate is %d, channels is %d, latency is %d", clock_rate, channels, latency);
+ return RESULT_OK;
+}
+int exe_set_call_rtp_ssrc(const int ssrc_mode,const unsigned int ssrc)
+{
+ if(ssrc_mode < Rtp_Ssrc_random || ssrc_mode > Rtp_Ssrc_specific)
+ {
+ return LYNQ_E_PARAMETER_ANONALY;
+ }
+ g_rtp_server_info.ssrc_mode = ssrc_mode;
+ g_rtp_server_info.ssrc = ssrc ;
+ RLOGD("%s suc: param is %d %u", __func__, ssrc_mode, ssrc);
+ return RESULT_OK;
+}
+/*get*/
+LYNQ_Audio_Mode exe_get_voice_audio_mode()
+{
+ if(g_rtp_thread_valid[0])
+ {
+ return AUDIO_MODE_RTP;
+ }
+ else
+ {
+ return AUDIO_MODE_CODEC;
+ }
+}
+int exe_get_remote_rtp_ip(char* ip, const int ip_length)
+{
+ if(ip_length < strlen(g_rtp_server_info.ip)+1)
+ {
+ RLOGE("ip length %d is shorter than saved ip length %d",ip_length,strlen(g_rtp_server_info.ip)+1);
+ return LYNQ_E_PARAMETER_ANONALY;
+ }
+
+ bzero(ip,ip_length);
+ strcpy(ip,g_rtp_server_info.ip);
+
+ return RESULT_OK;
+}
+int exe_get_vlan_info(char* vlan_info, const int vlan_info_length)
+{
+ if(vlan_info_length < strlen(g_rtp_server_info.vlan_info)+1)
+ {
+ RLOGE("vlan info length %d is shorter than saved vlan info length %d",vlan_info_length,strlen(g_rtp_server_info.vlan_info)+1);
+ return LYNQ_E_PARAMETER_ANONALY;
+ }
+
+ bzero(vlan_info,vlan_info_length);
+ strcpy(vlan_info,g_rtp_server_info.vlan_info);
+
+ return RESULT_OK;
+}
+int exe_get_rtp_port(const LYNQ_Rtp_Mode rtp_mode, int* port)
+{
+ if (rtp_mode == 0)
+ {
+ *port = g_rtp_client_info.port;
+ }
+ else if (rtp_mode == 1)
+ {
+ *port = g_rtp_server_info.port;
+ }
+ return RESULT_OK;
+}
+int exe_get_rtp_param(int* clock_rate, int* channels, int* latency)//only for client mode
+{
+ *clock_rate = g_rtp_client_info.clockrate;
+ *channels = g_rtp_client_info.channels ;
+ *latency = g_rtp_client_info.latency;
+
+ return RESULT_OK;
+}
+int exe_get_call_rtp_ssrc(int* ssrc_mode, unsigned int* ssrc)
+{
+ *ssrc_mode = g_rtp_server_info.ssrc_mode;
+ *ssrc = g_rtp_server_info.ssrc ;
+
+ return RESULT_OK;
+}
diff --git a/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp.h b/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp.h
new file mode 100755
index 0000000..093d5ea
--- /dev/null
+++ b/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp.h
@@ -0,0 +1,30 @@
+#ifndef CALL_RTP_H
+#define CALL_RTP 1
+
+void lynq_init_rtp();
+int set_voice_audio_mode(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int set_remote_rtp_ip(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int set_vlan_info(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int set_rtp_port(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int set_rtp_param(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int set_call_rtp_ssrc(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int get_voice_audio_mode(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int get_remote_rtp_ip(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int get_vlan_info(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int get_rtp_port(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int get_rtp_param(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+int get_call_rtp_ssrc(int argc, char **argv, RIL_SOCKET_ID socket_id, RequestInfo *pRI);
+
+
+typedef enum{
+ AUDIO_MODE_CODEC = 0, /* Codec */
+ AUDIO_MODE_RTP, /* RTP */
+ AUDIO_MODE_INIT,
+ AUDIO_MODE_ALL_CLOSE,
+}LYNQ_Audio_Mode;
+int exe_set_voice_audio_mode(const LYNQ_Audio_Mode audio_mode);
+
+int lock_rtp_audio_mtx();
+int unlock_rtp_audio_mtx();
+
+#endif
diff --git a/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp_inner.h b/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp_inner.h
new file mode 100755
index 0000000..7e5614f
--- /dev/null
+++ b/src/lynq/framework/lynq-ril-service/src/rtp/call_rtp_inner.h
@@ -0,0 +1,69 @@
+#ifndef CALL_RTP_INNER_H
+#define CALL_RTP_INNER_H 1
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define MAX_IP_LENGTH 128
+#define MAX_VLAN_INFO_LENGTH 32
+#define MAX_SSRC_INFO_LENGTH 10 /*2^32=4294967296, 10 digit*/
+
+typedef enum{
+ RTP_CLIENT = 0,
+ RTP_SERVER =1,
+ RTP_MODE_MAX
+}LYNQ_Rtp_Mode;
+
+#define RTP_FROM_CMD "gst-launch-1.0 -v udpsrc port=%d caps=\'application/x-rtp, media=(string)audio, clock-rate=(int)%d, channels=(int)%d\' ! rtpjitterbuffer latency=%d ! rtppcmadepay ! alawdec ! alsasink device=\'hw:0,2\'"
+#define RTP_TO_CMD "gst-launch-1.0 -v alsasrc device=\'hw:0,6\' ! alawenc ! rtppcmapay ! %s udpsink host=%s %s auto-multicast=true port=%d"
+#define RTP_VLAN_INFO_FORMAT "multicast-iface=\"%s\""
+#define RTP_SSRC_INFO_FORMAT " rtpmux name=mux ssrc=%u !"
+
+#define USER_LOG_TAG "LYNQ_CALL"
+
+#define RESULT_OK (0)
+#define RESULT_ERROR (-1)
+#define LYNQ_E_PARAMETER_ANONALY 7000
+
+typedef enum{
+ Rtp_Ssrc_random = 0,
+ Rtp_Ssrc_specific =1,
+}LYNQ_Rtp_Ssrc_Mode;
+
+typedef struct
+{
+ char ip[MAX_IP_LENGTH];
+ int port;
+ int ssrc_mode;
+ unsigned int ssrc;
+ char vlan_info[MAX_VLAN_INFO_LENGTH];
+}lynq_rtp_server_info;
+
+typedef struct
+{
+ int port;
+ int clockrate;
+ int latency;
+ int channels;
+}lynq_rtp_client_info;
+
+/*set*/
+int exe_set_remote_rtp_ip(const char* ip, const int ip_length);
+int exe_set_vlan_info(const char* vlan_info, const int vlan_info_length);
+int exe_set_rtp_port(const LYNQ_Rtp_Mode rtp_mode, const int port);
+int exe_set_rtp_param(const int clock_rate,const int channels,const int latency); //only for client
+int exe_set_call_rtp_ssrc(const int ssrc_mode, const unsigned int ssrc);
+/*get*/
+LYNQ_Audio_Mode exe_get_voice_audio_mode();
+int exe_get_remote_rtp_ip(char* ip, const int ip_length);
+int exe_get_vlan_info(char* vlan_info, const int vlan_info_length);
+int exe_get_rtp_port(const LYNQ_Rtp_Mode rtp_mode, int* port);
+int exe_get_rtp_param(int* clock_rate,int* channels, int* latency);//only for client
+int exe_get_call_rtp_ssrc(int* ssrc_mod, unsigned int* ssrc);
+/*Audio Path setting end*/
+
+#ifdef __cplusplus
+}
+#endif
+#endif
diff --git a/src/lynq/lib/liblynq-at-factory/lynq_at_factory.cpp b/src/lynq/lib/liblynq-at-factory/lynq_at_factory.cpp
index f4cb966..c4b0375 100755
--- a/src/lynq/lib/liblynq-at-factory/lynq_at_factory.cpp
+++ b/src/lynq/lib/liblynq-at-factory/lynq_at_factory.cpp
@@ -1,8 +1,14 @@
-
-
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
+#include <sys/socket.h>
+#include <sys/time.h>
+#include <error.h>
+#include <string.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <net/if.h>
+#include <errno.h>
#include <log/log.h>
#include <liblog/lynq_deflog.h>
#include "include/libat/lynq_at_factory.h"
@@ -125,12 +131,43 @@
while(fgets(buf, sizeof(buf), fp) != NULL){
lynq_response_ok();
pclose(fp);
- return;
+ return;
}
lynq_response_error(100);
pclose(fp);
}
+static int set_all_gpio_status_and_check(int lynq_gpio_arr[], char status)
+{
+ int m =0;
+ FILE *fp;
+ char lynq_set_gpio_arr[256] = {0};
+ char lynq_get_gpio_state[512] = {0};
+ for(m = 0; m < 85; m++)
+ {
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"echo mode %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[m]);
+ system(lynq_set_gpio_arr);
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"echo out %d %c > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[m], status);
+ system(lynq_set_gpio_arr);
+ }
+
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio | grep 006");
+ fp=popen(lynq_set_gpio_arr, "r");
+ bzero(lynq_get_gpio_state, 512);
+ fgets(lynq_get_gpio_state,sizeof(lynq_get_gpio_state),fp);
+ pclose(fp);
+
+ if(lynq_get_gpio_state[7] != status)
+ {
+ return 1;
+ }
+ //usleep(10000);
+ return 0;
+}
+
void lynq_handle_gpio(char *input)
{
FILE *fp;
@@ -140,76 +177,134 @@
char lynq_show_gpio_state[64] = {0};
int lynq_gpio_low = 0;
int lynq_gpio_hig = 0;
- int i = 0,m = 0;
+ int lynq_gpio_test_env_error = 1;
+ int i = 0,m = 0,j = 0;
+ int need_int = 1;
int lynq_gpio_beta_state = 1;
-
- for(m = 0; m < 85; m++)
+ RLOGD("start function %s line %d input %s\n", __FUNCTION__, __LINE__, input);
+
+ for(i=0; i < 85; i++)
{
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"echo mode %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[m]);
- system(lynq_set_gpio_arr);
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"echo out %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[m]);
- system(lynq_set_gpio_arr);
- }
- for(i = 0; i < 85; i++)
- {
- lynq_gpio_low = 0;
- lynq_gpio_hig = 0;
-
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"echo mode %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
- system(lynq_set_gpio_arr);
-
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"echo out %d 1 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
- system(lynq_set_gpio_arr);
-
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio | grep 006");
- fp=popen(lynq_set_gpio_arr, "r");
- bzero(lynq_get_gpio_state, 512);
- fgets(lynq_get_gpio_state,sizeof(lynq_get_gpio_state),fp);
- pclose(fp);
- if(lynq_get_gpio_state[7] == '1')
+ for(j=0;j<3;j++)
{
- lynq_gpio_hig = 1;
- }
+ if (j > 0) // reset gpio when retry
+ {
+ need_int = 1;
+ }
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"echo out %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
- system(lynq_set_gpio_arr);
-
- bzero(lynq_set_gpio_arr, 256);
- sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio | grep 006");
- fp=popen(lynq_set_gpio_arr, "r");
- bzero(lynq_get_gpio_state, 512);
- fgets(lynq_get_gpio_state,sizeof(lynq_get_gpio_state),fp);
- pclose(fp);
- if(lynq_get_gpio_state[7] == '0')
+ if (need_int == 1)
+ {
+ if (set_all_gpio_status_and_check(lynq_gpio_arr, '0') != 0)
+ {
+ continue;
+ }
+ else
+ {
+ need_int = 0;
+ }
+ RLOGD("finsh peizhi function %s line %d input %s\n", __FUNCTION__, __LINE__, input);
+ }
+
+ lynq_gpio_low = 0;
+ lynq_gpio_hig = 0;
+
+ for(int n=0;n<3;n++)
+ {
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"echo mode %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
+ system(lynq_set_gpio_arr);
+
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"echo out %d 1 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
+ system(lynq_set_gpio_arr);
+
+
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio | grep 006");
+ fp=popen(lynq_set_gpio_arr, "r");
+ bzero(lynq_get_gpio_state, 512);
+ fgets(lynq_get_gpio_state,sizeof(lynq_get_gpio_state),fp);
+ pclose(fp);
+ if(lynq_get_gpio_state[7] == '1')
+ {
+ RLOGD("high function %s line %d input %s\n", __FUNCTION__, __LINE__, input);
+ lynq_gpio_hig = 1;
+ lynq_gpio_test_env_error = 0;
+ break;
+ }
+ else
+ {
+ RLOGD("high function %s line %d input %s num %d\n", __FUNCTION__, __LINE__, input,lynq_gpio_arr[i]);
+ if(i == 0 && j == 0)
+ {
+
+ lynq_gpio_test_env_error = set_all_gpio_status_and_check(lynq_gpio_arr, '1') == 0 ? 0 : 1;
+ }
+
+ }
+ }
+ if (lynq_gpio_test_env_error == 1)
+ break;
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"echo out %d 0 > /sys/devices/platform/10005000.pinctrl/mt_gpio",(char*)lynq_gpio_arr[i]);
+ system(lynq_set_gpio_arr);
+
+ bzero(lynq_set_gpio_arr, 256);
+ sprintf(lynq_set_gpio_arr,"cat /sys/devices/platform/10005000.pinctrl/mt_gpio | grep 006");
+ fp=popen(lynq_set_gpio_arr, "r");
+ bzero(lynq_get_gpio_state, 512);
+ fgets(lynq_get_gpio_state,sizeof(lynq_get_gpio_state),fp);
+ pclose(fp);
+ if(lynq_get_gpio_state[7] == '0')
+ {
+ RLOGI("*low function %s line %d input %s\n", __FUNCTION__, __LINE__, input);
+ lynq_gpio_low = 1;
+ }
+ else
+ {
+ RLOGD("low function fail %s line %d input %s num %d\n", __FUNCTION__, __LINE__, input,lynq_gpio_arr[i]);
+ }
+ bzero(lynq_show_gpio_state, 64);
+ if((lynq_gpio_low != 1) || (lynq_gpio_hig != 1))
+ {
+ RLOGD("fail function %s line %d input %s\n", __FUNCTION__, __LINE__, input);
+ }
+ else
+ {
+ RLOGD("success function %s line %d input %s\n", __FUNCTION__, __LINE__, input);
+ sprintf(lynq_show_gpio_state,"gpio%d\n",(char *)lynq_gpio_arr[i]);
+ handle_output(lynq_show_gpio_state, strlen(lynq_show_gpio_state), Response);
+ break; // do not retry when pass
+ }
+ } // for(j=0;j<3;j++)
+ if (lynq_gpio_test_env_error == 1)
{
- lynq_gpio_low = 1;
+ lynq_gpio_beta_state = 0;
+ break;
}
- bzero(lynq_show_gpio_state, 64);
- if((lynq_gpio_low != 1) || (lynq_gpio_hig != 1))
+ if (j >= 3 )
{
lynq_gpio_beta_state = 0;
sprintf(lynq_show_gpio_state,"[gpio%d][result]:FAIL \n",(char *)lynq_gpio_arr[i]);
handle_output(lynq_show_gpio_state, strlen(lynq_show_gpio_state), Response);
}
- else
- {
- sprintf(lynq_show_gpio_state,"gpio%d\n",(char *)lynq_gpio_arr[i]);
- handle_output(lynq_show_gpio_state, strlen(lynq_show_gpio_state), Response);
- }
+
+ } // for(i=0; i < 85; i++)
+
+ if(lynq_gpio_test_env_error == 1)
+ {
+ handle_output("tool error", strlen("tool error"), Response);
}
+
if(lynq_gpio_beta_state == 1)
{
+ RLOGD("total success function %s line %d input %s\n", __FUNCTION__, __LINE__, input);
lynq_response_ok();
}
else
{
+ RLOGD("total fail function %s line %d input %s\n", __FUNCTION__, __LINE__, input);
lynq_response_error(100);
}
}
@@ -233,6 +328,267 @@
}
}
+int receive_data(int fd,char *buf_send,char *buf_recv, int send_len)
+{
+ time_t time_start;
+ time_t time_end;
+ int ret = 0;
+ time_start=time(NULL);
+ for(int recv =0;recv <50;recv++)
+ {
+ bzero(buf_recv, send_len);
+ ret = recvfrom(fd,buf_recv,1024,0,NULL,NULL);
+ if(ret<0)
+ {
+ handle_output("time_out", strlen("time_out"), Response);
+ return -1;
+ }
+ else if (ret != send_len)
+ {
+ continue;
+ }
+
+ if(memcmp(buf_send,buf_recv, send_len))
+ {
+ time_end=time(NULL);
+ if(difftime(time_end,time_start)>2)
+ {
+ handle_output("time_out", strlen("time_out"), Response);
+ break;
+ }
+ }
+ else
+ {
+ return 0;
+ }
+ }
+ handle_output("can't receive correct data", strlen("can't receive correct data"), Response);
+ return -1;
+}
+
+int rsgmii_init()
+{
+ char lynq_set_rgmii_arr[256] = {0};
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"ifconfig eth1 | grep \"RUNNING\"");
+ if(system(lynq_set_rgmii_arr))
+ {
+ handle_output("Please checkout network_line", strlen("Please checkout network_line"), Response);
+ return -1;
+ }
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"ifconfig eth2 | grep \"RUNNING\"");
+ if(system(lynq_set_rgmii_arr))
+ {
+ handle_output("Please checkout network_line", strlen("Please checkout network_line"), Response);
+ return -1;
+ }
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"ifconfig eth1 192.168.11.1");
+ system(lynq_set_rgmii_arr);
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"ifconfig eth2 192.168.22.2");
+ system(lynq_set_rgmii_arr);
+
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"ifconfig eth1 | grep HWaddr | awk '{print \"ip n add 192.168.11.1 lladdr \"$5\" dev eth2\"}' | sh");
+ system(lynq_set_rgmii_arr);
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"ifconfig eth2 | grep HWaddr | awk '{print \"ip n add 192.168.22.2 lladdr \"$5\" dev eth1\"}' | sh");
+ system(lynq_set_rgmii_arr);
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"iptables -t nat -A POSTROUTING -s 192.168.22.2 -d 192.168.11.1 -j SNAT --to-source 192.168.22.44");
+ system(lynq_set_rgmii_arr);
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"iptables -t nat -A POSTROUTING -s 192.168.11.1 -d 192.168.22.2 -j SNAT --to-source 192.168.11.33");
+ system(lynq_set_rgmii_arr);
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"ifconfig eth1 | grep \"inet addr\" | grep \"192.168.11.1\"");
+ if(system(lynq_set_rgmii_arr))
+ {
+ return -1;
+ }
+
+ bzero(lynq_set_rgmii_arr, 256);
+ sprintf(lynq_set_rgmii_arr,"ifconfig eth2 | grep \"inet addr\" | grep \"192.168.22.2\"");
+ if(system(lynq_set_rgmii_arr))
+ {
+ return -1;
+ }
+ return 0;
+}
+
+
+int rsgmii_socket_init(struct sockaddr_in* server_addr, const char * eth_name, const char * ip_addr)
+{
+ int ser_socket = -1;
+ struct ifreq ser;
+ memset(&ser,0x00,sizeof(ser));
+ strncpy(ser.ifr_name,eth_name,strlen(eth_name));
+
+ server_addr->sin_family=AF_INET;
+ server_addr->sin_port = htons(100);
+ server_addr->sin_addr.s_addr = inet_addr(ip_addr);
+
+
+ ser_socket = socket(AF_INET,SOCK_DGRAM,0);
+ if (ser_socket<0)
+ {
+ return -1;
+ }
+
+ struct timeval timeout={1,0};
+ int ret;
+ ret = bind(ser_socket,(struct sockaddr*)server_addr,sizeof(*server_addr));
+ if(ret< 0)
+ {
+ close(ser_socket);
+ return -1;
+ }
+
+ ret = setsockopt(ser_socket,SOL_SOCKET,SO_BINDTODEVICE,(char *)&ser,sizeof(ser));
+ if(ret< 0)
+ {
+ close(ser_socket);
+ return -1;
+ }
+ ret = setsockopt(ser_socket,SOL_SOCKET,SO_RCVTIMEO,&timeout,sizeof(timeout));
+ if(ret< 0)
+ {
+ close(ser_socket);
+ return -1;
+ }
+
+ return ser_socket;
+}
+
+void lynq_handle_rsgmii()
+{
+
+ int ret;
+ int check_count = 0;
+ int check_ok_count = 0;
+ int ser_socket = -1;
+ int cli_socket = -1;
+ char buf_init[1024];
+ char buf_tran[1024];
+ char buf_recv[1024];
+ char flag[256]={0};
+ struct sockaddr_in ser_addr;
+ struct sockaddr_in cli_addr;
+ time_t start,end;
+ bzero(buf_init,sizeof(buf_init));
+ bzero(buf_tran,sizeof(buf_tran));
+ bzero(buf_recv,sizeof(buf_recv));
+
+ const char *ser_ip = "192.168.22.2";
+ const char *cli_ip = "192.168.11.1";
+ const char * ser_name = "eth2";
+ const char * cli_name = "eth1";
+ int count = 0;
+ ret = rsgmii_init();
+ if(ret<0)
+ {
+ lynq_response_error(1);
+ return;
+ }
+
+ ser_socket =rsgmii_socket_init(&ser_addr, ser_name, ser_ip);
+ if(ser_socket < 0)
+ {
+ handle_output("init_failed", strlen("init_failed"), Response);
+ lynq_response_error(2);
+ return;
+ }
+
+ cli_socket =rsgmii_socket_init(&cli_addr, cli_name, cli_ip);
+ if(cli_socket < 0)
+ {
+ close(ser_socket);
+ handle_output("init_failed", strlen("init_failed"), Response);
+ lynq_response_error(3);
+ return;
+ }
+ //data content
+ for(int j =0;j<4;j++)
+ {
+ for(int i =0;i<255;i++)
+ {
+ count += sprintf(buf_init + count,"%c",i);
+ if (count >= 1024)
+ {
+ buf_init[1023] = '\0';
+ break;
+ }
+ }
+
+ if (count >= 1024)
+ {
+ break;
+ }
+ }
+
+ start = time(NULL);
+ for(int i=0;i<128;i++)
+ {
+ check_count++;
+ end = time(NULL);
+ if(difftime(end,start)>10)
+ {
+ break;
+ }
+ ret = sendto(cli_socket,buf_init,sizeof(buf_init),0,(struct sockaddr*)&ser_addr,sizeof(ser_addr));
+ if(ret < 0 )
+ {
+ continue;
+ }
+
+ ret = receive_data(ser_socket,buf_init,buf_tran, sizeof(buf_init));
+ if(ret < 0)
+ {
+ continue;
+ }
+
+ //ser receive data and send back the same of data to cli
+ ret = sendto(ser_socket,buf_tran,sizeof(buf_init),0,(struct sockaddr*)&cli_addr,sizeof(cli_addr));
+ if(ret <0)
+ {
+ continue;
+ }
+
+ ret = receive_data(cli_socket,buf_init,buf_recv, sizeof(buf_init));
+ if(ret < 0)
+ {
+ continue;
+ }
+
+ check_ok_count ++;
+ }
+
+ if(check_ok_count >= 120)
+ {
+ lynq_response_ok();
+ }
+ else
+ {
+ sprintf(flag,"sent %d, success %d\n", check_count, check_ok_count);
+ handle_output(flag, strlen(flag), Response);
+ lynq_response_error(100);
+ }
+
+ close(ser_socket);
+ close(cli_socket);
+ return;
+}
+
void lynq_handle_rgmii(char *input)
{
char *ipv4 = input+6;
@@ -329,15 +685,16 @@
static Command commands[] =
{
-{"adc",lynq_handle_adc},
-{"sink",lynq_handle_sink},
-{"emmc",lynq_handle_emmc},
-{"gpio",lynq_handle_gpio},
-{"pcie",lynq_handle_pcie},
-{"rgmii",lynq_handle_rgmii},
-{"sgmii",lynq_handle_sgmii},
-{"usb",lynq_handle_usb},
-{NULL, NULL}
+ {"adc",lynq_handle_adc},
+ {"sink",lynq_handle_sink},
+ {"emmc",lynq_handle_emmc},
+ {"gpio",lynq_handle_gpio},
+ {"pcie",lynq_handle_pcie},
+ {"rsgmii",lynq_handle_rsgmii},
+ {"rgmii",lynq_handle_rgmii},
+ {"sgmii",lynq_handle_sgmii},
+ {"usb",lynq_handle_usb},
+ {NULL, NULL}
};
Command* find_command (char *input)
diff --git a/src/lynq/lib/liblynq-at-fota/lynq_at_fota.cpp b/src/lynq/lib/liblynq-at-fota/lynq_at_fota.cpp
index 148214c..1d95f60 100755
--- a/src/lynq/lib/liblynq-at-fota/lynq_at_fota.cpp
+++ b/src/lynq/lib/liblynq-at-fota/lynq_at_fota.cpp
@@ -86,7 +86,7 @@
strcpy(g_put_path, string[9]);
}
- sprintf(g_cmd,"wget ftp://%s:%s@%s:%s%s%s",string[2],string[3],string[0],string[1],string[7],string[8]);
+ sprintf(g_cmd,"wget -c ftp://%s:%s@%s:%s%s%s",string[2],string[3],string[0],string[1],string[7],string[8]);
RLOGD("g_cmd:%s\n", g_cmd);
str_num = strlen(g_put_path);
diff --git a/src/lynq/lib/liblynq-call/include/libcall/lynq_call.h b/src/lynq/lib/liblynq-call/include/libcall/lynq_call.h
index 21de03b..00f8f4c 100755
--- a/src/lynq/lib/liblynq-call/include/libcall/lynq_call.h
+++ b/src/lynq/lib/liblynq-call/include/libcall/lynq_call.h
@@ -151,7 +151,7 @@
typedef enum{
Rtp_Ssrc_random = 0,
- RTP_Ssrc_specific =1,
+ Rtp_Ssrc_specific =1,
}LYNQ_Rtp_Ssrc_Mode;
/*set*/
@@ -163,12 +163,12 @@
int lynq_set_call_rtp_ssrc(const LYNQ_Rtp_Ssrc_Mode ssrc_mode, const unsigned int ssrc);
/*get*/
-LYNQ_Audio_Mode lynq_get_voice_audio_mode();
+int lynq_get_voice_audio_mode(int* voice_audio_mode);
int lynq_get_remote_rtp_ip(char* ip, const int ip_length);
int lynq_get_vlan_info(char* vlan_info, const int vlan_info_length);
int lynq_get_rtp_port(const LYNQ_Rtp_Mode rtp_mode, int* port);
int lynq_get_rtp_param(int* clock_rate,int* channels, int* latency);//only for client
-int lynq_get_call_rtp_ssrc(LYNQ_Rtp_Ssrc_Mode* ssrc_mod, unsigned int* ssrc);
+int lynq_get_call_rtp_ssrc(int* ssrc_mod, unsigned int* ssrc);
/*Audio Path setting end*/
void lynq_set_test_mode(const int test_mode);
diff --git a/src/lynq/lib/liblynq-call/lynq_call.cpp b/src/lynq/lib/liblynq-call/lynq_call.cpp
index d973bc7..4a7c7cf 100755
--- a/src/lynq/lib/liblynq-call/lynq_call.cpp
+++ b/src/lynq/lib/liblynq-call/lynq_call.cpp
@@ -21,6 +21,7 @@
#include "lynq_module_common.h"
#include "lynq_module_socket.h"
#include "lynq_call_common.h"
+#include "service_lib_common.h"
#define CALL_OFF (0)
#define CALL_ON (1)
@@ -797,8 +798,6 @@
return LYNQ_E_INNER_ERROR;
}
- lynq_init_rtp();
-
g_module_init_flag = MODULE_RUNNING;
return 0;
}
@@ -810,8 +809,7 @@
LYERRLOG("module state is %d",g_module_init_flag);
return LYNQ_E_CONFLICT;
}
- lynq_call_hungup_all();
- lynq_set_voice_audio_mode(AUDIO_MODE_CODEC);
+ lynq_call_hungup_all();
g_module_init_flag = MODULE_SWITCHING;
lynq_close_all_urc_socket_thread();
lynq_close_all_rc_socket_thread();
@@ -1461,7 +1459,7 @@
p->readInt32(&resp_type);
p->readInt32(&urcid);
p->readInt32(&slot_id);
- LYINFLOG("%s urc id = %d, slot_id = %d, size is %d, msg is %s",__func__, urcid,slot_id,size,requestToString(urcid));
+ LYINFLOG("%s urc id = %d, slot_id = %d, size is %d, msg is %s",__func__, urcid,slot_id,size,android::requestToString(urcid));
switch (urcid)
{
case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED://1001
diff --git a/src/lynq/lib/liblynq-call/lynq_call_common.h b/src/lynq/lib/liblynq-call/lynq_call_common.h
index 21077df..e65f243 100755
--- a/src/lynq/lib/liblynq-call/lynq_call_common.h
+++ b/src/lynq/lib/liblynq-call/lynq_call_common.h
@@ -19,5 +19,5 @@
void urc_ecall_msg_process(Parcel *p);
#endif
-void lynq_init_rtp();
+int lynq_get_common_request(int request_id, int* status);
#endif
diff --git a/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp b/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
index d25675a..3471245 100755
--- a/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
+++ b/src/lynq/lib/liblynq-call/lynq_call_ecall.cpp
@@ -52,7 +52,7 @@
static LYNQ_ECall_Indication s_IncomingEcallIndication;
int s_IncomingEcallId=INVALID_ID;
LYNQ_ECall_Variant s_EcallVariant=LYNQ_ECALL_VAR_NONE;
-int s_ecall_whether_preempt=0;
+int s_ecall_whether_preempt=0x02;
void sendSignalIncomingECallEvent()
{
@@ -235,6 +235,10 @@
ret=lynq_clear_current_call();
LYERRLOG("ecall clear conflict call, relase current normal call ret is %d",ret);
}
+ else
+ {
+ LYINFLOG("ecall clear conflict call, exits conflict normal call, let mtk release them");
+ }
return RESULT_OK;
}
@@ -479,7 +483,7 @@
}
if(enable<0)
{
- if(enable >-200)
+ if(enable >-300)
{
goto set_ivs_end;
// lynq_set_common_request(RIL_REQUEST_ECALL_SET_IVS,1,"%d",enable);
@@ -490,7 +494,7 @@
}
else
{
- s_ecall_whether_preempt= ((-200-enable) & 0x11);
+ s_ecall_whether_preempt= ((-300-enable) & 0x11);
}
return RESULT_OK;
}
@@ -602,12 +606,15 @@
{
LYINFLOG("ecall is dialing, recv suc indication");
s_module_is_ecall_dial = LYNQ_ECALL_DAILING_STATE_NONE;
- if(ecallId >0 && find_call_id_with_call_id(ecallId)==INVALID_ID)
+ if(ecallId >0)
{
- LYINFLOG("add ecall in loacl list");
- s_ecallId = ecallId;
- addAddr("ecall",s_ecallId);
- }
+ if(find_call_id_with_call_id(ecallId)==INVALID_ID)
+ {
+ LYINFLOG("add ecall in loacl list");
+ addAddr("ecall",ecallId);
+ }
+ s_ecallId = ecallId; //API-871 ecall id maybe exists in local list as noraml call to be replaced
+ }
send_signal_to_wait_call_state=true;
}
else if(ecallId >0 && (find_call_id_with_call_id(ecallId)==INVALID_ID) && (s_EcallVariant != LYNQ_ECALL_CALLBACK))
diff --git a/src/lynq/lib/liblynq-call/lynq_call_rtp.cpp b/src/lynq/lib/liblynq-call/lynq_call_rtp.cpp
index 9e0d546..ae3c536 100755
--- a/src/lynq/lib/liblynq-call/lynq_call_rtp.cpp
+++ b/src/lynq/lib/liblynq-call/lynq_call_rtp.cpp
@@ -17,208 +17,51 @@
#include "lynq_call.h"
#include "lynq_module_common.h"
#include "lynq_call_common.h"
-
-#define RTP_FROM_CMD "gst-launch-1.0 -v udpsrc port=%d caps=\'application/x-rtp, media=(string)audio, clock-rate=(int)%d, channels=(int)%d\' ! rtpjitterbuffer latency=%d ! rtppcmadepay ! alawdec ! audioresample ! audioconvert ! alsasink device=\'hw:0,2\'"
-#define RTP_TO_CMD "gst-launch-1.0 -v alsasrc device=\'hw:0,6\' ! audioconvert ! audioresample ! alawenc ! rtppcmapay ! %s udpsink host=%s %s auto-multicast=true port=%d"
-#define RTP_VLAN_INFO_FORMAT "multicast-iface=\"%s\""
-#define RTP_SSRC_INFO_FORMAT " rtpmux name=mux ssrc=%u !"
+#include "lynq_module_socket.h"
#define USER_LOG_TAG "LYNQ_CALL"
-typedef struct
-{
- char ip[MAX_IP_LENGTH];
- int port;
- LYNQ_Rtp_Ssrc_Mode ssrc_mode;
- unsigned int ssrc;
- char vlan_info[MAX_VLAN_INFO_LENGTH];
-}lynq_rtp_server_info;
+#define MAX_IP_LENGTH 128
+#define MAX_VLAN_INFO_LENGTH 128
-typedef struct
-{
- int port;
- int clockrate;
- int latency;
- int channels;
-}lynq_rtp_client_info;
-static lynq_rtp_client_info g_rtp_client_info;
-static lynq_rtp_server_info g_rtp_server_info;
+static char * lynqStrdupReadString(Parcel* &p) {
+ size_t stringlen;
+ const char16_t *s16;
-static pthread_t g_rtp_thread[RTP_MODE_MAX];
-static bool g_rtp_thread_valid[RTP_MODE_MAX];
-
-void lynq_init_rtp()
-{
- memset(&g_rtp_client_info,0,sizeof(g_rtp_client_info));
- memset(&g_rtp_server_info,0,sizeof(g_rtp_server_info));
-
-
- lynq_set_rtp_param(8000,1,400);
-
- for(int i=0;i<RTP_MODE_MAX;i++)
- {
- lynq_set_rtp_port(i,6666);
- g_rtp_thread_valid[i] = 0;
- }
-
- LYDBGLOG("lynq init rtp success!!!");
- return;
-}
-
-/*Audio Path setting begin*/
-/*sub function*/
-void lynq_set_rtp_mixer_ctrl(int enable_rtp)
-{
- char cmd[256];
- LYINFLOG("set_rtp_mixer_ctrl %d", enable_rtp);
- if(enable_rtp)
- {
- sprintf(cmd, "amixer -D mtk_phonecall cset name=\"Speech_on\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -D mtk_phonecall cset name=\"M2M_Speech_on\" %d", 1);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH1 DL2_CH1\" %d", 1);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH2 DL2_CH2\" %d", 1);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"UL2_CH1 PCM_2_CAP_CH1\" %d", 1);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"UL2_CH2 PCM_2_CAP_CH1\" %d", 1);
- system(cmd);
- }
- else
- {
- sprintf(cmd, "amixer -D mtk_phonecall cset name=\"M2M_Speech_on\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH1 DL2_CH1\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"PCM_2_PB_CH2 DL2_CH2\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"UL2_CH1 PCM_2_CAP_CH1\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -c0 cset name=\"UL2_CH2 PCM_2_CAP_CH1\" %d", 0);
- system(cmd);
- sprintf(cmd, "amixer -D mtk_phonecall cset name=\"Speech_on\" %d", 1);
- system(cmd);
- }
-}
-
-void* lynq_start_rtp_cmd(void *arg)
-{
- int* rtp_mode= (int*) arg;
- char cmd[384];
- char vlan_para_string[sizeof(RTP_VLAN_INFO_FORMAT)+MAX_VLAN_INFO_LENGTH-2/*sizeof "%s"*/]={0};
- char ssrc_para_string[sizeof(RTP_SSRC_INFO_FORMAT)+MAX_SSRC_INFO_LENGTH-2/*sizeof "%u"*/]={0};
- LYINFLOG("lynq_start_rtp_cmd: rtp_mode is %d",(*rtp_mode));
- if ((*rtp_mode) == RTP_CLIENT)
- {
- sprintf(cmd,RTP_FROM_CMD, \
- g_rtp_client_info.port,g_rtp_client_info.clockrate,g_rtp_client_info.channels, \
- g_rtp_client_info.latency);
- // LYINFLOG("start from rtp play: cmd is %s",cmd);
- system(cmd);
- }
- else if ((*rtp_mode) == RTP_SERVER)
- {
- if(strlen(g_rtp_server_info.vlan_info)>0)
- {
- sprintf(vlan_para_string,RTP_VLAN_INFO_FORMAT,g_rtp_server_info.vlan_info);
- }
-
- if(g_rtp_server_info.ssrc_mode == RTP_Ssrc_specific)
- {
- sprintf(ssrc_para_string,RTP_SSRC_INFO_FORMAT,g_rtp_server_info.ssrc);
- }
- sprintf(cmd,RTP_TO_CMD, \
- ssrc_para_string, g_rtp_server_info.ip,vlan_para_string,g_rtp_server_info.port);
-
- LYINFLOG("start to rtp play: cmd is %s",cmd);
- system(cmd);
- }
- return NULL;
-}
-
-int lynq_start_rtp_thread(int rtp_mode)
-{
- int ret;
- pthread_attr_t attr;
- static int start_mode[RTP_MODE_MAX]={0,1};
-
- pthread_attr_init(&attr);
- pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ret = pthread_create(&(g_rtp_thread[rtp_mode]),&attr,lynq_start_rtp_cmd,&(start_mode[rtp_mode]));
- if(ret != 0)
- {
- g_rtp_thread_valid[rtp_mode]=0;
- LYERRLOG("rtp create %d pthread error, ret is %d",rtp_mode, ret);
- return ret;
- }
- g_rtp_thread_valid[rtp_mode]=1;
- return RESULT_OK;
+ s16 = p->readString16Inplace(&stringlen);
+ return strndup16to8(s16, stringlen);
}
/*set*/
int lynq_set_voice_audio_mode(const LYNQ_Audio_Mode audio_mode)
{
- int ret;
- int i;
-
- if(audio_mode==AUDIO_MODE_RTP)
+ if(g_module_init_flag != MODULE_RUNNING)
{
- lynq_set_rtp_mixer_ctrl(1);
- for(i=0;i<RTP_MODE_MAX;i++)
- {
- if(!g_rtp_thread_valid[i])
- {
- if(lynq_start_rtp_thread(i)!= 0)
- {
- LYERRLOG("start rtp %d fail",i);
- break;
- }
- else
- {
- LYINFLOG("start rtp %d suc",i);
- }
- }
- else
- {
- LYERRLOG("rtp %d needn't start",i);
- }
- }
- if(i!= RTP_MODE_MAX)
- {
- LYERRLOG("start rtp whole fail");
- lynq_set_voice_audio_mode(AUDIO_MODE_CODEC);
- return RESULT_ERROR;
- }
- LYINFLOG("start rtp whole suc");
- return RESULT_OK;
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
}
- else if(audio_mode==AUDIO_MODE_CODEC)
+ if(audio_mode > AUDIO_MODE_RTP || audio_mode < AUDIO_MODE_CODEC)
{
- for(i=0;i<RTP_MODE_MAX;i++)
- {
- if(g_rtp_thread_valid[i])
- {
- ret = pthread_cancel(g_rtp_thread[i]);
- LYINFLOG("pthread cancel rtp %d ret = %d",i,ret);
- ret = pthread_join(g_rtp_thread[i],NULL);
- LYINFLOG("pthread join rtp %d ret = %d",i,ret);
- g_rtp_thread_valid[i] = 0;
- }
- else
- {
- LYINFLOG("rtp %d needn't stop",i);
- }
- }
- lynq_set_rtp_mixer_ctrl(0);
- LYINFLOG("stop rtp suc");
+ return LYNQ_E_PARAMETER_ANONALY;
}
- return RESULT_OK;
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_VOICE_AUDIO_MODE,1,"%d",audio_mode);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
+
int lynq_set_remote_rtp_ip(const char* ip, const int ip_length)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
if (NULL == ip)
{
LYERRLOG("ip is NULL!!!");
@@ -230,15 +73,22 @@
return LYNQ_E_PARAMETER_ANONALY;
}
- bzero(g_rtp_server_info.ip,MAX_IP_LENGTH);
- strcpy(g_rtp_server_info.ip,ip);
-
- LYINFLOG("lynq_set_remote_rtp_ip suc: ip is %s, length is %d", ip,ip_length);
-
- return RESULT_OK;
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_REMOTE_RTP_IP,1,"%s",ip);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
int lynq_set_vlan_info(const char* vlan_info, const int vlan_info_length)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if (NULL == vlan_info)
{
LYERRLOG("vlan_info is NULL!!!");
@@ -251,141 +101,258 @@
return LYNQ_E_PARAMETER_ANONALY;
}
-
- bzero(g_rtp_server_info.vlan_info,MAX_VLAN_INFO_LENGTH);
- strcpy(g_rtp_server_info.vlan_info,vlan_info);
-
- LYINFLOG("lynq_set_vlan_info suc: vlan is %s, length is %d", vlan_info,vlan_info_length);
-
- return RESULT_OK;
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_VLAN_INFO,1,"%s",vlan_info);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
int lynq_set_rtp_port(const LYNQ_Rtp_Mode rtp_mode, const int port)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if (port < 0)
{
LYERRLOG("invalid port number %d", port);
return LYNQ_E_PARAMETER_ANONALY;
}
- if (rtp_mode == 0)
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_RTP_PORT,2,"%d %d",rtp_mode,port);
+ if(ret==RESULT_OK)
{
- g_rtp_client_info.port = port;
+ delete p;
}
- else if (rtp_mode == 1)
- {
- g_rtp_server_info.port = port;
- }
- LYINFLOG("lynq_set_rtp_port suc: LYNQ_Rtp_Mode is %d, port is %d", rtp_mode, port);
- return RESULT_OK;
+ return ret;
}
int lynq_set_rtp_param(const int clock_rate,const int channels,const int latency) //only for client mode
{
- g_rtp_client_info.clockrate = clock_rate;
- g_rtp_client_info.channels = channels;
- g_rtp_client_info.latency = latency;
- LYINFLOG("lynq_set_rtp_param suc: clockrate is %d, channels is %d, latency is %d", clock_rate, channels, latency);
- return RESULT_OK;
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_RTP_PARAM,3,"%d %d %d",clock_rate,channels,latency);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
+
int lynq_set_call_rtp_ssrc(const LYNQ_Rtp_Ssrc_Mode ssrc_mode,const unsigned int ssrc)
{
- if(ssrc_mode < Rtp_Ssrc_random || ssrc_mode > RTP_Ssrc_specific)
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
+ if(ssrc_mode < Rtp_Ssrc_random || ssrc_mode > Rtp_Ssrc_specific)
{
return LYNQ_E_PARAMETER_ANONALY;
}
- g_rtp_server_info.ssrc_mode = ssrc_mode;
- g_rtp_server_info.ssrc = ssrc ;
- LYINFLOG("%s suc: param is %d %d", __func__, ssrc_mode, ssrc);
- return RESULT_OK;
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_SET_CALL_RTP_SSRC,2,"%d %u",ssrc_mode,ssrc);
+ if(ret==RESULT_OK)
+ {
+ delete p;
+ }
+ return ret;
}
/*get*/
-LYNQ_Audio_Mode lynq_get_voice_audio_mode()
+int lynq_get_voice_audio_mode(int* voice_audio_mode)
{
- if(g_rtp_thread_valid[0])
+ if(g_module_init_flag != MODULE_RUNNING)
{
- return AUDIO_MODE_RTP;
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
}
- else
- {
- return AUDIO_MODE_CODEC;
- }
+
+ return lynq_get_common_request(LYNQ_REQUEST_GET_VOICE_AUDIO_MODE,voice_audio_mode);
}
int lynq_get_remote_rtp_ip(char* ip, const int ip_length)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(ip==NULL)
{
LYERRLOG("ip is NULL");
return LYNQ_E_PARAMETER_ANONALY;
}
- if(ip_length < strlen(g_rtp_server_info.ip)+1)
+ if(ip_length > MAX_IP_LENGTH)
{
- LYERRLOG("ip length %d is shorter than saved ip length %d",ip_length,strlen(g_rtp_server_info.ip)+1);
+ LYERRLOG("ip length %d is greater than max ip length %d",ip_length,MAX_IP_LENGTH);
return LYNQ_E_PARAMETER_ANONALY;
+ }
+
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_REMOTE_RTP_IP,0,"");
+
+ if(ret!=RESULT_OK)
+ {
+ LYERRLOG("%s call lynq_send_common_request failure, ret is %d",__func__,ret);
+ return ret;
+ }
+
+ int num ;
+ char *resp;
+
+ p->readInt32(&num);
+ if(num != 1)
+ {
+ LYERRLOG("no paramters or num %d too great",num);
+ delete p;
+ return LYNQ_E_INNER_ERROR;
+ }else{
+ resp = lynqStrdupReadString(p);
+ strcpy(ip,resp);
+ free(resp);
}
-
- bzero(ip,ip_length);
- strcpy(ip,g_rtp_server_info.ip);
-
- return RESULT_OK;
+
+ LYINFLOG("%s suc",__func__);
+ delete p;
+ return RESULT_OK;
}
int lynq_get_vlan_info(char* vlan_info, const int vlan_info_length)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(vlan_info==NULL)
{
LYERRLOG("vlan info is NULL");
return LYNQ_E_PARAMETER_ANONALY;
}
- if(vlan_info_length < strlen(g_rtp_server_info.vlan_info)+1)
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_VLAN_INFO,0,"");
+
+ if(ret!=RESULT_OK)
{
- LYERRLOG("vlan info length %d is shorter than saved vlan info length %d",vlan_info_length,strlen(g_rtp_server_info.vlan_info)+1);
- return LYNQ_E_PARAMETER_ANONALY;
+ LYERRLOG("%s call lynq_send_common_request failure, ret is %d",__func__,ret);
+ return ret;
+ }
+
+ int num ;
+ char *resp;
+
+ p->readInt32(&num);
+ if(num != 1)
+ {
+ LYERRLOG("no paramters or num %d too great",num);
+ delete p;
+ return LYNQ_E_INNER_ERROR;
+ }else{
+ resp = lynqStrdupReadString(p);
+ strcpy(vlan_info,resp);
+ free(resp);
}
-
- bzero(vlan_info,vlan_info_length);
- strcpy(vlan_info,g_rtp_server_info.vlan_info);
-
- return RESULT_OK;
+
+ LYINFLOG("%s suc",__func__);
+ delete p;
+ return RESULT_OK;
}
+
int lynq_get_rtp_port(const LYNQ_Rtp_Mode rtp_mode, int* port)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(port==NULL)
{
return LYNQ_E_PARAMETER_ANONALY;
}
- if (rtp_mode == 0)
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_RTP_PORT,1,"%d",rtp_mode);
+ if(ret==RESULT_OK)
{
- *port = g_rtp_client_info.port;
+ p->readInt32(port);
+ delete p;
}
- else if (rtp_mode == 1)
- {
- *port = g_rtp_server_info.port;
- }
- return RESULT_OK;
+ return ret;
}
int lynq_get_rtp_param(int* clock_rate, int* channels, int* latency)//only for client mode
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(clock_rate == NULL || channels ==NULL || latency ==NULL)
{
LYERRLOG("input parameter is NULL");
return LYNQ_E_PARAMETER_ANONALY;
}
- *clock_rate = g_rtp_client_info.clockrate;
- *channels = g_rtp_client_info.channels ;
- *latency = g_rtp_client_info.latency;
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_RTP_PARAM,0,"");
- return RESULT_OK;
+ if(ret!=RESULT_OK)
+ {
+ LYERRLOG("%s call lynq_send_common_request failure, ret is %d",__func__,ret);
+ return ret;
+ }
+
+ p->readInt32(clock_rate);
+ p->readInt32(channels);
+ p->readInt32(latency);
+
+ LYINFLOG("%s suc",__func__);
+ delete p;
+ return RESULT_OK;
}
-int lynq_get_call_rtp_ssrc(LYNQ_Rtp_Ssrc_Mode* ssrc_mode, unsigned int* ssrc)
+
+int lynq_get_call_rtp_ssrc(int* ssrc_mode, unsigned int* ssrc)
{
+ if(g_module_init_flag != MODULE_RUNNING)
+ {
+ LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
+ return LYNQ_E_CONFLICT;
+ }
+
if(ssrc_mode == NULL || ssrc ==NULL)
{
LYERRLOG("input parameter is NULL");
return LYNQ_E_PARAMETER_ANONALY;
}
-
- *ssrc_mode = g_rtp_server_info.ssrc_mode;
- *ssrc = g_rtp_server_info.ssrc ;
-
- return RESULT_OK;
+
+ Parcel* p=NULL;
+ int ret=lynq_send_common_request(p,g_wait_time,LYNQ_REQUEST_GET_CALL_RTP_SSRC,0,"");
+
+ if(ret!=RESULT_OK)
+ {
+ LYERRLOG("%s call lynq_send_common_request failure, ret is %d",__func__,ret);
+ return ret;
+ }
+
+ p->readInt32(ssrc_mode);
+ p->readUint32(ssrc);
+
+ LYINFLOG("%s suc",__func__);
+ delete p;
+ return RESULT_OK;
}
diff --git a/src/lynq/lib/liblynq-call/lynq_module_common.h b/src/lynq/lib/liblynq-call/lynq_module_common.h
deleted file mode 100755
index 590971a..0000000
--- a/src/lynq/lib/liblynq-call/lynq_module_common.h
+++ /dev/null
@@ -1,75 +0,0 @@
-#ifndef LYNQ_MODULE_COMMON_H
-#define LYNQ_MODULE_COMMON_H
-
-#define RESULT_OK (0)
-#define RESULT_ERROR (-1)
-
-/*the same with lynq_interface.h begin*/
-#define LYNQ_REQUEST_VENDOR_BASE 8000
-#define LYNQ_URC_VENDOR_BASE 9000
-#define LYNQ_AT_SNED (LYNQ_REQUEST_VENDOR_BASE +1)
-#define LYNQ_URC_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+1)
-#define LYNQ_URC_DATA_STATUS_IND (LYNQ_URC_VENDOR_BASE+2)
-#define LYNQ_URC_DATA_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+3)
-#define LYNQ_AUTO_ANSWER_CALL (LYNQ_REQUEST_VENDOR_BASE +2)
-#define LYNQ_REQUEST_SET_DTMF_VOLUME (LYNQ_REQUEST_VENDOR_BASE +3)
-#define LYNQ_URC_MODIFY_APNDB (LYNQ_URC_VENDOR_BASE+4)
-#define LYNQ_URC_RESET_APNDB (LYNQ_URC_VENDOR_BASE+5)
-
-
-#define LYNQ_REQUEST_WRITE_SMS_TO_MEMORY (LYNQ_REQUEST_VENDOR_BASE +4)
-#define LYNQ_REQUEST_READ_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 5)
-#define LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 6)
-#define LYNQ_REQUEST_LIST_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 7)
-#define LYNQ_REQUEST_SET_DEFAULT_SIM_ALL (LYNQ_REQUEST_VENDOR_BASE + 8)
-
-#define LYNQ_REQUEST_SET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +9)
-#define LYNQ_REQUEST_GET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +10)
-#define LYNQ_REQUEST_RECORD (LYNQ_REQUEST_VENDOR_BASE +11)
-#define LYNQ_REQUEST_OOS_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +12)
-#define LYNQ_REQUEST_OOS_DEEP_SLEEP_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +13)
-#define LYNQ_REQUEST_CHANGE_SCREEN_STATE (LYNQ_REQUEST_VENDOR_BASE + 14)/*jb.qi add for two sim suspend 2022/9/19*/
-#define LYNQ_REQUEST_CHANGE_RADIO (LYNQ_REQUEST_VENDOR_BASE + 15)
-/*the same with lynq_interface.h end*/
-
-typedef enum{
- /*base abnormal*/
- LYNQ_E_PARAMETER_ANONALY=7000,
- LYNQ_E_SEND_REQUEST_FAIL=7001,
- LYNQ_E_GET_HEAD_ERROR=7002,
- LYNQ_E_INNER_ERROR=7100,
- LYNQ_E_MALLOC_ERROR=7101,
- /**/
- LYNQ_E_CARDSTATE_ERROR=8000,
- /* The voice service state is out of service*/
- LYNQ_E_STATE_OUT_OF_SERVICE=8001,
- /* The voice service state is EMERGENCY_ONLY*/
- LYNQ_E_STATE_EMERGENCY_ONLY=8002,
- /* The radio power is power off*/
- LYNQ_E_STATE_POWER_OFF=8003,
- LYNQ_E_TIME_OUT=8004,
- /*create or open sms DB fail */
- LYNQ_E_SMS_DB_FAIL=8005,
- /*Failed to execute sql statement*/
- LYNQ_E_SMS_SQL_FAIL = 8006,
- LYNQ_E_SMS_NOT_FIND = 8007,
- /* The logic conflict*/
- LYNQ_E_CONFLICT=9000,
- /*Null anomaly*/
- LYNQ_E_NULL_ANONALY=9001,
- /*Invalid id anomaly*/
- LYNQ_E_INVALID_ID_ANONALY=9002,
-#ifdef ECALL_SUPPORT
- LYNQ_E_ECALL_BEING_RUNNING =9003,
- LYNQ_E_ECALL_MSD_LENGTH_ERROR =9004,
- LYNQ_E_ECALL_DAILING_NO_ANSWER =9005,
-#endif
-}LYNQ_E;
-
-#define MODULE_CLOSED (0)
-#define MODULE_SWITCHING (1)
-#define MODULE_RUNNING (2)
-
-extern int g_module_init_flag;
-
-#endif
diff --git a/src/lynq/lib/liblynq-call/lynq_module_socket.cpp b/src/lynq/lib/liblynq-call/lynq_module_socket.cpp
deleted file mode 100755
index ff45c02..0000000
--- a/src/lynq/lib/liblynq-call/lynq_module_socket.cpp
+++ /dev/null
@@ -1,1015 +0,0 @@
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <arpa/inet.h>
-#include <string.h>
-#include <unistd.h>
-#include <binder/Parcel.h>
-#include <log/log.h>
-#include <cutils/jstring.h>
-#include <pthread.h>
-#include <list>
-#include <vendor-ril/telephony/ril.h>
-#include <vendor-ril/telephony/mtk_ril_sp.h>
-#include "lynq_call.h"
-#include "lynq_module_common.h"
-#include "lynq_module_socket.h"
-#include "liblog/lynq_deflog.h"
-#include "lynq_shm.h"
-
-#define LYNQ_SERVICE_PORT 8088
-#define LYNQ_ADDRESS "127.0.0.1"
-#define LYNQ_URC_SERVICE_PORT 8086
-#define LYNQ_URC_ADDRESS "0.0.0.0"
-#define LYNQ_REQUEST_PARAM_BUF 8192
-#define LYNQ_REC_BUF 8192
-
-#define USER_LOG_TAG "LYNQ_NETWORK"
-
-typedef struct{
- int uToken;
- int request;
- int paramLen;
- char param[LYNQ_REQUEST_PARAM_BUF];
-}lynq_client_t;
-
-typedef struct{
- int resp_type;
- int token;
- int request;
- int slot_id;
- int error;
-}lynq_resp_t;
-
-typedef struct{
- int resp_type;
- int urcid;
-}lynq_head_t;
-
-lynq_client_t client_t;
-lynq_resp_t response;
-
-int module_len_rc_addr_serv;
-int module_len_urc_addr_serv;
-struct sockaddr_in module_rc_addr_serv;
-struct sockaddr_in module_urc_addr_serv;
-static int module_rc_sock_fd = -1;
-static int module_urc_sock_fd = -1;
-int module_urc_status = 1;
-int module_rc_status = 1;
-pthread_t module_urc_tid = -1;
-pthread_t module_rc_tid = -1;
-static pthread_mutex_t s_urc_mutex = PTHREAD_MUTEX_INITIALIZER;
-
-/*hq add for set waiting time 2022/09/13 begin*/
-static pthread_mutex_t s_sendto_mutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_mutex_t s_RecvMsgBlockMutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_cond_t s_WaitRecvMsgCond = PTHREAD_COND_INITIALIZER;
-#define BLOCK_RECV_MSG_LOCK() pthread_mutex_lock(&s_RecvMsgBlockMutex)
-#define BLOCK_RECV_MSG_UNLOCK() pthread_mutex_unlock(&s_RecvMsgBlockMutex)
-#define BLOCK_WAIT_RECV_MSG_TIME_OUT(a) pthread_cond_timedwait(&s_WaitRecvMsgCond, &s_RecvMsgBlockMutex,(a))
-#define BLOCK_WAKEUP_RECV_MSG() pthread_cond_broadcast(&s_WaitRecvMsgCond)
-static std::list<Parcel*> s_recv_parcel_list;
-const int waitResponse(int token,int time_out);
-/*hq add for set waiting time 2022/09/13 end*/
-
-/*hq add for urc process asynchronous 2022/12/26 begin*/
-static pthread_mutex_t s_ProcessUrcMsgBlockMutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_cond_t s_WaitProcessUrcMsgCond = PTHREAD_COND_INITIALIZER;
-
-#define BLOCK_PROCESS_URC_MSG_INIT() pthread_mutex_init(&s_ProcessUrcMsgBlockMutex,NULL)
-#define BLOCK_PROCESS_URC_MSG_LOCK() pthread_mutex_lock(&s_ProcessUrcMsgBlockMutex)
-#define BLOCK_PROCESS_URC_MSG_UNLOCK() pthread_mutex_unlock(&s_ProcessUrcMsgBlockMutex)
-#define BLOCK_WAIT_PROCESS_URC_MSG() pthread_cond_wait(&s_WaitProcessUrcMsgCond, &s_ProcessUrcMsgBlockMutex)
-#define BLOCK_WAKEUP_PROCESS_URC_MSG() pthread_cond_broadcast(&s_WaitProcessUrcMsgCond)
-static std::list<Parcel*> s_recv_urc_parcel_list;
-void *thread_urc_process(void *p);
-pthread_t module_urc_process_tid = -1;
-int module_urc_process_status = 1;
-/*hq add for urc process asynchronous 2022/12/26 end*/
-
-int g_module_Global_uToken = 0;
-int g_wait_time=5;
-
-/*inner test*/
-static int s_inner_test=0;
-
-/**@brief just for inner test
-* @param test_mode [IN]: test mode
-* 0:success
-* other:failure
-*/
-void lynq_set_test_mode(const int test_mode)
-{
- if(test_mode<0)
- {
- g_wait_time = -test_mode;
- }
- else if(test_mode==9999)
- {
- LYERRLOG("%s inner test para %d %d",__func__,s_inner_test,g_wait_time);
- }
- else
- {
- s_inner_test = test_mode;
- }
-}
-
-void cleanup_RecvMsgBlock_mutex(void *arg)
-{
- BLOCK_RECV_MSG_UNLOCK();
-}
-
-/**@brief wait response with expected token and write msg to parcel in some time
-* @param p [IN]: pointer the parcel
-* @param token [IN]: the expected token for the response msg
-* @param time_out [IN]: timeout.
-* @return
-* 0:success
-* other:failure
-*/
-const int waitResponse(Parcel*& p, int token,int time_out)
-{
- int waitToken = token;
- int wakeup_token=-1;
- int resp_type;
- struct timeval now;
- struct timespec timeout;
- int ret;
- std::list<Parcel*>::iterator iter;
- int cnt=0;
-
- gettimeofday(&now,NULL);
- timeout.tv_sec = now.tv_sec+time_out; //timeout is 1min
- timeout.tv_nsec = now.tv_usec*1000;
-
- LYINFLOG("%s wait token is %d, wait time is %d",__func__,waitToken,time_out);
-
- BLOCK_RECV_MSG_LOCK();
- pthread_cleanup_push(cleanup_RecvMsgBlock_mutex, NULL); // thread cleanup handler
- while(module_rc_status) {
- cnt++;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- (*iter)->setDataPosition(0);
- (*iter)->readInt32(&resp_type);
- (*iter)->readInt32(&wakeup_token);
- if(wakeup_token==waitToken)
- {
- LYINFLOG("%s get waitToken",__func__);
- p=(*iter);
- p->setDataPosition(0);
- s_recv_parcel_list.erase(iter);
- goto waitResponse_end;
- }
- }
- LYINFLOG("%s no wait Token in msg list, list size is %d",__func__,s_recv_parcel_list.size());
- ret=BLOCK_WAIT_RECV_MSG_TIME_OUT(&timeout);
- if(ret!=0)
- {
- LYERRLOG("%s no expected token %d after %d second",__func__,waitToken,time_out);
- break;
- }
- }
-waitResponse_end:
- LYINFLOG("%s wait token is %d wakeup_token is %d, cnt is %d",__func__,waitToken,wakeup_token,cnt);
- pthread_cleanup_pop(0);
- BLOCK_RECV_MSG_UNLOCK();
- return wakeup_token==waitToken ? 0:LYNQ_E_TIME_OUT;
-}
-
-/**@brief print solicied response msg's head information
-* @param head [IN]: head information
-* @return none
-*/
-void PrintHeader(lynq_resp_t& head)
-{
- LYINFLOG("resp_type=%d,token=%d,request=%d,slot_id=%d,error_code=%d",head.resp_type,head.token,head.request,head.slot_id,head.error);
-}
-
-/**@brief get solicied response msg's head
-* @param head [OUT]: head information
-* @return
-* 0:success
-* other:failure
-*/
-int GetHeader(Parcel* &p, lynq_resp_t& head)
-{
- LYINFLOG("get header");
- if(p->dataAvail() > 0)
- {
- p->readInt32(&(head.resp_type));
- p->readInt32(&(head.token));
- p->readInt32(&(head.request));
- p->readInt32(&(head.slot_id));
- p->readInt32(&(head.error));
- PrintHeader(head);
- return RESULT_OK;
- }
- else
- {
- return RESULT_ERROR;
- }
-}
-
-/**@brief send msg to service and get response from service
-* @param request_id [IN]: request id
-* @param time_out [IN]: wait time uplimit
-* @param p [IN]: point to response msg's parcel
-* @param argc [IN]: how many parameters in parameter string
-* @param format [IN]: parameter string's format
-* @param ... [IN]: the specific parameter
-* @return
-* 0:success
-* other:failure
-*/
-int lynq_send_common_request(Parcel*& p, int time_out, int request_id, int argc, const char* format,...)
-{
- lynq_client_t client;
- int ret;
- int send_num;
-
- client.uToken = g_module_Global_uToken;
- g_module_Global_uToken=(g_module_Global_uToken+1)%10000;/*0-10000*/
- client.request = request_id;
- client.paramLen = argc;
- bzero(client.param,LYNQ_REQUEST_PARAM_BUF);
- if(argc!=0)
- {
- va_list args;
- va_start(args, format);
- vsnprintf(client.param, LYNQ_REQUEST_PARAM_BUF, format, args);
- va_end(args);
- }
- LYINFLOG("uToken=%d,request=%d,paralen=%d,param=%s",client.uToken,client.request,client.paramLen,client.param);
- pthread_mutex_lock(&s_sendto_mutex);
- if(s_inner_test==1)
- {
- send_num = 1;
- }
- else
- {
- send_num = sendto(module_rc_sock_fd,&client,sizeof(client),0,(struct sockaddr *)&module_rc_addr_serv,module_len_rc_addr_serv);
- }
- if(s_inner_test>=1000)
- {
- time_out = s_inner_test-1000;
- }
- pthread_mutex_unlock(&s_sendto_mutex);
-
- if(send_num <= 0)
- {
- LYERRLOG("send request fail, send num is %d", send_num);
- return LYNQ_E_SEND_REQUEST_FAIL;
- }
- ret = waitResponse(p, client.uToken,time_out);
-
- if(ret==0)
- {
- lynq_resp_t head;
- ret=GetHeader(p,head);
- if(ret!=0)
- {
- LYERRLOG("%s %d get head error %d",__func__,client.uToken,ret);
- delete p;
- return LYNQ_E_GET_HEAD_ERROR;
- }
- if(head.error!=0)
- {
- LYERRLOG("%s %d mdm return head error %d",__func__,client.uToken,head.error);
- delete p;
- return head.error;
- }
- LYERRLOG("%s %d suc",__func__,client.uToken);
- return RESULT_OK;
- }
-
- LYERRLOG("%s %d fail, ret is %d",__func__,client.uToken,ret);
-
- return ret;
-}
-
-/*hq add for urc broadcase optimisson 2023/01/03 begin*/
-#define SHM_BUFFER_INDEX_OFFSET 1
-#define SHM_BUFFER_SIZE_OFFSET 16
-#define SHM_BUFFER_INDEX_MASK 0x0000007F
-#define SHM_BUFFER_SIZE_MASK 0x0000FFFF
-
-bool urc_data_is_in_shm_data(int responseType,int& level, int& index, int& size)
-{
- int shm_index=((responseType>>SHM_BUFFER_INDEX_OFFSET)&SHM_BUFFER_INDEX_MASK);
- if (shm_index>0)
- {
- index=shm_index-1;
- size=((responseType>>SHM_BUFFER_SIZE_OFFSET)&SHM_BUFFER_SIZE_MASK);
- if(size>=sizeof(int32_t)*3 && get_shem_buffer_level(size,&level))
- {
- LYINFLOG("urc_data_is_in_shm_data level is %d, index is %d size is %d",level,index,size);
- return true;
- }
- }
- LYINFLOG("urc_data_is_in_shm_data return false, responseType is %d",responseType);
- return false;
-}
-/*hq add for urc broadcase optimisson 2023/01/03 end*/
-
-void *thread_urc_recv(void *p)
-{
- Parcel *urc_p =NULL;
- char urc_data[LYNQ_REC_BUF];
- int res = 0;
- lynq_head_t* phead;
- int level,index,size;
- uint8_t * shm_buffer;
-
- LYINFLOG("urc recv thread is running");
- while(module_urc_status)
- {
- bzero(urc_data,LYNQ_REC_BUF);
- res = recvfrom(module_urc_sock_fd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&module_urc_addr_serv,(socklen_t*)&module_len_urc_addr_serv);
- if(res<sizeof(int32_t)*2)
- {
- LYERRLOG("thread_urc_recv step2 fail: res is %d",res);
- continue;
- }
-
- phead=(lynq_head_t*) urc_data;
- if(is_support_urc(phead->urcid)==false)
- {
- continue;
- }
- urc_p = new Parcel();
- if(urc_p == NULL)
- {
- LYERRLOG("new parcel failure!!!");
- continue;
- }
- if(urc_data_is_in_shm_data(phead->resp_type,level,index,size))
- {
- shm_buffer = (uint8_t *) get_shem_buffer(level,index);
- LYINFLOG("shm pointer is %p", shm_buffer);
- urc_p->setData(shm_buffer,size); // p.setData((uint8_t *) buffer, buflen);
- }
- else if(res>=sizeof(int32_t)*3)
- {
- urc_p->setData((uint8_t *)urc_data,res); // p.setData((uint8_t *) buffer, buflen);
- }
- else
- {
- LYERRLOG("res %d error!!!", res);
- delete urc_p;
- urc_p = NULL;
- continue;
- }
- urc_p->setDataPosition(0);
- if(urc_p->dataAvail()>0)
- {
- BLOCK_PROCESS_URC_MSG_LOCK();
- s_recv_urc_parcel_list.push_back(urc_p);
- BLOCK_WAKEUP_PROCESS_URC_MSG();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- }
- else
- {
- delete urc_p;
- urc_p = NULL;
- }
- }
- LYINFLOG("urc recv thread ended");
- return NULL;
-}
-
-void cleanup_urc_process_mutex(void *arg)
-{
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-}
-
-void *thread_urc_process(void *p)
-{
- Parcel *urc_p =NULL;
- std::list<Parcel*>::iterator iter;
-
- LYINFLOG("urc process thread is running");
- pthread_cleanup_push(cleanup_urc_process_mutex, NULL); // thread cleanup handler
- while(module_urc_process_status)
- {
- BLOCK_PROCESS_URC_MSG_LOCK();
- while(s_recv_urc_parcel_list.empty())
- {
- BLOCK_WAIT_PROCESS_URC_MSG();
- }
- iter=s_recv_urc_parcel_list.begin();
- urc_p=(*iter);
- s_recv_urc_parcel_list.erase(iter);
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- urc_p->setDataPosition(0);
- if(urc_p->dataAvail()>0)
- {
- pthread_mutex_lock(&s_urc_mutex);
- urc_msg_process(urc_p);
- pthread_mutex_unlock(&s_urc_mutex);
- }
- delete urc_p;
- urc_p = NULL;
- }
- pthread_cleanup_pop(0);
- LYINFLOG("urc process thread ended");
- return NULL;
-}
-
-void lynq_close_urc_rev_thread()
-{
- int ret;
-
- BLOCK_PROCESS_URC_MSG_LOCK(); //just cancel urc process tid when recv from
- module_urc_status = 0;
- if(module_urc_tid!=-1)
- {
- ret = pthread_cancel(module_urc_tid);
- LYINFLOG("pthread cancel urc rev ret = %d",ret);
- }
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- if(module_urc_tid != -1)
- {
- ret = pthread_join(module_urc_tid,NULL);
- LYINFLOG("pthread join urc tid ret = %d",ret);
- module_urc_tid =-1;
- }
-}
-
-void lynq_close_urc_process_thread()
-{
- int ret;
- BLOCK_PROCESS_URC_MSG_LOCK(); //just cancel urc process tid when not process urc msg in list
- pthread_mutex_lock(&s_urc_mutex); //just cancel urc process tid when not process urg msg avoid mutual lock for tid may call pthread_cond_wait
- module_urc_process_status = 0;
- if(module_urc_process_tid!=-1)
- {
- ret = pthread_cancel(module_urc_process_tid);
- LYINFLOG("pthread cancel urc process ret = %d",ret);
- }
- pthread_mutex_unlock(&s_urc_mutex);
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- if(module_urc_process_tid != -1)
- {
- ret = pthread_join(module_urc_process_tid,NULL);
- LYINFLOG("pthread join urc process tid ret = %d",ret);
- module_urc_process_tid =-1;
- }
-}
-
-int lynq_setup_urc_socket()
-{
- int on = 1;
- int ret = 0;
- module_len_urc_addr_serv = sizeof(sockaddr_in);
- module_urc_sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (module_urc_sock_fd <0){
- LYERRLOG("urc socket error");
- return RESULT_ERROR;
- }
- module_urc_addr_serv.sin_family = AF_INET;
- module_urc_addr_serv.sin_port = htons(LYNQ_URC_SERVICE_PORT);
- module_urc_addr_serv.sin_addr.s_addr = inet_addr(LYNQ_URC_ADDRESS);
- /* Set socket to allow reuse of address and port, SO_REUSEADDR value is 2*/
- ret = setsockopt(module_urc_sock_fd,SOL_SOCKET,SO_REUSEADDR,&on,sizeof on);
- if(ret <0)
- {
- LYERRLOG("urc socket set error");
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- return RESULT_ERROR;
- }
- ret = bind(module_urc_sock_fd ,(struct sockaddr*)&module_urc_addr_serv, sizeof(module_urc_addr_serv));
- if(ret <0)
- {
- LYERRLOG("urc socket bind error");
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- return RESULT_ERROR;
- }
- return RESULT_OK;
-}
-
-void lynq_close_urc_socket()
-{
- if (module_urc_sock_fd >= 0)
- {
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- }
-}
-
-int lynq_start_all_urc_socket_thread()
-{
-
- if(ril_init_mem()!=0)
- {
- LYERRLOG("ril_init_mem fail");
- return RESULT_ERROR;
- }
-
- int ret= lynq_setup_urc_socket();
- if(ret!=RESULT_OK)
- {
- LYERRLOG("call lynq_setup_urc_socket fail");
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- BLOCK_PROCESS_URC_MSG_INIT();
- BLOCK_PROCESS_URC_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_urc_parcel_list.begin();iter!=s_recv_urc_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_urc_parcel_list.clear();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-
- pthread_mutex_init(&s_urc_mutex, NULL);
-
- module_urc_status = 1;
- // pthread_attr_init(&attr);
- // pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ret = pthread_create(&module_urc_tid,/*&attr*/NULL,thread_urc_recv,NULL);
- if(ret <0)
- {
- LYERRLOG("urc recv pthread create error");
- module_urc_status = 0;
- lynq_close_urc_socket();
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- module_urc_process_status = 1;
- ret = pthread_create(&module_urc_process_tid,/*&attr*/NULL,thread_urc_process,NULL);
- if(ret <0)
- {
- LYERRLOG("urc process pthread create error");
- module_urc_process_status = 0;
- lynq_close_urc_socket();
- lynq_close_urc_rev_thread();
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- LYINFLOG("urc start success");
-
- return RESULT_OK;
-}
-
-void lynq_close_all_urc_socket_thread()
-{
-
- lynq_close_urc_rev_thread();
- lynq_close_urc_socket();
- lynq_close_urc_process_thread();
-
- BLOCK_PROCESS_URC_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_urc_parcel_list.begin();iter!=s_recv_urc_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_urc_parcel_list.clear();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-
- ril_deinit_mem();
-}
-
-/**@ a thread just for recv\buffer solicited msg's response and notice waiting thread
-* @param p [IN]: no meaning
-* @return
-* always null
-*/
-void *thread_rc_recv(void *p)
-{
- Parcel* rc_p;
- std::list<Parcel*>::iterator iter;
- int resp_type = -1;
- char rc_data[LYNQ_REC_BUF];
- int rc_len;
- int null_cnt=0;
- int wakeup_token;
-
- LYINFLOG("rc thread is running");
- while(module_rc_status)
- {
- bzero(rc_data,LYNQ_REC_BUF);
- while(true)
- {
- rc_len = recvfrom(module_rc_sock_fd,rc_data,sizeof(rc_data),0,(struct sockaddr *)&module_rc_addr_serv,(socklen_t *)&module_len_rc_addr_serv);
- if(rc_len<sizeof(int32_t)*2)
- {
- LYERRLOG("%s recv len %d less %d",__func__, rc_len,sizeof(int)*2);
- continue;
- }
- rc_p= new Parcel;
- if(rc_p==NULL)
- {
- null_cnt++;
- LYERRLOG("%s rc_p is NULL, cnt is %d",__func__, null_cnt);
- if(null_cnt>20)
- {
- goto rc_recv_end;
- }
- continue;
- }
- else
- {
- null_cnt=0;
- }
-
- rc_p->setData((uint8_t *)rc_data,rc_len); // p.setData((uint8_t *) buffer, buflen);
- rc_p->setDataPosition(0);
- if(rc_p->dataAvail()>0)
- {
- rc_p->readInt32(&resp_type);
- rc_p->readInt32(&wakeup_token);
- BLOCK_RECV_MSG_LOCK();
- s_recv_parcel_list.push_back(rc_p);
- LYINFLOG("%s wakeup token is %d, list size is %d!",__func__,wakeup_token,s_recv_parcel_list.size());
- if(s_recv_parcel_list.size()>20) //max 20
- {
- iter=s_recv_parcel_list.begin();
- (*iter)->setDataPosition(0);
- (*iter)->readInt32(&resp_type);
- (*iter)->readInt32(&wakeup_token);
- delete (*(s_recv_parcel_list.begin()));
- LYERRLOG("%s wakeup token %d is deleted!",__func__,wakeup_token);
- s_recv_parcel_list.erase(iter);
- }
- BLOCK_WAKEUP_RECV_MSG();
- BLOCK_RECV_MSG_UNLOCK();
- break;
- }
- else
- {
- LYERRLOG("%s rc_p data Avail %d not greater than 0",__func__, rc_p->dataAvail());
- delete rc_p;
- }
- }
- }
-
-rc_recv_end:
- LYINFLOG("rc thread ended");
- return NULL;
-}
-
-int lynq_start_all_rc_socket_thread()
-{
- module_rc_sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if(module_rc_sock_fd < 0)
- {
- LYERRLOG("socket open error");
- return -1;
- }
-
- LYINFLOG("module_rc_sock_fd = %d",module_rc_sock_fd);
-
- memset(&module_rc_addr_serv, 0, sizeof(module_rc_addr_serv));
- module_rc_addr_serv.sin_family = AF_INET;
- module_rc_addr_serv.sin_addr.s_addr = inet_addr(LYNQ_ADDRESS);
- module_rc_addr_serv.sin_port = htons(LYNQ_SERVICE_PORT);
- module_len_rc_addr_serv = sizeof(module_rc_addr_serv);
-
- BLOCK_RECV_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_parcel_list.clear();
- BLOCK_RECV_MSG_UNLOCK();
-
-// pthread_attr_t attr;
- int ret;
-
- pthread_mutex_init(&s_sendto_mutex, NULL);
- pthread_mutex_init(&s_RecvMsgBlockMutex, NULL);
-
- module_rc_status = 1;
-// pthread_attr_init(&attr);
-// pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ret = pthread_create(&module_rc_tid,/*&attr*/NULL,thread_rc_recv,NULL);
- if(ret <0)
- {
- LYERRLOG("rc pthread create error");
- module_rc_status =0;
- close(module_rc_sock_fd);
- module_rc_sock_fd =-1;
- return ret;
- }
-
- LYINFLOG("rc start success");
-
- return RESULT_OK;
-}
-
-void lynq_close_all_rc_socket_thread()
-{
- int ret;
- BLOCK_RECV_MSG_LOCK();
- module_rc_status = 0;
- BLOCK_WAKEUP_RECV_MSG();
- if(module_rc_tid != -1)
- {
- ret = pthread_cancel(module_rc_tid);
- LYINFLOG("pthread cancel rc ret = %d",ret);
- }
- BLOCK_RECV_MSG_UNLOCK();
- if(module_rc_tid != -1)
- {
- ret = pthread_join(module_rc_tid,NULL);
- module_rc_tid =-1;
- LYINFLOG("pthread join rc tid ret = %d",ret);
-
- }
-
- if (module_rc_sock_fd > 0)
- {
- close(module_rc_sock_fd);
- module_rc_sock_fd =-1;
- }
-
- BLOCK_RECV_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_parcel_list.clear();
- BLOCK_RECV_MSG_UNLOCK();
-}
-
-const char * requestToString(int request)
-{
- /*
- cat libs/telephony/ril_commands.h \
- | egrep "^ *{RIL_" \
- | sed -re 's/\{RIL_([^,]+),[^,]+,([^}]+).+/case RIL_\1: return "\1";/'
-
-
- cat libs/telephony/ril_unsol_commands.h \
- | egrep "^ *{RIL_" \
- | sed -re 's/\{RIL_([^,]+),([^}]+).+/case RIL_\1: return "\1";/'
-
- */
- switch(request) {
- case RIL_REQUEST_GET_SIM_STATUS: return "GET_SIM_STATUS";
- case RIL_REQUEST_ENTER_SIM_PIN: return "ENTER_SIM_PIN";
- case RIL_REQUEST_ENTER_SIM_PUK: return "ENTER_SIM_PUK";
- case RIL_REQUEST_ENTER_SIM_PIN2: return "ENTER_SIM_PIN2";
- case RIL_REQUEST_ENTER_SIM_PUK2: return "ENTER_SIM_PUK2";
- case RIL_REQUEST_CHANGE_SIM_PIN: return "CHANGE_SIM_PIN";
- case RIL_REQUEST_CHANGE_SIM_PIN2: return "CHANGE_SIM_PIN2";
- case RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION: return "ENTER_NETWORK_DEPERSONALIZATION";
- case RIL_REQUEST_GET_CURRENT_CALLS: return "GET_CURRENT_CALLS";
- case RIL_REQUEST_DIAL: return "DIAL";
- case RIL_REQUEST_GET_IMSI: return "GET_IMSI";
- case RIL_REQUEST_HANGUP: return "HANGUP";
- case RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND: return "HANGUP_WAITING_OR_BACKGROUND";
- case RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND: return "HANGUP_FOREGROUND_RESUME_BACKGROUND";
- case RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE: return "SWITCH_WAITING_OR_HOLDING_AND_ACTIVE";
- case RIL_REQUEST_CONFERENCE: return "CONFERENCE";
- case RIL_REQUEST_UDUB: return "UDUB";
- case RIL_REQUEST_LAST_CALL_FAIL_CAUSE: return "LAST_CALL_FAIL_CAUSE";
- case RIL_REQUEST_SIGNAL_STRENGTH: return "SIGNAL_STRENGTH";
- case RIL_REQUEST_VOICE_REGISTRATION_STATE: return "VOICE_REGISTRATION_STATE";
- case RIL_REQUEST_DATA_REGISTRATION_STATE: return "DATA_REGISTRATION_STATE";
- case RIL_REQUEST_OPERATOR: return "OPERATOR";
- case RIL_REQUEST_RADIO_POWER: return "RADIO_POWER";
- case RIL_REQUEST_DTMF: return "DTMF";
- case RIL_REQUEST_SEND_SMS: return "SEND_SMS";
- case RIL_REQUEST_SEND_SMS_EXPECT_MORE: return "SEND_SMS_EXPECT_MORE";
- case RIL_REQUEST_SETUP_DATA_CALL: return "SETUP_DATA_CALL";
- case RIL_REQUEST_SIM_IO: return "SIM_IO";
- case RIL_REQUEST_SEND_USSD: return "SEND_USSD";
- case RIL_REQUEST_CANCEL_USSD: return "CANCEL_USSD";
- case RIL_REQUEST_GET_CLIR: return "GET_CLIR";
- case RIL_REQUEST_SET_CLIR: return "SET_CLIR";
- case RIL_REQUEST_QUERY_CALL_FORWARD_STATUS: return "QUERY_CALL_FORWARD_STATUS";
- case RIL_REQUEST_SET_CALL_FORWARD: return "SET_CALL_FORWARD";
- case RIL_REQUEST_QUERY_CALL_WAITING: return "QUERY_CALL_WAITING";
- case RIL_REQUEST_SET_CALL_WAITING: return "SET_CALL_WAITING";
- case RIL_REQUEST_SMS_ACKNOWLEDGE: return "SMS_ACKNOWLEDGE";
- case RIL_REQUEST_GET_IMEI: return "GET_IMEI";
- case RIL_REQUEST_GET_IMEISV: return "GET_IMEISV";
- case RIL_REQUEST_ANSWER: return "ANSWER";
- case RIL_REQUEST_DEACTIVATE_DATA_CALL: return "DEACTIVATE_DATA_CALL";
- case RIL_REQUEST_QUERY_FACILITY_LOCK: return "QUERY_FACILITY_LOCK";
- case RIL_REQUEST_SET_FACILITY_LOCK: return "SET_FACILITY_LOCK";
- case RIL_REQUEST_CHANGE_BARRING_PASSWORD: return "CHANGE_BARRING_PASSWORD";
- case RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE: return "QUERY_NETWORK_SELECTION_MODE";
- case RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC: return "SET_NETWORK_SELECTION_AUTOMATIC";
- case RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL: return "SET_NETWORK_SELECTION_MANUAL";
- case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS : return "QUERY_AVAILABLE_NETWORKS ";
- case RIL_REQUEST_DTMF_START: return "DTMF_START";
- case RIL_REQUEST_DTMF_STOP: return "DTMF_STOP";
- case RIL_REQUEST_BASEBAND_VERSION: return "BASEBAND_VERSION";
- case RIL_REQUEST_SEPARATE_CONNECTION: return "SEPARATE_CONNECTION";
- case RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE: return "SET_PREFERRED_NETWORK_TYPE";
- case RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE: return "GET_PREFERRED_NETWORK_TYPE";
- case RIL_REQUEST_GET_NEIGHBORING_CELL_IDS: return "GET_NEIGHBORING_CELL_IDS";
- case RIL_REQUEST_SET_MUTE: return "SET_MUTE";
- case RIL_REQUEST_GET_MUTE: return "GET_MUTE";
- case RIL_REQUEST_QUERY_CLIP: return "QUERY_CLIP";
- case RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE: return "LAST_DATA_CALL_FAIL_CAUSE";
- case RIL_REQUEST_DATA_CALL_LIST: return "DATA_CALL_LIST";
- case RIL_REQUEST_RESET_RADIO: return "RESET_RADIO";
- case RIL_REQUEST_OEM_HOOK_RAW: return "OEM_HOOK_RAW";
- case RIL_REQUEST_OEM_HOOK_STRINGS: return "OEM_HOOK_STRINGS";
- case RIL_REQUEST_SET_BAND_MODE: return "SET_BAND_MODE";
- case RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE: return "QUERY_AVAILABLE_BAND_MODE";
- case RIL_REQUEST_STK_GET_PROFILE: return "STK_GET_PROFILE";
- case RIL_REQUEST_STK_SET_PROFILE: return "STK_SET_PROFILE";
- case RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND: return "STK_SEND_ENVELOPE_COMMAND";
- case RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE: return "STK_SEND_TERMINAL_RESPONSE";
- case RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM: return "STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM";
- case RIL_REQUEST_SCREEN_STATE: return "SCREEN_STATE";
- case RIL_REQUEST_EXPLICIT_CALL_TRANSFER: return "EXPLICIT_CALL_TRANSFER";
- case RIL_REQUEST_SET_LOCATION_UPDATES: return "SET_LOCATION_UPDATES";
- case RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE:return"CDMA_SET_SUBSCRIPTION_SOURCE";
- case RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE:return"CDMA_SET_ROAMING_PREFERENCE";
- case RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE:return"CDMA_QUERY_ROAMING_PREFERENCE";
- case RIL_REQUEST_SET_TTY_MODE:return"SET_TTY_MODE";
- case RIL_REQUEST_QUERY_TTY_MODE:return"QUERY_TTY_MODE";
- case RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE";
- case RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE";
- case RIL_REQUEST_CDMA_FLASH:return"CDMA_FLASH";
- case RIL_REQUEST_CDMA_BURST_DTMF:return"CDMA_BURST_DTMF";
- case RIL_REQUEST_CDMA_SEND_SMS:return"CDMA_SEND_SMS";
- case RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE:return"CDMA_SMS_ACKNOWLEDGE";
- case RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG:return"GSM_GET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG:return"GSM_SET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION:return "GSM_SMS_BROADCAST_ACTIVATION";
- case RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG:return "CDMA_GET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG:return "CDMA_SET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION:return "CDMA_SMS_BROADCAST_ACTIVATION";
- case RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY: return"CDMA_VALIDATE_AND_WRITE_AKEY";
- case RIL_REQUEST_CDMA_SUBSCRIPTION: return"CDMA_SUBSCRIPTION";
- case RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM: return "CDMA_WRITE_SMS_TO_RUIM";
- case RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM: return "CDMA_DELETE_SMS_ON_RUIM";
- case RIL_REQUEST_DEVICE_IDENTITY: return "DEVICE_IDENTITY";
- case RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE: return "EXIT_EMERGENCY_CALLBACK_MODE";
- case RIL_REQUEST_GET_SMSC_ADDRESS: return "GET_SMSC_ADDRESS";
- case RIL_REQUEST_SET_SMSC_ADDRESS: return "SET_SMSC_ADDRESS";
- case RIL_REQUEST_REPORT_SMS_MEMORY_STATUS: return "REPORT_SMS_MEMORY_STATUS";
- case RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING: return "REPORT_STK_SERVICE_IS_RUNNING";
- case RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE: return "CDMA_GET_SUBSCRIPTION_SOURCE";
- case RIL_REQUEST_ISIM_AUTHENTICATION: return "ISIM_AUTHENTICATION";
- case RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU: return "RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU";
- case RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS: return "RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS";
- case RIL_REQUEST_VOICE_RADIO_TECH: return "VOICE_RADIO_TECH";
- case RIL_REQUEST_GET_CELL_INFO_LIST: return"GET_CELL_INFO_LIST";
- case RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE: return"SET_UNSOL_CELL_INFO_LIST_RATE";
- case RIL_REQUEST_SET_INITIAL_ATTACH_APN: return "RIL_REQUEST_SET_INITIAL_ATTACH_APN";
- case RIL_REQUEST_IMS_REGISTRATION_STATE: return "IMS_REGISTRATION_STATE";
- case RIL_REQUEST_IMS_SEND_SMS: return "IMS_SEND_SMS";
- case RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC: return "SIM_TRANSMIT_APDU_BASIC";
- case RIL_REQUEST_SIM_OPEN_CHANNEL: return "SIM_OPEN_CHANNEL";
- case RIL_REQUEST_SIM_CLOSE_CHANNEL: return "SIM_CLOSE_CHANNEL";
- case RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL: return "SIM_TRANSMIT_APDU_CHANNEL";
- case RIL_REQUEST_GET_RADIO_CAPABILITY: return "RIL_REQUEST_GET_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_RADIO_CAPABILITY: return "RIL_REQUEST_SET_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_UICC_SUBSCRIPTION: return "SET_UICC_SUBSCRIPTION";
- case RIL_REQUEST_ALLOW_DATA: return "ALLOW_DATA";
- case RIL_REQUEST_GET_HARDWARE_CONFIG: return "GET_HARDWARE_CONFIG";
- case RIL_REQUEST_SIM_AUTHENTICATION: return "SIM_AUTHENTICATION";
- case RIL_REQUEST_GET_DC_RT_INFO: return "GET_DC_RT_INFO";
- case RIL_REQUEST_SET_DC_RT_INFO_RATE: return "SET_DC_RT_INFO_RATE";
- case RIL_REQUEST_SET_DATA_PROFILE: return "SET_DATA_PROFILE";
- case RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED: return "UNSOL_RESPONSE_RADIO_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED: return "UNSOL_RESPONSE_CALL_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_PS_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_NEW_SMS: return "UNSOL_RESPONSE_NEW_SMS";
- case RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT: return "UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT";
- case RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM: return "UNSOL_RESPONSE_NEW_SMS_ON_SIM";
- case RIL_UNSOL_ON_USSD: return "UNSOL_ON_USSD";
- case RIL_UNSOL_ON_USSD_REQUEST: return "UNSOL_ON_USSD_REQUEST(obsolete)";
- case RIL_UNSOL_NITZ_TIME_RECEIVED: return "UNSOL_NITZ_TIME_RECEIVED";
- case RIL_UNSOL_SIGNAL_STRENGTH: return "UNSOL_SIGNAL_STRENGTH";
- case RIL_UNSOL_STK_SESSION_END: return "UNSOL_STK_SESSION_END";
- case RIL_UNSOL_STK_PROACTIVE_COMMAND: return "UNSOL_STK_PROACTIVE_COMMAND";
- case RIL_UNSOL_STK_EVENT_NOTIFY: return "UNSOL_STK_EVENT_NOTIFY";
- case RIL_UNSOL_STK_CALL_SETUP: return "UNSOL_STK_CALL_SETUP";
- case RIL_UNSOL_SIM_SMS_STORAGE_FULL: return "UNSOL_SIM_SMS_STORAGE_FUL";
- case RIL_UNSOL_SIM_REFRESH: return "UNSOL_SIM_REFRESH";
- case RIL_UNSOL_DATA_CALL_LIST_CHANGED: return "UNSOL_DATA_CALL_LIST_CHANGED";
- case RIL_UNSOL_CALL_RING: return "UNSOL_CALL_RING";
- case RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED: return "UNSOL_RESPONSE_SIM_STATUS_CHANGED";
- case RIL_UNSOL_RESPONSE_CDMA_NEW_SMS: return "UNSOL_NEW_CDMA_SMS";
- case RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS: return "UNSOL_NEW_BROADCAST_SMS";
- case RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL: return "UNSOL_CDMA_RUIM_SMS_STORAGE_FULL";
- case RIL_UNSOL_RESTRICTED_STATE_CHANGED: return "UNSOL_RESTRICTED_STATE_CHANGED";
- case RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE: return "UNSOL_ENTER_EMERGENCY_CALLBACK_MODE";
- case RIL_UNSOL_CDMA_CALL_WAITING: return "UNSOL_CDMA_CALL_WAITING";
- case RIL_UNSOL_CDMA_OTA_PROVISION_STATUS: return "UNSOL_CDMA_OTA_PROVISION_STATUS";
- case RIL_UNSOL_CDMA_INFO_REC: return "UNSOL_CDMA_INFO_REC";
- case RIL_UNSOL_OEM_HOOK_RAW: return "UNSOL_OEM_HOOK_RAW";
- case RIL_UNSOL_RINGBACK_TONE: return "UNSOL_RINGBACK_TONE";
- case RIL_UNSOL_RESEND_INCALL_MUTE: return "UNSOL_RESEND_INCALL_MUTE";
- case RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED: return "UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED";
- case RIL_UNSOL_CDMA_PRL_CHANGED: return "UNSOL_CDMA_PRL_CHANGED";
- case RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE: return "UNSOL_EXIT_EMERGENCY_CALLBACK_MODE";
- case RIL_UNSOL_RIL_CONNECTED: return "UNSOL_RIL_CONNECTED";
- case RIL_UNSOL_VOICE_RADIO_TECH_CHANGED: return "UNSOL_VOICE_RADIO_TECH_CHANGED";
- case RIL_UNSOL_CELL_INFO_LIST: return "UNSOL_CELL_INFO_LIST";
- case RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED: return "RESPONSE_IMS_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED: return "UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED";
- case RIL_UNSOL_SRVCC_STATE_NOTIFY: return "UNSOL_SRVCC_STATE_NOTIFY";
- case RIL_UNSOL_HARDWARE_CONFIG_CHANGED: return "HARDWARE_CONFIG_CHANGED";
- case RIL_UNSOL_DC_RT_INFO_CHANGED: return "UNSOL_DC_RT_INFO_CHANGED";
- case RIL_REQUEST_SHUTDOWN: return "SHUTDOWN";
- case RIL_UNSOL_RADIO_CAPABILITY: return "RIL_UNSOL_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_TRM: return "RIL_REQUEST_SET_TRM";
- case RIL_REQUEST_SET_IMS_ENABLE:return "RIL_REQUEST_SET_IMS_ENABLE";
- case RIL_REQUEST_SET_AUDIO_PATH: return "SET_AUDIO_PATH";
- case RIL_REQUEST_HANGUP_ALL: return "HANGUP_ALL";
- case RIL_REQUEST_FORCE_RELEASE_CALL: return "FORCE_RELEASE_CALL";
- case RIL_REQUEST_EMERGENCY_DIAL: return "RIL_REQUEST_EMERGENCY_DIAL";
- case RIL_REQUEST_SET_ECC_SERVICE_CATEGORY: return "RIL_REQUEST_SET_ECC_SERVICE_CATEGORY";
- case RIL_REQUEST_SET_ECC_LIST: return "RIL_REQUEST_SET_ECC_LIST";
- case RIL_REQUEST_AT_COMMAND_WITH_PROXY: return "AT_COMMAND_WITH_PROXY";
- case RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION: return "RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION";
- case RIL_REQUEST_SET_CLIP: return "RIL_REQUEST_SET_CLIP";
- case RIL_REQUEST_GET_COLP: return "RIL_REQUEST_GET_COLP";
- case RIL_REQUEST_SET_COLP: return "RIL_REQUEST_SET_COLP";
- case RIL_REQUEST_GET_COLR: return "RIL_REQUEST_GET_COLR";
- case RIL_REQUEST_ADD_IMS_CONFERENCE_CALL_MEMBER: return "ADD_IMS_CONFERENCE_CALL_MEMBER";
- case RIL_REQUEST_REMOVE_IMS_CONFERENCE_CALL_MEMBER: return "REMOVE_IMS_CONFERENCE_CALL_MEMBER";
- case RIL_REQUEST_CONFERENCE_DIAL: return "CONFERENCE_DIAL";
- case RIL_REQUEST_DIAL_WITH_SIP_URI: return "DIAL_WITH_SIP_URI";
- case RIL_REQUEST_HOLD_CALL: return "HOLD_CALL";
- case RIL_REQUEST_RESUME_CALL: return "RESUME_CALL";
- case RIL_UNSOL_ECONF_SRVCC_INDICATION : return "ECONF_SRVCC_INDICATION";
- case RIL_UNSOL_ECONF_RESULT_INDICATION : return "ECONF_RESULT_INDICATION";
- case RIL_UNSOL_MAL_AT_INFO : return "UNSOL_MAL_AT_INFO";
- case RIL_REQUEST_MODEM_POWEROFF: return "MODEM_POWEROFF";
- case RIL_REQUEST_MODEM_POWERON: return "MODEM_POWERON";
- case RIL_REQUEST_WRITE_SMS_TO_SIM: return "WRITE_SMS_TO_SIM";
- case RIL_REQUEST_QUERY_ICCID: return "RIL_REQUEST_QUERY_ICCID";
- case RIL_UNSOL_TX_POWER: return "RIL_UNSOL_TX_POWER";
- case RIL_UNSOL_NETWORK_INFO: return "RIL_UNSOL_NETWORK_INFO";
- case RIL_REQUEST_DELETE_SMS_ON_SIM: return "DELETE_SMS_ON_SIM";
- case RIL_REQUEST_SET_IMSCFG: return "RIL_REQUEST_SET_IMSCFG";
-#ifdef ECALL_SUPPORT
- case RIL_REQUEST_ECALL_FAST_MAKE_ECALL: return "ECALL_FAST_MAKE_ECALL";
- case RIL_REQUEST_ECALL_SET_IVS: return "RIL_REQUEST_ECALL_SET_IVS";
- case RIL_REQUEST_ECALL_SET_PSAP: return "RIL_REQUEST_ECALL_SET_PSAP";
- case RIL_REQUEST_ECALL_MAKE_ECALL: return "RIL_REQUEST_ECALL_MAKE_ECALL";
- case RIL_REQUEST_ECALL_IVS_PUSH_MSD: return "RIL_REQUEST_ECALL_IVS_PUSH_MSD";
- case RIL_REQUEST_ECALL_PSAP_PULL_MSD: return "RIL_REQUEST_ECALL_PSAP_PULL_MSD";
- case RIL_UNSOL_ECALL_MSDHACK : return "ECALL_MSDHACK";
- case RIL_REQUEST_ECALL_SET_MSD: return "RIL_REQUEST_ECALL_SET_MSD";
- case RIL_REQUEST_ECALL_CTRL_SEQUENCE: return "ECALL_SET_CTRL_SEQUENCE";
- case RIL_UNSOL_ECALL_INDICATIONS : return "ECALL_INDICATIONS";
- case RIL_REQUEST_ECALL_RESET_IVS: return "RIL_REQUEST_ECALL_RESET_IVS";
- case RIL_REQUEST_ECALL_SET_PRI: return "RIL_REQUEST_ECALL_SET_PRI";
- case RIL_REQUEST_ECALL_SET_TEST_NUM: return "RIL_REQUEST_ECALL_SET_TEST_NUM";
- case RIL_REQUEST_ECALL_SET_RECONF_NUM: return "RIL_REQUEST_ECALL_SET_RECONF_NUM";
- case RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD: return "RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD";
- case RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME: return "RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME";
- case RIL_REQUEST_ECALL_SET_REGISTRATION_STATE: return "RIL_REQUEST_ECALL_SET_REGISTRATION_STATE";
-#endif /*ECALL_SUPPORT*/
-#ifdef KEEP_ALIVE
- case RIL_REQUEST_START_KEEPALIVE_PRO: return "RIL_REQUEST_START_KEEPALIVE_PRO";
- case RIL_REQUEST_STOP_KEEPALIVE_PRO: return "RIL_REQUEST_STOP_KEEPALIVE_PRO";
- case RIL_UNSOL_KEEPALIVE_STATUS_PRO: return "RIL_UNSOL_KEEPALIVE_STATUS_PRO";
-#endif /*KEEP_ALIVE*/
- case RIL_REQUEST_SEND_USSI: return "SEND_USSI";
- case RIL_REQUEST_CANCEL_USSI: return "CANCEL_USSI";
- case RIL_REQUEST_GET_SMS_SIM_MEM_STATUS: return "GET_SMS_SIM_MEM_STATUS";
- case RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR: return "RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR";
- case RIL_REQUEST_REPORT_AIRPLANE_MODE: return "RIL_REQUEST_REPORT_AIRPLANE_MODE";
- case RIL_REQUEST_SET_ECC_NUM: return "RIL_REQUEST_SET_ECC_NUM";
- case RIL_REQUEST_GET_ECC_NUM: return "RIL_REQUEST_GET_ECC_NUM";
- case RIL_UNSOL_ECC_NUM: return "RIL_UNSOL_ECC_NUM";
- case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT: return "RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT";
- case RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE";
- case RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE";
- case RIL_UNSOL_CALL_INFO_INDICATION: return "RIL_UNSOL_CALL_INFO_INDICATION";
- case RIL_REQUEST_MODIFY_APN: return "RIL_REQUEST_MODIFY_APN";
- case RIL_REQUEST_RESET_APN: return "RIL_REQUEST_RESET_APN";
- case RIL_REQUEST_QUERY_SIM_RETRY_COUNT: return "RIL_REQUEST_QUERY_SIM_RETRY_COUNT";
- case RIL_REQUEST_QUERY_EID: return "RIL_REQUEST_QUERY_EID";
- case LYNQ_REQUEST_SET_DTMF_VOLUME: return "RIL_REQUEST_SET_DTMF_VOLUME";
- case LYNQ_REQUEST_SET_SPEECH_VOLUME: return "RIL_REQUEST_SET_SPEECH_VOLUME";
- case LYNQ_REQUEST_GET_SPEECH_VOLUME: return "RIL_REQUEST_GET_SPEECH_VOLUME";
- case LYNQ_REQUEST_RECORD: return "RIL_REQUEST_RECORD";
- /*warren add for t800 ril service 2022/1/22 start*/
- case LYNQ_REQUEST_WRITE_SMS_TO_MEMORY: return "LYNQ_REQUEST_WRITE_SMS_TO_MEMORY";
- case LYNQ_REQUEST_READ_SMS_FROM_MEMORY: return "LYNQ_REQUEST_READ_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY: return "LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_LIST_SMS_FROM_MEMORY: return "LYNQ_REQUEST_LIST_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_SET_DEFAULT_SIM_ALL:return "SET_DEFAULT_SIM_ALL";
- case LYNQ_REQUEST_CHANGE_SCREEN_STATE:return "LYNQ_REQUEST_CHANGE_SCREEN_STATE";/*jb.qi add for two sim sleep 2022/9/19*/
- case LYNQ_REQUEST_CHANGE_RADIO:return "LYNQ_REQUEST_CHANGE_RADIO";/*lei add for factory test of sleep 2022/9/19*/
- /*warren add for t800 ril service 2022/1/22 end*/
- default: return "<unknown request>";
- }
-}
-
-
diff --git a/src/lynq/lib/liblynq-call/lynq_module_socket.h b/src/lynq/lib/liblynq-call/lynq_module_socket.h
deleted file mode 100755
index 41c0d1c..0000000
--- a/src/lynq/lib/liblynq-call/lynq_module_socket.h
+++ /dev/null
@@ -1,21 +0,0 @@
-#ifndef LYNQ_MODULE_SOCKET_H
-#define LYNQ_MODULE_SOCKET_H
-
-using ::android::Parcel;
-
-int lynq_set_test_network(const int test_mode);
-
-extern int g_module_Global_uToken;
-extern int g_wait_time;
-int lynq_send_common_request(Parcel*& p, int time_out, int request_id, int argc, const char* format,...);
-int lynq_start_all_urc_socket_thread();
-void lynq_close_all_urc_socket_thread();
-int lynq_start_all_rc_socket_thread();
-void lynq_close_all_rc_socket_thread();
-
-const char * requestToString(int request);
-
-void urc_msg_process(Parcel *p);
-bool is_support_urc(int urc_id);
-
-#endif
diff --git a/src/lynq/lib/liblynq-data/include/libdata/lynq_data.h b/src/lynq/lib/liblynq-data/include/libdata/lynq_data.h
index 277f4da..a54a7b4 100755
--- a/src/lynq/lib/liblynq-data/include/libdata/lynq_data.h
+++ b/src/lynq/lib/liblynq-data/include/libdata/lynq_data.h
@@ -1,5 +1,5 @@
#ifndef LYNQ_DATA_H
-#define LYNQ_DATA_H 1
+#define LYNQ_DATA_H
#ifdef __cplusplus
extern "C" {
#endif
@@ -48,6 +48,14 @@
Value <= 0 means network has either not sent a value or
sent an invalid value */
} lynq_data_call_response_v11_t;
+
+typedef struct
+{
+ int index;
+ char apn[LYNQ_APN_MAX_LEN];
+ char apnType[LYNQ_APN_TYPE_MAX_LEN];
+}lynq_apn_info;
+
int lynq_init_data(int uToken);
int lynq_deinit_data();
int lynq_setup_data_call(int *handle);
@@ -58,6 +66,7 @@
int lynq_wait_data_call_state_change(int *handle);
int lynq_modify_apn_db(const int cmd,char *id,char *mcc,char *mnc,char *apn,char *apntype,char *user,char *password,char *normalprotocol,char *roamingprotocol,char *carrier,char *out);
int lynq_reset_apn(char *result);
+int lynq_get_apn_table(int *size,lynq_apn_info **list);
#ifdef __cplusplus
}
diff --git a/src/lynq/lib/liblynq-data/lynq_data.cpp b/src/lynq/lib/liblynq-data/lynq_data.cpp
index c0af733..96882e4 100755
--- a/src/lynq/lib/liblynq-data/lynq_data.cpp
+++ b/src/lynq/lib/liblynq-data/lynq_data.cpp
@@ -57,6 +57,8 @@
int lynq_client_sockfd = 0;
int Global_uToken = 0;
+struct sockaddr_in lynq_data_socket_server_addr;
+int lynq_data_socket_server_addr_len;
int lynq_data_call_change_id = -1;
pthread_t lynq_data_tid =-1;
@@ -71,10 +73,12 @@
* @brief mark data send request mutex
*/
static pthread_mutex_t g_lynq_data_sendto_mutex;
-
+/*This value data the state of the wait*/
static int data_waiting_status = 0;
-
+/*The value indicates that 8085 error occurs in data*/
static int data_invaild_error = 0;
+/*This value ensure the data call timing is correct*/
+static int data_timelimit = 0;
/**g_lynq_data_init_flag
* @brief mark data initialization state
@@ -96,6 +100,8 @@
char ifaceName[LYNQ_IFACE_NAME_MAX_LEN];
int hasUsed;
int hasTimeout;
+ int status;
+ char statusApnType[LYNQ_APN_TYPE_MAX_LEN];
}lynq_apn_t;
lynq_apn_t lynq_apn_table[LYNQ_APN_CHANNEL_MAX] = {};
lynq_data_call_response_v11_t lynq_data_call_lists[LYNQ_APN_CHANNEL_MAX] = {};
@@ -107,7 +113,8 @@
int len = 0;
for(ret;ret<LYNQ_APN_CHANNEL_MAX;ret++)
{
- len = strlen(lynq_apn_table[ret].apnType)<strlen(apnType) ? strlen(lynq_apn_table[ret].apnType):strlen(apnType);
+ len = strlen(apnType);
+ LYINFLOG("apn_table[%d].apnType:%s,input apntype:%s,len:%d",ret,lynq_apn_table[ret].apnType,apnType,len);
if(strncmp(lynq_apn_table[ret].apnType,apnType,len)==0)
{
return ret;
@@ -116,6 +123,22 @@
return -1;
}
+int getDeactApnID(char apnType[])
+{
+ int ret = 0;
+ int len = 0;
+ for(ret;ret<LYNQ_APN_CHANNEL_MAX;ret++)
+ {
+ len = strlen(apnType);
+ LYINFLOG("apn_table[%d].apnType:%s,input apntype:%s,len:%d",ret,lynq_apn_table[ret].apnType,apnType,len);
+ if(strncmp(lynq_apn_table[ret].statusApnType,apnType,len)==0)
+ {
+ return ret;
+ }
+ }
+ return -1;
+}
+
void updateApnTable(lynq_apn_t *apn_table,char apn[],char apntype[],char ifaceName[])
{
LYDBGLOG("[updateApnTable] apn:%s,apntype:%s,ifaceName:%s",apn,apntype,ifaceName);
@@ -134,7 +157,7 @@
void cleanOnceApnTable(int apnId)
{
- LYDBGLOG("apn id:%d",apnId);
+ LYDBGLOG("%s:apn id:%d",__FUNCTION__,apnId);
if((apnId < 0) || (apnId > LYNQ_APN_CHANNEL_MAX-1))
{
LYERRLOG("apn id is invalid!!!");
@@ -142,18 +165,44 @@
}
lynq_apn_table[apnId].hasTimeout = 0;
lynq_apn_table[apnId].hasUsed = 0;
+ memcpy(lynq_apn_table[apnId].statusApnType,lynq_apn_table[apnId].apnType,strlen(lynq_apn_table[apnId].apnType));
bzero(lynq_apn_table[apnId].apn,LYNQ_APN_MAX_LEN);
- //bzero(lynq_apn_table[apnId].apnType,LYNQ_APN_TYPE_MAX_LEN);
+ bzero(lynq_apn_table[apnId].apnType,LYNQ_APN_TYPE_MAX_LEN);
bzero(lynq_apn_table[apnId].ifaceName,LYNQ_IFACE_NAME_MAX_LEN);
+ lynq_apn_table[apnId].status = 32;
return;
}
+void cleanDeactApn(int apnId)
+{
+ LYDBGLOG("%s:apn id:%d",__FUNCTION__,apnId);
+ if((apnId < 0) || (apnId > LYNQ_APN_CHANNEL_MAX-1))
+ {
+ LYERRLOG("apn id is invalid!!!");
+ return;
+ }
+ lynq_apn_table[apnId].status = 0;
+ bzero(lynq_apn_table[apnId].statusApnType,LYNQ_APN_TYPE_MAX_LEN);
+}
+
+void updateDeactApn(int apnId,int pdnState)
+{
+ LYDBGLOG("%s:apn id:%d",__FUNCTION__,apnId);
+ if((apnId < 0) || (apnId > LYNQ_APN_CHANNEL_MAX-1))
+ {
+ LYERRLOG("apn id is invalid!!!");
+ return;
+ }
+ lynq_apn_table[apnId].status = pdnState;
+}
+
+
int getUnusedElement()
{
- if (lynq_apn_table == NULL)
- {
- LYERRLOG("get UnusedElemnt apn_table is null");
- return -1;
- }
+ if (lynq_apn_table == NULL)
+ {
+ LYERRLOG("get UnusedElemnt apn_table is null");
+ return -1;
+ }
for(int i=0;i < LYNQ_APN_CHANNEL_MAX; i++)
{
if(lynq_apn_table[i].hasUsed!=1)
@@ -168,8 +217,11 @@
{
int ret = 0;
ret = getUnusedElement();
- memcpy(lynq_apn_table[ret].apnType,apnType,strlen(apnType)+1);
- lynq_apn_table[ret].hasUsed = 1;
+ if(ret >= 0)
+ {
+ memcpy(lynq_apn_table[ret].apnType,apnType,strlen(apnType)+1);
+ lynq_apn_table[ret].hasUsed = 1;
+ }
return ret;
}
@@ -258,10 +310,11 @@
char recvline[LYNQ_REC_BUF];
bzero(recvline,LYNQ_REC_BUF);
/* receive data from server */
- len = read(sockfd, recvline, LYNQ_REC_BUF);
+ len = recvfrom(sockfd,recvline,LYNQ_REC_BUF,0,(struct sockaddr *)&lynq_data_socket_server_addr,(socklen_t *)&lynq_data_socket_server_addr_len);
+ //len = read(sockfd, recvline, LYNQ_REC_BUF);
if(len == -1)
{
- LYERRLOG("read error");
+ LYERRLOG("get_response fail,errno:%d",errno);
return -1;
}
if (recvline != NULL) {
@@ -312,12 +365,12 @@
/*Warren add for T800 platform 2021/11/19 start*/
int lynq_socket_client_start()
{
- struct sockaddr_in lynq_data_socket_server_addr;
/* init lynq_socket_server_addr */
bzero(&lynq_data_socket_server_addr, sizeof(lynq_data_socket_server_addr));
lynq_data_socket_server_addr.sin_family = AF_INET;
lynq_data_socket_server_addr.sin_port = htons(LYNQ_SERVICE_PORT);
lynq_data_socket_server_addr.sin_addr.s_addr = inet_addr(LYNQ_ADDRESS);
+ lynq_data_socket_server_addr_len = sizeof(lynq_data_socket_server_addr);
/*
if(inet_pton(AF_INET,"127.0.0.1", &lynq_socket_server_addr.sin_addr) <= 0)
{
@@ -333,7 +386,7 @@
if (setsockopt(lynq_client_sockfd, SOL_SOCKET, SO_RCVTIMEO, &timeOut, sizeof(timeOut)) < 0)
{
- LYERRLOG("time out setting failed");
+ LYERRLOG("time out setting failed");
}
if(connect(lynq_client_sockfd, (struct sockaddr *)&lynq_data_socket_server_addr, sizeof(lynq_data_socket_server_addr)) == -1)
{
@@ -360,20 +413,25 @@
int printf_apn_table()
{
int ret = 0;
- if (lynq_apn_table == NULL)
- {
- LYERRLOG("apn table is null");
- return -1;
- }
+ if (lynq_apn_table == NULL)
+ {
+ LYERRLOG("apn table is null");
+ return -1;
+ }
for(ret;ret<LYNQ_APN_CHANNEL_MAX;ret++)
{
- LYINFLOG("[Typethree test info]apn=%s ;apntype=%s ;ifname=%s ;hasTimeout = %d ; hasUsed = %d", \
+ LYINFLOG("[%s][%d] apn=%s ;apntype=%s ;ifname=%s ;hasTimeout = %d ; hasUsed = %d,status = %d,statusDeactApn = %s",__FUNCTION__,ret, \
lynq_apn_table[ret].apn,lynq_apn_table[ret].apnType,lynq_apn_table[ret].ifaceName, \
- lynq_apn_table[ret].hasTimeout,lynq_apn_table[ret].hasUsed);
+ lynq_apn_table[ret].hasTimeout,lynq_apn_table[ret].hasUsed,lynq_apn_table[ret].status,lynq_apn_table[ret].statusApnType);
}
return 0;
}
+void printf_apn_table_debug(const char *fun,int line)
+{
+ LYINFLOG("[%s][%d]apn_table msg",fun,line);
+ printf_apn_table();
+}
void urc_msg_process(Parcel *p)
{
@@ -381,6 +439,8 @@
int resp_type;
int urcid;
int slot_id;
+ int check_count = 0;
+ static int apnId=-1;
int pdnState = 0;
char apn[LYNQ_APN_MAX_LEN];
@@ -404,27 +464,30 @@
{
urc_msg = strdupReadString_p(p);
int len = strlen(urc_msg);
- if(len < LYNQ_APN_MAX_LEN-1)
+ if((len < LYNQ_APN_MAX_LEN-1) && (len > 0))
{
memcpy(apn,urc_msg,len+1);
}
+ free(urc_msg);
urc_msg = strdupReadString_p(p);
len = strlen(urc_msg);
- if(len < LYNQ_APN_TYPE_MAX_LEN-1)
+ if((len < LYNQ_APN_TYPE_MAX_LEN-1) && (len > 0))
{
memcpy(apnType,urc_msg,len+1);
}
+ free(urc_msg);
urc_msg = strdupReadString_p(p);
len = strlen(urc_msg);
- if(len < LYNQ_IFACE_NAME_MAX_LEN-1)
+ if((len < LYNQ_IFACE_NAME_MAX_LEN-1) && (len > 0))
{
memcpy(ifaceName,urc_msg,strlen(urc_msg)+1);
}
+ free(urc_msg);
//sendSignalDataCallStateChange();
- int apnId = getLynqApnID(apnType);
- LYINFLOG("URC apnType:%s,ifaceName:%s,apn:%s pdnState:%d",apnType,ifaceName,apn,pdnState);
+ apnId = getLynqApnID(apnType);
if(apnId >= 0)
{
+ LYINFLOG("URC apnType:%s,ifaceName:%s,apn:%s pdnState:%d,handle:%d",apnType,ifaceName,apn,pdnState,apnId);
if(lynq_apn_table[apnId].hasTimeout==1)
{
/*whether timeout?,real or not,*/
@@ -443,14 +506,22 @@
break;
}
updateApnTable(&lynq_apn_table[apnId],apn,apnType,ifaceName);
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
}
/*To be completed*/
else
{
- data_invaild_error = 1;
- printf_apn_table();
- LYERRLOG("invalid apnId:%d",apnId);
- break;
+ data_invaild_error = 1;
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
+ apnId = getDeactApnID(apnType);
+ if(apnId < 0)
+ {
+ LYERRLOG("[%d]invalid apnId:%d",__LINE__,apnId);
+ break;
+ }
+ LYINFLOG("URC apnType:%s,ifaceName:%s,apn:%s pdnState:%d,handle:%d",apnType,ifaceName,apn,pdnState,apnId);
+ updateDeactApn(apnId,pdnState);
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
}
pthread_mutex_lock(&s_lynq_urc_vector_mutex);
s_data_urc_wait_list.push_back(apnId);
@@ -460,35 +531,83 @@
LYDBGLOG("data call state:%d",lynq_data_call);
if(lynq_data_call==1)
{
+ while (data_timelimit == 0)
+ {
+ LYINFLOG("client not ready to wait");
+ for (check_count = 0;check_count < 500;check_count++)
+ {
+ /*wait 10ms*/
+ usleep(10*1000);
+ }
+ LYERRLOG("client still without res");
+ break;
+ }
sendSignalDataCallStateChange();
lynq_data_call = 0;
+ data_timelimit = 0;
}
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
}
else
{
urc_msg = strdupReadString_p(p);
+ free(urc_msg);
+ urc_msg = strdupReadString_p(p);
len = strlen(urc_msg);
if(len < LYNQ_APN_TYPE_MAX_LEN-1)
{
memcpy(apnType,urc_msg,len+1);
}
+ free(urc_msg);
LYDBGLOG("[data thread_urc_recv] apntype:%s",apnType);
- int apnId = getLynqApnID(apnType);
+ apnId = getLynqApnID(apnType);
if(apnId >= 0)
{
+ LYINFLOG("URC apnType:%s,ifaceName:%s,apn:%s pdnState:%d,handle:%d",apnType,ifaceName,apn,pdnState,apnId);
+ lynq_data_call_change_id = apnId;
+ //bzero(lynq_apn_table[apnId].apnType,LYNQ_APN_TYPE_MAX_LEN);//async clean
+ pthread_mutex_lock(&s_lynq_urc_vector_mutex);
+ s_data_urc_wait_list.push_back(apnId);
+ pthread_mutex_unlock(&s_lynq_urc_vector_mutex);
+ sendSignalPdnChange();
+ }
+ else
+ {
+ apnId = getDeactApnID(apnType);
+ if(apnId < 0)
+ {
+ LYERRLOG("[%d]invalid apnId:%d",__LINE__,apnId);
+ break;
+ }
+ LYINFLOG("URC apnType:%s,ifaceName:%s,apn:%s pdnState:%d,handle:%d",apnType,ifaceName,apn,pdnState,apnId);
+ cleanDeactApn(apnId);
lynq_data_call_change_id = apnId;
bzero(lynq_apn_table[apnId].apnType,LYNQ_APN_TYPE_MAX_LEN);//async clean
pthread_mutex_lock(&s_lynq_urc_vector_mutex);
s_data_urc_wait_list.push_back(apnId);
pthread_mutex_unlock(&s_lynq_urc_vector_mutex);
sendSignalPdnChange();
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
}
LYDBGLOG("data call state:%d",lynq_data_call);
if(lynq_data_call==1)
{
+ while (data_timelimit == 0)
+ {
+ LYINFLOG("client not ready to wait");
+ for (check_count = 0;check_count < 500;check_count++)
+ {
+ /*wait 10ms*/
+ usleep(10*1000);
+ }
+ LYERRLOG("client still without res");
+ break;
+ }
sendSignalDataCallStateChange();
lynq_data_call = 0;
+ data_timelimit = 0;
}
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
}
break;
case LYNQ_URC_MODIFY_APNDB:
@@ -503,6 +622,7 @@
strcpy(g_lynq_apn_result, urc_msg);
sendSignalApnChange();
}
+ free(urc_msg);
break;
case LYNQ_URC_RESET_APNDB:
{
@@ -517,6 +637,7 @@
strcpy(g_lynq_apn_result, urc_msg);
sendSignalApnChange();
}
+ free(urc_msg);
}
default:
break;
@@ -604,12 +725,16 @@
}
int lynq_setup_data_call(int *handle)
{
+ int error = -1;
+ #ifdef GSW_RIL_CFG //becuase gsw not have connman,data can not be triggered by connman.
+ LYINFLOG("[%s][%d]",__FUNCTION__,__LINE__);
+ error = lynq_setup_data_call_sp(handle,NULL,"iot_default",NULL,NULL,NULL,NULL,NULL);
+ #else
Parcel p;
lynq_client_t client;
int resp_type = -1;
int request = -1;
int slot_id = -1;
- int error = -1;
int lynq_data_call_id = 0;
if(handle==NULL)
{
@@ -625,15 +750,17 @@
if (lynq_data_call_id < 0)
{
LYERRLOG("update apn table fail error id = %d",lynq_data_call_id);
- return -1;
+ return LYNQ_E_NULL_ANONALY+1;
}
+ *handle = lynq_data_call_id;//T8TSK-211 (2023/5/16) why? If it times out, the client application will also try to reconnect.
+ //Reconnection needs to be deactivated first, and deactivation needs to know which apn to activate.
lynq_data_call = 1;
pthread_mutex_lock(&g_lynq_data_sendto_mutex);
if(send_request(lynq_client_sockfd,&client)==-1)
{
LYERRLOG("send request fail");
perror("[LYNQ_DATA] send request fail:");
- return -1;
+ return LYNQ_E_NULL_ANONALY+2;
}
get_response(lynq_client_sockfd,p);
pthread_mutex_unlock(&g_lynq_data_sendto_mutex);
@@ -641,21 +768,24 @@
LYINFLOG("resp_type=%d,request=%d,slot_id=%d,error_code=%d",resp_type,request,slot_id,error);
if(error==0)
{
+ data_timelimit = 1;
if (waitDataCallstateChange(60000) == ETIMEDOUT) // 60s
{
error = LYNQ_E_TIME_OUT;
LYERRLOG("timeout:wait data Call state fail!!!");
lynq_apn_table[lynq_data_call_id].hasTimeout = 1;
- if (data_invaild_error == 1)
- {
- data_invaild_error = 0;
- LYERRLOG("urc apn info error!!!");
- return 8085;
- }
+ if (data_invaild_error == 1)
+ {
+ data_invaild_error = 0;
+ LYERRLOG("urc apn info error!!!");
+ return 8085;
+ }
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
return error;
}
- *handle = lynq_data_call_id;
}
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
+ #endif //GSW_RIL_CFG
return error;
}
@@ -683,17 +813,18 @@
lynq_data_call_id = *handle;
client.uToken = Global_uToken;
client.request = 41;//RIL_REQUEST_DEACTIVATE_DATA_CALL
- if(strcmp(lynq_apn_table[lynq_data_call_id].apnType,"default")==0)
- {
- client.paramLen = 0;
- bzero(client.param,LYNQ_REQUEST_PARAM_BUF);
- }
- else
+ client.paramLen = 0;
+ bzero(client.param,LYNQ_REQUEST_PARAM_BUF);
+ #ifdef GSW_RIL_CFG
+ client.paramLen = 1;
+ sprintf(client.param,"%s",lynq_apn_table[lynq_data_call_id].apnType);
+ #else
+ if(strcmp(lynq_apn_table[lynq_data_call_id].apnType,"default")!=0)
{
client.paramLen = 1;
- bzero(client.param,LYNQ_REQUEST_PARAM_BUF);
sprintf(client.param,"%s",lynq_apn_table[lynq_data_call_id].apnType);
}
+ #endif //GSW_RIL_CFG
LYINFLOG("uToken=%d,request=%d,paralen=%d,param=%s",client.uToken,client.request,client.paramLen,client.param);
pthread_mutex_lock(&g_lynq_data_sendto_mutex);
if(send_request(lynq_client_sockfd,&client)==-1)
@@ -707,6 +838,7 @@
JumpHeader(p,&resp_type,&request,&slot_id,&error);
LYINFLOG("resp_type=%d,request=%d,slot_id=%d,error_code=%d",resp_type,request,slot_id,error);
cleanOnceApnTable(lynq_data_call_id);
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
return error;
}
int lynq_setup_data_call_sp(int *handle,char *apn,char *apnType,char *user,char *password,char *authType,char *normalProtocol,char *roamingProtocol)
@@ -719,11 +851,20 @@
int error = -1;
int lynq_data_call_id = -1;
char *argv[10] = {};
+ #ifdef GSW_RIL_CFG
+ LYINFLOG("[%s][%d]",__FUNCTION__,__LINE__);
+ if(handle==NULL||apnType==NULL)
+ {
+ LYERRLOG("handle or apntype is null!!!");
+ return -1;
+ }
+ #else
if(handle==NULL||apn==NULL||apnType==NULL)
{
LYERRLOG("handle ,apn or apntype is null!!!");
- return -1;
+ return LYNQ_E_NULL_ANONALY;
}
+ #endif //GSW_RIL_CFG
if(user==NULL)
{
argv[1] = "null";
@@ -768,21 +909,33 @@
client.request = 27;//RIL_REQUEST_SETUP_DATA_CALL
client.paramLen = 7;
bzero(client.param,LYNQ_REQUEST_PARAM_BUF);
+ #ifdef GSW_RIL_CFG
+ if(NULL == apn)
+ {
+ sprintf(client.param,"null %s %s %s %s %s %s",apnType,argv[1],argv[2],argv[3],argv[4],argv[5]);
+ }
+ else
+ {
+ sprintf(client.param,"%s %s %s %s %s %s %s",apn,apnType,argv[1],argv[2],argv[3],argv[4],argv[5]);
+ }
+ #else
sprintf(client.param,"%s %s %s %s %s %s %s",apn,apnType,argv[1],argv[2],argv[3],argv[4],argv[5]);
+ #endif //GSW_RIL_CFG
LYINFLOG("uToken=%d,request=%d,paralen=%d,param=%s",client.uToken,client.request,client.paramLen,client.param);
lynq_data_call_id = updateApn(apnType);
if (lynq_data_call_id < 0)
{
LYERRLOG("update apn table fail error id = %d",lynq_data_call_id);
- return -1;
+ return LYNQ_E_NULL_ANONALY+1;
}
+ *handle = lynq_data_call_id;//T8TSK-211 (2023/5/16)
lynq_data_call = 1;
pthread_mutex_lock(&g_lynq_data_sendto_mutex);
if(send_request(lynq_client_sockfd,&client)==-1)
{
LYERRLOG("send request fail");
perror("[LYNQ_DATA] send request fail:");
- return -1;
+ return LYNQ_E_NULL_ANONALY+2;
}
get_response(lynq_client_sockfd,p);
pthread_mutex_unlock(&g_lynq_data_sendto_mutex);
@@ -790,21 +943,23 @@
LYINFLOG("resp_type=%d,request=%d,slot_id=%d,error_code=%d",resp_type,request,slot_id,error);
if(error==0)
{
+ data_timelimit = 1;
if(waitDataCallstateChange(60000)==ETIMEDOUT)//60s
{
error = LYNQ_E_TIME_OUT;
LYERRLOG("timeout:wait data Call state fail!!!");
lynq_apn_table[lynq_data_call_id].hasTimeout = 1;
- if (data_invaild_error == 1)
- {
- data_invaild_error = 0;
- LYERRLOG("urc apn info error!!!");
- return 8085;
- }
+ if (data_invaild_error == 1)
+ {
+ data_invaild_error = 0;
+ LYERRLOG("urc apn info error!!!");
+ return 8085;
+ }
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
return error;
}
- *handle = lynq_data_call_id;
}
+ printf_apn_table_debug(__FUNCTION__,__LINE__);
return error;
}
/*
@@ -856,6 +1011,7 @@
LYERRLOG("dataCallList is null!!!");
return -1;
}
+ Global_uToken++;
client.uToken = Global_uToken;
client.request = 57;//RIL_REQUEST_DATA_CALL_LIST
client.paramLen = 0;
@@ -882,7 +1038,7 @@
{
return -1;
}
- LYINFLOG("resp_type=%d,request=%d,slot_id=%d,error_code=%d",resp_type,request,slot_id,error);
+ LYINFLOG("resp_type=%d,uToken=%d,request=%d,slot_id=%d,error_code=%d",resp_type,token,request,slot_id,error);
p.readInt32(&version);
if(version==11)
{
@@ -895,17 +1051,47 @@
p.readInt32(&dataCallList[i].cid);
p.readInt32(&dataCallList[i].active);
temp_char = strdupReadString(p);
- memcpy(dataCallList[i].type,temp_char,strlen(temp_char)+1);
+ LYINFLOG("[%s][%d]%s",__FUNCTION__,__LINE__,temp_char);
+ if(temp_char)
+ {
+ memcpy(dataCallList[i].type,temp_char,strlen(temp_char)+1);
+ free(temp_char);
+ }
temp_char = strdupReadString(p);
- memcpy(dataCallList[i].ifname,temp_char,strlen(temp_char)+1);
+ LYINFLOG("[%s][%d]%s",__FUNCTION__,__LINE__,temp_char);
+ if(temp_char)
+ {
+ memcpy(dataCallList[i].ifname,temp_char,strlen(temp_char)+1);
+ free(temp_char);
+ }
temp_char = strdupReadString(p);
- memcpy(dataCallList[i].addresses,temp_char,strlen(temp_char)+1);
+ LYINFLOG("[%s][%d]%s",__FUNCTION__,__LINE__,temp_char);
+ if(temp_char)
+ {
+ memcpy(dataCallList[i].addresses,temp_char,strlen(temp_char)+1);
+ free(temp_char);
+ }
temp_char = strdupReadString(p);
- memcpy(dataCallList[i].dnses,temp_char,strlen(temp_char)+1);
+ LYINFLOG("[%s][%d]%s",__FUNCTION__,__LINE__,temp_char);
+ if(temp_char)
+ {
+ memcpy(dataCallList[i].dnses,temp_char,strlen(temp_char)+1);
+ free(temp_char);
+ }
temp_char = strdupReadString(p);
- memcpy(dataCallList[i].gateways,temp_char,strlen(temp_char)+1);
+ LYINFLOG("[%s][%d]%s",__FUNCTION__,__LINE__,temp_char);
+ if(temp_char)
+ {
+ memcpy(dataCallList[i].gateways,temp_char,strlen(temp_char)+1);
+ free(temp_char);
+ }
temp_char = strdupReadString(p);
- memcpy(dataCallList[i].pcscf,temp_char,strlen(temp_char)+1);
+ LYINFLOG("[%s][%d]%s",__FUNCTION__,__LINE__,temp_char);
+ if(temp_char)
+ {
+ memcpy(dataCallList[i].pcscf,temp_char,strlen(temp_char)+1);
+ free(temp_char);
+ }
p.readInt32(&dataCallList[i].mtu);
}
}
@@ -979,7 +1165,7 @@
s_data_urc_wait_list.erase(iter);
pthread_mutex_unlock(&s_lynq_urc_vector_mutex);
- LYINFLOG("lynq data call id:%d",*handle);
+ LYINFLOG("lynq_wait_data_call_state_change handle:%d",*handle);
return 0;
}
/*Warren add for T800 platform 2021/11/19 end*/
@@ -1355,4 +1541,31 @@
return 0;
}
+int lynq_get_apn_table(int *size,lynq_apn_info **list)
+{
+ if (NULL == size || NULL == list)
+ {
+ LYERRLOG("size or list is NULL");
+ return LYNQ_E_NULL_ANONALY;
+ }
+ int count = 0;
+ int i = 0;
+ for (i = 0;i < LYNQ_APN_CHANNEL_MAX;i++)
+ {
+ if (lynq_apn_table[i].hasUsed == 1)
+ {
+ if (NULL == list[count])
+ {
+ LYERRLOG("list[%d] is NULL",count);
+ return LYNQ_E_NULL_ANONALY;
+ }
+ list[count]->index = i;
+ memcpy(list[count]->apn,lynq_apn_table[i].apn,strlen(lynq_apn_table[i].apn)+1);
+ memcpy(list[count]->apnType,lynq_apn_table[i].apnType,strlen(lynq_apn_table[i].apnType)+1);
+ count++;
+ }
+ }
+ *size = count;
+ return 0;
+}
/*Typethree add for T800 platform 2022/04/21 end*/
diff --git a/src/lynq/lib/liblynq-data/lynq_data_urc.cpp b/src/lynq/lib/liblynq-data/lynq_data_urc.cpp
index 9f211eb..f5d127a 100755
--- a/src/lynq/lib/liblynq-data/lynq_data_urc.cpp
+++ b/src/lynq/lib/liblynq-data/lynq_data_urc.cpp
@@ -77,7 +77,7 @@
{
bzero(urc_data,LYNQ_REC_BUF);
res = recvfrom(lynq_urc_sockfd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&urc_local_addr,(socklen_t*)&lynq_len_urc_addr_serv);
-
+ LYINFLOG("[%s][%d] res:%d",__FUNCTION__,__LINE__,res);
if(res<sizeof(int32_t)*2)
{
LYERRLOG("thread_urc_recv step2 fail: res is %d",res);
@@ -170,6 +170,7 @@
struct sockaddr_in urc_local_addr;
pthread_attr_t attr;
lynq_urc_sockfd = socket(AF_INET,SOCK_DGRAM,0);
+ lynq_len_urc_addr_serv = sizeof(urc_local_addr);
if(lynq_urc_sockfd < 0)
{
LYERRLOG("create socket for udp fail");
diff --git a/src/lynq/lib/liblynq-data/makefile b/src/lynq/lib/liblynq-data/makefile
index 5d8598d..e2d17d0 100755
--- a/src/lynq/lib/liblynq-data/makefile
+++ b/src/lynq/lib/liblynq-data/makefile
@@ -34,6 +34,10 @@
-llynq-uci \
-llynq-shm \
+ifeq ($(strip $(MOBILETEK_RIL_CFG)), GSW)
+ LOCAL_CFLAGS += -DGSW_RIL_CFG
+
+endif
SOURCES = $(wildcard *.cpp)
diff --git a/src/lynq/lib/liblynq-gnss/makefile b/src/lynq/lib/liblynq-gnss/makefile
index f1ca7fc..95885d5 100755
--- a/src/lynq/lib/liblynq-gnss/makefile
+++ b/src/lynq/lib/liblynq-gnss/makefile
@@ -32,6 +32,7 @@
-lcutils \
-lgnsshal \
-lpthread \
+ -llynq-uci \
# -llynq-log \
$(warning libs=$(LOCAL_LIBS))
diff --git a/src/lynq/lib/liblynq-gnss/src/lynq_callback.c b/src/lynq/lib/liblynq-gnss/src/lynq_callback.c
index 2663332..37a4adc 100755
--- a/src/lynq/lib/liblynq-gnss/src/lynq_callback.c
+++ b/src/lynq/lib/liblynq-gnss/src/lynq_callback.c
@@ -3,11 +3,20 @@
#include<unistd.h>
#include<errno.h>
#include<string.h>
+#include <sys/time.h>
+#include <time.h>
#include"lynq_gnsshal.h"
#include"mtk_lbs_utility.h"
#include"lynq_gnss.h"
+#define NMEA_ACC "ACCURACY"
+#define NMEA_GSA "GSA"
+#define NMEA_RMC "RMC"
+#define NMEA_GGA "GGA"
+#define NMEA_VTG "VTG"
+#define NMEA_GSV "GSV"
+
extern lynq_gnss_cb* lynq_callbacks;
extern lynq_raw_gnss_cbs *lynq_meas_callbacks;
@@ -41,8 +50,46 @@
}
+extern int g_gnss_sync_enable_flag;
+extern int g_gnss_sync_done;
+
+static inline int update_systime_time(GpsUtcTime gpstime)
+{
+ struct timeval tv;
+ int ret = gettimeofday(&tv, NULL);
+ if (ret == -1) {
+ perror("gettimeofday");
+ return -1;
+ }
+ if (tv.tv_sec == gpstime / 1000)
+ {
+ return 0;
+ }
+ printf("Now: %ld.%06ld\n", tv.tv_sec, tv.tv_usec);
+ tv.tv_sec = gpstime / 1000;
+ tv.tv_usec = (gpstime % 1000) * 1000;
+ ret = settimeofday(&tv, NULL);
+ if (ret == -1) {
+ perror("settimeofday");
+ return -1;
+ }
+
+ return 0;
+}
+
void lynq_gps_nmea_callback(GpsUtcTime timestamp, const char* nmea, int length)
{
+ if (g_gnss_sync_enable_flag == 1 && g_gnss_sync_done == 0)
+ {
+ if( strncmp(nmea+3,NMEA_RMC,strlen(NMEA_RMC)) == 0 && nmea[18] == 'A')
+ {
+ if (update_systime_time(timestamp) == 0)
+ {
+ g_gnss_sync_done = 1;
+ }
+ }
+ }
+
lynq_callbacks->lynq_nmea_cb(timestamp,nmea,length);
}
@@ -157,13 +204,6 @@
}
-#define NMEA_ACC "ACCURACY"
-#define NMEA_GSA "GSA"
-#define NMEA_RMC "RMC"
-#define NMEA_GGA "GGA"
-#define NMEA_VTG "VTG"
-#define NMEA_GSV "GSV"
-
void lynq_at_gps_nmea_callback(GpsUtcTime timestamp, const char* nmea, int length)
{
if (at_gpsnmea_status == 1)
diff --git a/src/lynq/lib/liblynq-gnss/src/lynq_gnss.c b/src/lynq/lib/liblynq-gnss/src/lynq_gnss.c
index 7ae6c4f..0fbf749 100755
--- a/src/lynq/lib/liblynq-gnss/src/lynq_gnss.c
+++ b/src/lynq/lib/liblynq-gnss/src/lynq_gnss.c
@@ -24,6 +24,7 @@
#include "mtk_lbs_utility.h"
#include "lynq_prop.h"
#include "mnldinf_utility.h"
+#include "include/lynq_uci.h"
#define LOG_TAG "LYNQ_GNSS"
@@ -44,6 +45,9 @@
static int g_lynq_gnss_calback_flag = 0;
+int g_gnss_sync_enable_flag = 0;
+int g_gnss_sync_done = 0;
+
enum
{
Gnss_ok = 0,
@@ -131,6 +135,10 @@
int lynq_gnss_start(void)
{
+ char gnss_sync_enable[24] = "";
+ lynq_get_value("lynq_uci", "lynq_sync_time", "lynq_gnss_sync_time_enable" , gnss_sync_enable);
+ g_gnss_sync_enable_flag = atoi(gnss_sync_enable);
+ g_gnss_sync_done = 0;
//memset(&lynq_debug_data, 0, sizeof(DebugData));
gpshal_set_gps_state_intent(GPSHAL_STATE_START);
gpshal2mnl_gps_start();
diff --git a/src/lynq/lib/liblynq-media/include/liblynq-media/lynq_medial.h b/src/lynq/lib/liblynq-media/include/liblynq-media/lynq_medial.h
index 1777bd6..ccbd34d 100755
--- a/src/lynq/lib/liblynq-media/include/liblynq-media/lynq_medial.h
+++ b/src/lynq/lib/liblynq-media/include/liblynq-media/lynq_medial.h
@@ -28,7 +28,10 @@
int lynq_set_spk_volume(const int volume);
int lynq_get_mic_volume(int* volume);
int lynq_set_mic_volume(const int volume);
-
+#ifdef ZK_MEDIA_CFG
+int lynq_get_pa_volume(int* volume);
+int lynq_set_pa_volume(const int volume);
+#endif
int lynq_media_play_audio(const char *path);
void lynq_media_stop_audio();
#endif //__LYNQ_MEDIA_H__
diff --git a/src/lynq/lib/liblynq-media/liblynq-media/makefile b/src/lynq/lib/liblynq-media/liblynq-media/makefile
index f0116b8..967c0db 100755
--- a/src/lynq/lib/liblynq-media/liblynq-media/makefile
+++ b/src/lynq/lib/liblynq-media/liblynq-media/makefile
@@ -16,6 +16,9 @@
endif
+ifeq ($(strip $(MOBILETEK_MEDIA_CFG)), ZK)
+ LOCAL_CFLAGS += -DZK_MEDIA_CFG
+endif
$(warning ################# RITA ROOT: $(ROOT),includedir:$(includedir))
LOCAL_PATH = .
diff --git a/src/lynq/lib/liblynq-media/liblynq-media/media_control.c b/src/lynq/lib/liblynq-media/liblynq-media/media_control.c
index 261a4aa..89c53e3 100755
--- a/src/lynq/lib/liblynq-media/liblynq-media/media_control.c
+++ b/src/lynq/lib/liblynq-media/liblynq-media/media_control.c
@@ -6,6 +6,12 @@
#include <pthread.h>
#include <cutils/properties.h>
//#include "modem_afe_ctrl.h"
+#ifdef ZK_MEDIA_CFG
+#include <fcntl.h>
+#include <linux/i2c-dev.h>
+#include <sys/ioctl.h>
+#include <unistd.h>
+#endif
#include <log/log.h>
#define LOG_TAG "MEDIA_API"
#define NV_VOLUME_NAME "ro.spk.volume.level"
@@ -257,6 +263,249 @@
return 0;
}
+#ifdef ZK_MEDIA_CFG
+/*dongyu@2023.6.13 Add ZK set the PA's volume gain level start*/
+int lynq_set_pa_volume(const int volume)
+{
+ int file;
+ char *filename = "/dev/i2c-0";
+ int addr = 0x6c;
+ char buf[2];
+
+ if (volume < 1 || volume > 4)
+ {
+ RLOGE("Invalid volume specified\n");
+ return -1;
+ }
+
+ if ((file = open(filename, O_RDWR)) < 0)
+ {
+ RLOGE("Failed to open i2c bus\n");
+ return -1;
+ }
+
+ if (ioctl(file, I2C_SLAVE, addr) < 0)
+ {
+ RLOGE("Failed to acquire bus access and/or talk to slave\n");
+ close(file);
+ return -1;
+ }
+
+ switch (volume) {
+ case 1:
+ buf[0] = 0x03;
+ buf[1] = 0x00; //Gain set to 20 dB
+ break;
+ case 2:
+ buf[0] = 0x03;
+ buf[1] = 0x78; //Gain set to 26 dB
+ break;
+ case 3:
+ buf[0] = 0x03;
+ buf[1] = 0x80; //Gain set to 32 dB
+ break;
+ case 4:
+ buf[0] = 0x03;
+ buf[1] = 0xc0; //Gain set to 36 dB
+ break;
+ }
+
+ if (write(file, buf, 2) != 2)
+ {
+ RLOGE("Failed to write to the i2c bus\n");
+ close(file);
+ return -1;
+ }
+
+ RLOGE("Set the 0x%02x register value to 0x%02x\n", buf[0], buf[1]);
+
+ close(file);
+
+ return 0;
+}
+
+int lynq_get_pa_volume(int* volume)
+{
+ int file;
+ char *filename = "/dev/i2c-0";
+ int addr = 0x6c;
+ char buf[2];
+
+ if(volume == NULL)
+ {
+ RLOGE("lynq_get_pa_volume Invalid pointer to volume\n");
+ return -1;
+ }
+
+ if ((file = open(filename, O_RDWR)) < 0)
+ {
+ RLOGE("Failed to open i2c bus\n");
+ return -1;
+ }
+
+ if (ioctl(file, I2C_SLAVE, addr) < 0)
+ {
+ RLOGE("Failed to acquire bus access and/or talk to slave\n");
+ close(file);
+ return -1;
+ }
+
+ buf[0] = 0x03;
+
+ if (write(file, buf, 1) != 1)
+ {
+ RLOGE("Failed to write to the i2c bus\n");
+ close(file);
+ return -1;
+ }
+
+ if (read(file, buf, 1) != 1)
+ {
+ RLOGE("Failed to read from the i2c bus\n");
+ close(file);
+ return -1;
+ }
+
+ close(file);
+
+ *volume = (buf[0] >> 6) + 1;
+
+ return 0;
+}
+/*dongyu@2023.6.13 Add ZK set the PA's volume gain level end*/
+
+/*dongyu@2023.5.31 Add ZK set codec tlv320aic3x API register start*/
+void set_codec(int open)
+{
+ RLOGD("set_codec %d",open);
+
+ if(open==0)
+ {
+ system("echo out 201 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo out 113 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo out 29 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ }
+ else
+ {
+ system("echo out 201 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ usleep(10);//just open need usleep 10us
+ system("echo out 113 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ usleep(10);//just open need usleep 10us
+ system("echo out 29 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo 0x00 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x01 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x02 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x03 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x04 0x04 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x05 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x06 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x07 0xa0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x08 0x20 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x09 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0b 0x32 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0f 0x10 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x10 0x20 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x11 0xf8 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x12 0xff > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x13 0x7a > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x14 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x15 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x16 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x17 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x18 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x19 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1b 0xfe > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1e 0xfe > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1f 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x20 0x18 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x21 0x18 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x22 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x23 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x24 0xc0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x25 0xc0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x26 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x27 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x28 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x29 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2b 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2c 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2e 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2f 0x85 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x30 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x31 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x32 0x85 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x33 0x9f > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x34 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x35 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x36 0x82 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x37 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x38 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x39 0x82 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3a 0x9f > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3e 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3f 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x40 0xaf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x41 0x0d > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x42 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x43 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x44 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x45 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x46 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x47 0xaf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x48 0x0d > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x49 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4e 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4f 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x50 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x51 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x52 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x53 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x54 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x55 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x56 0x9b > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x57 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x58 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x59 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5c 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5d 0x08 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5e 0xde > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5f 0x0c > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x60 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x61 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x62 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x63 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x64 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x65 0x01 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x66 0xa2 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x67 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x68 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x69 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6c 0x40 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ }
+}
+/*dongyu@2023.5.31 Add ZK set codec tlv320aic3x API register end*/
+#endif
+
#ifdef GSW_MEDIA_CFG
/*hqing add for Geely demand on 11/07/2022, after playing audio, codec should sleep*/
@@ -406,7 +655,7 @@
free(param);
param = NULL;
g_media_handle=NULL;
-#ifdef GSW_MEDIA_CFG
+#if (defined GSW_MEDIA_CFG) || (defined ZK_MEDIA_CFG)
set_codec(0); //hqing add for Geely demand on 11/07/2022, stop audio, close codec
#endif
return 0;
@@ -493,8 +742,7 @@
param->handle = handle;
start_main_loop(param);
RLOGD ("gst_bus_add_watch.\n");
-
-#ifdef GSW_MEDIA_CFG
+#if (defined GSW_MEDIA_CFG) || (defined ZK_MEDIA_CFG)
set_codec(1);
#endif
gst_element_set_state (playbin, GST_STATE_PLAYING);
diff --git a/src/lynq/lib/liblynq-network/lynq_module_common.h b/src/lynq/lib/liblynq-network/lynq_module_common.h
deleted file mode 100755
index 57ea5b2..0000000
--- a/src/lynq/lib/liblynq-network/lynq_module_common.h
+++ /dev/null
@@ -1,68 +0,0 @@
-#ifndef LYNQ_MODULE_COMMON_H
-#define LYNQ_MODULE_COMMON_H
-
-#define RESULT_OK (0)
-#define RESULT_ERROR (-1)
-
-/*the same with lynq_interface.h begin*/
-#define LYNQ_REQUEST_VENDOR_BASE 8000
-#define LYNQ_URC_VENDOR_BASE 9000
-#define LYNQ_AT_SNED (LYNQ_REQUEST_VENDOR_BASE +1)
-#define LYNQ_URC_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+1)
-#define LYNQ_URC_DATA_STATUS_IND (LYNQ_URC_VENDOR_BASE+2)
-#define LYNQ_URC_DATA_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+3)
-#define LYNQ_AUTO_ANSWER_CALL (LYNQ_REQUEST_VENDOR_BASE +2)
-#define LYNQ_REQUEST_SET_DTMF_VOLUME (LYNQ_REQUEST_VENDOR_BASE +3)
-#define LYNQ_URC_MODIFY_APNDB (LYNQ_URC_VENDOR_BASE+4)
-#define LYNQ_URC_RESET_APNDB (LYNQ_URC_VENDOR_BASE+5)
-
-
-#define LYNQ_REQUEST_WRITE_SMS_TO_MEMORY (LYNQ_REQUEST_VENDOR_BASE +4)
-#define LYNQ_REQUEST_READ_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 5)
-#define LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 6)
-#define LYNQ_REQUEST_LIST_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 7)
-#define LYNQ_REQUEST_SET_DEFAULT_SIM_ALL (LYNQ_REQUEST_VENDOR_BASE + 8)
-
-#define LYNQ_REQUEST_SET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +9)
-#define LYNQ_REQUEST_GET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +10)
-#define LYNQ_REQUEST_RECORD (LYNQ_REQUEST_VENDOR_BASE +11)
-#define LYNQ_REQUEST_OOS_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +12)
-#define LYNQ_REQUEST_OOS_DEEP_SLEEP_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +13)
-#define LYNQ_REQUEST_CHANGE_SCREEN_STATE (LYNQ_REQUEST_VENDOR_BASE + 14)/*jb.qi add for two sim suspend 2022/9/19*/
-#define LYNQ_REQUEST_CHANGE_RADIO (LYNQ_REQUEST_VENDOR_BASE + 15)
-/*the same with lynq_interface.h end*/
-
-typedef enum{
- /*base abnormal*/
- LYNQ_E_PARAMETER_ANONALY=7000,
- LYNQ_E_SEND_REQUEST_FAIL=7001,
- LYNQ_E_GET_HEAD_ERROR=7002,
- LYNQ_E_INNER_ERROR=7100,
- LYNQ_E_MALLOC_ERROR=7101,
- /**/
- LYNQ_E_CARDSTATE_ERROR=8000,
- /* The voice service state is out of service*/
- LYNQ_E_STATE_OUT_OF_SERVICE=8001,
- /* The voice service state is EMERGENCY_ONLY*/
- LYNQ_E_STATE_EMERGENCY_ONLY=8002,
- /* The radio power is power off*/
- LYNQ_E_STATE_POWER_OFF=8003,
- LYNQ_E_TIME_OUT=8004,
- /*create or open sms DB fail */
- LYNQ_E_SMS_DB_FAIL=8005,
- /*Failed to execute sql statement*/
- LYNQ_E_SMS_SQL_FAIL = 8006,
- LYNQ_E_SMS_NOT_FIND = 8007,
- /* The logic conflict*/
- LYNQ_E_CONFLICT=9000,
- /*Null anomaly*/
- LYNQ_E_NULL_ANONALY=9001,
-}LYNQ_E;
-
-#define MODULE_CLOSED (0)
-#define MODULE_SWITCHING (1)
-#define MODULE_RUNNING (2)
-
-extern int g_module_init_flag;
-
-#endif
diff --git a/src/lynq/lib/liblynq-network/lynq_module_socket.cpp b/src/lynq/lib/liblynq-network/lynq_module_socket.cpp
deleted file mode 100755
index c3f7334..0000000
--- a/src/lynq/lib/liblynq-network/lynq_module_socket.cpp
+++ /dev/null
@@ -1,1015 +0,0 @@
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <arpa/inet.h>
-#include <string.h>
-#include <unistd.h>
-#include <binder/Parcel.h>
-#include <log/log.h>
-#include <cutils/jstring.h>
-#include <pthread.h>
-#include <list>
-#include <vendor-ril/telephony/ril.h>
-#include <vendor-ril/telephony/mtk_ril_sp.h>
-#include "lynq_network.h"
-#include "lynq_module_common.h"
-#include "lynq_module_socket.h"
-#include "liblog/lynq_deflog.h"
-#include "lynq_shm.h"
-
-#define LYNQ_SERVICE_PORT 8088
-#define LYNQ_ADDRESS "127.0.0.1"
-#define LYNQ_URC_SERVICE_PORT 8086
-#define LYNQ_URC_ADDRESS "0.0.0.0"
-#define LYNQ_REQUEST_PARAM_BUF 8192
-#define LYNQ_REC_BUF 8192
-
-#define USER_LOG_TAG "LYNQ_NETWORK"
-
-typedef struct{
- int uToken;
- int request;
- int paramLen;
- char param[LYNQ_REQUEST_PARAM_BUF];
-}lynq_client_t;
-
-typedef struct{
- int resp_type;
- int token;
- int request;
- int slot_id;
- int error;
-}lynq_resp_t;
-
-typedef struct{
- int resp_type;
- int urcid;
-}lynq_head_t;
-
-lynq_client_t client_t;
-lynq_resp_t response;
-
-int module_len_rc_addr_serv;
-int module_len_urc_addr_serv;
-struct sockaddr_in module_rc_addr_serv;
-struct sockaddr_in module_urc_addr_serv;
-static int module_rc_sock_fd = -1;
-static int module_urc_sock_fd = -1;
-int module_urc_status = 1;
-int module_rc_status = 1;
-pthread_t module_urc_tid = -1;
-pthread_t module_rc_tid = -1;
-static pthread_mutex_t s_urc_mutex = PTHREAD_MUTEX_INITIALIZER;
-
-/*hq add for set waiting time 2022/09/13 begin*/
-static pthread_mutex_t s_sendto_mutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_mutex_t s_RecvMsgBlockMutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_cond_t s_WaitRecvMsgCond = PTHREAD_COND_INITIALIZER;
-#define BLOCK_RECV_MSG_LOCK() pthread_mutex_lock(&s_RecvMsgBlockMutex)
-#define BLOCK_RECV_MSG_UNLOCK() pthread_mutex_unlock(&s_RecvMsgBlockMutex)
-#define BLOCK_WAIT_RECV_MSG_TIME_OUT(a) pthread_cond_timedwait(&s_WaitRecvMsgCond, &s_RecvMsgBlockMutex,(a))
-#define BLOCK_WAKEUP_RECV_MSG() pthread_cond_broadcast(&s_WaitRecvMsgCond)
-static std::list<Parcel*> s_recv_parcel_list;
-const int waitResponse(int token,int time_out);
-/*hq add for set waiting time 2022/09/13 end*/
-
-/*hq add for urc process asynchronous 2022/12/26 begin*/
-static pthread_mutex_t s_ProcessUrcMsgBlockMutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_cond_t s_WaitProcessUrcMsgCond = PTHREAD_COND_INITIALIZER;
-
-#define BLOCK_PROCESS_URC_MSG_INIT() pthread_mutex_init(&s_ProcessUrcMsgBlockMutex,NULL)
-#define BLOCK_PROCESS_URC_MSG_LOCK() pthread_mutex_lock(&s_ProcessUrcMsgBlockMutex)
-#define BLOCK_PROCESS_URC_MSG_UNLOCK() pthread_mutex_unlock(&s_ProcessUrcMsgBlockMutex)
-#define BLOCK_WAIT_PROCESS_URC_MSG() pthread_cond_wait(&s_WaitProcessUrcMsgCond, &s_ProcessUrcMsgBlockMutex)
-#define BLOCK_WAKEUP_PROCESS_URC_MSG() pthread_cond_broadcast(&s_WaitProcessUrcMsgCond)
-static std::list<Parcel*> s_recv_urc_parcel_list;
-void *thread_urc_process(void *p);
-pthread_t module_urc_process_tid = -1;
-int module_urc_process_status = 1;
-/*hq add for urc process asynchronous 2022/12/26 end*/
-
-int g_module_Global_uToken = 0;
-int g_wait_time=5;
-
-/*inner test*/
-static int s_inner_test=0;
-
-/**@brief just for inner test
-* @param test_mode [IN]: test mode
-* 0:success
-* other:failure
-*/
-void lynq_set_test_mode(const int test_mode)
-{
- if(test_mode<0)
- {
- g_wait_time = -test_mode;
- }
- else if(test_mode==9999)
- {
- LYERRLOG("%s inner test para %d %d",__func__,s_inner_test,g_wait_time);
- }
- else
- {
- s_inner_test = test_mode;
- }
-}
-
-void cleanup_RecvMsgBlock_mutex(void *arg)
-{
- BLOCK_RECV_MSG_UNLOCK();
-}
-
-/**@brief wait response with expected token and write msg to parcel in some time
-* @param p [IN]: pointer the parcel
-* @param token [IN]: the expected token for the response msg
-* @param time_out [IN]: timeout.
-* @return
-* 0:success
-* other:failure
-*/
-const int waitResponse(Parcel*& p, int token,int time_out)
-{
- int waitToken = token;
- int wakeup_token=-1;
- int resp_type;
- struct timeval now;
- struct timespec timeout;
- int ret;
- std::list<Parcel*>::iterator iter;
- int cnt=0;
-
- gettimeofday(&now,NULL);
- timeout.tv_sec = now.tv_sec+time_out; //timeout is 1min
- timeout.tv_nsec = now.tv_usec*1000;
-
- LYINFLOG("%s wait token is %d, wait time is %d",__func__,waitToken,time_out);
-
- BLOCK_RECV_MSG_LOCK();
- pthread_cleanup_push(cleanup_RecvMsgBlock_mutex, NULL); // thread cleanup handler
- while(module_rc_status) {
- cnt++;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- (*iter)->setDataPosition(0);
- (*iter)->readInt32(&resp_type);
- (*iter)->readInt32(&wakeup_token);
- if(wakeup_token==waitToken)
- {
- LYINFLOG("%s get waitToken",__func__);
- p=(*iter);
- p->setDataPosition(0);
- s_recv_parcel_list.erase(iter);
- goto waitResponse_end;
- }
- }
- LYINFLOG("%s no wait Token in msg list, list size is %d",__func__,s_recv_parcel_list.size());
- ret=BLOCK_WAIT_RECV_MSG_TIME_OUT(&timeout);
- if(ret!=0)
- {
- LYERRLOG("%s no expected token %d after %d second",__func__,waitToken,time_out);
- break;
- }
- }
-waitResponse_end:
- LYINFLOG("%s wait token is %d wakeup_token is %d, cnt is %d",__func__,waitToken,wakeup_token,cnt);
- pthread_cleanup_pop(0);
- BLOCK_RECV_MSG_UNLOCK();
- return wakeup_token==waitToken ? 0:LYNQ_E_TIME_OUT;
-}
-
-/**@brief print solicied response msg's head information
-* @param head [IN]: head information
-* @return none
-*/
-void PrintHeader(lynq_resp_t& head)
-{
- LYINFLOG("resp_type=%d,token=%d,request=%d,slot_id=%d,error_code=%d",head.resp_type,head.token,head.request,head.slot_id,head.error);
-}
-
-/**@brief get solicied response msg's head
-* @param head [OUT]: head information
-* @return
-* 0:success
-* other:failure
-*/
-int GetHeader(Parcel* &p, lynq_resp_t& head)
-{
- LYINFLOG("get header");
- if(p->dataAvail() > 0)
- {
- p->readInt32(&(head.resp_type));
- p->readInt32(&(head.token));
- p->readInt32(&(head.request));
- p->readInt32(&(head.slot_id));
- p->readInt32(&(head.error));
- PrintHeader(head);
- return RESULT_OK;
- }
- else
- {
- return RESULT_ERROR;
- }
-}
-
-/**@brief send msg to service and get response from service
-* @param request_id [IN]: request id
-* @param time_out [IN]: wait time uplimit
-* @param p [IN]: point to response msg's parcel
-* @param argc [IN]: how many parameters in parameter string
-* @param format [IN]: parameter string's format
-* @param ... [IN]: the specific parameter
-* @return
-* 0:success
-* other:failure
-*/
-int lynq_send_common_request(Parcel*& p, int time_out, int request_id, int argc, const char* format,...)
-{
- lynq_client_t client;
- int ret;
- int send_num;
-
- client.uToken = g_module_Global_uToken;
- g_module_Global_uToken=(g_module_Global_uToken+1)%10000;/*0-10000*/
- client.request = request_id;
- client.paramLen = argc;
- bzero(client.param,LYNQ_REQUEST_PARAM_BUF);
- if(argc!=0)
- {
- va_list args;
- va_start(args, format);
- vsnprintf(client.param, LYNQ_REQUEST_PARAM_BUF, format, args);
- va_end(args);
- }
- LYINFLOG("uToken=%d,request=%d,paralen=%d,param=%s",client.uToken,client.request,client.paramLen,client.param);
- pthread_mutex_lock(&s_sendto_mutex);
- if(s_inner_test==1)
- {
- send_num = 1;
- }
- else
- {
- send_num = sendto(module_rc_sock_fd,&client,sizeof(client),0,(struct sockaddr *)&module_rc_addr_serv,module_len_rc_addr_serv);
- }
- if(s_inner_test>=1000)
- {
- time_out = s_inner_test-1000;
- }
- pthread_mutex_unlock(&s_sendto_mutex);
-
- if(send_num <= 0)
- {
- LYERRLOG("send request fail, send num is %d", send_num);
- return LYNQ_E_SEND_REQUEST_FAIL;
- }
- ret = waitResponse(p, client.uToken,time_out);
-
- if(ret==0)
- {
- lynq_resp_t head;
- ret=GetHeader(p,head);
- if(ret!=0)
- {
- LYERRLOG("%s %d get head error %d",__func__,client.uToken,ret);
- delete p;
- return LYNQ_E_GET_HEAD_ERROR;
- }
- if(head.error!=0)
- {
- LYERRLOG("%s %d mdm return head error %d",__func__,client.uToken,head.error);
- delete p;
- return head.error;
- }
- LYERRLOG("%s %d suc",__func__,client.uToken);
- return RESULT_OK;
- }
-
- LYERRLOG("%s %d fail, ret is %d",__func__,client.uToken,ret);
-
- return ret;
-}
-
-/*hq add for urc broadcase optimisson 2023/01/03 begin*/
-#define SHM_BUFFER_INDEX_OFFSET 1
-#define SHM_BUFFER_SIZE_OFFSET 16
-#define SHM_BUFFER_INDEX_MASK 0x0000007F
-#define SHM_BUFFER_SIZE_MASK 0x0000FFFF
-
-bool urc_data_is_in_shm_data(int responseType,int& level, int& index, int& size)
-{
- int shm_index=((responseType>>SHM_BUFFER_INDEX_OFFSET)&SHM_BUFFER_INDEX_MASK);
- if (shm_index>0)
- {
- index=shm_index-1;
- size=((responseType>>SHM_BUFFER_SIZE_OFFSET)&SHM_BUFFER_SIZE_MASK);
- if(size>=sizeof(int32_t)*3 && get_shem_buffer_level(size,&level))
- {
- LYINFLOG("urc_data_is_in_shm_data level is %d, index is %d size is %d",level,index,size);
- return true;
- }
- }
- LYINFLOG("urc_data_is_in_shm_data return false, responseType is %d",responseType);
- return false;
-}
-/*hq add for urc broadcase optimisson 2023/01/03 end*/
-
-void *thread_urc_recv(void *p)
-{
- Parcel *urc_p =NULL;
- char urc_data[LYNQ_REC_BUF];
- int res = 0;
- lynq_head_t* phead;
- int level,index,size;
- uint8_t * shm_buffer;
-
- LYINFLOG("urc recv thread is running");
- while(module_urc_status)
- {
- bzero(urc_data,LYNQ_REC_BUF);
- res = recvfrom(module_urc_sock_fd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&module_urc_addr_serv,(socklen_t*)&module_len_urc_addr_serv);
- if(res<sizeof(int32_t)*2)
- {
- LYERRLOG("thread_urc_recv step2 fail: res is %d",res);
- continue;
- }
-
- phead=(lynq_head_t*) urc_data;
- if(is_support_urc(phead->urcid)==false)
- {
- continue;
- }
- urc_p = new Parcel();
- if(urc_p == NULL)
- {
- LYERRLOG("new parcel failure!!!");
- continue;
- }
- if(urc_data_is_in_shm_data(phead->resp_type,level,index,size))
- {
- shm_buffer = (uint8_t *) get_shem_buffer(level,index);
- LYINFLOG("shm pointer is %p", shm_buffer);
- urc_p->setData(shm_buffer,size); // p.setData((uint8_t *) buffer, buflen);
- }
- else if(res>=sizeof(int32_t)*3)
- {
- urc_p->setData((uint8_t *)urc_data,res); // p.setData((uint8_t *) buffer, buflen);
- }
- else
- {
- LYERRLOG("res %d error!!!", res);
- delete urc_p;
- urc_p = NULL;
- continue;
- }
- urc_p->setDataPosition(0);
- if(urc_p->dataAvail()>0)
- {
- BLOCK_PROCESS_URC_MSG_LOCK();
- s_recv_urc_parcel_list.push_back(urc_p);
- BLOCK_WAKEUP_PROCESS_URC_MSG();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- }
- else
- {
- delete urc_p;
- urc_p = NULL;
- }
- }
- LYINFLOG("urc recv thread ended");
- return NULL;
-}
-
-void cleanup_urc_process_mutex(void *arg)
-{
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-}
-
-void *thread_urc_process(void *p)
-{
- Parcel *urc_p =NULL;
- std::list<Parcel*>::iterator iter;
-
- LYINFLOG("urc process thread is running");
- pthread_cleanup_push(cleanup_urc_process_mutex, NULL); // thread cleanup handler
- while(module_urc_process_status)
- {
- BLOCK_PROCESS_URC_MSG_LOCK();
- while(s_recv_urc_parcel_list.empty())
- {
- BLOCK_WAIT_PROCESS_URC_MSG();
- }
- iter=s_recv_urc_parcel_list.begin();
- urc_p=(*iter);
- s_recv_urc_parcel_list.erase(iter);
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- urc_p->setDataPosition(0);
- if(urc_p->dataAvail()>0)
- {
- pthread_mutex_lock(&s_urc_mutex);
- urc_msg_process(urc_p);
- pthread_mutex_unlock(&s_urc_mutex);
- }
- delete urc_p;
- urc_p = NULL;
- }
- pthread_cleanup_pop(0);
- LYINFLOG("urc process thread ended");
- return NULL;
-}
-
-void lynq_close_urc_rev_thread()
-{
- int ret;
-
- BLOCK_PROCESS_URC_MSG_LOCK(); //just cancel urc process tid when recv from
- module_urc_status = 0;
- if(module_urc_tid!=-1)
- {
- ret = pthread_cancel(module_urc_tid);
- LYINFLOG("pthread cancel urc rev ret = %d",ret);
- }
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- if(module_urc_tid != -1)
- {
- ret = pthread_join(module_urc_tid,NULL);
- LYINFLOG("pthread join urc tid ret = %d",ret);
- module_urc_tid =-1;
- }
-}
-
-void lynq_close_urc_process_thread()
-{
- int ret;
- BLOCK_PROCESS_URC_MSG_LOCK(); //just cancel urc process tid when not process urc msg in list
- pthread_mutex_lock(&s_urc_mutex); //just cancel urc process tid when not process urg msg avoid mutual lock for tid may call pthread_cond_wait
- module_urc_process_status = 0;
- if(module_urc_process_tid!=-1)
- {
- ret = pthread_cancel(module_urc_process_tid);
- LYINFLOG("pthread cancel urc process ret = %d",ret);
- }
- pthread_mutex_unlock(&s_urc_mutex);
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- if(module_urc_process_tid != -1)
- {
- ret = pthread_join(module_urc_process_tid,NULL);
- LYINFLOG("pthread join urc process tid ret = %d",ret);
- module_urc_process_tid =-1;
- }
-}
-
-int lynq_setup_urc_socket()
-{
- int on = 1;
- int ret = 0;
- module_len_urc_addr_serv = sizeof(sockaddr_in);
- module_urc_sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (module_urc_sock_fd <0){
- LYERRLOG("urc socket error");
- return RESULT_ERROR;
- }
- module_urc_addr_serv.sin_family = AF_INET;
- module_urc_addr_serv.sin_port = htons(LYNQ_URC_SERVICE_PORT);
- module_urc_addr_serv.sin_addr.s_addr = inet_addr(LYNQ_URC_ADDRESS);
- /* Set socket to allow reuse of address and port, SO_REUSEADDR value is 2*/
- ret = setsockopt(module_urc_sock_fd,SOL_SOCKET,SO_REUSEADDR,&on,sizeof on);
- if(ret <0)
- {
- LYERRLOG("urc socket set error");
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- return RESULT_ERROR;
- }
- ret = bind(module_urc_sock_fd ,(struct sockaddr*)&module_urc_addr_serv, sizeof(module_urc_addr_serv));
- if(ret <0)
- {
- LYERRLOG("urc socket bind error");
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- return RESULT_ERROR;
- }
- return RESULT_OK;
-}
-
-void lynq_close_urc_socket()
-{
- if (module_urc_sock_fd >= 0)
- {
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- }
-}
-
-int lynq_start_all_urc_socket_thread()
-{
-
- if(ril_init_mem()!=0)
- {
- LYERRLOG("ril_init_mem fail");
- return RESULT_ERROR;
- }
-
- int ret= lynq_setup_urc_socket();
- if(ret!=RESULT_OK)
- {
- LYERRLOG("call lynq_setup_urc_socket fail");
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- BLOCK_PROCESS_URC_MSG_INIT();
- BLOCK_PROCESS_URC_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_urc_parcel_list.begin();iter!=s_recv_urc_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_urc_parcel_list.clear();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-
- pthread_mutex_init(&s_urc_mutex, NULL);
-
- module_urc_status = 1;
- // pthread_attr_init(&attr);
- // pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ret = pthread_create(&module_urc_tid,/*&attr*/NULL,thread_urc_recv,NULL);
- if(ret <0)
- {
- LYERRLOG("urc recv pthread create error");
- module_urc_status = 0;
- lynq_close_urc_socket();
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- module_urc_process_status = 1;
- ret = pthread_create(&module_urc_process_tid,/*&attr*/NULL,thread_urc_process,NULL);
- if(ret <0)
- {
- LYERRLOG("urc process pthread create error");
- module_urc_process_status = 0;
- lynq_close_urc_socket();
- lynq_close_urc_rev_thread();
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- LYINFLOG("urc start success");
-
- return RESULT_OK;
-}
-
-void lynq_close_all_urc_socket_thread()
-{
-
- lynq_close_urc_rev_thread();
- lynq_close_urc_socket();
- lynq_close_urc_process_thread();
-
- BLOCK_PROCESS_URC_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_urc_parcel_list.begin();iter!=s_recv_urc_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_urc_parcel_list.clear();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-
- ril_deinit_mem();
-}
-
-/**@ a thread just for recv\buffer solicited msg's response and notice waiting thread
-* @param p [IN]: no meaning
-* @return
-* always null
-*/
-void *thread_rc_recv(void *p)
-{
- Parcel* rc_p;
- std::list<Parcel*>::iterator iter;
- int resp_type = -1;
- char rc_data[LYNQ_REC_BUF];
- int rc_len;
- int null_cnt=0;
- int wakeup_token;
-
- LYINFLOG("rc thread is running");
- while(module_rc_status)
- {
- bzero(rc_data,LYNQ_REC_BUF);
- while(true)
- {
- rc_len = recvfrom(module_rc_sock_fd,rc_data,sizeof(rc_data),0,(struct sockaddr *)&module_rc_addr_serv,(socklen_t *)&module_len_rc_addr_serv);
- if(rc_len<sizeof(int32_t)*2)
- {
- LYERRLOG("%s recv len %d less %d",__func__, rc_len,sizeof(int)*2);
- continue;
- }
- rc_p= new Parcel;
- if(rc_p==NULL)
- {
- null_cnt++;
- LYERRLOG("%s rc_p is NULL, cnt is %d",__func__, null_cnt);
- if(null_cnt>20)
- {
- goto rc_recv_end;
- }
- continue;
- }
- else
- {
- null_cnt=0;
- }
-
- rc_p->setData((uint8_t *)rc_data,rc_len); // p.setData((uint8_t *) buffer, buflen);
- rc_p->setDataPosition(0);
- if(rc_p->dataAvail()>0)
- {
- rc_p->readInt32(&resp_type);
- rc_p->readInt32(&wakeup_token);
- BLOCK_RECV_MSG_LOCK();
- s_recv_parcel_list.push_back(rc_p);
- LYINFLOG("%s wakeup token is %d, list size is %d!",__func__,wakeup_token,s_recv_parcel_list.size());
- if(s_recv_parcel_list.size()>20) //max 20
- {
- iter=s_recv_parcel_list.begin();
- (*iter)->setDataPosition(0);
- (*iter)->readInt32(&resp_type);
- (*iter)->readInt32(&wakeup_token);
- delete (*(s_recv_parcel_list.begin()));
- LYERRLOG("%s wakeup token %d is deleted!",__func__,wakeup_token);
- s_recv_parcel_list.erase(iter);
- }
- BLOCK_WAKEUP_RECV_MSG();
- BLOCK_RECV_MSG_UNLOCK();
- break;
- }
- else
- {
- LYERRLOG("%s rc_p data Avail %d not greater than 0",__func__, rc_p->dataAvail());
- delete rc_p;
- }
- }
- }
-
-rc_recv_end:
- LYINFLOG("rc thread ended");
- return NULL;
-}
-
-int lynq_start_all_rc_socket_thread()
-{
- module_rc_sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if(module_rc_sock_fd < 0)
- {
- LYERRLOG("socket open error");
- return -1;
- }
-
- LYINFLOG("module_rc_sock_fd = %d",module_rc_sock_fd);
-
- memset(&module_rc_addr_serv, 0, sizeof(module_rc_addr_serv));
- module_rc_addr_serv.sin_family = AF_INET;
- module_rc_addr_serv.sin_addr.s_addr = inet_addr(LYNQ_ADDRESS);
- module_rc_addr_serv.sin_port = htons(LYNQ_SERVICE_PORT);
- module_len_rc_addr_serv = sizeof(module_rc_addr_serv);
-
- BLOCK_RECV_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_parcel_list.clear();
- BLOCK_RECV_MSG_UNLOCK();
-
-// pthread_attr_t attr;
- int ret;
-
- pthread_mutex_init(&s_sendto_mutex, NULL);
- pthread_mutex_init(&s_RecvMsgBlockMutex, NULL);
-
- module_rc_status = 1;
-// pthread_attr_init(&attr);
-// pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ret = pthread_create(&module_rc_tid,/*&attr*/NULL,thread_rc_recv,NULL);
- if(ret <0)
- {
- LYERRLOG("rc pthread create error");
- module_rc_status =0;
- close(module_rc_sock_fd);
- module_rc_sock_fd =-1;
- return ret;
- }
-
- LYINFLOG("rc start success");
-
- return RESULT_OK;
-}
-
-void lynq_close_all_rc_socket_thread()
-{
- int ret;
- BLOCK_RECV_MSG_LOCK();
- module_rc_status = 0;
- BLOCK_WAKEUP_RECV_MSG();
- if(module_rc_tid != -1)
- {
- ret = pthread_cancel(module_rc_tid);
- LYINFLOG("pthread cancel rc ret = %d",ret);
- }
- BLOCK_RECV_MSG_UNLOCK();
- if(module_rc_tid != -1)
- {
- ret = pthread_join(module_rc_tid,NULL);
- module_rc_tid =-1;
- LYINFLOG("pthread join rc tid ret = %d",ret);
-
- }
-
- if (module_rc_sock_fd > 0)
- {
- close(module_rc_sock_fd);
- module_rc_sock_fd =-1;
- }
-
- BLOCK_RECV_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_parcel_list.clear();
- BLOCK_RECV_MSG_UNLOCK();
-}
-
-const char * requestToString(int request)
-{
- /*
- cat libs/telephony/ril_commands.h \
- | egrep "^ *{RIL_" \
- | sed -re 's/\{RIL_([^,]+),[^,]+,([^}]+).+/case RIL_\1: return "\1";/'
-
-
- cat libs/telephony/ril_unsol_commands.h \
- | egrep "^ *{RIL_" \
- | sed -re 's/\{RIL_([^,]+),([^}]+).+/case RIL_\1: return "\1";/'
-
- */
- switch(request) {
- case RIL_REQUEST_GET_SIM_STATUS: return "GET_SIM_STATUS";
- case RIL_REQUEST_ENTER_SIM_PIN: return "ENTER_SIM_PIN";
- case RIL_REQUEST_ENTER_SIM_PUK: return "ENTER_SIM_PUK";
- case RIL_REQUEST_ENTER_SIM_PIN2: return "ENTER_SIM_PIN2";
- case RIL_REQUEST_ENTER_SIM_PUK2: return "ENTER_SIM_PUK2";
- case RIL_REQUEST_CHANGE_SIM_PIN: return "CHANGE_SIM_PIN";
- case RIL_REQUEST_CHANGE_SIM_PIN2: return "CHANGE_SIM_PIN2";
- case RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION: return "ENTER_NETWORK_DEPERSONALIZATION";
- case RIL_REQUEST_GET_CURRENT_CALLS: return "GET_CURRENT_CALLS";
- case RIL_REQUEST_DIAL: return "DIAL";
- case RIL_REQUEST_GET_IMSI: return "GET_IMSI";
- case RIL_REQUEST_HANGUP: return "HANGUP";
- case RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND: return "HANGUP_WAITING_OR_BACKGROUND";
- case RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND: return "HANGUP_FOREGROUND_RESUME_BACKGROUND";
- case RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE: return "SWITCH_WAITING_OR_HOLDING_AND_ACTIVE";
- case RIL_REQUEST_CONFERENCE: return "CONFERENCE";
- case RIL_REQUEST_UDUB: return "UDUB";
- case RIL_REQUEST_LAST_CALL_FAIL_CAUSE: return "LAST_CALL_FAIL_CAUSE";
- case RIL_REQUEST_SIGNAL_STRENGTH: return "SIGNAL_STRENGTH";
- case RIL_REQUEST_VOICE_REGISTRATION_STATE: return "VOICE_REGISTRATION_STATE";
- case RIL_REQUEST_DATA_REGISTRATION_STATE: return "DATA_REGISTRATION_STATE";
- case RIL_REQUEST_OPERATOR: return "OPERATOR";
- case RIL_REQUEST_RADIO_POWER: return "RADIO_POWER";
- case RIL_REQUEST_DTMF: return "DTMF";
- case RIL_REQUEST_SEND_SMS: return "SEND_SMS";
- case RIL_REQUEST_SEND_SMS_EXPECT_MORE: return "SEND_SMS_EXPECT_MORE";
- case RIL_REQUEST_SETUP_DATA_CALL: return "SETUP_DATA_CALL";
- case RIL_REQUEST_SIM_IO: return "SIM_IO";
- case RIL_REQUEST_SEND_USSD: return "SEND_USSD";
- case RIL_REQUEST_CANCEL_USSD: return "CANCEL_USSD";
- case RIL_REQUEST_GET_CLIR: return "GET_CLIR";
- case RIL_REQUEST_SET_CLIR: return "SET_CLIR";
- case RIL_REQUEST_QUERY_CALL_FORWARD_STATUS: return "QUERY_CALL_FORWARD_STATUS";
- case RIL_REQUEST_SET_CALL_FORWARD: return "SET_CALL_FORWARD";
- case RIL_REQUEST_QUERY_CALL_WAITING: return "QUERY_CALL_WAITING";
- case RIL_REQUEST_SET_CALL_WAITING: return "SET_CALL_WAITING";
- case RIL_REQUEST_SMS_ACKNOWLEDGE: return "SMS_ACKNOWLEDGE";
- case RIL_REQUEST_GET_IMEI: return "GET_IMEI";
- case RIL_REQUEST_GET_IMEISV: return "GET_IMEISV";
- case RIL_REQUEST_ANSWER: return "ANSWER";
- case RIL_REQUEST_DEACTIVATE_DATA_CALL: return "DEACTIVATE_DATA_CALL";
- case RIL_REQUEST_QUERY_FACILITY_LOCK: return "QUERY_FACILITY_LOCK";
- case RIL_REQUEST_SET_FACILITY_LOCK: return "SET_FACILITY_LOCK";
- case RIL_REQUEST_CHANGE_BARRING_PASSWORD: return "CHANGE_BARRING_PASSWORD";
- case RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE: return "QUERY_NETWORK_SELECTION_MODE";
- case RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC: return "SET_NETWORK_SELECTION_AUTOMATIC";
- case RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL: return "SET_NETWORK_SELECTION_MANUAL";
- case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS : return "QUERY_AVAILABLE_NETWORKS ";
- case RIL_REQUEST_DTMF_START: return "DTMF_START";
- case RIL_REQUEST_DTMF_STOP: return "DTMF_STOP";
- case RIL_REQUEST_BASEBAND_VERSION: return "BASEBAND_VERSION";
- case RIL_REQUEST_SEPARATE_CONNECTION: return "SEPARATE_CONNECTION";
- case RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE: return "SET_PREFERRED_NETWORK_TYPE";
- case RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE: return "GET_PREFERRED_NETWORK_TYPE";
- case RIL_REQUEST_GET_NEIGHBORING_CELL_IDS: return "GET_NEIGHBORING_CELL_IDS";
- case RIL_REQUEST_SET_MUTE: return "SET_MUTE";
- case RIL_REQUEST_GET_MUTE: return "GET_MUTE";
- case RIL_REQUEST_QUERY_CLIP: return "QUERY_CLIP";
- case RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE: return "LAST_DATA_CALL_FAIL_CAUSE";
- case RIL_REQUEST_DATA_CALL_LIST: return "DATA_CALL_LIST";
- case RIL_REQUEST_RESET_RADIO: return "RESET_RADIO";
- case RIL_REQUEST_OEM_HOOK_RAW: return "OEM_HOOK_RAW";
- case RIL_REQUEST_OEM_HOOK_STRINGS: return "OEM_HOOK_STRINGS";
- case RIL_REQUEST_SET_BAND_MODE: return "SET_BAND_MODE";
- case RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE: return "QUERY_AVAILABLE_BAND_MODE";
- case RIL_REQUEST_STK_GET_PROFILE: return "STK_GET_PROFILE";
- case RIL_REQUEST_STK_SET_PROFILE: return "STK_SET_PROFILE";
- case RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND: return "STK_SEND_ENVELOPE_COMMAND";
- case RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE: return "STK_SEND_TERMINAL_RESPONSE";
- case RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM: return "STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM";
- case RIL_REQUEST_SCREEN_STATE: return "SCREEN_STATE";
- case RIL_REQUEST_EXPLICIT_CALL_TRANSFER: return "EXPLICIT_CALL_TRANSFER";
- case RIL_REQUEST_SET_LOCATION_UPDATES: return "SET_LOCATION_UPDATES";
- case RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE:return"CDMA_SET_SUBSCRIPTION_SOURCE";
- case RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE:return"CDMA_SET_ROAMING_PREFERENCE";
- case RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE:return"CDMA_QUERY_ROAMING_PREFERENCE";
- case RIL_REQUEST_SET_TTY_MODE:return"SET_TTY_MODE";
- case RIL_REQUEST_QUERY_TTY_MODE:return"QUERY_TTY_MODE";
- case RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE";
- case RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE";
- case RIL_REQUEST_CDMA_FLASH:return"CDMA_FLASH";
- case RIL_REQUEST_CDMA_BURST_DTMF:return"CDMA_BURST_DTMF";
- case RIL_REQUEST_CDMA_SEND_SMS:return"CDMA_SEND_SMS";
- case RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE:return"CDMA_SMS_ACKNOWLEDGE";
- case RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG:return"GSM_GET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG:return"GSM_SET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION:return "GSM_SMS_BROADCAST_ACTIVATION";
- case RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG:return "CDMA_GET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG:return "CDMA_SET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION:return "CDMA_SMS_BROADCAST_ACTIVATION";
- case RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY: return"CDMA_VALIDATE_AND_WRITE_AKEY";
- case RIL_REQUEST_CDMA_SUBSCRIPTION: return"CDMA_SUBSCRIPTION";
- case RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM: return "CDMA_WRITE_SMS_TO_RUIM";
- case RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM: return "CDMA_DELETE_SMS_ON_RUIM";
- case RIL_REQUEST_DEVICE_IDENTITY: return "DEVICE_IDENTITY";
- case RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE: return "EXIT_EMERGENCY_CALLBACK_MODE";
- case RIL_REQUEST_GET_SMSC_ADDRESS: return "GET_SMSC_ADDRESS";
- case RIL_REQUEST_SET_SMSC_ADDRESS: return "SET_SMSC_ADDRESS";
- case RIL_REQUEST_REPORT_SMS_MEMORY_STATUS: return "REPORT_SMS_MEMORY_STATUS";
- case RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING: return "REPORT_STK_SERVICE_IS_RUNNING";
- case RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE: return "CDMA_GET_SUBSCRIPTION_SOURCE";
- case RIL_REQUEST_ISIM_AUTHENTICATION: return "ISIM_AUTHENTICATION";
- case RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU: return "RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU";
- case RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS: return "RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS";
- case RIL_REQUEST_VOICE_RADIO_TECH: return "VOICE_RADIO_TECH";
- case RIL_REQUEST_GET_CELL_INFO_LIST: return"GET_CELL_INFO_LIST";
- case RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE: return"SET_UNSOL_CELL_INFO_LIST_RATE";
- case RIL_REQUEST_SET_INITIAL_ATTACH_APN: return "RIL_REQUEST_SET_INITIAL_ATTACH_APN";
- case RIL_REQUEST_IMS_REGISTRATION_STATE: return "IMS_REGISTRATION_STATE";
- case RIL_REQUEST_IMS_SEND_SMS: return "IMS_SEND_SMS";
- case RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC: return "SIM_TRANSMIT_APDU_BASIC";
- case RIL_REQUEST_SIM_OPEN_CHANNEL: return "SIM_OPEN_CHANNEL";
- case RIL_REQUEST_SIM_CLOSE_CHANNEL: return "SIM_CLOSE_CHANNEL";
- case RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL: return "SIM_TRANSMIT_APDU_CHANNEL";
- case RIL_REQUEST_GET_RADIO_CAPABILITY: return "RIL_REQUEST_GET_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_RADIO_CAPABILITY: return "RIL_REQUEST_SET_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_UICC_SUBSCRIPTION: return "SET_UICC_SUBSCRIPTION";
- case RIL_REQUEST_ALLOW_DATA: return "ALLOW_DATA";
- case RIL_REQUEST_GET_HARDWARE_CONFIG: return "GET_HARDWARE_CONFIG";
- case RIL_REQUEST_SIM_AUTHENTICATION: return "SIM_AUTHENTICATION";
- case RIL_REQUEST_GET_DC_RT_INFO: return "GET_DC_RT_INFO";
- case RIL_REQUEST_SET_DC_RT_INFO_RATE: return "SET_DC_RT_INFO_RATE";
- case RIL_REQUEST_SET_DATA_PROFILE: return "SET_DATA_PROFILE";
- case RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED: return "UNSOL_RESPONSE_RADIO_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED: return "UNSOL_RESPONSE_CALL_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_PS_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_NEW_SMS: return "UNSOL_RESPONSE_NEW_SMS";
- case RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT: return "UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT";
- case RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM: return "UNSOL_RESPONSE_NEW_SMS_ON_SIM";
- case RIL_UNSOL_ON_USSD: return "UNSOL_ON_USSD";
- case RIL_UNSOL_ON_USSD_REQUEST: return "UNSOL_ON_USSD_REQUEST(obsolete)";
- case RIL_UNSOL_NITZ_TIME_RECEIVED: return "UNSOL_NITZ_TIME_RECEIVED";
- case RIL_UNSOL_SIGNAL_STRENGTH: return "UNSOL_SIGNAL_STRENGTH";
- case RIL_UNSOL_STK_SESSION_END: return "UNSOL_STK_SESSION_END";
- case RIL_UNSOL_STK_PROACTIVE_COMMAND: return "UNSOL_STK_PROACTIVE_COMMAND";
- case RIL_UNSOL_STK_EVENT_NOTIFY: return "UNSOL_STK_EVENT_NOTIFY";
- case RIL_UNSOL_STK_CALL_SETUP: return "UNSOL_STK_CALL_SETUP";
- case RIL_UNSOL_SIM_SMS_STORAGE_FULL: return "UNSOL_SIM_SMS_STORAGE_FUL";
- case RIL_UNSOL_SIM_REFRESH: return "UNSOL_SIM_REFRESH";
- case RIL_UNSOL_DATA_CALL_LIST_CHANGED: return "UNSOL_DATA_CALL_LIST_CHANGED";
- case RIL_UNSOL_CALL_RING: return "UNSOL_CALL_RING";
- case RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED: return "UNSOL_RESPONSE_SIM_STATUS_CHANGED";
- case RIL_UNSOL_RESPONSE_CDMA_NEW_SMS: return "UNSOL_NEW_CDMA_SMS";
- case RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS: return "UNSOL_NEW_BROADCAST_SMS";
- case RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL: return "UNSOL_CDMA_RUIM_SMS_STORAGE_FULL";
- case RIL_UNSOL_RESTRICTED_STATE_CHANGED: return "UNSOL_RESTRICTED_STATE_CHANGED";
- case RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE: return "UNSOL_ENTER_EMERGENCY_CALLBACK_MODE";
- case RIL_UNSOL_CDMA_CALL_WAITING: return "UNSOL_CDMA_CALL_WAITING";
- case RIL_UNSOL_CDMA_OTA_PROVISION_STATUS: return "UNSOL_CDMA_OTA_PROVISION_STATUS";
- case RIL_UNSOL_CDMA_INFO_REC: return "UNSOL_CDMA_INFO_REC";
- case RIL_UNSOL_OEM_HOOK_RAW: return "UNSOL_OEM_HOOK_RAW";
- case RIL_UNSOL_RINGBACK_TONE: return "UNSOL_RINGBACK_TONE";
- case RIL_UNSOL_RESEND_INCALL_MUTE: return "UNSOL_RESEND_INCALL_MUTE";
- case RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED: return "UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED";
- case RIL_UNSOL_CDMA_PRL_CHANGED: return "UNSOL_CDMA_PRL_CHANGED";
- case RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE: return "UNSOL_EXIT_EMERGENCY_CALLBACK_MODE";
- case RIL_UNSOL_RIL_CONNECTED: return "UNSOL_RIL_CONNECTED";
- case RIL_UNSOL_VOICE_RADIO_TECH_CHANGED: return "UNSOL_VOICE_RADIO_TECH_CHANGED";
- case RIL_UNSOL_CELL_INFO_LIST: return "UNSOL_CELL_INFO_LIST";
- case RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED: return "RESPONSE_IMS_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED: return "UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED";
- case RIL_UNSOL_SRVCC_STATE_NOTIFY: return "UNSOL_SRVCC_STATE_NOTIFY";
- case RIL_UNSOL_HARDWARE_CONFIG_CHANGED: return "HARDWARE_CONFIG_CHANGED";
- case RIL_UNSOL_DC_RT_INFO_CHANGED: return "UNSOL_DC_RT_INFO_CHANGED";
- case RIL_REQUEST_SHUTDOWN: return "SHUTDOWN";
- case RIL_UNSOL_RADIO_CAPABILITY: return "RIL_UNSOL_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_TRM: return "RIL_REQUEST_SET_TRM";
- case RIL_REQUEST_SET_IMS_ENABLE:return "RIL_REQUEST_SET_IMS_ENABLE";
- case RIL_REQUEST_SET_AUDIO_PATH: return "SET_AUDIO_PATH";
- case RIL_REQUEST_HANGUP_ALL: return "HANGUP_ALL";
- case RIL_REQUEST_FORCE_RELEASE_CALL: return "FORCE_RELEASE_CALL";
- case RIL_REQUEST_EMERGENCY_DIAL: return "RIL_REQUEST_EMERGENCY_DIAL";
- case RIL_REQUEST_SET_ECC_SERVICE_CATEGORY: return "RIL_REQUEST_SET_ECC_SERVICE_CATEGORY";
- case RIL_REQUEST_SET_ECC_LIST: return "RIL_REQUEST_SET_ECC_LIST";
- case RIL_REQUEST_AT_COMMAND_WITH_PROXY: return "AT_COMMAND_WITH_PROXY";
- case RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION: return "RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION";
- case RIL_REQUEST_SET_CLIP: return "RIL_REQUEST_SET_CLIP";
- case RIL_REQUEST_GET_COLP: return "RIL_REQUEST_GET_COLP";
- case RIL_REQUEST_SET_COLP: return "RIL_REQUEST_SET_COLP";
- case RIL_REQUEST_GET_COLR: return "RIL_REQUEST_GET_COLR";
- case RIL_REQUEST_ADD_IMS_CONFERENCE_CALL_MEMBER: return "ADD_IMS_CONFERENCE_CALL_MEMBER";
- case RIL_REQUEST_REMOVE_IMS_CONFERENCE_CALL_MEMBER: return "REMOVE_IMS_CONFERENCE_CALL_MEMBER";
- case RIL_REQUEST_CONFERENCE_DIAL: return "CONFERENCE_DIAL";
- case RIL_REQUEST_DIAL_WITH_SIP_URI: return "DIAL_WITH_SIP_URI";
- case RIL_REQUEST_HOLD_CALL: return "HOLD_CALL";
- case RIL_REQUEST_RESUME_CALL: return "RESUME_CALL";
- case RIL_UNSOL_ECONF_SRVCC_INDICATION : return "ECONF_SRVCC_INDICATION";
- case RIL_UNSOL_ECONF_RESULT_INDICATION : return "ECONF_RESULT_INDICATION";
- case RIL_UNSOL_MAL_AT_INFO : return "UNSOL_MAL_AT_INFO";
- case RIL_REQUEST_MODEM_POWEROFF: return "MODEM_POWEROFF";
- case RIL_REQUEST_MODEM_POWERON: return "MODEM_POWERON";
- case RIL_REQUEST_WRITE_SMS_TO_SIM: return "WRITE_SMS_TO_SIM";
- case RIL_REQUEST_QUERY_ICCID: return "RIL_REQUEST_QUERY_ICCID";
- case RIL_UNSOL_TX_POWER: return "RIL_UNSOL_TX_POWER";
- case RIL_UNSOL_NETWORK_INFO: return "RIL_UNSOL_NETWORK_INFO";
- case RIL_REQUEST_DELETE_SMS_ON_SIM: return "DELETE_SMS_ON_SIM";
- case RIL_REQUEST_SET_IMSCFG: return "RIL_REQUEST_SET_IMSCFG";
-#ifdef ECALL_SUPPORT
- case RIL_REQUEST_ECALL_FAST_MAKE_ECALL: return "ECALL_FAST_MAKE_ECALL";
- case RIL_REQUEST_ECALL_SET_IVS: return "RIL_REQUEST_ECALL_SET_IVS";
- case RIL_REQUEST_ECALL_SET_PSAP: return "RIL_REQUEST_ECALL_SET_PSAP";
- case RIL_REQUEST_ECALL_MAKE_ECALL: return "RIL_REQUEST_ECALL_MAKE_ECALL";
- case RIL_REQUEST_ECALL_IVS_PUSH_MSD: return "RIL_REQUEST_ECALL_IVS_PUSH_MSD";
- case RIL_REQUEST_ECALL_PSAP_PULL_MSD: return "RIL_REQUEST_ECALL_PSAP_PULL_MSD";
- case RIL_UNSOL_ECALL_MSDHACK : return "ECALL_MSDHACK";
- case RIL_REQUEST_ECALL_SET_MSD: return "RIL_REQUEST_ECALL_SET_MSD";
- case RIL_REQUEST_ECALL_CTRL_SEQUENCE: return "ECALL_SET_CTRL_SEQUENCE";
- case RIL_UNSOL_ECALL_INDICATIONS : return "ECALL_INDICATIONS";
- case RIL_REQUEST_ECALL_RESET_IVS: return "RIL_REQUEST_ECALL_RESET_IVS";
- case RIL_REQUEST_ECALL_SET_PRI: return "RIL_REQUEST_ECALL_SET_PRI";
- case RIL_REQUEST_ECALL_SET_TEST_NUM: return "RIL_REQUEST_ECALL_SET_TEST_NUM";
- case RIL_REQUEST_ECALL_SET_RECONF_NUM: return "RIL_REQUEST_ECALL_SET_RECONF_NUM";
- case RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD: return "RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD";
- case RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME: return "RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME";
- case RIL_REQUEST_ECALL_SET_REGISTRATION_STATE: return "RIL_REQUEST_ECALL_SET_REGISTRATION_STATE";
-#endif /*ECALL_SUPPORT*/
-#ifdef KEEP_ALIVE
- case RIL_REQUEST_START_KEEPALIVE_PRO: return "RIL_REQUEST_START_KEEPALIVE_PRO";
- case RIL_REQUEST_STOP_KEEPALIVE_PRO: return "RIL_REQUEST_STOP_KEEPALIVE_PRO";
- case RIL_UNSOL_KEEPALIVE_STATUS_PRO: return "RIL_UNSOL_KEEPALIVE_STATUS_PRO";
-#endif /*KEEP_ALIVE*/
- case RIL_REQUEST_SEND_USSI: return "SEND_USSI";
- case RIL_REQUEST_CANCEL_USSI: return "CANCEL_USSI";
- case RIL_REQUEST_GET_SMS_SIM_MEM_STATUS: return "GET_SMS_SIM_MEM_STATUS";
- case RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR: return "RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR";
- case RIL_REQUEST_REPORT_AIRPLANE_MODE: return "RIL_REQUEST_REPORT_AIRPLANE_MODE";
- case RIL_REQUEST_SET_ECC_NUM: return "RIL_REQUEST_SET_ECC_NUM";
- case RIL_REQUEST_GET_ECC_NUM: return "RIL_REQUEST_GET_ECC_NUM";
- case RIL_UNSOL_ECC_NUM: return "RIL_UNSOL_ECC_NUM";
- case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT: return "RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT";
- case RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE";
- case RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE";
- case RIL_UNSOL_CALL_INFO_INDICATION: return "RIL_UNSOL_CALL_INFO_INDICATION";
- case RIL_REQUEST_MODIFY_APN: return "RIL_REQUEST_MODIFY_APN";
- case RIL_REQUEST_RESET_APN: return "RIL_REQUEST_RESET_APN";
- case RIL_REQUEST_QUERY_SIM_RETRY_COUNT: return "RIL_REQUEST_QUERY_SIM_RETRY_COUNT";
- case RIL_REQUEST_QUERY_EID: return "RIL_REQUEST_QUERY_EID";
- case LYNQ_REQUEST_SET_DTMF_VOLUME: return "RIL_REQUEST_SET_DTMF_VOLUME";
- case LYNQ_REQUEST_SET_SPEECH_VOLUME: return "RIL_REQUEST_SET_SPEECH_VOLUME";
- case LYNQ_REQUEST_GET_SPEECH_VOLUME: return "RIL_REQUEST_GET_SPEECH_VOLUME";
- case LYNQ_REQUEST_RECORD: return "RIL_REQUEST_RECORD";
- /*warren add for t800 ril service 2022/1/22 start*/
- case LYNQ_REQUEST_WRITE_SMS_TO_MEMORY: return "LYNQ_REQUEST_WRITE_SMS_TO_MEMORY";
- case LYNQ_REQUEST_READ_SMS_FROM_MEMORY: return "LYNQ_REQUEST_READ_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY: return "LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_LIST_SMS_FROM_MEMORY: return "LYNQ_REQUEST_LIST_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_SET_DEFAULT_SIM_ALL:return "SET_DEFAULT_SIM_ALL";
- case LYNQ_REQUEST_CHANGE_SCREEN_STATE:return "LYNQ_REQUEST_CHANGE_SCREEN_STATE";/*jb.qi add for two sim sleep 2022/9/19*/
- case LYNQ_REQUEST_CHANGE_RADIO:return "LYNQ_REQUEST_CHANGE_RADIO";/*lei add for factory test of sleep 2022/9/19*/
- /*warren add for t800 ril service 2022/1/22 end*/
- default: return "<unknown request>";
- }
-}
-
-
diff --git a/src/lynq/lib/liblynq-network/lynq_module_socket.h b/src/lynq/lib/liblynq-network/lynq_module_socket.h
deleted file mode 100755
index 98f968e..0000000
--- a/src/lynq/lib/liblynq-network/lynq_module_socket.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef LYNQ_MODULE_SOCKET_H
-#define LYNQ_MODULE_SOCKET_H
-
-using ::android::Parcel;
-
-int lynq_set_test_network(const int test_mode);
-
-extern int g_module_Global_uToken;
-extern int g_wait_time;
-int lynq_send_common_request(Parcel*& p, int time_out, int request_id, int argc, const char* format,...);
-
-int lynq_start_all_urc_socket_thread();
-void lynq_close_all_urc_socket_thread();
-int lynq_start_all_rc_socket_thread();
-void lynq_close_all_rc_socket_thread();
-
-const char * requestToString(int request);
-
-void urc_msg_process(Parcel *p);
-bool is_support_urc(int urc_id);
-
-#endif
diff --git a/src/lynq/lib/liblynq-network/lynq_network.cpp b/src/lynq/lib/liblynq-network/lynq_network.cpp
index dd45fdc..2112579 100755
--- a/src/lynq/lib/liblynq-network/lynq_network.cpp
+++ b/src/lynq/lib/liblynq-network/lynq_network.cpp
@@ -15,11 +15,18 @@
#include "lynq_module_common.h"
#include "lynq_module_socket.h"
#include "lynq_module_state_buffer.h"
+#include "service_lib_common.h"
#define LYNQ_RESP_STRING_MAX_NUM 128
#define LYNQ_TYPE_BUF 10
#define USER_LOG_TAG "LYNQ_NETWORK"
+/*in CR AUTO00210807 MTK confirm set network selection mode max time is 14min 30s, first set 5 min 10s*/
+#define WAIT_TIME_LENGTH_FOR_SET_NETWORK_SELECTION_MODE (310)
+/*in CR AUTO00207414, in modem, 23G detach need 10s, 5g ims detach need 5s, so set length to 12s */
+#define WAIT_TIME_LENGTH_FOR_SET_PREFFERRED_NETWORK_TYPE (12)
+
+
using ::android::Parcel;
static int s_module_wait_urc_id;
@@ -357,11 +364,11 @@
if(!strcmp(mode,"Auto"))
{
- ret=lynq_send_common_request(p,g_wait_time,RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC,0,"");
+ ret=lynq_send_common_request(p,WAIT_TIME_LENGTH_FOR_SET_NETWORK_SELECTION_MODE,RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC,0,"");
}
else if(!strcmp(mode,"Manual"))
{
- ret=lynq_send_common_request(p,g_wait_time,RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL,1,"%s",mccmnc);
+ ret=lynq_send_common_request(p,WAIT_TIME_LENGTH_FOR_SET_NETWORK_SELECTION_MODE,RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL,1,"%s",mccmnc);
}
else
{
@@ -625,7 +632,7 @@
}
Parcel* p=NULL;
- int ret=lynq_send_common_request(p,g_wait_time,RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE,1,"%d",preffertype);
+ int ret=lynq_send_common_request(p,WAIT_TIME_LENGTH_FOR_SET_PREFFERRED_NETWORK_TYPE,RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE,1,"%d",preffertype);
if(ret!=RESULT_OK)
{
@@ -1148,7 +1155,7 @@
p->readInt32(&resp_type);
p->readInt32(&s_module_wait_urc_id);
p->readInt32(&s_module_urc_slot_id);
- LYINFLOG("%s urc id = %d, slot_id = %d, size is %d, msg is %s",__func__, s_module_wait_urc_id,s_module_urc_slot_id,size,requestToString(s_module_wait_urc_id));
+ LYINFLOG("%s urc id = %d, slot_id = %d, size is %d, msg is %s",__func__, s_module_wait_urc_id,s_module_urc_slot_id,size,android::requestToString(s_module_wait_urc_id));
switch(s_module_wait_urc_id)
{
case RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED:
@@ -1449,7 +1456,7 @@
LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
return LYNQ_E_CONFLICT;
}
- if(((recovery_threshold < 2) || (recovery_threshold > 10)) || ((fullband_timer < 90) || (fullband_timer > 360)) ||
+ if(((recovery_threshold < 2) || (recovery_threshold > 10)) || (fullband_timer < 90) ||
((sniffer_timer < 10) || (sniffer_timer > 60)) || ((inactive_mode < 0) || (inactive_mode > 1)))
{
LYERRLOG("%s paramter recovery_threshold %d fullband_timer %d sniffer_timer %d inactive_mode %d error!",__func__,recovery_threshold,fullband_timer,sniffer_timer,inactive_mode);
diff --git a/src/lynq/lib/liblynq-qser-adc/LICENSE b/src/lynq/lib/liblynq-qser-adc/LICENSE
new file mode 100755
index 0000000..605b7ea
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-adc/LICENSE
@@ -0,0 +1,31 @@
+Copyright Statement:
+
+This software/firmware and related documentation ("MobileTek Software") are
+protected under relevant copyright laws. The information contained herein is
+confidential and proprietary to MobileTek Inc. and/or its licensors. Without
+the prior written permission of MobileTek inc. and/or its licensors, any
+reproduction, modification, use or disclosure of MobileTek Software, and
+information contained herein, in whole or in part, shall be strictly
+prohibited.
+
+MobileTek Inc. (C) 2015. All rights reserved.
+
+BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MobileTek SOFTWARE")
+RECEIVED FROM MobileTek AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER
+ON AN "AS-IS" BASIS ONLY. MobileTek EXPRESSLY DISCLAIMS ANY AND ALL
+WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
+NONINFRINGEMENT. NEITHER DOES MobileTek PROVIDE ANY WARRANTY WHATSOEVER WITH
+RESPECT TO THE SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY,
+INCORPORATED IN, OR SUPPLIED WITH THE MobileTek SOFTWARE, AND RECEIVER AGREES
+TO LOOK ONLY TO SUCH THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO.
+RECEIVER EXPRESSLY ACKNOWLEDGES THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO
+OBTAIN FROM ANY THIRD PARTY ALL PROPER LICENSES CONTAINED IN MobileTek
+SOFTWARE. MobileTek SHALL ALSO NOT BE RESPONSIBLE FOR ANY MobileTek SOFTWARE
+RELEASES MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR
+STANDARD OR OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MobileTek'S
+ENTIRE AND CUMULATIVE LIABILITY WITH RESPECT TO THE MobileTek SOFTWARE
+RELEASED HEREUNDER WILL BE, AT MobileTek'S OPTION, TO REVISE OR REPLACE THE
+MobileTek SOFTWARE AT ISSUE, OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE
+CHARGE PAID BY RECEIVER TO MobileTek FOR SUCH MobileTek SOFTWARE AT ISSUE.
diff --git a/src/lynq/lib/liblynq-qser-adc/include/liblynq-qser-adc.h b/src/lynq/lib/liblynq-qser-adc/include/liblynq-qser-adc.h
new file mode 100755
index 0000000..55fb090
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-adc/include/liblynq-qser-adc.h
@@ -0,0 +1,29 @@
+/*=============================================================================
+# FileName: lynq_qser_adc_show.h
+# Desc: about adc show for user
+# Author: cz.li
+# Version: V1.0
+# LastChange: 2023-05-31
+# History:
+ copyright:Mobiletek
+=============================================================================*/
+#ifndef LYNQLIB_QSER_ADC_SHOW_H
+#define LYNQLIB_QSER_ADC_SHOW__H 1
+#ifdef __cplusplus
+extern "C" {
+#endif
+typedef enum ADC_CHANNEL_ENUM
+{
+ QADC_NONE = 0,
+ ADC0 =1,
+ ADC1 =2,
+ ADC2 =3,
+ QADC_END
+}ADC_CHANNEL_E;
+
+int qser_adc_show(ADC_CHANNEL_E qadc);
+
+#ifdef __cplusplus
+}
+#endif
+#endif
diff --git a/src/lynq/lib/liblynq-qser-adc/liblynq_qser_adc.cpp b/src/lynq/lib/liblynq-qser-adc/liblynq_qser_adc.cpp
new file mode 100755
index 0000000..98f037f
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-adc/liblynq_qser_adc.cpp
@@ -0,0 +1,66 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <liblog/lynq_deflog.h>
+#include "include/liblynq-qser-adc.h"
+#define USER_LOG_TAG "LIBLYNQ_QSER_ADC"
+#undef LOG_TAG
+#define LOG_TAG "LIBLYNQ_QSER_ADC"
+int qser_adc_show(ADC_CHANNEL_E qadc)
+{
+ int adc_value;
+ char cmd[1024];
+ char cmd_ret[1024];
+ FILE *fp;
+ switch(qadc)
+ {
+ case QADC_NONE:
+ {
+ LYERRLOG("function %s line %d\n", __FUNCTION__, __LINE__);
+ return 0;
+ }
+ case ADC0:
+ {
+ LYDBGLOG("function %s line %d\n", __FUNCTION__, __LINE__);
+ sprintf(cmd,"cat /sys/bus/iio/devices/iio:device1/in_voltage0_input");
+ break;
+ }
+ case ADC1:
+ {
+ LYDBGLOG("function %s line %d\n", __FUNCTION__, __LINE__);
+ sprintf(cmd,"cat /sys/bus/iio/devices/iio:device1/in_voltage1_input");
+ break;
+ }
+ case ADC2:
+ {
+ LYDBGLOG("function %s line %d\n", __FUNCTION__, __LINE__);
+ sprintf(cmd,"cat /sys/bus/iio/devices/iio:device1/in_voltage2_input");
+ break;
+ }
+ default:
+ {
+ LYERRLOG("input error\n");
+ return -1;
+ }
+ }
+ if((fp = popen(cmd,"r")) == NULL)
+ {
+ LYERRLOG("popen error!");
+ return -1;
+ }
+ if((fread(cmd_ret,sizeof(cmd_ret),1,fp))<0)
+ {
+ LYERRLOG("fread fail!");
+ fclose(fp);
+ return -1;
+ }
+ fclose(fp);
+
+ adc_value = atoi(cmd_ret);
+ if (adc_value < 0 || adc_value > 12000)
+ {
+ LYERRLOG("bad adc value %s!", cmd_ret);
+ return -1;
+ }
+
+ return adc_value;
+}
diff --git a/src/lynq/lib/liblynq-qser-adc/makefile b/src/lynq/lib/liblynq-qser-adc/makefile
new file mode 100755
index 0000000..0ef16a1
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-adc/makefile
@@ -0,0 +1,70 @@
+SHELL = /bin/sh
+RM = rm -f
+
+LOCAL_CFLAGS := -Wall \
+ -std=gnu++14 \
+ -g -Os \
+ -flto \
+ -DRIL_SHLIB \
+ -DATCI_PARSE \
+ -fPIC \
+ -DKEEP_ALIVE \
+ -DECALL_SUPPORT \
+ -fpermissive \
+
+
+
+$(warning ################# lynq data demo ROOT: $(ROOT),includedir:$(includedir))
+LOCAL_PATH = .
+
+LOCAL_C_INCLUDES = \
+ -I. \
+ -I$(LOCAL_PATH)/include/libcall \
+ -I$(ROOT)$(includedir)/logger \
+ -I$(ROOT)$(includedir)/liblog \
+ -I$(ROOT)$(includedir)/vendor-ril \
+ -I$(ROOT)$(includedir)/lynq_shm \
+
+
+LOCAL_LIBS := \
+ -L. \
+ -ldl \
+ -lstdc++ \
+ -llog \
+ -lcutils \
+ -lutils \
+ -lbinder \
+ -lpthread \
+ -llynq-log \
+
+SOURCES = $(wildcard *.cpp)
+
+EXECUTABLE = liblynq-qser-adc.so
+
+OBJECTS=$(SOURCES:.cpp=.o)
+
+
+.PHONY: build clean install pack_rootfs
+all: build
+$(EXECUTABLE): $(OBJECTS)
+ $(CXX) -shared -Wl,--no-undefined $(OBJECTS) $(LOCAL_LIBS) $(LOCAL_CFLAGS) $(LOCAL_C_INCLUDES) -o $@
+
+%.o : %.cpp
+ $(CXX) $(LOCAL_C_INCLUDES) $(LOCAL_CFLAGS) $(LOCAL_LIBS) -o $@ -c $<
+
+build: $(EXECUTABLE)
+ $(warning ########## build $(EXECUTABLE) ##########)
+install:
+ mkdir -p $(ROOT)$(base_libdir)/
+ install $(EXECUTABLE) $(ROOT)$(base_libdir)/
+pack_rootfs:
+ mkdir -p $(PACK_INITRAMFS_TO)$(base_libdir)/
+ cp -af $(EXECUTABLE) $(PACK_INITRAMFS_TO)$(base_libdir)/
+ $(CROSS)strip $(PACK_INITRAMFS_TO)$(base_libdir)/$(EXECUTABLE)
+ mkdir -p $(PACK_TO)$(base_libdir)/
+ cp -af $(EXECUTABLE) $(PACK_TO)$(base_libdir)/
+ $(CROSS)strip $(PACK_TO)$(base_libdir)/$(EXECUTABLE)
+.PHONY: clean
+clean:
+ $(RM) $(OBJECTS) $(EXECUTABLE)
+ -find . -name "*.o" -delete
diff --git a/src/lynq/lib/liblynq-qser-data/LICENSE b/src/lynq/lib/liblynq-qser-data/LICENSE
new file mode 100644
index 0000000..8aaabff
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-data/LICENSE
@@ -0,0 +1,31 @@
+Copyright Statement:
+
+This software/firmware and related documentation ("Mobiletek Software") are
+protected under relevant copyright laws. The information contained herein is
+confidential and proprietary to Mobiletek Inc. and/or its licensors. Without
+the prior written permission of Mobiletek inc. and/or its licensors, any
+reproduction, modification, use or disclosure of Mobiletek Software, and
+information contained herein, in whole or in part, shall be strictly
+prohibited.
+
+Mobiletek Inc. (C) 2015. All rights reserved.
+
+BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER
+ON AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL
+WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
+NONINFRINGEMENT. NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH
+RESPECT TO THE SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY,
+INCORPORATED IN, OR SUPPLIED WITH THE MEDIATEK SOFTWARE, AND RECEIVER AGREES
+TO LOOK ONLY TO SUCH THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO.
+RECEIVER EXPRESSLY ACKNOWLEDGES THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO
+OBTAIN FROM ANY THIRD PARTY ALL PROPER LICENSES CONTAINED IN MEDIATEK
+SOFTWARE. MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE
+RELEASES MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR
+STANDARD OR OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S
+ENTIRE AND CUMULATIVE LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE
+RELEASED HEREUNDER WILL BE, AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE
+MEDIATEK SOFTWARE AT ISSUE, OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE
+CHARGE PAID BY RECEIVER TO MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
\ No newline at end of file
diff --git a/src/lynq/lib/liblynq-qser-data/include/lynq-qser-data.h b/src/lynq/lib/liblynq-qser-data/include/lynq-qser-data.h
new file mode 100644
index 0000000..3485b72
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-data/include/lynq-qser-data.h
@@ -0,0 +1,268 @@
+#ifndef __LYNQ_QSER_DATA_H__
+#define __LYNQ_QSER_DATA_H__
+
+#include <stdbool.h>
+#include <netinet/in.h>
+
+typedef enum {
+ QSER_DATA_CALL_ERROR_NONE = 0,
+ QSER_DATA_CALL_ERROR_INVALID_PARAMS,
+} qser_data_call_error_e;
+
+typedef enum {
+ QSER_DATA_CALL_DISCONNECTED = 0, /*!< call is disconnected */
+ QSER_DATA_CALL_CONNECTED, /*!< call is connected */
+} qser_data_call_state_e;
+
+typedef enum {
+ QSER_DATA_CALL_TYPE_IPV4 = 0, /*!< IPv4 call. */
+ QSER_DATA_CALL_TYPE_IPV6, /*!< IPv6 call. */
+ QSER_DATA_CALL_TYPE_IPV4V6, /*!< IPv4 and IPv6 call (Only used call start or stop). */
+} qser_data_call_ip_family_e;
+
+typedef enum {
+ QSER_APN_PDP_TYPE_IPV4 = 0,
+ QSER_APN_PDP_TYPE_PPP,
+ QSER_APN_PDP_TYPE_IPV6,
+ QSER_APN_PDP_TYPE_IPV4V6,
+} qser_apn_pdp_type_e;
+
+typedef enum {
+ QSER_APN_AUTH_PROTO_DEFAULT = 0,
+ QSER_APN_AUTH_PROTO_NONE,
+ QSER_APN_AUTH_PROTO_PAP,
+ QSER_APN_AUTH_PROTO_CHAP,
+ QSER_APN_AUTH_PROTO_PAP_CHAP,
+} qser_apn_auth_proto_e;
+
+#define QSER_APN_MAX_LIST 8
+#define QSER_APN_NAME_SIZE 150
+#define QSER_APN_USERNAME_SIZE 127
+#define QSER_APN_PASSWORD_SIZE 127
+
+struct v4_address_status {
+ struct in_addr ip; /*!< Public IPv4 address. */
+ struct in_addr gateway; /*!< Public IPv4 gateway. */
+ struct in_addr pri_dns; /*!< Primary Domain Name Service IP address. */
+ struct in_addr sec_dns; /*!< Secondary Domain Name Service IP address. */
+};
+
+struct v6_address_status {
+ struct in6_addr ip; /*!< Public IPv6 address. */
+ struct in6_addr gateway; /*!< Public IPv6 gateway. */
+ struct in6_addr pri_dns; /*!< Primary Domain Name Service IPv6 address. */
+ struct in6_addr sec_dns; /*!< Secondary Domain Name Service IPv6 address. */
+};
+
+typedef struct {
+ char profile_idx; /*!< UMTS/CMDA profile ID. */
+ char name[16]; /*!< Interface Name. */
+ qser_data_call_ip_family_e ip_family; /*!< IP version. */
+ qser_data_call_state_e state; /*!< The dial status. */
+ qser_data_call_error_e err; /*!< The Reason code after data call disconnected. */
+ union {
+ struct v4_address_status v4; /*!< IPv4 information. */
+ struct v6_address_status v6; /*!< IPv6 information. */
+ };
+} qser_data_call_state_s;
+
+/*
+ *!< Client callback function used to post event indications.
+ */
+typedef void (*qser_data_call_evt_cb_t)(qser_data_call_state_s *state);
+
+typedef struct {
+ char profile_idx; /*!< UMTS/CMDA profile ID. */
+ bool reconnect; /*!< Whether to re-dial after disconnecting the network. */
+ qser_data_call_ip_family_e ip_family; /*!< IP version. */
+ char cdma_username[QSER_APN_USERNAME_SIZE]; /*!< Username used during data network authentication. */
+ char cdma_password[QSER_APN_PASSWORD_SIZE]; /*!< Password to be used during data network authentication. */
+} qser_data_call_s;
+
+struct pkt_stats {
+ unsigned long pkts_tx; /*!< Number of packets transmitted. */
+ unsigned long pkts_rx; /*!< Number of packets received. */
+ long long bytes_tx; /*!< Number of bytes transmitted. */
+ long long bytes_rx; /*!< Number of bytes received. */
+ unsigned long pkts_dropped_tx; /*!< Number of transmit packets dropped. */
+ unsigned long pkts_dropped_rx; /*!< Number of receive packets dropped. */
+};
+
+struct v4_info {
+ char name[16]; /*!< Interface Name. */
+ qser_data_call_state_e state; /*!< The dial status. */
+ bool reconnect; /*!< re-dial flag. */
+ struct v4_address_status addr; /*!< IPv4 IP Address information. */
+ struct pkt_stats stats; /*!< IPv4 statics */
+};
+
+struct v6_info {
+ char name[16]; /*!< Interface Name. */
+ qser_data_call_state_e state; /*!< The dial status. */
+ bool reconnect; /*!< re-dial flag. */
+ struct v6_address_status addr; /*!< IPv6 IP Address information. */
+ struct pkt_stats stats; /*!< IPv6 statics */
+};
+
+typedef struct {
+ char profile_idx; /*!< UMTS/CDMA profile ID. */
+ qser_data_call_ip_family_e ip_family; /*!< IP version. */
+ struct v4_info v4; /*!< IPv4 information */
+ struct v6_info v6; /*!< IPv6 information */
+} qser_data_call_info_s;
+
+typedef struct {
+ unsigned char profile_idx; /*!< UMTS/CDMA profile ID. */
+ qser_apn_pdp_type_e pdp_type; /*!< Packet Data Protocol (PDP) type specifies the type of data payload
+ exchanged over the airlink when the packet data session is
+ established with this profile. */
+ qser_apn_auth_proto_e auth_proto; /*!< Authentication Protocol. */
+ char apn_name[QSER_APN_NAME_SIZE]; /*!< A string parameter that is a logical name used to select the GGSN
+ and external packet data network. */
+ char username[QSER_APN_USERNAME_SIZE]; /*!< Username used during data network authentication. */
+ char password[QSER_APN_PASSWORD_SIZE]; /*!< Password to be used during data network authentication. */
+ char apn_type[QSER_APN_NAME_SIZE];
+} qser_apn_info_s;
+
+typedef struct {
+ qser_apn_pdp_type_e pdp_type; /*!< Packet Data Protocol (PDP) type specifies the type of data payload
+ exchanged over the airlink when the packet data session is
+ established with this profile. */
+ qser_apn_auth_proto_e auth_proto; /*!< Authentication Protocol. */
+ char apn_name[QSER_APN_NAME_SIZE]; /*!< A string parameter that is a logical name used to select the GGSN
+ and external packet data network. */
+ char username[QSER_APN_USERNAME_SIZE]; /*!< Username used during data network authentication. */
+ char password[QSER_APN_PASSWORD_SIZE]; /*!< Password to be used during data network authentication. */
+ char apn_type[QSER_APN_NAME_SIZE];
+} qser_apn_add_s;
+
+typedef struct {
+ int cnt;
+ qser_apn_info_s apn[QSER_APN_MAX_LIST];
+} qser_apn_info_list_s;
+
+
+/**
+ * Initialization data call module, and callback function registered.
+ *
+ * @param [in] evt_cb callback fucntion
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern int qser_data_call_init(qser_data_call_evt_cb_t evt_cb);
+
+/**
+ * Destroy data call module, and unregister callback funciton
+ *
+ * @param
+ * None
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern void qser_data_call_destroy(void);
+
+/**
+ * Starts a data call. If profile index is zero, it will call CDMA profile.
+ *
+ * @param [in] data_call The data call parameters
+ * @param [out] error Error code returned by data call
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern int qser_data_call_start(qser_data_call_s *data_call, qser_data_call_error_e *err);
+
+/**
+ * Stop a data call.
+ *
+ * @param [in] profile_idx UMTS/CDMA profile ID
+ * @param [in] ip_family IP Version
+ * @param [out] error Error code returned by data call
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern int qser_data_call_stop(char profile_idx, qser_data_call_ip_family_e ip_family, qser_data_call_error_e *err);
+
+/**
+ * Get a data call information.
+ *
+ * @param [in] profile_idx UMTS/CDMA profile ID
+ * @param [in] ip_family IP Version
+ * @param [out] info The Data Call information
+ * @param [out] error Error code returned by data call
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern int qser_data_call_info_get(char profile_idx,
+ qser_data_call_ip_family_e ip_family,
+ qser_data_call_info_s *info,
+ qser_data_call_error_e *err);
+
+/**
+ * Changes the settings in a configured profile.
+ *
+ * @param [in] apn the profile information.
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned, such apn not exist.
+ *
+ */
+extern int qser_apn_set(qser_apn_info_s *apn);
+
+/**
+ * Retrieves the settings from a configured profile.
+ *
+ * @param [in] profile_idx UMTS/CDMA profile ID
+ * @param [out] apn the profile information.
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern int qser_apn_get(unsigned char profile_idx, qser_apn_info_s *apn);
+
+/**
+ * Retrieves the settings from a configured profile.
+ *
+ * @param [in] apn the profile information.
+ * @param [out] profile_idx UMTS/CDMA profile ID
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern int qser_apn_add(qser_apn_add_s *apn, unsigned char *profile_idx);
+
+/**
+ * Delete a configured profile.
+ *
+ * @param [in] profile_idx UMTS/CDMA profile ID
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern int qser_apn_del(unsigned char profile_idx);
+
+/**
+ * Retrieves the settings from a configured profile list.
+ *
+ * @param [out] apn_list the profile list information.
+ *
+ * @return
+ * On success, 0 is returned. On error, -1 is returned.
+ *
+ */
+extern int qser_apn_get_list(qser_apn_info_list_s *apn_list);
+
+#endif
+
diff --git a/src/lynq/lib/liblynq-qser-data/lynq-qser-data.cpp b/src/lynq/lib/liblynq-qser-data/lynq-qser-data.cpp
new file mode 100644
index 0000000..cfffa79
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-data/lynq-qser-data.cpp
@@ -0,0 +1,836 @@
+#include <stdio.h>
+#include <stdint.h>
+#include <sys/types.h>
+#include <arpa/inet.h>
+#include <string.h>
+#include <stdlib.h>
+#include <unistd.h>
+#include <log/log.h>
+#include <libdata/lynq_data.h>
+#include <liblog/lynq_deflog.h>
+#include <pthread.h>
+#include <libxml/tree.h>
+#include <libxml/parser.h>
+#include "lynq-qser-data.h"
+
+#define USER_LOG_TAG "LYNQ_QSER_DATA"
+
+#define RESULT_OK (0)
+#define RESULT_ERROR (-1)
+
+static pthread_t s_cb_tid = -1;
+static int s_qser_data_cb_thread_status = 0;
+static pthread_mutex_t s_qser_data_cb_mutex = PTHREAD_MUTEX_INITIALIZER;
+static pthread_cond_t s_qser_data_cb_cond = PTHREAD_COND_INITIALIZER;
+
+#define data_xml_path "/data/lynq_qser_data_apn.xml"
+
+static qser_data_call_evt_cb_t s_data_call_cb = NULL;
+const int apndb_offset = 683;
+
+void lynq_ipv4_aton_urc(lynq_data_call_response_v11_t *libdata,qser_data_call_state_s *data_res)
+{
+ inet_aton(libdata->addresses,&(data_res->v4.ip));
+ inet_aton(libdata->gateways,&(data_res->v4.gateway));
+ inet_aton(libdata->dnses,&(data_res->v4.pri_dns));
+ inet_aton(libdata->dnses,&(data_res->v4.sec_dns));
+ return ;
+}
+
+void lynq_ipv6_inet_pton_urc(lynq_data_call_response_v11_t *libdata,qser_data_call_state_s *data_res)
+{
+ inet_pton(AF_INET6,libdata->addresses,&(data_res->v6.ip));
+ inet_pton(AF_INET6,libdata->gateways,&(data_res->v6.gateway));
+ inet_pton(AF_INET6,libdata->dnses,&(data_res->v6.pri_dns));
+ inet_pton(AF_INET6,libdata->dnses,&(data_res->v6.sec_dns));
+ return ;
+}
+
+void lynq_ipv4_aton_getinfo(lynq_data_call_response_v11_t *libdata,qser_data_call_info_s *data_res)
+{
+ inet_aton(libdata->addresses,&(data_res->v4.addr.ip));
+ inet_aton(libdata->gateways,&(data_res->v4.addr.gateway));
+ inet_aton(libdata->dnses,&(data_res->v4.addr.pri_dns));
+ inet_aton(libdata->dnses,&(data_res->v4.addr.sec_dns));
+ data_res->v4.stats.pkts_tx = 0;
+ data_res->v4.stats.pkts_rx = 0;
+ data_res->v4.stats.bytes_tx = 0;
+ data_res->v4.stats.bytes_rx = 0;
+ data_res->v4.stats.pkts_dropped_tx = 0;
+ data_res->v4.stats.pkts_dropped_rx = 0;
+ return ;
+}
+
+void lynq_ipv6_inet_pton_getinfo(lynq_data_call_response_v11_t *libdata,qser_data_call_info_s *data_res)
+{
+ inet_pton(AF_INET6,libdata->addresses,&(data_res->v6.addr.ip));
+ inet_pton(AF_INET6,libdata->gateways,&(data_res->v6.addr.gateway));
+ inet_pton(AF_INET6,libdata->dnses,&(data_res->v6.addr.pri_dns));
+ inet_pton(AF_INET6,libdata->dnses,&(data_res->v6.addr.sec_dns));
+ data_res->v6.stats.pkts_tx = 0;
+ data_res->v6.stats.pkts_rx = 0;
+ data_res->v6.stats.bytes_tx = 0;
+ data_res->v6.stats.bytes_rx = 0;
+ data_res->v6.stats.pkts_dropped_tx = 0;
+ data_res->v6.stats.pkts_dropped_rx = 0;
+ return ;
+}
+
+void datacall_ipv4_status_judge(int state,qser_data_call_info_s *data_res)
+{
+ if (state != 0)
+ {
+ data_res->v4.state = QSER_DATA_CALL_CONNECTED;
+ data_res->v4.reconnect = 1;
+ }
+ else
+ {
+ data_res->v4.state = QSER_DATA_CALL_DISCONNECTED;
+ data_res->v4.reconnect = 0;
+ }
+ return ;
+}
+
+void datacall_ipv6_status_judge(int state,qser_data_call_info_s *data_res)
+{
+ if (state != 0)
+ {
+ data_res->v6.state = QSER_DATA_CALL_CONNECTED;
+ data_res->v6.reconnect = 1;
+ }
+ else
+ {
+ data_res->v6.state = QSER_DATA_CALL_DISCONNECTED;
+ data_res->v6.reconnect = 0;
+ }
+ return ;
+}
+
+
+int apn_xml_add(qser_apn_add_s *apn,unsigned char *apn_num)
+{
+ int node_num = 0;
+ char temp_buff[12];
+ xmlDocPtr pdoc = NULL;
+ xmlNodePtr node = NULL;
+ xmlNodePtr tmp_node = NULL;
+ xmlNodePtr sum_node = NULL;
+ pdoc = xmlReadFile(data_xml_path ,"UTF-8",XML_PARSE_RECOVER);
+ if(NULL == pdoc)
+ {
+ LYERRLOG("open xml file error");
+ goto FAILED;
+ }
+
+ node = xmlDocGetRootElement(pdoc);
+ if (NULL == node)
+ {
+ LYERRLOG("xmlDocGetRootElement() error");
+ goto FAILED;
+ }
+ sum_node = node->xmlChildrenNode;
+ sum_node = sum_node->next;
+ while (sum_node != NULL)
+ {
+ if (xmlGetProp(sum_node, "profile_idx") == NULL) //Null Node
+ {
+ sum_node = sum_node->next;
+ continue;
+ }
+ node_num++;
+ sum_node = sum_node->next;
+ }
+ tmp_node = xmlNewNode(NULL,BAD_CAST"apn");
+ *apn_num = node_num;
+ LYERRLOG("apn_num%d ",node_num);
+ bzero(temp_buff,12);
+ snprintf(temp_buff,sizeof(temp_buff),"%d",*apn_num);
+ xmlNewProp(tmp_node,BAD_CAST"profile_idx",(xmlChar *)temp_buff);
+ bzero(temp_buff,12);
+ snprintf(temp_buff,sizeof(temp_buff),"%d",apn->pdp_type);
+ xmlNewProp(tmp_node,BAD_CAST"pdp_type",(xmlChar *)temp_buff);
+ bzero(temp_buff,12);
+ snprintf(temp_buff,sizeof(temp_buff),"%d",apn->auth_proto);
+ xmlNewProp(tmp_node,BAD_CAST"auth_proto",(xmlChar *)temp_buff);
+ xmlNewProp(tmp_node,BAD_CAST"apn_name",(xmlChar *)apn->apn_name);
+ xmlNewProp(tmp_node,BAD_CAST"username",(xmlChar *)apn->username);
+ xmlNewProp(tmp_node,BAD_CAST"password",(xmlChar *)apn->password);
+ xmlNewProp(tmp_node,BAD_CAST"apn_type",(xmlChar *)apn->apn_type);
+ xmlAddChild(node,tmp_node);
+ xmlSaveFormatFileEnc(data_xml_path, pdoc, "UTF-8", 1);
+ xmlFreeDoc(pdoc);
+ return RESULT_OK;
+
+ FAILED:
+ if (pdoc)
+ {
+ xmlFreeDoc(pdoc);
+ }
+ return RESULT_ERROR;
+}
+
+int apn_xml_delete(unsigned char profile_idx)
+{
+ int node_num = 0;
+ char temp_buff[12];
+ xmlDocPtr pdoc = NULL;
+ xmlNodePtr node = NULL;
+ xmlNodePtr modify_node = NULL;
+ pdoc = xmlReadFile(data_xml_path ,"UTF-8",XML_PARSE_RECOVER);
+ if(NULL == pdoc)
+ {
+ LYERRLOG("open xml file error");
+ goto FAILED;
+ }
+
+ node = xmlDocGetRootElement(pdoc);
+ if (NULL == node)
+ {
+ LYERRLOG("xmlDocGetRootElement() error");
+ goto FAILED;
+ }
+ modify_node = node->xmlChildrenNode;
+ modify_node = modify_node->next;
+ for (node_num=0 ;node_num<(int)profile_idx ; node_num++)
+ {
+ if (xmlGetProp(modify_node, "profile_idx") == NULL) //Null Node
+ {
+ modify_node = modify_node->next;
+ node_num--;
+ continue;
+ }
+ modify_node = modify_node->next;
+ }
+ xmlUnlinkNode(modify_node);
+ xmlFreeNode(modify_node);
+ modify_node = NULL;
+ node_num = 0;
+ modify_node = node->xmlChildrenNode;
+ modify_node = modify_node->next;
+ while (modify_node != NULL)
+ {
+ if (xmlGetProp(modify_node, "profile_idx") == NULL) //Null Node
+ {
+ modify_node = modify_node->next;
+ continue;
+ }
+ bzero(temp_buff,12);
+ snprintf(temp_buff,sizeof(temp_buff),"%d",node_num);
+ xmlSetProp(modify_node,BAD_CAST"profile_idx",(xmlChar *)temp_buff);
+ modify_node = modify_node->next;
+ node_num++;
+ }
+ xmlSaveFormatFileEnc(data_xml_path, pdoc, "UTF-8", 1);
+ xmlFreeDoc(pdoc);
+ return RESULT_OK;
+
+ FAILED:
+ if (pdoc)
+ {
+ xmlFreeDoc(pdoc);
+ }
+ return RESULT_ERROR;
+}
+
+int apn_xml_modify(qser_apn_info_s *apn)
+{
+ int node_num = 0;
+ char temp_buff[12];
+ xmlDocPtr pdoc = NULL;
+ xmlNodePtr node = NULL;
+ xmlNodePtr modify_node = NULL;
+ pdoc = xmlReadFile(data_xml_path ,"UTF-8",XML_PARSE_RECOVER);
+ if(NULL == pdoc)
+ {
+ LYERRLOG("open xml file error");
+ goto FAILED;
+ }
+
+ node = xmlDocGetRootElement(pdoc);
+ if (NULL == node)
+ {
+ LYERRLOG("xmlDocGetRootElement() error");
+ goto FAILED;
+ }
+ modify_node = node->xmlChildrenNode;
+ modify_node = modify_node->next;
+ for (node_num=0; node_num<(int)apn->profile_idx;node_num++)
+ {
+ if (xmlGetProp(modify_node, "profile_idx") == NULL) //Null Node
+ {
+ modify_node = modify_node->next;
+ node_num--;
+ continue;
+ }
+ modify_node = modify_node->next;
+ }
+ bzero(temp_buff,12);
+ snprintf(temp_buff,sizeof(temp_buff),"%d",node_num);
+ xmlSetProp(modify_node,BAD_CAST"profile_idx",(xmlChar *)temp_buff);
+ bzero(temp_buff,12);
+ snprintf(temp_buff,sizeof(temp_buff),"%d",apn->pdp_type);
+ xmlSetProp(modify_node,BAD_CAST"pdp_type",(xmlChar *)temp_buff);
+ bzero(temp_buff,12);
+ snprintf(temp_buff,sizeof(temp_buff),"%d",apn->auth_proto);
+ xmlSetProp(modify_node,BAD_CAST"auth_proto",(xmlChar *)temp_buff);
+ xmlSetProp(modify_node,BAD_CAST"apn_name",(xmlChar *)apn->apn_name);
+ xmlSetProp(modify_node,BAD_CAST"username",(xmlChar *)apn->username);
+ xmlSetProp(modify_node,BAD_CAST"password",(xmlChar *)apn->password);
+ xmlSetProp(modify_node,BAD_CAST"apn_type",(xmlChar *)apn->apn_type);
+ xmlSaveFormatFileEnc(data_xml_path, pdoc, "UTF-8", 1);
+ xmlFreeDoc(pdoc);
+ return RESULT_OK;
+
+ FAILED:
+ if (pdoc)
+ {
+ xmlFreeDoc(pdoc);
+ }
+ return RESULT_ERROR;
+}
+
+
+int apn_xml_query(unsigned char profile_idx,qser_apn_info_s *apn)
+{
+ int node_num = 0;
+ xmlDocPtr pdoc = NULL;
+ xmlNodePtr node = NULL;
+ xmlNodePtr modify_node = NULL;
+ unsigned char temp = NULL;
+ pdoc = xmlReadFile(data_xml_path ,"UTF-8",XML_PARSE_RECOVER);
+ if(NULL == pdoc)
+ {
+ LYERRLOG("open xml file error");
+ goto FAILED;
+ }
+
+ node = xmlDocGetRootElement(pdoc);
+ if (NULL == node)
+ {
+ LYERRLOG("xmlDocGetRootElement() error");
+ goto FAILED;
+ }
+ modify_node = node->xmlChildrenNode;
+ modify_node = modify_node->next;
+ for (node_num = 0;node_num<(int)profile_idx;node_num++)
+ {
+ if (xmlGetProp(modify_node, "profile_idx") == NULL) //Null Node
+ {
+ modify_node = modify_node->next;
+ node_num--;
+ continue;
+ }
+ modify_node = modify_node->next;
+ }
+ apn->profile_idx = (unsigned char)atoi(xmlGetProp(modify_node, "profile_idx"));
+ apn->pdp_type = (qser_apn_pdp_type_e)atoi(xmlGetProp(modify_node, "pdp_type"));
+ apn->auth_proto = (qser_apn_auth_proto_e)atoi(xmlGetProp(modify_node, "auth_proto"));
+ strcpy(apn->apn_name,(char *)xmlGetProp(modify_node, "apn_name"));
+ strcpy(apn->username,(char *)xmlGetProp(modify_node, "username"));
+ strcpy(apn->password,(char *)xmlGetProp(modify_node, "password"));
+ strcpy(apn->apn_type,(char *)xmlGetProp(modify_node, "apn_type"));
+ xmlSaveFormatFileEnc(data_xml_path, pdoc, "UTF-8", 1);
+ xmlFreeDoc(pdoc);
+ return RESULT_OK;
+
+ FAILED:
+ if (pdoc)
+ {
+ xmlFreeDoc(pdoc);
+ }
+ return RESULT_ERROR;
+}
+
+int apn_xml_query_list(qser_apn_info_list_s *apn_list)
+{
+ int node_num = 0;
+ xmlDocPtr pdoc = NULL;
+ xmlNodePtr node = NULL;
+ xmlNodePtr modify_node = NULL;
+ xmlChar *temp_char;
+ char temp[64];
+ pdoc = xmlReadFile(data_xml_path ,"UTF-8",XML_PARSE_RECOVER);
+ if(NULL == pdoc)
+ {
+ LYERRLOG("open xml file error");
+ goto FAILED;
+ }
+
+ node = xmlDocGetRootElement(pdoc);
+ if (NULL == node)
+ {
+ LYERRLOG("xmlDocGetRootElement() error");
+ goto FAILED;
+ }
+ modify_node = node->xmlChildrenNode;
+ modify_node = modify_node->next;
+ while (modify_node != NULL)
+ {
+ temp_char = xmlGetProp(modify_node, "profile_idx");
+ if (temp_char == NULL)
+ {
+ modify_node = modify_node->next;
+ continue;
+ }
+ sprintf(temp,"%s",temp_char);
+ apn_list->apn[node_num].profile_idx = (unsigned char)atoi(temp);
+ apn_list->apn[node_num].pdp_type = (qser_apn_pdp_type_e)atoi(xmlGetProp(modify_node, "pdp_type"));
+ apn_list->apn[node_num].auth_proto = (qser_apn_auth_proto_e)atoi(xmlGetProp(modify_node, "auth_proto"));
+ strcpy(apn_list->apn[node_num].apn_name,(char *)xmlGetProp(modify_node, "apn_name"));
+ strcpy(apn_list->apn[node_num].username,(char *)xmlGetProp(modify_node, "username"));
+ strcpy(apn_list->apn[node_num].password,(char *)xmlGetProp(modify_node, "password"));
+ node_num ++;
+ modify_node = modify_node->next;
+ }
+ apn_list->cnt = node_num;
+ xmlSaveFormatFileEnc(data_xml_path, pdoc, "UTF-8", 1);
+ xmlFreeDoc(pdoc);
+ return RESULT_OK;
+
+ FAILED:
+ if (pdoc)
+ {
+ xmlFreeDoc(pdoc);
+ }
+ return RESULT_ERROR;
+}
+
+void judge_pdp_type(qser_apn_pdp_type_e pdp_type,char *out_pdp_type)
+{
+ switch (pdp_type)
+ {
+ case QSER_APN_PDP_TYPE_IPV4:
+ strcpy(out_pdp_type,"IPV4");
+ break;
+ case QSER_APN_PDP_TYPE_PPP:
+ strcpy(out_pdp_type,"PPP");
+ break;
+ case QSER_APN_PDP_TYPE_IPV6:
+ strcpy(out_pdp_type,"IPV6");
+ break;
+ case QSER_APN_PDP_TYPE_IPV4V6:
+ strcpy(out_pdp_type,"IPV4V6");
+ break;
+ default:
+ strcpy(out_pdp_type,"NULL");
+ break;
+ }
+ return;
+}
+void judge_authtype(qser_apn_auth_proto_e auth_proto,char *out_proto)
+{
+ switch (auth_proto)
+ {
+ case QSER_APN_AUTH_PROTO_DEFAULT:
+ strcpy(out_proto,"NULL;authType=0");
+ break;
+ case QSER_APN_AUTH_PROTO_NONE:
+ strcpy(out_proto,"NULL;authType=1");
+ break;
+ case QSER_APN_AUTH_PROTO_PAP:
+ strcpy(out_proto,"NULL;authType=2");
+ break;
+ case QSER_APN_AUTH_PROTO_CHAP:
+ strcpy(out_proto,"NULL;authtype=3");
+ break;
+ case QSER_APN_AUTH_PROTO_PAP_CHAP:
+ strcpy(out_proto,"NULL;authtype=4");
+ break;
+ default:
+ strcpy(out_proto,"NULL;authType=NULL");
+ break;
+ }
+ return ;
+}
+
+int data_call_handle_get(const char profile_idx,int *handle)
+{
+ int num = LYNQ_APN_CHANNEL_MAX;
+ int table_num = 0;
+ lynq_apn_info **apn_table = NULL;
+ qser_apn_info_s apn;
+ apn_table = (lynq_apn_info **)malloc(sizeof(lynq_apn_info *)*LYNQ_APN_CHANNEL_MAX);
+ if (NULL == apn_table)
+ {
+ LYERRLOG("malloc apn_table fail ");
+ return RESULT_ERROR;
+ }
+ for(int i =0;i<10;i++)
+ {
+ apn_table[i] = (lynq_apn_info*)malloc(sizeof(lynq_apn_info));
+ if (apn_table[i]==NULL)
+ {
+ for (int n=0;n<i;n++)
+ {
+ free(apn_table[n]);
+ }
+ return RESULT_ERROR;
+ }
+ memset(apn_table[i],0,sizeof(lynq_apn_info));
+ }
+ lynq_get_apn_table(&table_num,apn_table);
+ memset(&apn,0,sizeof(qser_apn_info_s));
+ apn_xml_query(profile_idx,&apn);
+ for (int j = 0;j < table_num;j++)
+ {
+ if (strcmp(apn.apn_type,apn_table[j]->apnType) == 0)
+ {
+ *handle = apn_table[j]->index;
+ LYINFLOG("apn_table->index:%d,handle:%d ",apn_table[j]->index,*handle);
+ break;
+ }
+ }
+
+ for (int i = 0; i < LYNQ_APN_CHANNEL_MAX; i++)
+ {
+ if (apn_table[i]!=NULL)
+ {
+ free(apn_table[i]);
+ apn_table[i]=NULL;
+ }
+ }
+ free(apn_table);
+ apn_table=NULL;
+ LYINFLOG("data_call_handle_get end");
+ return RESULT_OK;
+}
+
+void *thread_wait_cb_status(void)
+{
+ int handle = -1;
+ lynq_data_call_response_v11_t data_urc_info;
+ qser_data_call_state_s data_cb_state;
+ while (s_qser_data_cb_thread_status)
+ {
+ lynq_wait_data_call_state_change(&handle);
+ lynq_get_data_call_list(&handle,&data_urc_info);
+ /*compare paramter*/
+ data_cb_state.profile_idx = (char)handle;
+
+ memcpy(data_cb_state.name,data_urc_info.ifname,strlen(data_urc_info.ifname)+1);
+ if (!strcmp(data_urc_info.type,"IPV4"))
+ {
+ data_cb_state.ip_family = QSER_DATA_CALL_TYPE_IPV4;
+ }
+ else if (!strcmp(data_urc_info.type,"IPV6"))
+ {
+ data_cb_state.ip_family = QSER_DATA_CALL_TYPE_IPV6;
+ }
+ else if (strcmp(data_urc_info.type,"IPV4V6"))
+ {
+ data_cb_state.ip_family = QSER_DATA_CALL_TYPE_IPV4V6;
+ }
+ else
+ {
+ LYERRLOG("unknow data call type");
+ continue;
+ }
+
+ if (data_urc_info.status != 0)
+ {
+ data_cb_state.state = QSER_DATA_CALL_CONNECTED;
+ }
+ else
+ {
+ data_cb_state.state = QSER_DATA_CALL_DISCONNECTED;
+ }
+ if (data_cb_state.ip_family == QSER_DATA_CALL_TYPE_IPV4)
+ {
+ lynq_ipv4_aton_urc(&data_urc_info,&data_cb_state);
+ }
+ else if (data_cb_state.ip_family == QSER_DATA_CALL_TYPE_IPV6)
+ {
+ lynq_ipv6_inet_pton_urc(&data_urc_info,&data_cb_state);
+ }
+ else if (data_cb_state.ip_family == QSER_DATA_CALL_TYPE_IPV4V6)
+ {
+ lynq_ipv6_inet_pton_urc(&data_urc_info,&data_cb_state);
+ }
+ else
+ {
+ LYERRLOG("unknow ip_family");
+ continue;
+ }
+ if (s_data_call_cb != NULL)
+ {
+ s_data_call_cb(&data_cb_state);
+ }
+ }
+ return NULL;
+}
+
+int qser_cb_pthread_create()
+{
+ int ret;
+ s_qser_data_cb_thread_status = 1;
+ ret = pthread_create(&s_cb_tid,NULL,thread_wait_cb_status,NULL);
+ if (ret < 0)
+ {
+ LYERRLOG("pthread create fail");
+ s_qser_data_cb_thread_status = 0;
+ return RESULT_ERROR;
+ }
+ return RESULT_OK;
+}
+
+void qser_cb_pthread_cancel()
+{
+ int ret;
+ s_qser_data_cb_thread_status = 0;
+ if (s_cb_tid != -1)
+ {
+ ret = pthread_cancel(s_cb_tid);
+ LYDBGLOG("pthread cancel ret = %d",ret);
+ ret = pthread_join(s_cb_tid,NULL);
+ LYDBGLOG("pthread join ret = %d",ret);
+ s_cb_tid = -1;
+ }
+ return;
+}
+
+int qser_data_call_init(qser_data_call_evt_cb_t evt_cb)
+{
+ int ret = 0;
+ int utoken = 0;
+ if (NULL == evt_cb)
+ {
+ LYERRLOG("init incoming paramters error");
+ return RESULT_ERROR;
+ }
+ s_data_call_cb = evt_cb;
+ qser_cb_pthread_create();
+ ret = lynq_init_data(utoken);
+ if (ret != RESULT_OK)
+ {
+ qser_cb_pthread_cancel();
+ s_data_call_cb = NULL;
+ return RESULT_ERROR;
+ }
+ return RESULT_OK;
+}
+
+void qser_data_call_destroy(void)
+{
+ qser_cb_pthread_cancel();
+ lynq_deinit_data();
+ s_data_call_cb = NULL;
+ return ;
+}
+
+int qser_data_call_start(qser_data_call_s *data_call, qser_data_call_error_e *err)
+{
+ int ret = -1;
+ int handle = 0;
+ if (NULL == data_call || NULL == err)
+ {
+ LYERRLOG("call start incoming paramters error");
+ return ret;
+ }
+ if (data_call->profile_idx == 0)
+ {
+ ret = lynq_setup_data_call(&handle);
+ }
+ else
+ {
+ char pdptype[16];
+ qser_apn_info_s apn_info;
+ qser_apn_get(data_call->profile_idx,&apn_info);
+ 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)
+ {
+ *err = QSER_DATA_CALL_ERROR_INVALID_PARAMS;
+ }
+ return ret;
+}
+
+int qser_data_call_stop(char profile_idx, qser_data_call_ip_family_e ip_family, qser_data_call_error_e *err)
+{
+ int ret = 0;
+ int handle = -1;
+
+ if (NULL == err)
+ {
+ LYERRLOG("call stop incoming paramters error");
+ return ret;
+ }
+ data_call_handle_get(profile_idx,&handle);
+ ret = lynq_deactive_data_call(&handle);
+ if (ret < 0)
+ {
+ *err = QSER_DATA_CALL_ERROR_INVALID_PARAMS;
+ }
+ return RESULT_OK;
+}
+int qser_data_call_info_get(char profile_idx,qser_data_call_ip_family_e ip_family,qser_data_call_info_s *info,qser_data_call_error_e *err)
+{
+ int ret = 0;
+ int handle = -1;
+ lynq_data_call_response_v11_t data_call_info;
+ data_call_handle_get(profile_idx,&handle);
+ ret = lynq_get_data_call_list(&handle,&data_call_info);
+ if (ret == 0)
+ {
+ info->profile_idx = profile_idx;
+ info->ip_family = ip_family;
+ if (strcmp(data_call_info.type,"IPV4"))
+ {
+ strcpy(info->v4.name,data_call_info.ifname);
+ datacall_ipv4_status_judge(data_call_info.status,info);
+ LYINFLOG("[IPV4]addresses:%s,gateways:%s,dnses:%s",data_call_info.addresses,data_call_info.gateways,data_call_info.dnses);
+ lynq_ipv4_aton_getinfo(&data_call_info,info);
+ }
+ else if (strcmp(data_call_info.type,"IPV6"))
+ {
+ strcpy(info->v6.name,data_call_info.ifname);
+
+ datacall_ipv6_status_judge(data_call_info.status,info);
+ LYINFLOG("[IPV6]addresses:%s,gateways:%s,dnses:%s",data_call_info.addresses,data_call_info.gateways,data_call_info.dnses);
+ lynq_ipv6_inet_pton_getinfo(&data_call_info,info);
+ }
+ else if (strcmp(data_call_info.type,"IPV4V6"))
+ {
+ strcpy(info->v4.name,data_call_info.ifname);
+ datacall_ipv4_status_judge(data_call_info.status,info);
+ LYINFLOG("[IPV4V6]addresses:%s,gateways:%s,dnses:%s",data_call_info.addresses,data_call_info.gateways,data_call_info.dnses);
+ lynq_ipv4_aton_getinfo(&data_call_info,info);
+ strcpy(info->v6.name,data_call_info.ifname);
+ datacall_ipv6_status_judge(data_call_info.status,info);
+ LYINFLOG("[IPV4V6]addresses:%s,gateways:%s,dnses:%s",data_call_info.addresses,data_call_info.gateways,data_call_info.dnses);
+ lynq_ipv6_inet_pton_getinfo(&data_call_info,info);
+ }
+ else
+ {
+ LYERRLOG("useless qser_data_call_ip_family_e");
+ }
+ }
+ return ret;
+}
+int qser_apn_set(qser_apn_info_s *apn)
+{
+ int ret = 0;
+ if (NULL == apn)
+ {
+ LYERRLOG("apn set incoming paramters error");
+ return RESULT_ERROR;
+ }
+ ret = apn_xml_modify(apn);
+ if (ret < 0)
+ {
+ LYERRLOG("apn_xml_modify error");
+ return ret;
+ }
+ int apn_id = 0;
+ char tmp_id[12];
+ char *outinfo = NULL;
+ char normalprotocol[16];
+ char authtype[32];
+ outinfo = (char *)malloc(sizeof(char)*512);
+ bzero(tmp_id,12);
+ bzero(outinfo,512);
+ apn_id = apn->profile_idx + apndb_offset;
+ snprintf(tmp_id,sizeof(tmp_id),"%d",apn_id);
+ judge_pdp_type(apn->pdp_type,normalprotocol);
+ judge_authtype(apn->auth_proto,authtype);
+ lynq_modify_apn_db(3,tmp_id,NULL,NULL,apn->apn_name,apn->apn_type,apn->username,apn->password,normalprotocol,normalprotocol,authtype,outinfo);
+ LYINFLOG("[output]:%s",outinfo);
+ free(outinfo);
+ outinfo = NULL;
+ return RESULT_OK;
+}
+
+int qser_apn_get(unsigned char profile_idx, qser_apn_info_s *apn)
+{
+ if (profile_idx < 0 || profile_idx > 24 || NULL == apn)
+ {
+ LYERRLOG("apn get incoming paramters error");
+ return RESULT_ERROR;
+ }
+ int ret = 0;
+ ret = apn_xml_query(profile_idx,apn);
+ if (ret < 0)
+ {
+ LYERRLOG("apn_xml_query error");
+ return ret;
+ }
+ return ret;
+}
+
+int qser_apn_add(qser_apn_add_s *apn, unsigned char *profile_idx)
+{
+ int ret = 0;
+ if (NULL == apn || NULL == profile_idx)
+ {
+ LYERRLOG("apn add incoming paramters error");
+ return RESULT_ERROR;
+ }
+ ret = apn_xml_add(apn,profile_idx);
+ if (ret < 0)
+ {
+ LYERRLOG("apn_xml_add error");
+ return ret;
+ }
+ int apn_id = 0;
+ char tmp_id[12];
+ char *outinfo = NULL;
+ char normalprotocol[16];
+ char authtype[32];
+ outinfo = (char *)malloc(sizeof(char)*512);
+ bzero(tmp_id,12);
+ bzero(outinfo,512);
+ snprintf(tmp_id,sizeof(tmp_id),"%d",apn_id);
+ judge_pdp_type(apn->pdp_type,normalprotocol);
+ judge_authtype(apn->auth_proto,authtype);
+ lynq_modify_apn_db(0,tmp_id,NULL,NULL,apn->apn_name,apn->apn_type,apn->username,apn->password,normalprotocol,normalprotocol,authtype,outinfo);
+ LYINFLOG("[output]:%s",outinfo);
+ free(outinfo);
+ outinfo = NULL;
+ return RESULT_OK;
+}
+
+int qser_apn_del(unsigned char profile_idx)
+{
+ if (profile_idx < 0 || profile_idx > 24)
+ {
+ LYERRLOG("apn del incoming paramters error");
+ return RESULT_OK;
+ }
+ int ret = 0;
+ ret = apn_xml_delete(profile_idx);
+ if (ret < 0)
+ {
+ LYERRLOG("apn_xml_delete error");
+ return ret;
+ }
+ int apn_id = 0;
+ char tmp_id[12];
+ char *outinfo = NULL;
+ outinfo = (char *)malloc(sizeof(char)*512);
+ bzero(tmp_id,12);
+ bzero(outinfo,512);
+ apn_id = profile_idx+apndb_offset;
+ snprintf(tmp_id,sizeof(tmp_id),"%d",apn_id);
+ lynq_modify_apn_db(1,tmp_id,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,outinfo);
+ LYINFLOG("[output]:%s",outinfo);
+ free(outinfo);
+ outinfo = NULL;
+ return ret;
+}
+
+int qser_apn_get_list(qser_apn_info_list_s *apn_list)
+{
+ if (NULL == apn_list)
+ {
+ LYERRLOG("apn_list incoming paramters error");
+ return RESULT_ERROR;
+ }
+ int ret = 0;
+ ret = apn_xml_query_list(apn_list);
+ if (ret < 0)
+ {
+ LYERRLOG("apn_xml_query_list error");
+ return ret;
+ }
+ return ret;
+}
\ No newline at end of file
diff --git a/src/lynq/lib/liblynq-qser-data/lynq_qser_data_apn.xml b/src/lynq/lib/liblynq-qser-data/lynq_qser_data_apn.xml
new file mode 100644
index 0000000..590d493
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-data/lynq_qser_data_apn.xml
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<lynq_qser_data_apn>
+ <apn profile_idx="0" pdp_type="3" auth_proto="0" apn_name="default" username="NULL" password="NULL" apn_type="default"/></lynq_qser_data_apn>
\ No newline at end of file
diff --git a/src/lynq/lib/liblynq-qser-data/makefile b/src/lynq/lib/liblynq-qser-data/makefile
new file mode 100644
index 0000000..17e42d8
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-data/makefile
@@ -0,0 +1,67 @@
+SHELL = /bin/sh
+RM = rm -f
+
+LOCAL_CFLAGS := -Wall \
+ -std=gnu++14 \
+ -g -Os \
+ -flto \
+ -fPIC \
+ -fpermissive \
+
+
+
+$(warning ################# lynq qser sms demo ROOT: $(ROOT),includedir:$(includedir))
+LOCAL_PATH = .
+
+LOCAL_C_INCLUDES = \
+ -I. \
+ -I$(LOCAL_PATH)/include/ \
+ -I$(ROOT)$(includedir)/logger \
+ -I$(ROOT)$(includedir)/liblog \
+ -I$(ROOT)$(includedir)/libdata \
+ -I$(ROOT)$(includedir)/libxml2 \
+
+
+LOCAL_LIBS := \
+ -L. \
+ -lstdc++ \
+ -lcutils \
+ -lutils \
+ -lpthread \
+ -llynq-log \
+ -llynq-data \
+ -lxml2 \
+
+
+SOURCES = $(wildcard *.cpp)
+
+EXECUTABLE = liblynq-qser-data.so
+
+OBJECTS=$(SOURCES:.cpp=.o)
+
+
+.PHONY: build clean install pack_rootfs
+all: build
+$(EXECUTABLE): $(OBJECTS)
+ $(CXX) -shared -Wl,--no-undefined $(OBJECTS) $(LOCAL_LIBS) $(LOCAL_CFLAGS) $(LOCAL_C_INCLUDES) -o $@
+
+%.o : %.cpp
+ $(CXX) $(LOCAL_C_INCLUDES) $(LOCAL_CFLAGS) $(LOCAL_LIBS) -o $@ -c $<
+
+build: $(EXECUTABLE)
+ $(warning ########## build $(EXECUTABLE) ##########)
+install:
+ mkdir -p $(ROOT)$(base_libdir)/
+ install $(EXECUTABLE) $(ROOT)$(base_libdir)/
+ mkdir -p $(ROOT)$(includedir)/$(NAME)/sdk
+pack_rootfs:
+ mkdir -p $(PACK_INITRAMFS_TO)$(base_libdir)/
+ cp -af $(EXECUTABLE) $(PACK_INITRAMFS_TO)$(base_libdir)/
+ $(CROSS)strip $(PACK_INITRAMFS_TO)$(base_libdir)/$(EXECUTABLE)
+ mkdir -p $(PACK_TO)$(base_libdir)/
+ cp -af $(EXECUTABLE) $(PACK_TO)$(base_libdir)/
+ $(CROSS)strip $(PACK_TO)$(base_libdir)/$(EXECUTABLE)
+.PHONY: clean
+clean:
+ $(RM) $(OBJECTS) $(EXECUTABLE)
+ -find . -name "*.o" -delete
\ No newline at end of file
diff --git a/src/lynq/lib/liblynq-qser-network/LICENSE b/src/lynq/lib/liblynq-qser-network/LICENSE
new file mode 100644
index 0000000..8aaabff
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-network/LICENSE
@@ -0,0 +1,31 @@
+Copyright Statement:
+
+This software/firmware and related documentation ("Mobiletek Software") are
+protected under relevant copyright laws. The information contained herein is
+confidential and proprietary to Mobiletek Inc. and/or its licensors. Without
+the prior written permission of Mobiletek inc. and/or its licensors, any
+reproduction, modification, use or disclosure of Mobiletek Software, and
+information contained herein, in whole or in part, shall be strictly
+prohibited.
+
+Mobiletek Inc. (C) 2015. All rights reserved.
+
+BY OPENING THIS FILE, RECEIVER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
+THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
+RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO RECEIVER
+ON AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL
+WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR
+NONINFRINGEMENT. NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH
+RESPECT TO THE SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY,
+INCORPORATED IN, OR SUPPLIED WITH THE MEDIATEK SOFTWARE, AND RECEIVER AGREES
+TO LOOK ONLY TO SUCH THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO.
+RECEIVER EXPRESSLY ACKNOWLEDGES THAT IT IS RECEIVER'S SOLE RESPONSIBILITY TO
+OBTAIN FROM ANY THIRD PARTY ALL PROPER LICENSES CONTAINED IN MEDIATEK
+SOFTWARE. MEDIATEK SHALL ALSO NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE
+RELEASES MADE TO RECEIVER'S SPECIFICATION OR TO CONFORM TO A PARTICULAR
+STANDARD OR OPEN FORUM. RECEIVER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S
+ENTIRE AND CUMULATIVE LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE
+RELEASED HEREUNDER WILL BE, AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE
+MEDIATEK SOFTWARE AT ISSUE, OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE
+CHARGE PAID BY RECEIVER TO MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE.
\ No newline at end of file
diff --git a/src/lynq/lib/liblynq-qser-network/include/lynq_qser_network.h b/src/lynq/lib/liblynq-qser-network/include/lynq_qser_network.h
new file mode 100644
index 0000000..e547add
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-network/include/lynq_qser_network.h
@@ -0,0 +1,466 @@
+/**
+ *@file QSER_nw.h
+ *@date 2018-02-22
+ *@author
+ *@brief
+ */
+#ifndef __LYNQ_QSER_NETWORK_H__
+#define __LYNQ_QSER_NETWORK_H__
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef uint32_t nw_client_handle_type;
+
+
+#define QSER_NW_MODE_NONE 0x00 /**< No network. */
+#define QSER_NW_MODE_GSM 0x01 /**< Include GSM networks. */
+#define QSER_NW_MODE_WCDMA 0x02 /**< Include WCDMA networks. */
+#define QSER_NW_MODE_CDMA 0x04 /**< Include CDMA networks. */
+#define QSER_NW_MODE_EVDO 0x08 /**< Include EVDO networks. */
+#define QSER_NW_MODE_LTE 0x10 /**< Include LTE networks. */
+#define QSER_NW_MODE_TDSCDMA 0x20 /**< Include TDSCDMA networks. */
+#define QSER_NW_MODE_NR 0x30 /* 5G */
+#define QSER_NW_MODE_PRL 0x10000 /**< Give preference according to the preferred roaming list. */
+
+typedef enum
+{
+ E_QSER_NW_ROAM_STATE_OFF = 0, /**< None, or roaming indicator off. */
+ E_QSER_NW_ROAM_STATE_ON = 1 /**< Roaming indicator on. */
+}E_QSER_NW_ROAM_STATE_TYPE_T;
+
+/** Configures the settings that define the MCM network interface. */
+typedef struct
+{
+ /* Configuration parameters for MCM network registration Network registration details Technology dependent network registration details */
+ uint64_t preferred_nw_mode; /**< Preferred network mode for connections; a bitmask of QSER_NW_MODE_xxxx.*/
+ E_QSER_NW_ROAM_STATE_TYPE_T roaming_pref; /**< Roaming preference.*/
+}QSER_NW_CONFIG_INFO_T;
+
+#define QSER_NW_NITZ_BUF_LEN 30
+/** Get NITZ Time information. */
+typedef struct
+{
+ //i.e.: nitz_time="18/09/19,07:40:18+32,00" format: YY/MM/DD,HH:MM:SS'+/-'TZ,daylight, Here TZ multiplied by 4.
+ char nitz_time[QSER_NW_NITZ_BUF_LEN + 1];
+ uint64_t abs_time; // 0 means invalid
+ int8_t leap_sec; // 0 means invalid
+}QSER_NW_NITZ_TIME_INFO_T;
+
+
+//defined for QSER_NW_EventRegister
+#define NW_IND_VOICE_REG_EVENT_IND_FLAG (1 << 0) /**< msg format : QSER_NW_VOICE_REG_EVENT_IND_T */
+#define NW_IND_DATA_REG_EVENT_IND_FLAG (1 << 1) /**< msg format : QSER_NW_DATA_REG_EVENT_IND_T */
+#define NW_IND_SIGNAL_STRENGTH_EVENT_IND_FLAG (1 << 2) /**< msg format : QSER_NW_SINGNAL_EVENT_IND_T */
+#define NW_IND_CELL_ACCESS_STATE_CHG_EVENT_IND_FLAG (1 << 3) /**< msg format : QSER_NW_CELL_ACCESS_STATE_EVENT_IND_T */
+#define NW_IND_NITZ_TIME_UPDATE_EVENT_IND_FLAG (1 << 4) /**< msg format : QSER_NW_NITZ_TIME_EVENT_IND_T */
+
+
+
+typedef struct
+{
+ char long_eons[512 + 1]; /**< Long EONS.*/
+ char short_eons[512 + 1]; /**< Short EONS.*/
+ char mcc[3 + 1]; /**< Mobile country code.*/
+ char mnc[3 + 1]; /**< Mobile network code.*/
+}QSER_NW_OPERATOR_NAME_INFO_T;
+
+typedef enum
+{
+ E_QSER_NW_NETWORK_STATUS_NONE = 0, /**< Network status not available. */
+ E_QSER_NW_NETWORK_STATUS_CURRENT_SERVING = 1, /**< Current serving network. */
+ E_QSER_NW_NETWORK_STATUS_PREFERRED = 2, /**< Preferred network. */
+ E_QSER_NW_NETWORK_STATUS_NOT_PREFERRED = 3, /**< Not the preferred network. */
+ E_QSER_NW_NETWORK_STATUS_AVAILABLE = 4, /**< Service available. */
+ E_QSER_NW_NETWORK_STATUS_FORBIDDEN = 5 /**< Forbidden service. */
+}E_QSER_NW_NETWORK_STATUS_TYPE_T;
+
+typedef enum
+{
+ E_QSER_NW_RADIO_TECH_TD_SCDMA = 1,
+ E_QSER_NW_RADIO_TECH_GSM = 2, /**< GSM; only supports voice. */
+ E_QSER_NW_RADIO_TECH_HSPAP = 3, /**< HSPA+. */
+ E_QSER_NW_RADIO_TECH_LTE = 4, /**< LTE. */
+ E_QSER_NW_RADIO_TECH_EHRPD = 5, /**< EHRPD. */
+ E_QSER_NW_RADIO_TECH_EVDO_B = 6, /**< EVDO B. */
+ E_QSER_NW_RADIO_TECH_HSPA = 7, /**< HSPA. */
+ E_QSER_NW_RADIO_TECH_HSUPA = 8, /**< HSUPA. */
+ E_QSER_NW_RADIO_TECH_HSDPA = 9, /**< HSDPA. */
+ E_QSER_NW_RADIO_TECH_EVDO_A = 10, /**< EVDO A. */
+ E_QSER_NW_RADIO_TECH_EVDO_0 = 11, /**< EVDO 0. */
+ E_QSER_NW_RADIO_TECH_1xRTT = 12, /**< 1xRTT. */
+ E_QSER_NW_RADIO_TECH_IS95B = 13, /**< IS95B. */
+ E_QSER_NW_RADIO_TECH_IS95A = 14, /**< IS95A. */
+ E_QSER_NW_RADIO_TECH_UMTS = 15, /**< UMTS. */
+ E_QSER_NW_RADIO_TECH_EDGE = 16, /**< EDGE. */
+ E_QSER_NW_RADIO_TECH_GPRS = 17, /**< GPRS. */
+ E_QSER_NW_RADIO_TECH_NONE = 18 /**< No technology selected. */
+}E_QSER_NW_RADIO_TECH_TYPE_T;
+
+typedef struct
+{
+ QSER_NW_OPERATOR_NAME_INFO_T operator_name; /**< Operator name.*/
+ E_QSER_NW_NETWORK_STATUS_TYPE_T network_status; /**< Network status.*/
+ E_QSER_NW_RADIO_TECH_TYPE_T rat; /**< Radio technology.*/
+}QSER_NW_SCAN_ENTRY_INFO_T; /* Type */
+
+#define QSER_NW_SCAN_LIST_MAX 40
+/** Gets the status associated with the connection of \<id\>. */
+typedef struct
+{
+ uint32_t entry_len; /**< Must be set to the number of elements in entry. */
+ QSER_NW_SCAN_ENTRY_INFO_T entry[QSER_NW_SCAN_LIST_MAX]; /**< Scan entry.*/
+}QSER_NW_SCAN_RESULT_LIST_INFO_T; /* Message */
+
+
+typedef enum
+{
+ E_QSER_NW_TECH_DOMAIN_NONE = 0, /**< None. */
+ E_QSER_NW_TECH_DOMAIN_3GPP = 1, /**< 3GPP. */
+ E_QSER_NW_TECH_DOMAIN_3GPP2 = 2, /**< 3GPP2. */
+}E_QSER_NW_TECH_DOMAIN_TYPE_T;
+
+typedef enum
+{
+ E_QSER_NW_IMSI_UNKNOWN_HLR_DENY_REASON = 1, /**< IMSI unknown in HLR. */
+ E_QSER_NW_ILLEGAL_MS_DENY_REASON = 2, /**< Illegal MS. */
+ E_QSER_NW_IMSI_UNKNOWN_VLR_DENY_REASON = 3, /**< IMSI unknown in VLR. */
+ E_QSER_NW_IMEI_NOT_ACCEPTED_DENY_REASON = 4, /**< IMEI not accepted. */
+ E_QSER_NW_ILLEGAL_ME_DENY_REASON = 5, /**< Illegal ME. */
+ E_QSER_NW_PLMN_NOT_ALLOWED_DENY_REASON = 6, /**< PLMN not allowed. */
+ E_QSER_NW_LA_NOT_ALLOWED_DENY_REASON = 7, /**< Location area not allowed. */
+ E_QSER_NW_ROAMING_NOT_ALLOWED_LA_DENY_REASON = 8, /**< Roaming not allowed in this location area. */
+ E_QSER_NW_NO_SUITABLE_CELLS_LA_DENY_REASON = 9, /**< No suitable cells in location area. */
+ E_QSER_NW_NETWORK_FAILURE_DENY_REASON = 10, /**< Network failure. */
+ E_QSER_NW_MAC_FAILURE_DENY_REASON = 11, /**< MAC failure. */
+ E_QSER_NW_SYNCH_FAILURE_DENY_REASON = 12, /**< Sync failure. */
+ E_QSER_NW_CONGESTION_DENY_REASON = 13, /**< Congestion. */
+ E_QSER_NW_GSM_AUTHENTICATION_UNACCEPTABLE_DENY_REASON = 14, /**< GSM authentication unacceptable. */
+ E_QSER_NW_NOT_AUTHORIZED_CSG_DENY_REASON = 15, /**< Not authorized in this CSG. */
+ E_QSER_NW_SERVICE_OPTION_NOT_SUPPORTED_DENY_REASON = 16, /**< Service option not supported. */
+ E_QSER_NW_REQ_SERVICE_OPTION_NOT_SUBSCRIBED_DENY_REASON = 17, /**< Requested service option not subscribed. */
+ E_QSER_NW_CALL_CANNOT_BE_IDENTIFIED_DENY_REASON = 18, /**< Call cannot be identified. */
+ E_QSER_NW_SEMANTICALLY_INCORRECT_MSG_DENY_REASON = 19, /**< Semantically incorrect message. */
+ E_QSER_NW_INVALID_MANDATORY_INFO_DENY_REASON = 20, /**< Invalid mandatory information. */
+ E_QSER_NW_MSG_TYPE_NON_EXISTENT_DENY_REASON = 21, /**< Message type non-existent or not implemented. */
+ E_QSER_NW_INFO_ELEMENT_NON_EXISTENT_DENY_REASON = 22, /**< Message type not compatible with the protocol state. */
+ E_QSER_NW_CONDITIONAL_IE_ERR_DENY_REASON = 23, /**< Conditional IE error. */
+ E_QSER_NW_MSG_INCOMPATIBLE_PROTOCOL_STATE_DENY_REASON = 24, /**< Message not compatible with the protocol state. */
+ E_QSER_NW_PROTOCOL_ERROR_DENY_REASON = 25, /**< Unspecified protocol error. */
+}E_QSER_NW_DENY_REASON_TYPE_T;
+
+
+typedef enum
+{
+ E_QSER_NW_SERVICE_NONE = 0x0000, /**< Not registered or no data. */
+ E_QSER_NW_SERVICE_LIMITED = 0x0001, /**< Registered; emergency service only. */
+ E_QSER_NW_SERVICE_FULL = 0x0002, /**< Registered, full service. */
+}E_QSER_NW_SERVICE_TYPE_T;
+
+typedef struct
+{
+ E_QSER_NW_TECH_DOMAIN_TYPE_T tech_domain; /**< Technology, used to determine the structure type tech: 0 -- None, 1 -- 3GPP, 2 -- 3GPP2.*/
+ E_QSER_NW_RADIO_TECH_TYPE_T radio_tech; /**< Radio technology; see #nw_radio_tech_t_v01.*/
+ E_QSER_NW_ROAM_STATE_TYPE_T roaming; /**< 0 -- Off, 1 -- Roaming (3GPP2 has extended values).*/
+ E_QSER_NW_DENY_REASON_TYPE_T deny_reason; /**< Set when registration state is #nw_deny_reason_t_v01.*/
+ E_QSER_NW_SERVICE_TYPE_T registration_state; /**< Registration state.*/
+}QSER_NW_COMMON_REG_INFO_T;
+
+
+typedef struct
+{
+ E_QSER_NW_TECH_DOMAIN_TYPE_T tech_domain; /**< Technology, used to determine the structure type tech: 0 -- None, 1 -- 3GPP, 2 -- 3GPP2.*/
+ E_QSER_NW_RADIO_TECH_TYPE_T radio_tech; /**< Radio technology; see #nw_radio_tech_t_v01.*/
+ char mcc[3+1]; /**< Mobile country code.*/
+ char mnc[3+1]; /**< Mobile network code.*/
+ E_QSER_NW_ROAM_STATE_TYPE_T roaming; /**< 0 -- Off, 1 -- Roaming (3GPP2 has extended values).*/
+ uint8_t forbidden; /**< Forbidden: 0 -- No, 1 -- Yes.*/
+ uint32_t cid; /**< Cell ID for the registered 3GPP system.*/
+ uint16_t lac; /**< Locatin area code for the registered 3GPP system.*/
+ uint16_t psc; /**< Primary scrambling code (WCDMA only); 0 -- None.*/
+ uint16_t tac; /**< Tracking area code information for LTE.*/
+}QSER_NW_3GPP_REG_INFO_T;
+
+
+typedef struct
+{
+ E_QSER_NW_TECH_DOMAIN_TYPE_T tech_domain; /**< Technology, used to determine structure type tech: 0 -- None, 1 -- 3GPP, 2 -- 3GPP2.*/
+ E_QSER_NW_RADIO_TECH_TYPE_T radio_tech; /**< Radio technology; see #nw_radio_tech_t_v01.*/
+ char mcc[3+1]; /**< Mobile country code.*/
+ char mnc[3+1]; /**< Mobile network code.*/
+ E_QSER_NW_ROAM_STATE_TYPE_T roaming; /**< Roaming status; see #nw_roam_state_t_v01.*/
+ uint8_t forbidden; /**< Forbidden: 0 -- No, 1 -- Yes.*/
+ uint8_t inPRL; /**< 0 -- Not in PRL, 1 -- In PRL.*/
+ uint8_t css; /**< Concurrent services supported: 0 -- No, 1 -- Yes.*/
+ uint16_t sid; /**< CDMA system ID.*/
+ uint16_t nid; /**< CDMA network ID.*/
+ uint16_t bsid; /**< Base station ID. @newpagetable */
+}QSER_NW_3GPP2_REG_INFO_T;
+
+/** Gets the status associated with the connection of \<id\>. */
+typedef struct
+{
+ uint8_t voice_registration_valid; /**< Must be set to TRUE if voice_registration is being passed. */
+ QSER_NW_COMMON_REG_INFO_T voice_registration; /**< Voice registration. */
+
+ uint8_t data_registration_valid; /**< Must be set to TRUE if data_registration is being passed. */
+ QSER_NW_COMMON_REG_INFO_T data_registration; /**< Data registration. */
+
+ uint8_t voice_registration_details_3gpp_valid; /**< Must be set to TRUE if voice_registration_details_3gpp is being passed. */
+ QSER_NW_3GPP_REG_INFO_T voice_registration_details_3gpp; /**< Voice registration details for 3GPP. */
+
+ uint8_t data_registration_details_3gpp_valid; /**< Must be set to TRUE if data_registration_details_3gpp is being passed. */
+ QSER_NW_3GPP_REG_INFO_T data_registration_details_3gpp; /**< Data registration details for 3GPP. */
+
+ uint8_t voice_registration_details_3gpp2_valid; /**< Must be set to TRUE if voice_registration_details_3gpp2 is being passed. */
+ QSER_NW_3GPP2_REG_INFO_T voice_registration_details_3gpp2; /**< Voice registration details for 3GPP2. */
+
+ uint8_t data_registration_details_3gpp2_valid; /**< Must be set to TRUE if data_registration_details_3gpp2 is being passed. */
+ QSER_NW_3GPP2_REG_INFO_T data_registration_details_3gpp2; /**< Data registration details for 3GPP2. */
+}QSER_NW_REG_STATUS_INFO_T;
+
+
+typedef struct
+{
+ int8_t rssi; /**< RSSI in dBm. Indicates received signal strength. A signed value; -125 or lower indicates no signal.*/
+}QSER_NW_GSM_SIGNAL_INFO_T;
+
+
+typedef struct
+{
+ int8_t rssi; /**< RSSI in dBm. Indicates forward link pilot Ec. A signed value; -125 or lower indicates no signal.*/
+ int16_t ecio; /**< Ec/Io value representing negative 0.5 dB increments, e.g., 2 equals -1 dbm.*/
+}QSER_NW_WCDMA_SIGNAL_INFO_T;
+
+typedef struct
+{
+ int8_t rssi; /**< RSSI in dBm. Indicates forward link pilot Ec. a signed value; -125 or lower indicates no signal.*/
+ int8_t rscp; /**< RSCP in dBm.*/
+ int16_t ecio; /**< Ec/Io value representing negative 0.5 dB increments, e.g., 2 equals -1 dbm.*/
+ int8_t sinr; /**< Measured SINR in dB. @newpagetable */
+}QSER_NW_TDSCDMA_SIGNAL_INFO_T;
+
+typedef struct
+{
+ int8_t rssi; /**< RSSI in dBm. Indicates forward link pilot Ec. A signed value; -125 or lower indicates no signal.*/
+ int8_t rsrq; /**< RSRQ value in dB (signed integer value), as measured by L1. Range: -3 to -20 (-3 equals -3 dB, -20 equals -20 dB).*/
+ int16_t rsrp; /**< Current RSRP in dBm, as measured by L1. Range: -44 to -140 (-44 equals -44 dBm, -140 equals -140 dBm).*/
+ int16_t snr; /**< SNR level as a scaled integer in units of 0.1 dB; e.g., -16 dB has a value of -160 and 24.6 dB has a value of 246.*/
+}QSER_NW_LTE_SIGNAL_INFO_T;
+
+
+typedef struct
+{
+ int8_t rssi; /**< RSSI in dBm. Indicates forward link pilot Power (AGC) + Ec/Io. A signed value; -125 or lower indicates no signal.*/
+ int16_t ecio; /**< Ec/Io value representing negative 0.5 dB increments, e.g., 2 equals -1 dbm.*/
+}QSER_NW_CDMA_SIGNAL_INFO_T;
+
+typedef struct
+{
+ int8_t rssi; /**< RSSI in dBm. Indicates forward link pilot Power (AGC) + Ec/Io. A signed value; -125 or lower indicates no signal.*/
+ int16_t ecio; /**< Ec/Io value representing negative 0.5 dB increments, e.g., 2 equals -1 dbm.*/
+ int8_t sinr; /**< SINR level.*/
+ int32_t io; /**< Received IO in dBm. */
+}QSER_NW_HDR_SIGNAL_INFO_T;
+
+typedef struct
+{
+ int16_t ssRsrp; /* SS(Synchronization Signal) reference signal received power, multipled by -1.
+ * Reference: 3GPP TS 38.215.
+ * Range [44, 140], INT_MAX means invalid/unreported.*/
+ int16_t ssRsrq; /* SS reference signal received quality, multipled by -1.
+ * Reference: 3GPP TS 38.215.
+ * Range [3, 20], INT_MAX means invalid/unreported.*/
+ int16_t ssSinr; /* SS signal-to-noise and interference ratio.
+ * Reference: 3GPP TS 38.215 section 5.1.*, 3GPP TS 38.133 section 10.1.16.1.
+ * Range [-23, 40], INT_MAX means invalid/unreported.*/
+ int16_t csiRsrp; /* CSI reference signal received power, multipled by -1.
+ * Reference: 3GPP TS 38.215.
+ * Range [44, 140], INT_MAX means invalid/unreported.*/
+ int16_t csiRsrq; /* CSI reference signal received quality, multipled by -1.
+ * Reference: 3GPP TS 38.215.
+ * Range [3, 20], INT_MAX means invalid/unreported.*/
+ int16_t csiSinr; /* CSI signal-to-noise and interference ratio.
+ * Reference: 3GPP TS 138.215 section 5.1.*, 3GPP TS 38.133 section 10.1.16.1.
+ * Range [-23, 40], INT_MAX means invalid/unreported.*/
+}QSER_NW_NR_SIGNAL_INFO_T;
+
+
+/** Gets signal strength information. */
+typedef struct
+{
+ uint8_t gsm_sig_info_valid; /**< Must be set to TRUE if gsm_sig_info is being passed. */
+ QSER_NW_GSM_SIGNAL_INFO_T gsm_sig_info; /**< GSM signal information. */
+ uint8_t wcdma_sig_info_valid; /**< Must be set to TRUE if wcdma_sig_info is being passed. */
+ QSER_NW_WCDMA_SIGNAL_INFO_T wcdma_sig_info; /**< WCDMA signal information. */
+ uint8_t tdscdma_sig_info_valid; /**< Must be set to TRUE if tdscdma_sig_info is being passed. */
+ QSER_NW_TDSCDMA_SIGNAL_INFO_T tdscdma_sig_info; /**< TDSCDMA signal information. */
+ uint8_t lte_sig_info_valid; /**< Must be set to TRUE if lte_sig_info is being passed. */
+ QSER_NW_LTE_SIGNAL_INFO_T lte_sig_info; /**< LTE signal information. */
+ uint8_t cdma_sig_info_valid; /**< Must be set to TRUE if cdma_sig_info is being passed. */
+ QSER_NW_CDMA_SIGNAL_INFO_T cdma_sig_info; /**< CDMA signal information. */
+ uint8_t hdr_sig_info_valid; /**< Must be set to TRUE if hdr_sig_info is being passed. */
+ QSER_NW_HDR_SIGNAL_INFO_T hdr_sig_info; /**< HDR signal information. */
+ uint8_t nr_sig_info_valid;
+ QSER_NW_NR_SIGNAL_INFO_T nr_sig_info;
+}QSER_NW_SIGNAL_STRENGTH_INFO_T;
+
+
+
+typedef enum
+{
+ E_QSER_NW_CELL_ACCESS_NONE = 0x00, /**< Unknown cell access state. */
+ E_QSER_NW_CELL_ACCESS_NORMAL_ONLY = 0x01, /**< Cell access is allowed for normal calls only. */
+ E_QSER_NW_CELL_ACCESS_EMERGENCY_ONLY = 0x02, /**< Cell access is allowed for emergency calls only. */
+ E_QSER_NW_CELL_ACCESS_NO_CALLS = 0x03, /**< Cell access is not allowed for any call type. */
+ E_QSER_NW_CELL_ACCESS_ALL_CALLS = 0x04, /**< Cell access is allowed for all call types. */
+}E_QSER_NW_CELL_ACCESS_STATE_TYPE_T;
+
+
+/* @bridef Callback function registered to QSER_NW_AddRxMsgHandler
+ * map of ind_flag and ind_msg_buf as bellow :
+ * NW_IND_VOICE_REG_EVENT_IND_FLAG : QSER_NW_VOICE_REG_EVENT_IND_T
+ * NW_IND_DATA_REG_EVENT_IND_FLAG : QSER_NW_DATA_REG_EVENT_IND_T
+ * NW_IND_SIGNAL_STRENGTH_EVENT_IND_FLAG : QSER_NW_SINGNAL_EVENT_IND_T
+ * NW_IND_CELL_ACCESS_STATE_CHG_EVENT_IND_FLAG : QSER_NW_CELL_ACCESS_STATE_EVENT_IND_T
+ * NW_IND_NITZ_TIME_UPDATE_EVENT_IND_FLAG : QSER_NW_NITZ_TIME_EVENT_IND_T
+ * */
+typedef void (*QSER_NW_RxMsgHandlerFunc_t)(
+ nw_client_handle_type h_nw,
+ uint32_t ind_flag,
+ void *ind_msg_buf,
+ uint32_t ind_msg_len,
+ void *contextPtr
+);
+
+
+/** Indication message; Indication for the corresponding registered event flag NW_IND_VOICE_REG_EVENT_IND_FLAG */
+typedef struct {
+
+ uint8_t registration_valid; /**< Must be set to TRUE if voice_registration is being passed. */
+ QSER_NW_COMMON_REG_INFO_T registration; /**< Voice registration. */
+
+ uint8_t registration_details_3gpp_valid; /**< Must be set to TRUE if voice_registration_details_3gpp is being passed. */
+ QSER_NW_3GPP_REG_INFO_T registration_details_3gpp; /**< Voice registration details for 3GPP. */
+
+ uint8_t registration_details_3gpp2_valid; /**< Must be set to TRUE if voice_registration_details_3gpp2 is being passed. */
+ QSER_NW_3GPP2_REG_INFO_T registration_details_3gpp2; /**< Voice registration details for 3GPP2. */
+}QSER_NW_VOICE_REG_EVENT_IND_T;
+
+/** Indication message; Indication for the corresponding registered event flag NW_IND_DATA_REG_EVENT_IND_FLAG */
+typedef struct {
+
+ uint8_t registration_valid; /**< Must be set to TRUE if data_registration is being passed. */
+ QSER_NW_COMMON_REG_INFO_T registration; /**< Data registration. */
+
+ uint8_t registration_details_3gpp_valid; /**< Must be set to TRUE if data_registration_details_3gpp is being passed. */
+ QSER_NW_3GPP_REG_INFO_T registration_details_3gpp; /**< Data registration details for 3GPP. */
+
+ uint8_t registration_details_3gpp2_valid; /**< Must be set to TRUE if data_registration_details_3gpp2 is being passed. */
+ QSER_NW_3GPP2_REG_INFO_T registration_details_3gpp2; /**< Data registration details for 3GPP2. */
+}QSER_NW_DATA_REG_EVENT_IND_T;
+
+
+/** Indication message; Indication for the corresponding registered event flag NW_IND_SIGNAL_STRENGTH_EVENT_IND_FLAG */
+typedef struct {
+ uint8_t gsm_sig_info_valid; /**< Must be set to TRUE if gsm_sig_info is being passed. */
+ QSER_NW_GSM_SIGNAL_INFO_T gsm_sig_info; /**< GSM singal information. */
+
+ uint8_t wcdma_sig_info_valid; /**< Must be set to TRUE if wcdma_sig_info is being passed. */
+ QSER_NW_WCDMA_SIGNAL_INFO_T wcdma_sig_info; /**< WCDMA singal information. */
+
+ uint8_t tdscdma_sig_info_valid; /**< Must be set to TRUE if tdscdma_sig_info is being passed. */
+ QSER_NW_TDSCDMA_SIGNAL_INFO_T tdscdma_sig_info; /**< TDSCDMA singal information. */
+
+ uint8_t lte_sig_info_valid; /**< Must be set to TRUE if lte_sig_info is being passed. */
+ QSER_NW_LTE_SIGNAL_INFO_T lte_sig_info; /**< LTE singal information. */
+
+ uint8_t cdma_sig_info_valid; /**< Must be set to TRUE if cdma_sig_info is being passed. */
+ QSER_NW_CDMA_SIGNAL_INFO_T cdma_sig_info; /**< CDMA singal information. */
+
+ uint8_t hdr_sig_info_valid; /**< Must be set to TRUE if hdr_sig_info is being passed. */
+ QSER_NW_HDR_SIGNAL_INFO_T hdr_sig_info; /**< HDR singal information. */
+
+ uint8_t nr_sig_info_valid;
+ QSER_NW_NR_SIGNAL_INFO_T nr_sig_info;
+}QSER_NW_SINGNAL_EVENT_IND_T;
+
+
+/** Indication message; Indication for a change in the cell access state, e.g., emergency only, CS call only.
+ * Indication for the corresponding registered event flag NW_IND_CELL_ACCESS_STATE_CHG_EVENT_IND_FLAG */
+typedef struct {
+ E_QSER_NW_CELL_ACCESS_STATE_TYPE_T state; /**< Network cell access state. */
+}QSER_NW_CELL_ACCESS_STATE_EVENT_IND_T;
+
+/** Indication Message; Indication to update NITZ time.
+ * Indication for the corresponding registered event flag NW_IND_NITZ_TIME_UPDATE_EVENT_IND_FLAG */
+typedef struct {
+ QSER_NW_NITZ_TIME_INFO_T info;
+}QSER_NW_NITZ_TIME_EVENT_IND_T;
+
+
+
+
+int qser_nw_client_init(nw_client_handle_type *ph_nw);
+
+int qser_nw_client_deinit(nw_client_handle_type h_nw);
+
+int qser_nw_setconfig
+(
+ nw_client_handle_type h_nw,
+ QSER_NW_CONFIG_INFO_T *pt_info
+);
+
+int qser_nw_eventregister
+(
+ nw_client_handle_type h_nw,
+ uint32_t bitmask // bit OR of NW_IND_xxxx_EVENT_ON
+);
+
+int qser_nw_getoperatorname
+(
+ nw_client_handle_type h_nw,
+ QSER_NW_OPERATOR_NAME_INFO_T *pt_info //You should malloc this or may cause stack overflow
+);
+
+int qser_nw_performscan
+(
+ nw_client_handle_type h_nw,
+ QSER_NW_SCAN_RESULT_LIST_INFO_T *pt_info
+);
+
+int qser_nw_getregstatus
+(
+ nw_client_handle_type h_nw,
+ QSER_NW_REG_STATUS_INFO_T *pt_info
+);
+
+int qser_nw_setlowpowermode
+(
+ nw_client_handle_type h_nw,
+ uint32_t low_power_mode_on // 0: off, other: on
+);
+
+int qser_nw_getsignalstrength
+(
+ nw_client_handle_type h_nw,
+ QSER_NW_SIGNAL_STRENGTH_INFO_T *pt_info
+);
+
+int qser_nw_getcellaccessstate
+(
+ nw_client_handle_type h_nw,
+ E_QSER_NW_CELL_ACCESS_STATE_TYPE_T *pe_state
+);
+
+int qser_nw_addrxmsghandler
+(
+ nw_client_handle_type h_nw,
+ QSER_NW_RxMsgHandlerFunc_t handlerPtr,
+ void* contextPtr
+);
+
+#ifdef __cplusplus
+}
+#endif
+#endif//__QSER_NW_H__
diff --git a/src/lynq/lib/liblynq-qser-network/lynq_qser_network.cpp b/src/lynq/lib/liblynq-qser-network/lynq_qser_network.cpp
new file mode 100644
index 0000000..d9997d9
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-network/lynq_qser_network.cpp
@@ -0,0 +1,365 @@
+#include <stdio.h>
+#include <stdint.h>
+#include <sys/types.h>
+#include <string.h>
+#include <lynq_network.h>
+#include <stdlib.h>
+#include <pthread.h>
+#include <unistd.h>
+#include <liblog/lynq_deflog.h>
+#include "lynq_qser_network.h"
+
+#define USER_LOG_TAG "LYNQ_QSER_NETWORK"
+#define RESULT_OK (0)
+#define RESULT_ERROR (-1)
+
+QSER_NW_RxMsgHandlerFunc_t g_tmp = NULL;
+nw_client_handle_type g_ph_hw = 0;
+
+int switch_preferred_nw_mode(const uint64_t preferred_nw_mode)
+{
+ int preNettype = 0;
+ switch (preferred_nw_mode)
+ {
+ case QSER_NW_MODE_GSM:
+ preNettype = 1;
+ break;
+ case QSER_NW_MODE_WCDMA:
+ preNettype = 0;
+ break;
+ case QSER_NW_MODE_CDMA:
+ preNettype = 5;
+ break;
+ case QSER_NW_MODE_EVDO:
+ preNettype = 7;
+ break;
+ case QSER_NW_MODE_LTE:
+ preNettype = 9;
+ break;
+ case QSER_NW_MODE_TDSCDMA:
+ preNettype = 22;
+ break;
+ case QSER_NW_MODE_PRL:
+ case QSER_NW_MODE_NONE:
+ case QSER_NW_MODE_NR:
+ preNettype = 32;
+ break;
+ default:
+ preNettype = -1;
+ break;
+ }
+ return preNettype;
+}
+
+
+void *new_network_thread_recv(void *context)
+{
+ int handle = -1;
+ int ret = 0;
+ int slot_id = 0;
+ uint32_t ind_flag = 0;
+ signalStrength_t signalstrength;
+ while (1)
+ {
+ lynq_wait_signalchanges(&handle);
+ if (handle == 1009)
+ {
+ ret = lynq_get_urc_info(handle,&signalstrength,&slot_id);
+ if (ret == 0)
+ {
+ QSER_NW_SINGNAL_EVENT_IND_T msg_buf;
+ msg_buf.gsm_sig_info_valid = signalstrength.gw_sig_valid;
+ msg_buf.gsm_sig_info.rssi = signalstrength.rssi;
+ msg_buf.wcdma_sig_info_valid = signalstrength.wcdma_sig_valid;
+ msg_buf.wcdma_sig_info.rssi = signalstrength.rscp;
+ msg_buf.wcdma_sig_info.ecio = signalstrength.ecno;
+ msg_buf.tdscdma_sig_info_valid = 0;
+ msg_buf.lte_sig_info_valid = signalstrength.lte_sig_valid;
+ msg_buf.lte_sig_info.rssi = -125;
+ msg_buf.lte_sig_info.rsrp = signalstrength.rsrp;
+ msg_buf.lte_sig_info.rsrq = signalstrength.rsrq;
+ msg_buf.lte_sig_info.snr = signalstrength.rssnr;
+ msg_buf.cdma_sig_info_valid = 0;
+ msg_buf.hdr_sig_info_valid = 0;
+ msg_buf.nr_sig_info_valid = signalstrength.nr_sig_valid;
+ msg_buf.nr_sig_info.ssRsrp = signalstrength.ssRsrp;
+ msg_buf.nr_sig_info.ssRsrq = signalstrength.ssRsrq;
+ msg_buf.nr_sig_info.ssSinr = signalstrength.ssSinr;
+ msg_buf.nr_sig_info.csiRsrp = signalstrength.csiRsrp;
+ msg_buf.nr_sig_info.csiRsrq = signalstrength.csiRsrq;
+ msg_buf.nr_sig_info.csiSinr = signalstrength.csiSinr;
+ void *ind_msg_buf= &msg_buf;
+ g_tmp(g_ph_hw,NW_IND_SIGNAL_STRENGTH_EVENT_IND_FLAG,ind_msg_buf,sizeof(msg_buf),context);
+ }
+ else
+ {
+ LYERRLOG("get urc info fail");
+ continue;
+ }
+ }
+ else
+ {
+ continue;
+ }
+ }
+ return NULL;
+}
+
+int qser_nw_client_init(nw_client_handle_type *ph_nw)
+{
+ if(NULL == ph_nw)
+ {
+ LYERRLOG("input error\n");
+ return RESULT_ERROR;
+ }
+ *ph_nw = (nw_client_handle_type)getpid();
+ g_ph_hw = *ph_nw;
+ return lynq_network_init(*ph_nw);
+}
+
+int qser_nw_client_deinit(nw_client_handle_type h_nw)
+{
+ if(h_nw == 0)
+ {
+ LYERRLOG("not init\n");
+ return RESULT_ERROR;
+ }
+ return lynq_network_deinit();
+}
+
+int qser_nw_setconfig(nw_client_handle_type h_nw,QSER_NW_CONFIG_INFO_T *pt_info)
+{
+ int pretype = 0;
+ if(h_nw == 0 || NULL == pt_info)
+ {
+ LYERRLOG("invalid client parameters incoming");
+ return RESULT_ERROR;
+ }
+ pretype = switch_preferred_nw_mode(pt_info->preferred_nw_mode);
+ if (pretype < 0)
+ {
+ LYERRLOG("invalid client parameters incoming");
+ return RESULT_ERROR;
+ }
+ return lynq_set_prefferred_networktype(pretype);
+}
+
+/*To Do*/
+int qser_nw_eventregister(nw_client_handle_type h_nw,uint32_t bitmask)
+{
+ if(h_nw == 0)
+ {
+ LYERRLOG("invalid client parameters incoming");
+ return RESULT_ERROR;
+ }
+ LYINFLOG("To be complie API");
+ return RESULT_OK;
+}
+
+int qser_nw_getoperatorname(nw_client_handle_type h_nw,QSER_NW_OPERATOR_NAME_INFO_T *pt_info)
+{
+ if(h_nw == 0 || NULL == pt_info)
+ {
+ LYERRLOG("invalid client parameters incoming");
+ return RESULT_ERROR;
+ }
+ int ret = 0;
+ char op_FN[128];
+ char op_SN[128];
+ char mccmnc[8];
+ memset(op_FN,0,sizeof(op_FN));
+ memset(op_SN,0,sizeof(op_SN));
+ memset(mccmnc,0,sizeof(mccmnc));
+ ret = lynq_query_operater(op_FN,op_SN,mccmnc);
+ if (ret < 0)
+ {
+ LYERRLOG("lynq_query_operater failed");
+ return RESULT_ERROR;
+ }
+ strcpy(pt_info->long_eons,op_FN);
+ strcpy(pt_info->short_eons,op_SN);
+ strncpy(pt_info->mcc,mccmnc,3);
+ pt_info->mcc[3] = '\0';
+ strcpy(pt_info->mnc,mccmnc+3);
+ return RESULT_OK;
+}
+
+int qser_radio_tech_qurey(int radiotechfam)
+{
+ int qser_radiotech = -1;
+ if (qser_radiotech <18 && qser_radiotech >0)
+ {
+ qser_radiotech = 18 - radiotechfam;
+ }
+ else
+ {
+ qser_radiotech = E_QSER_NW_RADIO_TECH_NONE;
+ }
+ return qser_radiotech;
+}
+
+E_QSER_NW_SERVICE_TYPE_T switch_nw_regstate(int regstate)
+{
+ E_QSER_NW_SERVICE_TYPE_T state = 0;
+ switch (regstate)
+ {
+ case 1:
+ case 5:
+ state = E_QSER_NW_SERVICE_FULL;
+ break;
+ case 10:
+ case 12:
+ case 13:
+ case 14:
+ state = E_QSER_NW_SERVICE_LIMITED;
+ break;
+ case 0:
+ case 2:
+ case 3:
+ case 4:
+ case 6:
+ state = E_QSER_NW_SERVICE_NONE;
+ default:
+ state = E_QSER_NW_SERVICE_NONE;
+ break;
+ }
+ return state;
+}
+
+
+int qser_nw_getregstatus(nw_client_handle_type h_nw,QSER_NW_REG_STATUS_INFO_T *pt_info)
+{
+ if(h_nw == 0 || NULL == pt_info)
+ {
+ LYERRLOG("invalid client parameters incoming");
+ return RESULT_ERROR;
+ }
+ int ret = 0;
+ int regState = 0;
+ int imsRegState = 0;
+ char CID[128]={0};
+ char LAC[128]={0};
+ int netType = 0;
+ int radioTechFam = 0;
+ int netreject = 0;
+ pt_info->voice_registration_valid = 1;
+ ret = lynq_query_registration_state("VOICE",®State,&imsRegState,LAC,CID,&netType,&radioTechFam,&netreject);
+ if(ret == 0)
+ {
+ pt_info->voice_registration_valid = 1;
+ pt_info->voice_registration.tech_domain = E_QSER_NW_TECH_DOMAIN_NONE;
+ pt_info->voice_registration.radio_tech = qser_radio_tech_qurey(radioTechFam);
+ if (regState == 5)
+ {
+ pt_info->voice_registration.roaming = E_QSER_NW_ROAM_STATE_ON;
+ }
+ else
+ {
+ pt_info->voice_registration.roaming = E_QSER_NW_ROAM_STATE_OFF;
+ }
+ pt_info->voice_registration.registration_state = switch_nw_regstate(regState);
+ }
+ else
+ {
+ pt_info->voice_registration_valid = 0;
+ LYERRLOG("get voice regstate fail");
+ }
+ ret = lynq_query_registration_state("DATA",®State,&imsRegState,LAC,CID,&netType,&radioTechFam,&netreject);
+ if(ret == 0)
+ {
+ pt_info->voice_registration_valid = 1;
+ pt_info->voice_registration.tech_domain = E_QSER_NW_TECH_DOMAIN_NONE;
+ pt_info->voice_registration.radio_tech = qser_radio_tech_qurey(radioTechFam);
+ if (regState == 5)
+ {
+ pt_info->voice_registration.roaming = E_QSER_NW_ROAM_STATE_ON;
+ }
+ else
+ {
+ pt_info->voice_registration.roaming = E_QSER_NW_ROAM_STATE_OFF;
+ }
+ pt_info->voice_registration.registration_state = switch_nw_regstate(regState);
+ }
+ else
+ {
+ pt_info->data_registration_valid = 0;
+ LYERRLOG("get data regstate fail");
+ }
+ pt_info->voice_registration_details_3gpp_valid = 0;
+ pt_info->data_registration_details_3gpp_valid = 0;
+ pt_info->voice_registration_details_3gpp2_valid = 0;
+ pt_info->data_registration_details_3gpp2_valid = 0;
+ return RESULT_OK;
+}
+
+int qser_nw_setlowpowermode(nw_client_handle_type h_nw,uint32_t low_power_mode_on)
+{
+ if(h_nw == 0)
+ {
+ LYERRLOG("invalid client parameters incoming");
+ return RESULT_ERROR;
+ }
+ LYINFLOG("To be complie API");
+ return RESULT_OK;
+}
+
+int qser_nw_getsignalstrength(nw_client_handle_type h_nw,QSER_NW_SIGNAL_STRENGTH_INFO_T *pt_info)
+{
+ if(h_nw == 0 || NULL == pt_info)
+ {
+ LYERRLOG("invalid client parameters incoming");
+ return RESULT_ERROR;
+ }
+ signalStrength_t lib_info;
+ int ret = 0;
+ ret = lynq_solicited_signal_strength(&lib_info);
+ if(ret != 0)
+ {
+ LYERRLOG("get signal strength fail");
+ return RESULT_ERROR;
+ }
+ pt_info->gsm_sig_info_valid = lib_info.gw_sig_valid;
+ pt_info->gsm_sig_info.rssi = lib_info.rssi;
+ pt_info->wcdma_sig_info_valid = lib_info.wcdma_sig_valid;
+ pt_info->wcdma_sig_info.rssi = lib_info.rscp;
+ pt_info->wcdma_sig_info.ecio = lib_info.ecno;
+ pt_info->tdscdma_sig_info_valid = 0;
+ pt_info->lte_sig_info_valid = lib_info.lte_sig_valid;
+ pt_info->lte_sig_info.rssi = -125;
+ pt_info->lte_sig_info.rsrp = lib_info.rsrp;
+ pt_info->lte_sig_info.rsrq = lib_info.rsrq;
+ pt_info->lte_sig_info.snr = lib_info.rssnr;
+ pt_info->cdma_sig_info_valid = 0;
+ pt_info->hdr_sig_info_valid = 0;
+ pt_info->nr_sig_info_valid = lib_info.nr_sig_valid;
+ pt_info->nr_sig_info.ssRsrp = lib_info.ssRsrp;
+ pt_info->nr_sig_info.ssRsrq = lib_info.ssRsrq;
+ pt_info->nr_sig_info.ssSinr = lib_info.ssSinr;
+ pt_info->nr_sig_info.csiRsrp = lib_info.csiRsrp;
+ pt_info->nr_sig_info.csiRsrq = lib_info.csiRsrq;
+ pt_info->nr_sig_info.csiSinr = lib_info.csiSinr;
+ return RESULT_OK;
+}
+
+
+
+int qser_nw_addrxmsghandler(nw_client_handle_type h_nw,QSER_NW_RxMsgHandlerFunc_t handlerPtr,void* contextPtr)
+{
+ if(NULL == handlerPtr)
+ {
+ return RESULT_ERROR;
+ }
+ if(NULL == contextPtr)
+ {
+ return RESULT_ERROR;
+ }
+ g_tmp = handlerPtr;
+ pthread_t lynq_new_network_tid = -1;
+ int rt = pthread_create(&lynq_new_network_tid, NULL, new_network_thread_recv, contextPtr);
+ if(rt < 0)
+ {
+ LYDBGLOG("qser_nw_addrxmsghandler pthread_create error!!!\n");
+ return RESULT_ERROR;
+ }
+ return RESULT_OK;
+}
\ No newline at end of file
diff --git a/src/lynq/lib/liblynq-qser-network/makefile b/src/lynq/lib/liblynq-qser-network/makefile
new file mode 100644
index 0000000..ce6255a
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-network/makefile
@@ -0,0 +1,63 @@
+SHELL = /bin/sh
+RM = rm -f
+
+LOCAL_CFLAGS := -Wall \
+ -std=gnu++14 \
+ -g -Os \
+ -flto \
+ -fPIC \
+ -fpermissive \
+
+
+
+$(warning ################# lynq qser sms demo ROOT: $(ROOT),includedir:$(includedir))
+LOCAL_PATH = .
+
+LOCAL_C_INCLUDES = \
+ -I. \
+ -I$(LOCAL_PATH)/include/ \
+ -I$(ROOT)$(includedir)/logger \
+ -I$(ROOT)$(includedir)/liblog \
+ -I$(ROOT)$(includedir)/lynq_network/lynq_network \
+
+LOCAL_LIBS := \
+ -L. \
+ -ldl \
+ -lstdc++ \
+ -lpthread \
+ -llynq-log \
+ -llynq-network \
+
+
+SOURCES = $(wildcard *.cpp)
+
+EXECUTABLE = liblynq-qser-network.so
+
+OBJECTS=$(SOURCES:.cpp=.o)
+
+
+.PHONY: build clean install pack_rootfs
+all: build
+$(EXECUTABLE): $(OBJECTS)
+ $(CXX) -shared -Wl,--no-undefined $(OBJECTS) $(LOCAL_LIBS) $(LOCAL_CFLAGS) $(LOCAL_C_INCLUDES) -o $@
+
+%.o : %.cpp
+ $(CXX) $(LOCAL_C_INCLUDES) $(LOCAL_CFLAGS) $(LOCAL_LIBS) -o $@ -c $<
+
+build: $(EXECUTABLE)
+ $(warning ########## build $(EXECUTABLE) ##########)
+install:
+ mkdir -p $(ROOT)$(base_libdir)/
+ install $(EXECUTABLE) $(ROOT)$(base_libdir)/
+ mkdir -p $(ROOT)$(includedir)/$(NAME)/sdk
+pack_rootfs:
+ mkdir -p $(PACK_INITRAMFS_TO)$(base_libdir)/
+ cp -af $(EXECUTABLE) $(PACK_INITRAMFS_TO)$(base_libdir)/
+ $(CROSS)strip $(PACK_INITRAMFS_TO)$(base_libdir)/$(EXECUTABLE)
+ mkdir -p $(PACK_TO)$(base_libdir)/
+ cp -af $(EXECUTABLE) $(PACK_TO)$(base_libdir)/
+ $(CROSS)strip $(PACK_TO)$(base_libdir)/$(EXECUTABLE)
+.PHONY: clean
+clean:
+ $(RM) $(OBJECTS) $(EXECUTABLE)
+ -find . -name "*.o" -delete
\ No newline at end of file
diff --git a/src/lynq/lib/liblynq-qser-voice/include/lynq-qser-voice.h b/src/lynq/lib/liblynq-qser-voice/include/lynq-qser-voice.h
new file mode 100644
index 0000000..528acc0
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-voice/include/lynq-qser-voice.h
@@ -0,0 +1,133 @@
+/**
+ *@file qser_voice.h
+ *@date 2017-11-30
+ *@author
+ *@brief
+ */
+
+
+#ifndef __LYNQ_QSER_VOICE_H__
+#define __LYNQ_QSER_VOICE_H__
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum
+{
+ E_QSER_VCALL_EXTERNAL_SLOT_1,
+ E_QSER_VCALL_EXTERNAL_SLOT_2,
+ E_QSER_VCALL_EMBEDDED,
+ E_QSER_VCALL_REMOTE,
+ E_QSER_VCALL_ID_MAX
+}E_QSER_VCALL_ID_T;
+
+typedef enum
+{
+ E_QSER_VOICE_CALL_STATE_INCOMING = 0x0000, /**< MT incoming; CC setup. */
+ E_QSER_VOICE_CALL_STATE_DIALING = 0x0001, /**< Dialing state. */
+ E_QSER_VOICE_CALL_STATE_ALERTING = 0x0002, /**< MT call waiting; MO alterting. */
+ E_QSER_VOICE_CALL_STATE_ACTIVE = 0x0003, /**< Call is active. */
+ E_QSER_VOICE_CALL_STATE_HOLDING = 0x0004, /**< Call is on hold. */
+ E_QSER_VOICE_CALL_STATE_END = 0x0005, /**< Call is disconnected. */
+ E_QSER_VOICE_CALL_STATE_WAITING = 0x0006, /**< Call is waiting. */
+}qser_voice_call_state_t;
+
+typedef enum
+{
+ E_QSER_VOICE_CALL_WAITING_VOICE_ENABLED = 0, /**< Voice call waiting enabled. */
+ E_QSER_VOICE_CALL_WAITING_DISABLED = 1, /**< Voice call waiting disabled. */
+}E_QSER_VOICE_CALL_WAITING_SERVICE_T;
+
+typedef struct
+{
+ E_QSER_VOICE_CALL_WAITING_SERVICE_T waiting_service;
+}qser_voice_call_waiting_service_t;
+
+typedef qser_voice_call_state_t E_QSER_VOICE_CALL_STATE_T;
+
+typedef uint32_t voice_client_handle_type;
+
+/* Callback function registered via QSER_Voice_Call_AddStateHandler;
+ This will be called if any stated changed of call_id
+*/
+typedef void (*QSER_VoiceCall_StateHandlerFunc_t)
+(
+ int caLOCAL_C_INCLUDESll_id,
+ char* phone_num,
+ E_QSER_VOICE_CALL_STATE_T state,
+ void *contextPtr
+);
+
+/* Init voice module and return h_voice, this should be called before any other APIs */
+int qser_voice_call_client_init(voice_client_handle_type *ph_voice);
+
+/* DeInit voice module and release resources, this should be called at last */
+int qser_voice_call_client_deinit(voice_client_handle_type h_voice);
+
+/* Add callback function, if any call state changed, handlerPtr will be called to notify App */
+int qser_voice_call_addstatehandler(voice_client_handle_type h_voice,
+ QSER_VoiceCall_StateHandlerFunc_t handlerPtr,
+ void* contextPtr);
+
+/* Remove callback function, won't receive any notify anymore */
+int qser_voice_call_removestatehandle(voice_client_handle_type h_voice);
+
+/* Start call and return call_id, this can be used in the later */
+int qser_voice_call_start(voice_client_handle_type h_voice,
+ E_QSER_VCALL_ID_T simId,
+ char* phone_number, ///< [IN] Destination identifier for the voice
+ int *call_id); ///< [OUT] call id
+
+/* End call of call_id, which returned by QSER_Voice_Call_Start or callback func register via QSER_Voice_Call_AddStateHandler */
+int qser_voice_call_end( voice_client_handle_type h_voice,
+ int call_id); ///< [IN] call id, return by QSER_Voice_Start
+
+/* Answer the call of call_id, which returned by callback func register via QSER_Voice_Call_AddStateHandler */
+int qser_voice_call_answer(voice_client_handle_type h_voice,
+ int call_id );
+
+int qser_voice_call_hold( voice_client_handle_type h_voice);
+
+int qser_voice_call_unhold(voice_client_handle_type h_voice);
+
+//Set voice call waiting
+int qser_voice_call_setwaiting
+(
+ int h_voice,
+ qser_voice_call_waiting_service_t e_service
+);
+
+//Get voice call waiting status
+int qser_voice_call_getwaitingsatus
+(
+ int h_voice,
+ qser_voice_call_waiting_service_t *pe_service
+);
+
+
+/*
+Usage 1 (register callback and wait for new call in, then answer):
+1, QSER_Voice_Call_Client_Init
+2, QSER_Voice_Call_AddStateHandler(pf_cb)
+3, wait for new call arrive, pf_cb will pass the call_id to app.
+4, QSER_Voice_Call_Answer(call_id)
+5, QSER_Voice_Call_End
+6, QSER_Voice_Call_Client_Deinit
+
+
+Usage 2 (call out):
+1, QSER_Voice_Call_Client_Init
+2, QSER_Voice_Call_AddStateHandler(pf_cb)
+3, QSER_Voice_Call_Start
+4, QSER_Voice_Call_End
+5, QSER_Voice_Call_Client_Deinit
+
+
+*/
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif // __QSER_VOICE_H__
+
diff --git a/src/lynq/lib/liblynq-qser-voice/lynq-qser-voice.cpp b/src/lynq/lib/liblynq-qser-voice/lynq-qser-voice.cpp
new file mode 100755
index 0000000..faa1a1b
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-voice/lynq-qser-voice.cpp
@@ -0,0 +1,220 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+#include <string.h>
+#include <errno.h>
+#include <unistd.h>
+#include <liblog/lynq_deflog.h>
+#include <sys/types.h>
+#include <pthread.h>
+#include <libcall/lynq_call.h>
+
+#include "lynq-qser-voice.h"
+
+#define USER_LOG_TAG "LYNQ_QSER_CALL"
+
+#define RESULT_OK (0)
+#define RESULT_ERROR (-1)
+
+static pthread_t s_lynq_voice_tid = -1;
+static QSER_VoiceCall_StateHandlerFunc_t s_voice_cb = NULL;
+static int s_voice_thread_status = 0;
+
+ typedef enum {
+ LYNQ_CALL_ACTIVE = 0,
+ LYNQ_CALL_HOLDING = 1,
+ LYNQ_CALL_DIALING = 2, /* MO call only */
+ LYNQ_CALL_ALERTING = 3, /* MO call only */
+ LYNQ_CALL_INCOMING = 4, /* MT call only */
+ LYNQ_CALL_WAITING = 5, /* MT call only */
+ /*warren add for T800 platform 2022/04/26 start*/
+ LYNQ_CALL_END = 6, /*CALL END*/
+ /*warren add for T800 platform 2022/04/26 end*/
+}lynq_call_state_t;
+
+
+void *voice_thread_recv(void *context)
+{
+ int handle = 0;
+ int call_state;
+ int toa;
+ int direction;
+ char addr[64];
+ E_QSER_VOICE_CALL_STATE_T voice_state;
+ while (s_voice_thread_status)
+ {
+ lynq_wait_call_state_change(&handle);
+ lynq_get_current_call_state(&handle,&call_state,&toa,&direction,addr);
+ if (call_state == LYNQ_CALL_ACTIVE)
+ {
+ voice_state = E_QSER_VOICE_CALL_STATE_ACTIVE;
+ }
+ else if(call_state == LYNQ_CALL_HOLDING)
+ {
+ voice_state = E_QSER_VOICE_CALL_STATE_HOLDING;
+ }
+ else if(call_state == LYNQ_CALL_DIALING)
+ {
+ voice_state = E_QSER_VOICE_CALL_STATE_DIALING;
+ }
+ else if(call_state == LYNQ_CALL_ALERTING)
+ {
+ voice_state = E_QSER_VOICE_CALL_STATE_ALERTING;
+ }
+ else if(call_state == LYNQ_CALL_INCOMING)
+ {
+ voice_state = E_QSER_VOICE_CALL_STATE_INCOMING;
+ }
+ else if(call_state == LYNQ_CALL_WAITING)
+ {
+ voice_state = E_QSER_VOICE_CALL_STATE_WAITING;
+ }
+ else if(call_state == LYNQ_CALL_END)
+ {
+ voice_state = E_QSER_VOICE_CALL_STATE_END;
+ }
+ else
+ {
+ LYERRLOG("unknow call state");
+ continue;
+ }
+ if (s_voice_cb != NULL)
+ {
+ s_voice_cb(handle,addr,voice_state,context);
+ }
+ }
+ return NULL;
+}
+
+int qser_voice_call_client_init(voice_client_handle_type *ph_voice)
+{
+ if(NULL == ph_voice)
+ {
+ LYERRLOG("input error");
+ return RESULT_ERROR;
+ }
+ *ph_voice = (voice_client_handle_type)getpid();
+ return lynq_init_call(*ph_voice);
+}
+
+int qser_voice_call_client_deinit(voice_client_handle_type h_voice)
+{
+ if (NULL == h_voice)
+ {
+ LYERRLOG("init first");
+ return RESULT_ERROR;
+ }
+ return lynq_deinit_call();
+}
+
+int qser_voice_call_addstatehandler(voice_client_handle_type h_voice,
+ QSER_VoiceCall_StateHandlerFunc_t handlerPtr,
+ void* contextPtr)
+{
+ if(h_voice == 0 || handlerPtr== NULL)
+ {
+ LYERRLOG("input error");
+ return RESULT_ERROR;
+ }
+ if (s_voice_cb != NULL)
+ {
+ LYERRLOG("The existing state handle does not need to be added");
+ return RESULT_ERROR;
+ }
+ s_voice_cb = handlerPtr;
+ s_voice_thread_status = 1;
+ int rt = pthread_create(&s_lynq_voice_tid, NULL, voice_thread_recv, contextPtr);
+ if(rt < 0)
+ {
+ LYDBGLOG("qser_voice_call_addstatehandler pthread_create error!!!\n");
+ s_voice_cb = NULL;
+ s_voice_thread_status = 0;
+ s_lynq_voice_tid = -1;
+ return RESULT_ERROR;
+ }
+ return RESULT_OK;
+}
+
+int qser_voice_call_removestatehandle(voice_client_handle_type h_voice)
+{
+ int ret;
+ if (s_lynq_voice_tid != -1)
+ {
+ ret = pthread_cancel(s_lynq_voice_tid);
+ LYDBGLOG("pthread cancel ret = %d",ret);
+ }
+ if (s_lynq_voice_tid != -1)
+ {
+ ret = pthread_join(s_lynq_voice_tid,NULL);
+ LYDBGLOG("pthread cancel ret = %d",ret);
+ s_lynq_voice_tid = -1;
+ }
+ s_voice_thread_status = 0;
+ s_voice_cb == NULL;
+ return RESULT_OK;
+}
+
+int qser_voice_call_start(voice_client_handle_type h_voice,
+ E_QSER_VCALL_ID_T simId,
+ char* phone_number,
+ int *call_id)
+{
+ if(h_voice == 0 || NULL == phone_number || NULL == call_id)
+ {
+ LYERRLOG("qser_voice_call_start input error");
+ return RESULT_ERROR;
+ }
+ return lynq_call(call_id,phone_number);
+}
+
+int qser_voice_call_end(voice_client_handle_type h_voice,int call_id)
+{
+ if(h_voice == 0 || call_id <= 0)
+ {
+ LYERRLOG("qser_voice_call_end input error");
+ return RESULT_ERROR;
+ }
+ return lynq_call_hungup(&call_id);
+}
+
+int qser_voice_call_answer(voice_client_handle_type h_voice,int call_id)
+{
+ if(h_voice == 0 || call_id <= 0)
+ {
+ LYERRLOG("qser_voice_call_answer input error");
+ return RESULT_ERROR;
+ }
+ return lynq_call_answer();
+}
+
+int qser_voice_call_getwaitingsatus(int h_voice,qser_voice_call_waiting_service_t *pe_service)
+{
+ LYINFLOG("To be completed");
+ return RESULT_OK;
+}
+
+int qser_voice_call_setwaiting(int h_voice, qser_voice_call_waiting_service_t e_service)
+{
+ LYINFLOG("To be completed");
+ return RESULT_OK;
+}
+
+int qser_voice_call_hold(voice_client_handle_type h_voice)
+{
+ if (h_voice == 0)
+ {
+ LYERRLOG("init first");
+ return RESULT_ERROR;
+ }
+ return lynq_switch_waiting_or_holding_and_active();
+}
+
+int qser_voice_call_unhold(voice_client_handle_type h_voice)
+{
+ if (h_voice == 0)
+ {
+ LYERRLOG("init first");
+ return RESULT_ERROR;
+ }
+ return lynq_switch_waiting_or_holding_and_active();
+}
\ No newline at end of file
diff --git a/src/lynq/lib/liblynq-qser-voice/makefile b/src/lynq/lib/liblynq-qser-voice/makefile
new file mode 100644
index 0000000..b5b7d36
--- /dev/null
+++ b/src/lynq/lib/liblynq-qser-voice/makefile
@@ -0,0 +1,66 @@
+SHELL = /bin/sh
+RM = rm -f
+
+LOCAL_CFLAGS := -Wall \
+ -std=gnu++14 \
+ -g -Os \
+ -flto \
+ -fPIC \
+ -fpermissive \
+
+
+
+$(warning ################# lynq qser sms demo ROOT: $(ROOT),includedir:$(includedir))
+LOCAL_PATH = .
+
+LOCAL_C_INCLUDES = \
+ -I. \
+ -I$(LOCAL_PATH)/include/ \
+ -I$(LOCAL_PATH)/ \
+ -I$(ROOT)$(includedir)/liblog \
+ -I$(ROOT)$(includedir)/libcall \
+
+
+LOCAL_LIBS := \
+ -L. \
+ -lstdc++ \
+ -lcutils \
+ -lutils \
+ -lbinder \
+ -lpthread \
+ -llynq-log \
+ -llynq-call \
+
+
+SOURCES = $(wildcard *.cpp)
+
+EXECUTABLE = liblynq-qser-voice.so
+
+OBJECTS=$(SOURCES:.cpp=.o)
+
+
+.PHONY: build clean install pack_rootfs
+all: build
+$(EXECUTABLE): $(OBJECTS)
+ $(CXX) -shared -Wl,--no-undefined $(OBJECTS) $(LOCAL_LIBS) $(LOCAL_CFLAGS) $(LOCAL_C_INCLUDES) -o $@
+
+%.o : %.cpp
+ $(CXX) $(LOCAL_C_INCLUDES) $(LOCAL_CFLAGS) $(LOCAL_LIBS) -o $@ -c $<
+
+build: $(EXECUTABLE)
+ $(warning ########## build $(EXECUTABLE) ##########)
+install:
+ mkdir -p $(ROOT)$(base_libdir)/
+ install $(EXECUTABLE) $(ROOT)$(base_libdir)/
+ mkdir -p $(ROOT)$(includedir)/$(NAME)/sdk
+pack_rootfs:
+ mkdir -p $(PACK_INITRAMFS_TO)$(base_libdir)/
+ cp -af $(EXECUTABLE) $(PACK_INITRAMFS_TO)$(base_libdir)/
+ $(CROSS)strip $(PACK_INITRAMFS_TO)$(base_libdir)/$(EXECUTABLE)
+ mkdir -p $(PACK_TO)$(base_libdir)/
+ cp -af $(EXECUTABLE) $(PACK_TO)$(base_libdir)/
+ $(CROSS)strip $(PACK_TO)$(base_libdir)/$(EXECUTABLE)
+.PHONY: clean
+clean:
+ $(RM) $(OBJECTS) $(EXECUTABLE)
+ -find . -name "*.o" -delete
diff --git a/src/lynq/lib/liblynq-rtk/include/liblynq-rtk.h b/src/lynq/lib/liblynq-rtk/include/liblynq-rtk.h
new file mode 100644
index 0000000..8144df4
--- /dev/null
+++ b/src/lynq/lib/liblynq-rtk/include/liblynq-rtk.h
@@ -0,0 +1,108 @@
+#ifndef LIBLYNQ_RTK_H
+#define LIBLYNQ_RTK_H
+
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef enum
+{
+ lynq_rtk_log_info,
+ lynq_rtk_log_warn,
+ lynq_rtk_log_err
+} lynq_rtk_log_level;
+
+typedef struct
+{
+ unsigned char bPosFlag;
+ unsigned char bTrackNo;
+ unsigned char bSatNo;
+
+ unsigned char bRtkFlag;
+ double fDiffAge;
+ unsigned int uGpsWeek;
+ double fWeekSeconds;
+ double fUTC;
+ double fLeapSeconds;
+
+ double fPosX;
+ double fPosY;
+ double fPosZ;
+ float fPosXDelta;
+ float fPosYDelta;
+ float fPosZDelta;
+
+ double fLat;
+ double fLong;
+ double fAlt;
+ double fHeightOfGeoid;
+ float fLatStd;
+ float fLongStd;
+ float fAltStd;
+
+ double fVelX;
+ double fVelY;
+ double fVelZ;
+ float fVelXDelta;
+ float fVelYDelta;
+ float fVelZDelta;
+
+ float fVelN;
+ float fVelE;
+ float fVelU;
+ float fVelNDelta;
+ float fVelEDelta;
+ float fVelUDelta;
+
+ float fHorSpeed;
+ float fHorSpeedDelta;
+
+ float fTrueHeading;
+ float fTrueHeadingDelta;
+
+ float fHeading2Ant;
+ float fHeading2AntDelta;
+
+ float fRangeRms;
+ float fPhaseRms;
+
+ float fHDOP;
+ float fPDOP;
+ float fVDOP;
+ float fCN0;
+
+ double fClkTime;
+
+ int iBaseStatus;
+ int iRtkStatus;
+}lynq_rtk_result_info;
+
+typedef void (*lynq_rtk_out_debuginfo)(const char * pBuff, const int length, const int ilevel);
+typedef void (*lynq_rtk_out_postdata)(const unsigned char * pBuff, const int length);
+typedef void (*lynq_rtk_out_basesdkstatus)(const int status);
+typedef void (*lynq_rtk_out_status)(const int status);
+
+typedef void (*lynq_rtk_out_result)(const lynq_rtk_result_info * prtk);
+typedef void (*lynq_rtk_out_result_nmea)(const char * strnmea, const int length);
+
+extern void lynq_rtk_lib_version(char * version);
+extern void lynq_rtk_init();
+extern void lynq_rtk_set_userinfo(const char *username,const char *pwd);
+extern void lynq_rtk_set_deviceID(const char* device_id);
+extern void lynq_rtk_result_cb_reg(lynq_rtk_out_result result_cb);
+extern void lynq_rtk_result_nmea_cb_reg(lynq_rtk_out_result_nmea nmea_cb);
+extern void lynq_rtk_config_log_reg(lynq_rtk_out_debuginfo pdebuginfo);
+extern void lynq_rtk_config_post_reg(lynq_rtk_out_postdata ppostdata);
+extern void lynq_rtk_base_sdkstatus(lynq_rtk_out_basesdkstatus psdkstatus);
+extern void lynq_rtk_base_status(lynq_rtk_out_status pstatus);
+extern void lynq_rtk_rove_addnmea(const unsigned char * pBuff, const int iBuffLen);
+extern void lynq_rtk_rove_addrawmess(GnssData_ext* data);
+extern void lynq_rtk_setserverIP(const char* server_ip);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
\ No newline at end of file
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/files/libRTKFUN.so b/src/lynq/lib/liblynq-rtk/libRTKFUN.so
similarity index 100%
rename from meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/files/libRTKFUN.so
rename to src/lynq/lib/liblynq-rtk/libRTKFUN.so
Binary files differ
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/files/libcmcc_sdk.so b/src/lynq/lib/liblynq-rtk/libcmcc_sdk.so
similarity index 100%
rename from meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/files/libcmcc_sdk.so
rename to src/lynq/lib/liblynq-rtk/libcmcc_sdk.so
Binary files differ
diff --git a/src/lynq/lib/liblynq-rtk/liblynq-rtk.c b/src/lynq/lib/liblynq-rtk/liblynq-rtk.c
new file mode 100644
index 0000000..460a1bb
--- /dev/null
+++ b/src/lynq/lib/liblynq-rtk/liblynq-rtk.c
@@ -0,0 +1,192 @@
+#include <stdio.h>
+#include <string.h>
+#include <liblog/lynq_deflog.h>
+#include "rtk_fun.h"
+#include "liblynq-rtk.h"
+
+
+lynq_rtk_out_result lib_result_cb = NULL;
+lynq_rtk_out_result_nmea lib_nmea_cb = NULL;
+lynq_rtk_out_debuginfo lib_debuginfo = NULL;
+lynq_rtk_out_postdata lib_postdata = NULL;
+lynq_rtk_out_basesdkstatus lib_basesdkstatus = NULL;
+lynq_rtk_out_status lib_status = NULL;
+
+
+void librtk_out_result(const rtk_result_info * prtk)
+{
+ /*change rtk_result_info into lynq_result_info*/
+ if (NULL == prtk)
+ {
+ LYERRLOG("result info is NULL return : error");
+ return ;
+ }
+ lynq_rtk_result_info result_info;
+ memset(&result_info,0,sizeof(result_info));
+ memcpy(&result_info,prtk,sizeof(result_info));
+ lib_result_cb(&result_info);
+ return ;
+}
+
+void librtk_out_result_nmea(const char * strnmea, const int length)
+{
+ lib_nmea_cb(strnmea,length);
+ return ;
+}
+
+void librtk_out_debuginfo(const char * pBuff, const int length, const int ilevel)
+{
+ lib_debuginfo(pBuff,length,ilevel);
+ return ;
+}
+
+void librtk_out_postdata(const unsigned char * pBuff, const int length)
+{
+ lib_postdata(pBuff,length);
+ return ;
+}
+
+void librtk_out_basesdkstatus(const int status)
+{
+ lib_basesdkstatus(status);
+ return ;
+}
+
+void librtk_out_status(const int status)
+{
+ lib_status(status);
+ return;
+}
+
+
+
+void lynq_rtk_lib_version(char * version)
+{
+ if (NULL == version)
+ {
+ LYERRLOG("incoming version is NULL, error");
+ return ;
+ }
+ rtk_version(version);
+ return ;
+}
+
+void lynq_rtk_init()
+{
+ LYINFLOG("lib rtk init");
+ rtk_init();
+ return ;
+}
+
+void lynq_rtk_set_userinfo(const char *username,const char *pwd)
+{
+ if (NULL == username || NULL == pwd)
+ {
+ LYERRLOG("invalid username or pwd incoming ,error");
+ return ;
+ }
+ rtk_set_UserInfo(username,pwd);
+ return ;
+}
+
+void lynq_rtk_set_deviceID(const char* device_id)
+{
+ if (NULL == device_id)
+ {
+ LYERRLOG("invalid device_id incoming ,error");
+ return ;
+ }
+ rtk_set_DeviceID(device_id);
+ return ;
+}
+
+void lynq_rtk_result_cb_reg(lynq_rtk_out_result result_cb)
+{
+ if (NULL == result_cb)
+ {
+ LYERRLOG("invalid lynq_rtk_out_result incoming ,error");
+ return ;
+ }
+ lib_result_cb = result_cb;
+ rtk_result_cb(librtk_out_result);
+ return ;
+}
+
+void lynq_rtk_result_nmea_cb_reg(lynq_rtk_out_result_nmea nmea_cb)
+{
+ if (NULL == nmea_cb)
+ {
+ LYERRLOG("invalid lynq_rtk_out_result_nmea incoming ,error");
+ return ;
+ }
+ lib_nmea_cb = nmea_cb;
+ rtk_result_nmea_cb(librtk_out_result_nmea);
+ return ;
+}
+
+void lynq_rtk_config_log_reg(lynq_rtk_out_debuginfo pdebuginfo)
+{
+ if (NULL == pdebuginfo)
+ {
+ LYERRLOG("invalid lynq_rtk_out_debuginfo incoming ,error");
+ return ;
+ }
+ lib_debuginfo = pdebuginfo;
+ rtk_config_log(librtk_out_debuginfo);
+ return ;
+}
+
+void lynq_rtk_config_post_reg(lynq_rtk_out_postdata ppostdata)
+{
+ if (NULL == ppostdata)
+ {
+ LYERRLOG("invalid lynq_rtk_out_postdata incoming ,error");
+ return ;
+ }
+ lib_debuginfo = ppostdata;
+ rtk_config_post(librtk_out_debuginfo);
+ return ;
+}
+
+void lynq_rtk_base_sdkstatus(lynq_rtk_out_basesdkstatus psdkstatus)
+{
+ if (NULL == psdkstatus)
+ {
+ LYERRLOG("invalid lynq_rtk_out_basesdkstatus incoming ,error");
+ return ;
+ }
+ lib_basesdkstatus = psdkstatus;
+ rtk_base_sdkstatus(librtk_out_basesdkstatus);
+ return ;
+}
+
+void lynq_rtk_base_status(lynq_rtk_out_status pstatus)
+{
+ if (NULL == pstatus)
+ {
+ LYERRLOG("invalid lynq_rtk_out_status incoming ,error");
+ return ;
+ }
+ lib_status = pstatus;
+ rtk_status_update(librtk_out_status);
+ return ;
+}
+
+void lynq_rtk_rove_addnmea(const unsigned char * pBuff, const int iBuffLen)
+{
+ rtk_rove_addnmea(pBuff,iBuffLen);
+ return ;
+}
+
+void lynq_rtk_rove_addrawmess(GnssData_ext* data)
+{
+ rtk_rove_addrawmess(data);
+ return ;
+}
+
+void lynq_rtk_setserverIP(const char* server_ip)
+{
+ rtk_setServerIP(server_ip);
+ return ;
+}
+
diff --git a/src/lynq/lib/liblynq-rtk/makefile b/src/lynq/lib/liblynq-rtk/makefile
new file mode 100644
index 0000000..6469254
--- /dev/null
+++ b/src/lynq/lib/liblynq-rtk/makefile
@@ -0,0 +1,56 @@
+SHELL = /bin/bash
+RM =rm -f
+
+
+LOCAL_CFLAGS := \
+ -Wall \
+ -g \
+ -Wall \
+ -fPIC \
+ -shared \
+ -D__COMPILE_OPTION__ \
+ -D__LINUX_OS__ \
+
+LOCAL_PATH = .
+
+LOCAL_C_INCLUDES = \
+ -I. \
+ -I$(LOCAL_PATH)/include/ \
+ -I$(LOCAL_PATH)/ \
+ -I$(ROOT)$(includedir)/gps_hal \
+ -I$(ROOT)$(includedir)/gps_hal/inc \
+ -I$(ROOT)$(includedir)/gps_hal/hardware \
+ -I$(ROOT)$(includedir)/liblog \
+
+LOCAL_LIBS := \
+ -L . \
+ -ldl \
+ -lcmcc_sdk\
+ -lRTKFUN \
+ -llynq-log \
+ -lpthread \
+
+
+SOURCES = $(wildcard *.c wildcard src/*.c)
+EXECUTABLE = liblynq-rtk.so
+
+COBJS=$(SOURCES:.c=.o)
+all : $(EXECUTABLE)
+$(EXECUTABLE): $(COBJS)
+ $(CXX) -shared -Wl,--no-undefined $(COBJS) $(LOCAL_LIBS) $(LOCAL_CFLAGS) $(LOCAL_C_INCLUDES) -o $@
+
+%.o: %.c
+ $(warning ----->build $<)
+ $(CC) $(LOCAL_C_INCLUDES) $(LOCAL_CFLAGS) $(LOCAL_LIBS) -o $@ -c $<
+%.o : %.cpp
+ $(CXX) $(LOCAL_C_INCLUDES) $(LOCAL_CFLAGS) $(LOCAL_LIBS) -o $@ -c $<
+
+build: $(EXECUTABLE)
+ $(warning ########## build $(EXECUTABLE) ##########)
+.PHONY: install clean
+install:
+ mkdir -p $(ROOT)$(base_libdir)/
+ install $(EXECUTABLE) $(ROOT)$(base_libdir)/
+.PHONY: clean
+clean:
+ $(RM) $(COBJS) $(EXECUTABLE)
diff --git a/meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/files/rtk_fun.h b/src/lynq/lib/liblynq-rtk/rtk_fun.h
similarity index 100%
rename from meta/meta-mediatek-mt2735/recipes-lynq/liblynq-rtk/files/rtk_fun.h
rename to src/lynq/lib/liblynq-rtk/rtk_fun.h
diff --git a/src/lynq/lib/liblynq-rtp/Makefile b/src/lynq/lib/liblynq-rtp/Makefile
index 4e3f785..8e81d11 100755
--- a/src/lynq/lib/liblynq-rtp/Makefile
+++ b/src/lynq/lib/liblynq-rtp/Makefile
@@ -16,6 +16,10 @@
endif
+ifeq ($(strip $(MOBILETEK_RTP_CFG)), ZK)
+ LOCAL_CFLAGS += -DZK_RTP_CFG
+endif
+
CPPFLAGS=\
-std=c++11 \
@@ -64,4 +68,4 @@
clean:
rm -f $(EXECUTABLE) rm -rf *.o
- find ./ -name *.o | xargs rm -rf
\ No newline at end of file
+ find ./ -name *.o | xargs rm -rf
diff --git a/src/lynq/lib/liblynq-rtp/src/lynq_rtp.c b/src/lynq/lib/liblynq-rtp/src/lynq_rtp.c
index af668ec..0e165f1 100755
--- a/src/lynq/lib/liblynq-rtp/src/lynq_rtp.c
+++ b/src/lynq/lib/liblynq-rtp/src/lynq_rtp.c
@@ -136,6 +136,138 @@
return 0;
}
+#ifdef ZK_RTP_CFG
+/*dongyu@2023.5.31 Add ZK set codec tlv320aic3x API register start*/
+void set_codec(int open)
+{
+ RLOGD("set_codec %d",open);
+ if(open==0)
+ {
+ system("echo out 201 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo out 113 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo out 29 0 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ }
+ else
+ {
+ system("echo out 201 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ usleep(10);//just open need usleep 10us
+ system("echo out 113 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ usleep(10);//just open need usleep 10us
+ system("echo out 29 1 >/sys/devices/platform/10005000.pinctrl/mt_gpio");
+ system("echo 0x00 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x01 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x02 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x03 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x04 0x04 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x05 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x06 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x07 0xa0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x08 0x20 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x09 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0b 0x32 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x0f 0x10 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x10 0x20 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x11 0xf8 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x12 0xff > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x13 0x7a > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x14 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x15 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x16 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x17 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x18 0x78 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x19 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1b 0xfe > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1e 0xfe > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x1f 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x20 0x18 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x21 0x18 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x22 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x23 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x24 0xc0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x25 0xc0 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x26 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x27 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x28 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x29 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2b 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2c 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2e 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x2f 0x85 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x30 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x31 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x32 0x85 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x33 0x9f > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x34 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x35 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x36 0x82 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x37 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x38 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x39 0x82 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3a 0x9f > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3e 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x3f 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x40 0xaf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x41 0x0d > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x42 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x43 0x80 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x44 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x45 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x46 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x47 0xaf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x48 0x0d > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x49 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4c 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4e 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x4f 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x50 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x51 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x52 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x53 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x54 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x55 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x56 0x9b > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x57 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x58 0x02 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x59 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5c 0xbf > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5d 0x08 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5e 0xde > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x5f 0x0c > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x60 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x61 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x62 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x63 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x64 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x65 0x01 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x66 0xa2 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x67 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x68 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x69 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6a 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6b 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6c 0x40 > /sys/kernel/debug/regmap/0-0018/registers");
+ system("echo 0x6d 0x00 > /sys/kernel/debug/regmap/0-0018/registers");
+ }
+}
+/*dongyu@2023.5.31 Add ZK set codec tlv320aic3x API register end*/
+#endif
+
#ifdef GSW_RTP_CFG
/*hqing add for Geely demand on 11/17/2022, after playing audio, codec should sleep*/
void set_codec(int open)
@@ -271,8 +403,8 @@
ret = pthread_setcancelstate(PTHREAD_CANCEL_ENABLE,NULL);
if (g_lynq_rtp_mode == 0)
{
-
-#ifdef GSW_RTP_CFG
+
+#if (defined GSW_RTP_CFG) || (defined ZK_RTP_CFG)
set_codec(1);
#endif
@@ -380,4 +512,4 @@
strcpy(file_address,lynq_rtp_server_info.address);
}
return 0;
-}
\ No newline at end of file
+}
diff --git a/src/lynq/lib/liblynq-sms/lynq_module_common.h b/src/lynq/lib/liblynq-sms/lynq_module_common.h
deleted file mode 100755
index 590971a..0000000
--- a/src/lynq/lib/liblynq-sms/lynq_module_common.h
+++ /dev/null
@@ -1,75 +0,0 @@
-#ifndef LYNQ_MODULE_COMMON_H
-#define LYNQ_MODULE_COMMON_H
-
-#define RESULT_OK (0)
-#define RESULT_ERROR (-1)
-
-/*the same with lynq_interface.h begin*/
-#define LYNQ_REQUEST_VENDOR_BASE 8000
-#define LYNQ_URC_VENDOR_BASE 9000
-#define LYNQ_AT_SNED (LYNQ_REQUEST_VENDOR_BASE +1)
-#define LYNQ_URC_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+1)
-#define LYNQ_URC_DATA_STATUS_IND (LYNQ_URC_VENDOR_BASE+2)
-#define LYNQ_URC_DATA_CALL_STATUS_IND (LYNQ_URC_VENDOR_BASE+3)
-#define LYNQ_AUTO_ANSWER_CALL (LYNQ_REQUEST_VENDOR_BASE +2)
-#define LYNQ_REQUEST_SET_DTMF_VOLUME (LYNQ_REQUEST_VENDOR_BASE +3)
-#define LYNQ_URC_MODIFY_APNDB (LYNQ_URC_VENDOR_BASE+4)
-#define LYNQ_URC_RESET_APNDB (LYNQ_URC_VENDOR_BASE+5)
-
-
-#define LYNQ_REQUEST_WRITE_SMS_TO_MEMORY (LYNQ_REQUEST_VENDOR_BASE +4)
-#define LYNQ_REQUEST_READ_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 5)
-#define LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 6)
-#define LYNQ_REQUEST_LIST_SMS_FROM_MEMORY (LYNQ_REQUEST_VENDOR_BASE + 7)
-#define LYNQ_REQUEST_SET_DEFAULT_SIM_ALL (LYNQ_REQUEST_VENDOR_BASE + 8)
-
-#define LYNQ_REQUEST_SET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +9)
-#define LYNQ_REQUEST_GET_SPEECH_VOLUME (LYNQ_REQUEST_VENDOR_BASE +10)
-#define LYNQ_REQUEST_RECORD (LYNQ_REQUEST_VENDOR_BASE +11)
-#define LYNQ_REQUEST_OOS_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +12)
-#define LYNQ_REQUEST_OOS_DEEP_SLEEP_RECOVER_TIMER_INTERVAL (LYNQ_REQUEST_VENDOR_BASE +13)
-#define LYNQ_REQUEST_CHANGE_SCREEN_STATE (LYNQ_REQUEST_VENDOR_BASE + 14)/*jb.qi add for two sim suspend 2022/9/19*/
-#define LYNQ_REQUEST_CHANGE_RADIO (LYNQ_REQUEST_VENDOR_BASE + 15)
-/*the same with lynq_interface.h end*/
-
-typedef enum{
- /*base abnormal*/
- LYNQ_E_PARAMETER_ANONALY=7000,
- LYNQ_E_SEND_REQUEST_FAIL=7001,
- LYNQ_E_GET_HEAD_ERROR=7002,
- LYNQ_E_INNER_ERROR=7100,
- LYNQ_E_MALLOC_ERROR=7101,
- /**/
- LYNQ_E_CARDSTATE_ERROR=8000,
- /* The voice service state is out of service*/
- LYNQ_E_STATE_OUT_OF_SERVICE=8001,
- /* The voice service state is EMERGENCY_ONLY*/
- LYNQ_E_STATE_EMERGENCY_ONLY=8002,
- /* The radio power is power off*/
- LYNQ_E_STATE_POWER_OFF=8003,
- LYNQ_E_TIME_OUT=8004,
- /*create or open sms DB fail */
- LYNQ_E_SMS_DB_FAIL=8005,
- /*Failed to execute sql statement*/
- LYNQ_E_SMS_SQL_FAIL = 8006,
- LYNQ_E_SMS_NOT_FIND = 8007,
- /* The logic conflict*/
- LYNQ_E_CONFLICT=9000,
- /*Null anomaly*/
- LYNQ_E_NULL_ANONALY=9001,
- /*Invalid id anomaly*/
- LYNQ_E_INVALID_ID_ANONALY=9002,
-#ifdef ECALL_SUPPORT
- LYNQ_E_ECALL_BEING_RUNNING =9003,
- LYNQ_E_ECALL_MSD_LENGTH_ERROR =9004,
- LYNQ_E_ECALL_DAILING_NO_ANSWER =9005,
-#endif
-}LYNQ_E;
-
-#define MODULE_CLOSED (0)
-#define MODULE_SWITCHING (1)
-#define MODULE_RUNNING (2)
-
-extern int g_module_init_flag;
-
-#endif
diff --git a/src/lynq/lib/liblynq-sms/lynq_module_socket.cpp b/src/lynq/lib/liblynq-sms/lynq_module_socket.cpp
deleted file mode 100755
index 8d012da..0000000
--- a/src/lynq/lib/liblynq-sms/lynq_module_socket.cpp
+++ /dev/null
@@ -1,1041 +0,0 @@
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <arpa/inet.h>
-#include <string.h>
-#include <unistd.h>
-#include <binder/Parcel.h>
-#include <log/log.h>
-#include <cutils/jstring.h>
-#include <pthread.h>
-#include <list>
-#include <vendor-ril/telephony/ril.h>
-#include <vendor-ril/telephony/mtk_ril_sp.h>
-#include "lynq_sms.h"
-#include "lynq_module_common.h"
-#include "lynq_module_socket.h"
-#include "liblog/lynq_deflog.h"
-#include "lynq_shm.h"
-
-#define LYNQ_SERVICE_PORT 8088
-#define LYNQ_ADDRESS "127.0.0.1"
-#define LYNQ_URC_SERVICE_PORT 8086
-#define LYNQ_URC_ADDRESS "0.0.0.0"
-#define LYNQ_REQUEST_PARAM_BUF 8192
-#define LYNQ_REC_BUF 8192
-
-#define USER_LOG_TAG "LYNQ_SMS"
-
-typedef struct{
- int uToken;
- int request;
- int paramLen;
- char param[LYNQ_REQUEST_PARAM_BUF];
-}lynq_client_t;
-
-typedef struct{
- int resp_type;
- int token;
- int request;
- int slot_id;
- int error;
-}lynq_resp_t;
-
-typedef struct{
- int resp_type;
- int urcid;
-}lynq_head_t;
-
-lynq_client_t client_t;
-lynq_resp_t response;
-
-int module_len_rc_addr_serv;
-int module_len_urc_addr_serv;
-struct sockaddr_in module_rc_addr_serv;
-struct sockaddr_in module_urc_addr_serv;
-static int module_rc_sock_fd = -1;
-static int module_urc_sock_fd = -1;
-int module_urc_status = 1;
-int module_rc_status = 1;
-pthread_t module_urc_tid = -1;
-pthread_t module_rc_tid = -1;
-static pthread_mutex_t s_urc_mutex = PTHREAD_MUTEX_INITIALIZER;
-
-/*hq add for set waiting time 2022/09/13 begin*/
-static pthread_mutex_t s_sendto_mutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_mutex_t s_RecvMsgBlockMutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_cond_t s_WaitRecvMsgCond = PTHREAD_COND_INITIALIZER;
-#define BLOCK_RECV_MSG_LOCK() pthread_mutex_lock(&s_RecvMsgBlockMutex)
-#define BLOCK_RECV_MSG_UNLOCK() pthread_mutex_unlock(&s_RecvMsgBlockMutex)
-#define BLOCK_WAIT_RECV_MSG_TIME_OUT(a) pthread_cond_timedwait(&s_WaitRecvMsgCond, &s_RecvMsgBlockMutex,(a))
-#define BLOCK_WAKEUP_RECV_MSG() pthread_cond_broadcast(&s_WaitRecvMsgCond)
-static std::list<Parcel*> s_recv_parcel_list;
-const int waitResponse(int token,int time_out);
-/*hq add for set waiting time 2022/09/13 end*/
-
-/*hq add for urc process asynchronous 2022/12/26 begin*/
-static pthread_mutex_t s_ProcessUrcMsgBlockMutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_cond_t s_WaitProcessUrcMsgCond = PTHREAD_COND_INITIALIZER;
-
-#define BLOCK_PROCESS_URC_MSG_INIT() pthread_mutex_init(&s_ProcessUrcMsgBlockMutex,NULL)
-#define BLOCK_PROCESS_URC_MSG_LOCK() pthread_mutex_lock(&s_ProcessUrcMsgBlockMutex)
-#define BLOCK_PROCESS_URC_MSG_UNLOCK() pthread_mutex_unlock(&s_ProcessUrcMsgBlockMutex)
-#define BLOCK_WAIT_PROCESS_URC_MSG() pthread_cond_wait(&s_WaitProcessUrcMsgCond, &s_ProcessUrcMsgBlockMutex)
-#define BLOCK_WAKEUP_PROCESS_URC_MSG() pthread_cond_broadcast(&s_WaitProcessUrcMsgCond)
-static std::list<Parcel*> s_recv_urc_parcel_list;
-void *thread_urc_process(void *p);
-pthread_t module_urc_process_tid = -1;
-int module_urc_process_status = 1;
-/*hq add for urc process asynchronous 2022/12/26 end*/
-
-int g_module_Global_uToken = 0;
-int g_wait_time=5;
-
-/*inner test*/
-static int s_inner_test=0;
-
-/**@brief just for inner test
-* @param test_mode [IN]: test mode
-* 0:success
-* other:failure
-*/
-void lynq_set_test_mode(const int test_mode)
-{
- if(test_mode<0)
- {
- g_wait_time = -test_mode;
- }
- else if(test_mode==9999)
- {
- LYERRLOG("%s inner test para %d %d",__FUNCTION__,s_inner_test,g_wait_time);
- }
- else
- {
- s_inner_test = test_mode;
- }
-}
-
-void cleanup_RecvMsgBlock_mutex(void *arg)
-{
- BLOCK_RECV_MSG_UNLOCK();
-}
-
-/**@brief wait response with expected token and write msg to parcel in some time
-* @param p [IN]: pointer the parcel
-* @param token [IN]: the expected token for the response msg
-* @param time_out [IN]: timeout.
-* @return
-* 0:success
-* other:failure
-*/
-const int waitResponse(Parcel*& p, int token,int time_out)
-{
- int waitToken = token;
- int wakeup_token=-1;
- int resp_type;
- struct timeval now;
- struct timespec timeout;
- int ret;
- std::list<Parcel*>::iterator iter;
- int cnt=0;
-
- gettimeofday(&now,NULL);
- timeout.tv_sec = now.tv_sec+time_out; //timeout is 1min
- timeout.tv_nsec = now.tv_usec*1000;
-
- LYINFLOG("%s wait token is %d, wait time is %d",__FUNCTION__,waitToken,time_out);
-
- BLOCK_RECV_MSG_LOCK();
- pthread_cleanup_push(cleanup_RecvMsgBlock_mutex, NULL); // thread cleanup handler
- while(module_rc_status){
- cnt++;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- (*iter)->setDataPosition(0);
- (*iter)->readInt32(&resp_type);
- (*iter)->readInt32(&wakeup_token);
- if(wakeup_token==waitToken)
- {
- LYINFLOG("%s get waitToken",__FUNCTION__);
- p=(*iter);
- p->setDataPosition(0);
- s_recv_parcel_list.erase(iter);
- goto waitResponse_end;
- }
- }
- LYINFLOG("%s no wait Token in msg list, list size is %d",__FUNCTION__,s_recv_parcel_list.size());
- ret=BLOCK_WAIT_RECV_MSG_TIME_OUT(&timeout);
- if(ret!=0)
- {
- LYERRLOG("%s no expected token %d after %d second",__FUNCTION__,waitToken,time_out);
- break;
- }
- }
-waitResponse_end:
- LYINFLOG("%s wait token is %d wakeup_token is %d, cnt is %d",__FUNCTION__,waitToken,wakeup_token,cnt);
- pthread_cleanup_pop(0);
- BLOCK_RECV_MSG_UNLOCK();
- return wakeup_token==waitToken ? 0:LYNQ_E_TIME_OUT;
-}
-
-/**@brief print solicied response msg's head information
-* @param head [IN]: head information
-* @return none
-*/
-void PrintHeader(lynq_resp_t& head)
-{
- LYINFLOG("resp_type=%d,token=%d,request=%d,slot_id=%d,error_code=%d",head.resp_type,head.token,head.request,head.slot_id,head.error);
-}
-
-/**@brief get solicied response msg's head
-* @param head [OUT]: head information
-* @return
-* 0:success
-* other:failure
-*/
-int GetHeader(Parcel* &p, lynq_resp_t& head)
-{
- LYINFLOG("get header");
- if(p->dataAvail() > 0)
- {
- p->readInt32(&(head.resp_type));
- p->readInt32(&(head.token));
- p->readInt32(&(head.request));
- p->readInt32(&(head.slot_id));
- p->readInt32(&(head.error));
- PrintHeader(head);
- return RESULT_OK;
- }
- else
- {
- return RESULT_ERROR;
- }
-}
-
-/**@brief send msg to service and get response from service
-* @param request_id [IN]: request id
-* @param time_out [IN]: wait time uplimit
-* @param p [IN]: point to response msg's parcel
-* @param argc [IN]: how many parameters in parameter string
-* @param format [IN]: parameter string's format
-* @param ... [IN]: the specific parameter
-* @return
-* 0:success
-* other:failure
-*/
-int lynq_send_common_request(Parcel*& p, int time_out, int request_id, int argc, const char* format,...)
-{
- lynq_client_t client;
- int ret;
- int send_num;
-
- client.uToken = g_module_Global_uToken;
- g_module_Global_uToken=(g_module_Global_uToken+1)%10000;/*0-10000*/
- client.request = request_id;
- client.paramLen = argc;
- bzero(client.param,LYNQ_REQUEST_PARAM_BUF);
- if(argc!=0)
- {
- va_list args;
- va_start(args, format);
- vsnprintf(client.param, LYNQ_REQUEST_PARAM_BUF, format, args);
- va_end(args);
- }
- LYINFLOG("uToken=%d,request=%d,paralen=%d,param=%s",client.uToken,client.request,client.paramLen,client.param);
- pthread_mutex_lock(&s_sendto_mutex);
- if(s_inner_test==1)
- {
- send_num = 1;
- }
- else
- {
- send_num = sendto(module_rc_sock_fd,&client,sizeof(client),0,(struct sockaddr *)&module_rc_addr_serv,module_len_rc_addr_serv);
- }
- if(s_inner_test>=1000)
- {
- time_out = s_inner_test-1000;
- }
- pthread_mutex_unlock(&s_sendto_mutex);
-
- if(send_num <= 0)
- {
- LYERRLOG("send request fail, send num is %d", send_num);
- return LYNQ_E_SEND_REQUEST_FAIL;
- }
- ret = waitResponse(p, client.uToken,time_out);
-
- if(ret==0)
- {
- lynq_resp_t head;
- ret=GetHeader(p,head);
- if(ret!=0)
- {
- LYERRLOG("%s %d get head error %d",__FUNCTION__,client.uToken,ret);
- delete p;
- return LYNQ_E_GET_HEAD_ERROR;
- }
- if(head.error!=0)
- {
- LYERRLOG("%s %d mdm return head error %d",__FUNCTION__,client.uToken,head.error);
- delete p;
- return head.error;
- }
- LYERRLOG("%s %d suc",__FUNCTION__,client.uToken);
- return RESULT_OK;
- }
-
- LYERRLOG("%s %d fail, ret is %d",__FUNCTION__,client.uToken,ret);
-
- return ret;
-}
-
-/*hq add for urc broadcase optimisson 2023/01/03 begin*/
-#define SHM_BUFFER_INDEX_OFFSET 1
-#define SHM_BUFFER_SIZE_OFFSET 16
-#define SHM_BUFFER_INDEX_MASK 0x0000007F
-#define SHM_BUFFER_SIZE_MASK 0x0000FFFF
-
-bool urc_data_is_in_shm_data(int responseType,int& level, int& index, int& size)
-{
- int shm_index=((responseType>>SHM_BUFFER_INDEX_OFFSET)&SHM_BUFFER_INDEX_MASK);
- if (shm_index>0)
- {
- index=shm_index-1;
- size=((responseType>>SHM_BUFFER_SIZE_OFFSET)&SHM_BUFFER_SIZE_MASK);
- if(size>=sizeof(int32_t)*3 && get_shem_buffer_level(size,&level))
- {
- LYINFLOG("urc_data_is_in_shm_data level is %d, index is %d size is %d",level,index,size);
- return true;
- }
- }
- LYINFLOG("urc_data_is_in_shm_data return false, responseType is %d",responseType);
- return false;
-}
-/*hq add for urc broadcase optimisson 2023/01/03 end*/
-
-void *thread_urc_recv(void *p)
-{
- Parcel *urc_p =NULL;
- char urc_data[LYNQ_REC_BUF];
- int res = 0;
- lynq_head_t* phead;
- int level,index,size;
- LYINFLOG("urc recv thread is running");
- while(module_urc_status)
- {
- bzero(urc_data,LYNQ_REC_BUF);
- res = recvfrom(module_urc_sock_fd,urc_data,sizeof(urc_data),0,(struct sockaddr *)&module_urc_addr_serv,(socklen_t*)&module_len_urc_addr_serv);
- if(res<sizeof(int32_t)*2)
- {
- LYERRLOG("thread_urc_recv step2 fail: res is %d",res);
- continue;
- }
- LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __FUNCTION__, __LINE__);
- phead=(lynq_head_t*) urc_data;
- if(is_support_urc(phead->urcid)==false)
- {
- continue;
- }
- urc_p = new Parcel();
- if(urc_p == NULL)
- {
- LYERRLOG("new parcel failure!!!");
- continue;
- }
- LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __FUNCTION__, __LINE__);
-
- if(urc_data_is_in_shm_data(phead->resp_type,level,index,size))
- {
- LYINFLOG("__FUNCTION__ %s __LINE__ %d,use share memory\n", __FUNCTION__, __LINE__);
- urc_p->setData((uint8_t *)get_shem_buffer(level,index),size); // p.setData((uint8_t *) buffer, buflen);
- }
- else if(res>=sizeof(int32_t)*3)
- {
- urc_p->setData((uint8_t *)urc_data,res); // p.setData((uint8_t *) buffer, buflen);
- }
- else
- {
- LYERRLOG("res %d error!!!", res);
- delete urc_p;
- urc_p = NULL;
- continue;
- }
- urc_p->setDataPosition(0);
- if(urc_p->dataAvail()>0)
- {
- BLOCK_PROCESS_URC_MSG_LOCK();
- s_recv_urc_parcel_list.push_back(urc_p);
- BLOCK_WAKEUP_PROCESS_URC_MSG();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __FUNCTION__, __LINE__);
- }
- else
- {
- delete urc_p;
- urc_p = NULL;
- }
- LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __FUNCTION__, __LINE__);
- }
- LYINFLOG("urc recv thread ended");
- return NULL;
-}
-
-void cleanup_urc_process_mutex(void *arg)
-{
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-}
-
-void *thread_urc_process(void *p)
-{
- Parcel *urc_p =NULL;
- std::list<Parcel*>::iterator iter;
-
- LYINFLOG("urc process thread is running");
- pthread_cleanup_push(cleanup_urc_process_mutex, NULL); // thread cleanup handler
- while(module_urc_process_status)
- {
- BLOCK_PROCESS_URC_MSG_LOCK();
- while(s_recv_urc_parcel_list.empty())
- {
- LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __FUNCTION__, __LINE__);
- BLOCK_WAIT_PROCESS_URC_MSG();
- LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __FUNCTION__, __LINE__);
- }
- iter=s_recv_urc_parcel_list.begin();
- urc_p=(*iter);
- s_recv_urc_parcel_list.erase(iter);
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- urc_p->setDataPosition(0);
- if(urc_p->dataAvail()>0)
- {
- LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __FUNCTION__, __LINE__);
- pthread_mutex_lock(&s_urc_mutex);
- urc_msg_process(urc_p);
- pthread_mutex_unlock(&s_urc_mutex);
- LYDBGLOG("__FUNCTION__ %s __LINE__ %d\n", __FUNCTION__, __LINE__);
- }
- delete urc_p;
- urc_p = NULL;
- }
- pthread_cleanup_pop(0);
- LYINFLOG("urc process thread ended");
- return NULL;
-}
-
-void lynq_close_urc_rev_thread()
-{
- int ret;
-
- BLOCK_PROCESS_URC_MSG_LOCK(); //just cancel urc process tid when recv from
- module_urc_status = 0;
- if(module_urc_tid!=-1)
- {
- ret = pthread_cancel(module_urc_tid);
- LYINFLOG("pthread cancel urc rev ret = %d",ret);
- }
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- if(module_urc_tid != -1)
- {
- ret = pthread_join(module_urc_tid,NULL);
- LYINFLOG("pthread join urc tid ret = %d",ret);
- module_urc_tid =-1;
- }
-}
-
-void lynq_close_urc_process_thread()
-{
- int ret;
- BLOCK_PROCESS_URC_MSG_LOCK(); //just cancel urc process tid when not process urc msg in list
- pthread_mutex_lock(&s_urc_mutex); //just cancel urc process tid when not process urg msg avoid mutual lock for tid may call pthread_cond_wait
- module_urc_process_status = 0;
- if(module_urc_process_tid!=-1)
- {
- ret = pthread_cancel(module_urc_process_tid);
- LYINFLOG("pthread cancel urc process ret = %d",ret);
- }
- pthread_mutex_unlock(&s_urc_mutex);
- BLOCK_PROCESS_URC_MSG_UNLOCK();
- if(module_urc_process_tid != -1)
- {
- ret = pthread_join(module_urc_process_tid,NULL);
- LYINFLOG("pthread join urc process tid ret = %d",ret);
- module_urc_process_tid =-1;
- }
-}
-
-int lynq_setup_urc_socket()
-{
- int on = 1;
- int ret = 0;
- module_len_urc_addr_serv = sizeof(sockaddr_in);
- module_urc_sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if (module_urc_sock_fd <0){
- LYERRLOG("urc socket error");
- return RESULT_ERROR;
- }
- module_urc_addr_serv.sin_family = AF_INET;
- module_urc_addr_serv.sin_port = htons(LYNQ_URC_SERVICE_PORT);
- module_urc_addr_serv.sin_addr.s_addr = inet_addr(LYNQ_URC_ADDRESS);
- /* Set socket to allow reuse of address and port, SO_REUSEADDR value is 2*/
- ret = setsockopt(module_urc_sock_fd,SOL_SOCKET,SO_REUSEADDR,&on,sizeof on);
- if(ret <0)
- {
- LYERRLOG("urc socket set error");
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- return RESULT_ERROR;
- }
- ret = bind(module_urc_sock_fd ,(struct sockaddr*)&module_urc_addr_serv, sizeof(module_urc_addr_serv));
- if(ret <0)
- {
- LYERRLOG("urc socket bind error");
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- return RESULT_ERROR;
- }
- return RESULT_OK;
-}
-
-void lynq_close_urc_socket()
-{
- if (module_urc_sock_fd >= 0)
- {
- close(module_urc_sock_fd);
- module_urc_sock_fd =-1;
- }
-}
-
-int lynq_start_all_urc_socket_thread()
-{
-
- if(ril_init_mem()!=0)
- {
- LYERRLOG("ril_init_mem fail");
- return RESULT_ERROR;
- }
-
- int ret= lynq_setup_urc_socket();
- if(ret!=RESULT_OK)
- {
- LYERRLOG("sms lynq_setup_urc_socket fail");
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- BLOCK_PROCESS_URC_MSG_INIT();
- BLOCK_PROCESS_URC_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_urc_parcel_list.begin();iter!=s_recv_urc_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_urc_parcel_list.clear();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-
- pthread_mutex_init(&s_urc_mutex, NULL);
-
- module_urc_status = 1;
- // pthread_attr_init(&attr);
- // pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ret = pthread_create(&module_urc_tid,/*&attr*/NULL,thread_urc_recv,NULL);
- if(ret <0)
- {
- LYERRLOG("urc recv pthread create error");
- module_urc_status = 0;
- lynq_close_urc_socket();
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- module_urc_process_status = 1;
- ret = pthread_create(&module_urc_process_tid,/*&attr*/NULL,thread_urc_process,NULL);
- if(ret <0)
- {
- LYERRLOG("urc process pthread create error");
- module_urc_process_status = 0;
- lynq_close_urc_socket();
- lynq_close_urc_rev_thread();
- ril_deinit_mem();
- return RESULT_ERROR;
- }
-
- LYINFLOG("urc start success");
-
- return RESULT_OK;
-}
-
-void lynq_close_all_urc_socket_thread()
-{
-
- lynq_close_urc_rev_thread();
- lynq_close_urc_socket();
- lynq_close_urc_process_thread();
-
- BLOCK_PROCESS_URC_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_urc_parcel_list.begin();iter!=s_recv_urc_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_urc_parcel_list.clear();
- BLOCK_PROCESS_URC_MSG_UNLOCK();
-
- ril_deinit_mem();
-}
-
-bool is_support_request(int req_id)
-{
- switch(req_id)
- {
- case RIL_REQUEST_SEND_SMS:
- case RIL_REQUEST_SET_SMSC_ADDRESS:
- case RIL_REQUEST_GET_SMSC_ADDRESS:
- case LYNQ_REQUEST_READ_SMS_FROM_MEMORY:
- case LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY:
- case LYNQ_REQUEST_LIST_SMS_FROM_MEMORY:
- return true;
- default:
- return false;
- }
-}
-
-/**@ a thread just for recv\buffer solicited msg's response and notice waiting thread
-* @param p [IN]: no meaning
-* @return
-* always null
-*/
-void *thread_rc_recv(void *p)
-{
- Parcel* rc_p;
- std::list<Parcel*>::iterator iter;
- int resp_type = -1;
- char rc_data[LYNQ_REC_BUF];
- int rc_len;
- int null_cnt=0;
- int wakeup_token;
- int resquest;
- LYINFLOG("rc thread is running");
- while(module_rc_status)
- {
- bzero(rc_data,LYNQ_REC_BUF);
- while(true)
- {
- rc_len = recvfrom(module_rc_sock_fd,rc_data,sizeof(rc_data),0,(struct sockaddr *)&module_rc_addr_serv,(socklen_t *)&module_len_rc_addr_serv);
- if(rc_len<sizeof(int32_t)*2)
- {
- LYERRLOG("%s recv len %d less %d",__FUNCTION__, rc_len,sizeof(int)*2);
- continue;
- }
- rc_p= new Parcel;
- if(rc_p==NULL)
- {
- null_cnt++;
- LYERRLOG("%s rc_p is NULL, cnt is %d",__FUNCTION__, null_cnt);
- if(null_cnt>20)
- {
- goto rc_recv_end;
- }
- continue;
- }
- else
- {
- null_cnt=0;
- }
-
- rc_p->setData((uint8_t *)rc_data,rc_len); // p.setData((uint8_t *) buffer, buflen);
- rc_p->setDataPosition(0);
- if(rc_p->dataAvail()>0)
- {
- rc_p->readInt32(&resp_type);
- rc_p->readInt32(&wakeup_token);
- rc_p->readInt32(&resquest);
- if(!is_support_request(resquest))
- {
- continue;
- }
- BLOCK_RECV_MSG_LOCK();
- s_recv_parcel_list.push_back(rc_p);
- LYINFLOG("%s wakeup token is %d, list size is %d!",__FUNCTION__,wakeup_token,s_recv_parcel_list.size());
- if(s_recv_parcel_list.size()>20) //max 20
- {
- iter=s_recv_parcel_list.begin();
- (*iter)->setDataPosition(0);
- (*iter)->readInt32(&resp_type);
- (*iter)->readInt32(&wakeup_token);
- delete (*(s_recv_parcel_list.begin()));
- LYERRLOG("%s wakeup token %d is deleted!",__FUNCTION__,wakeup_token);
- s_recv_parcel_list.erase(iter);
- }
- BLOCK_WAKEUP_RECV_MSG();
- BLOCK_RECV_MSG_UNLOCK();
- break;
- }
- else
- {
- LYERRLOG("%s rc_p data Avail %d not greater than 0",__FUNCTION__, rc_p->dataAvail());
- delete rc_p;
- }
- }
- }
-
-rc_recv_end:
- LYINFLOG("rc thread ended");
- return NULL;
-}
-
-int lynq_start_all_rc_socket_thread()
-{
- module_rc_sock_fd = socket(AF_INET, SOCK_DGRAM, 0);
- if(module_rc_sock_fd < 0)
- {
- LYERRLOG("socket open error");
- return -1;
- }
-
- LYINFLOG("module_rc_sock_fd = %d",module_rc_sock_fd);
-
- memset(&module_rc_addr_serv, 0, sizeof(module_rc_addr_serv));
- module_rc_addr_serv.sin_family = AF_INET;
- module_rc_addr_serv.sin_addr.s_addr = inet_addr(LYNQ_ADDRESS);
- module_rc_addr_serv.sin_port = htons(LYNQ_SERVICE_PORT);
- module_len_rc_addr_serv = sizeof(module_rc_addr_serv);
-
- BLOCK_RECV_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_parcel_list.clear();
- BLOCK_RECV_MSG_UNLOCK();
-
-// pthread_attr_t attr;
- int ret;
-
- pthread_mutex_init(&s_sendto_mutex, NULL);
- pthread_mutex_init(&s_RecvMsgBlockMutex, NULL);
-
- module_rc_status = 1;
-// pthread_attr_init(&attr);
-// pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
- ret = pthread_create(&module_rc_tid,/*&attr*/NULL,thread_rc_recv,NULL);
- if(ret <0)
- {
- LYERRLOG("rc pthread create error");
- module_rc_status =0;
- close(module_rc_sock_fd);
- module_rc_sock_fd =-1;
- return ret;
- }
-
- LYINFLOG("rc start success");
-
- return RESULT_OK;
-}
-
-void lynq_close_all_rc_socket_thread()
-{
- int ret;
- BLOCK_RECV_MSG_LOCK();
- module_rc_status = 0;
- BLOCK_WAKEUP_RECV_MSG();
- if(module_rc_tid != -1)
- {
- ret = pthread_cancel(module_rc_tid);
- LYINFLOG("pthread cancel rc ret = %d",ret);
- }
- BLOCK_RECV_MSG_UNLOCK();
- if(module_rc_tid != -1)
- {
- ret = pthread_join(module_rc_tid,NULL);
- module_rc_tid =-1;
- LYINFLOG("pthread join rc tid ret = %d",ret);
-
- }
-
- if (module_rc_sock_fd > 0)
- {
- close(module_rc_sock_fd);
- module_rc_sock_fd =-1;
- }
-
- BLOCK_RECV_MSG_LOCK();
- std::list<Parcel*>::iterator iter;
- for(iter=s_recv_parcel_list.begin();iter!=s_recv_parcel_list.end();++iter)
- {
- delete (*iter);
- }
- s_recv_parcel_list.clear();
- BLOCK_RECV_MSG_UNLOCK();
-}
-
-const char * requestToString(int request)
-{
- /*
- cat libs/telephony/ril_commands.h \
- | egrep "^ *{RIL_" \
- | sed -re 's/\{RIL_([^,]+),[^,]+,([^}]+).+/case RIL_\1: return "\1";/'
-
-
- cat libs/telephony/ril_unsol_commands.h \
- | egrep "^ *{RIL_" \
- | sed -re 's/\{RIL_([^,]+),([^}]+).+/case RIL_\1: return "\1";/'
-
- */
- switch(request) {
- case RIL_REQUEST_GET_SIM_STATUS: return "GET_SIM_STATUS";
- case RIL_REQUEST_ENTER_SIM_PIN: return "ENTER_SIM_PIN";
- case RIL_REQUEST_ENTER_SIM_PUK: return "ENTER_SIM_PUK";
- case RIL_REQUEST_ENTER_SIM_PIN2: return "ENTER_SIM_PIN2";
- case RIL_REQUEST_ENTER_SIM_PUK2: return "ENTER_SIM_PUK2";
- case RIL_REQUEST_CHANGE_SIM_PIN: return "CHANGE_SIM_PIN";
- case RIL_REQUEST_CHANGE_SIM_PIN2: return "CHANGE_SIM_PIN2";
- case RIL_REQUEST_ENTER_NETWORK_DEPERSONALIZATION: return "ENTER_NETWORK_DEPERSONALIZATION";
- case RIL_REQUEST_GET_CURRENT_CALLS: return "GET_CURRENT_CALLS";
- case RIL_REQUEST_DIAL: return "DIAL";
- case RIL_REQUEST_GET_IMSI: return "GET_IMSI";
- case RIL_REQUEST_HANGUP: return "HANGUP";
- case RIL_REQUEST_HANGUP_WAITING_OR_BACKGROUND: return "HANGUP_WAITING_OR_BACKGROUND";
- case RIL_REQUEST_HANGUP_FOREGROUND_RESUME_BACKGROUND: return "HANGUP_FOREGROUND_RESUME_BACKGROUND";
- case RIL_REQUEST_SWITCH_WAITING_OR_HOLDING_AND_ACTIVE: return "SWITCH_WAITING_OR_HOLDING_AND_ACTIVE";
- case RIL_REQUEST_CONFERENCE: return "CONFERENCE";
- case RIL_REQUEST_UDUB: return "UDUB";
- case RIL_REQUEST_LAST_CALL_FAIL_CAUSE: return "LAST_CALL_FAIL_CAUSE";
- case RIL_REQUEST_SIGNAL_STRENGTH: return "SIGNAL_STRENGTH";
- case RIL_REQUEST_VOICE_REGISTRATION_STATE: return "VOICE_REGISTRATION_STATE";
- case RIL_REQUEST_DATA_REGISTRATION_STATE: return "DATA_REGISTRATION_STATE";
- case RIL_REQUEST_OPERATOR: return "OPERATOR";
- case RIL_REQUEST_RADIO_POWER: return "RADIO_POWER";
- case RIL_REQUEST_DTMF: return "DTMF";
- case RIL_REQUEST_SEND_SMS: return "SEND_SMS";
- case RIL_REQUEST_SEND_SMS_EXPECT_MORE: return "SEND_SMS_EXPECT_MORE";
- case RIL_REQUEST_SETUP_DATA_CALL: return "SETUP_DATA_CALL";
- case RIL_REQUEST_SIM_IO: return "SIM_IO";
- case RIL_REQUEST_SEND_USSD: return "SEND_USSD";
- case RIL_REQUEST_CANCEL_USSD: return "CANCEL_USSD";
- case RIL_REQUEST_GET_CLIR: return "GET_CLIR";
- case RIL_REQUEST_SET_CLIR: return "SET_CLIR";
- case RIL_REQUEST_QUERY_CALL_FORWARD_STATUS: return "QUERY_CALL_FORWARD_STATUS";
- case RIL_REQUEST_SET_CALL_FORWARD: return "SET_CALL_FORWARD";
- case RIL_REQUEST_QUERY_CALL_WAITING: return "QUERY_CALL_WAITING";
- case RIL_REQUEST_SET_CALL_WAITING: return "SET_CALL_WAITING";
- case RIL_REQUEST_SMS_ACKNOWLEDGE: return "SMS_ACKNOWLEDGE";
- case RIL_REQUEST_GET_IMEI: return "GET_IMEI";
- case RIL_REQUEST_GET_IMEISV: return "GET_IMEISV";
- case RIL_REQUEST_ANSWER: return "ANSWER";
- case RIL_REQUEST_DEACTIVATE_DATA_CALL: return "DEACTIVATE_DATA_CALL";
- case RIL_REQUEST_QUERY_FACILITY_LOCK: return "QUERY_FACILITY_LOCK";
- case RIL_REQUEST_SET_FACILITY_LOCK: return "SET_FACILITY_LOCK";
- case RIL_REQUEST_CHANGE_BARRING_PASSWORD: return "CHANGE_BARRING_PASSWORD";
- case RIL_REQUEST_QUERY_NETWORK_SELECTION_MODE: return "QUERY_NETWORK_SELECTION_MODE";
- case RIL_REQUEST_SET_NETWORK_SELECTION_AUTOMATIC: return "SET_NETWORK_SELECTION_AUTOMATIC";
- case RIL_REQUEST_SET_NETWORK_SELECTION_MANUAL: return "SET_NETWORK_SELECTION_MANUAL";
- case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS : return "QUERY_AVAILABLE_NETWORKS ";
- case RIL_REQUEST_DTMF_START: return "DTMF_START";
- case RIL_REQUEST_DTMF_STOP: return "DTMF_STOP";
- case RIL_REQUEST_BASEBAND_VERSION: return "BASEBAND_VERSION";
- case RIL_REQUEST_SEPARATE_CONNECTION: return "SEPARATE_CONNECTION";
- case RIL_REQUEST_SET_PREFERRED_NETWORK_TYPE: return "SET_PREFERRED_NETWORK_TYPE";
- case RIL_REQUEST_GET_PREFERRED_NETWORK_TYPE: return "GET_PREFERRED_NETWORK_TYPE";
- case RIL_REQUEST_GET_NEIGHBORING_CELL_IDS: return "GET_NEIGHBORING_CELL_IDS";
- case RIL_REQUEST_SET_MUTE: return "SET_MUTE";
- case RIL_REQUEST_GET_MUTE: return "GET_MUTE";
- case RIL_REQUEST_QUERY_CLIP: return "QUERY_CLIP";
- case RIL_REQUEST_LAST_DATA_CALL_FAIL_CAUSE: return "LAST_DATA_CALL_FAIL_CAUSE";
- case RIL_REQUEST_DATA_CALL_LIST: return "DATA_CALL_LIST";
- case RIL_REQUEST_RESET_RADIO: return "RESET_RADIO";
- case RIL_REQUEST_OEM_HOOK_RAW: return "OEM_HOOK_RAW";
- case RIL_REQUEST_OEM_HOOK_STRINGS: return "OEM_HOOK_STRINGS";
- case RIL_REQUEST_SET_BAND_MODE: return "SET_BAND_MODE";
- case RIL_REQUEST_QUERY_AVAILABLE_BAND_MODE: return "QUERY_AVAILABLE_BAND_MODE";
- case RIL_REQUEST_STK_GET_PROFILE: return "STK_GET_PROFILE";
- case RIL_REQUEST_STK_SET_PROFILE: return "STK_SET_PROFILE";
- case RIL_REQUEST_STK_SEND_ENVELOPE_COMMAND: return "STK_SEND_ENVELOPE_COMMAND";
- case RIL_REQUEST_STK_SEND_TERMINAL_RESPONSE: return "STK_SEND_TERMINAL_RESPONSE";
- case RIL_REQUEST_STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM: return "STK_HANDLE_CALL_SETUP_REQUESTED_FROM_SIM";
- case RIL_REQUEST_SCREEN_STATE: return "SCREEN_STATE";
- case RIL_REQUEST_EXPLICIT_CALL_TRANSFER: return "EXPLICIT_CALL_TRANSFER";
- case RIL_REQUEST_SET_LOCATION_UPDATES: return "SET_LOCATION_UPDATES";
- case RIL_REQUEST_CDMA_SET_SUBSCRIPTION_SOURCE:return"CDMA_SET_SUBSCRIPTION_SOURCE";
- case RIL_REQUEST_CDMA_SET_ROAMING_PREFERENCE:return"CDMA_SET_ROAMING_PREFERENCE";
- case RIL_REQUEST_CDMA_QUERY_ROAMING_PREFERENCE:return"CDMA_QUERY_ROAMING_PREFERENCE";
- case RIL_REQUEST_SET_TTY_MODE:return"SET_TTY_MODE";
- case RIL_REQUEST_QUERY_TTY_MODE:return"QUERY_TTY_MODE";
- case RIL_REQUEST_CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_SET_PREFERRED_VOICE_PRIVACY_MODE";
- case RIL_REQUEST_CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE:return"CDMA_QUERY_PREFERRED_VOICE_PRIVACY_MODE";
- case RIL_REQUEST_CDMA_FLASH:return"CDMA_FLASH";
- case RIL_REQUEST_CDMA_BURST_DTMF:return"CDMA_BURST_DTMF";
- case RIL_REQUEST_CDMA_SEND_SMS:return"CDMA_SEND_SMS";
- case RIL_REQUEST_CDMA_SMS_ACKNOWLEDGE:return"CDMA_SMS_ACKNOWLEDGE";
- case RIL_REQUEST_GSM_GET_BROADCAST_SMS_CONFIG:return"GSM_GET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_GSM_SET_BROADCAST_SMS_CONFIG:return"GSM_SET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_GSM_SMS_BROADCAST_ACTIVATION:return "GSM_SMS_BROADCAST_ACTIVATION";
- case RIL_REQUEST_CDMA_GET_BROADCAST_SMS_CONFIG:return "CDMA_GET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_CDMA_SET_BROADCAST_SMS_CONFIG:return "CDMA_SET_BROADCAST_SMS_CONFIG";
- case RIL_REQUEST_CDMA_SMS_BROADCAST_ACTIVATION:return "CDMA_SMS_BROADCAST_ACTIVATION";
- case RIL_REQUEST_CDMA_VALIDATE_AND_WRITE_AKEY: return"CDMA_VALIDATE_AND_WRITE_AKEY";
- case RIL_REQUEST_CDMA_SUBSCRIPTION: return"CDMA_SUBSCRIPTION";
- case RIL_REQUEST_CDMA_WRITE_SMS_TO_RUIM: return "CDMA_WRITE_SMS_TO_RUIM";
- case RIL_REQUEST_CDMA_DELETE_SMS_ON_RUIM: return "CDMA_DELETE_SMS_ON_RUIM";
- case RIL_REQUEST_DEVICE_IDENTITY: return "DEVICE_IDENTITY";
- case RIL_REQUEST_EXIT_EMERGENCY_CALLBACK_MODE: return "EXIT_EMERGENCY_CALLBACK_MODE";
- case RIL_REQUEST_GET_SMSC_ADDRESS: return "GET_SMSC_ADDRESS";
- case RIL_REQUEST_SET_SMSC_ADDRESS: return "SET_SMSC_ADDRESS";
- case RIL_REQUEST_REPORT_SMS_MEMORY_STATUS: return "REPORT_SMS_MEMORY_STATUS";
- case RIL_REQUEST_REPORT_STK_SERVICE_IS_RUNNING: return "REPORT_STK_SERVICE_IS_RUNNING";
- case RIL_REQUEST_CDMA_GET_SUBSCRIPTION_SOURCE: return "CDMA_GET_SUBSCRIPTION_SOURCE";
- case RIL_REQUEST_ISIM_AUTHENTICATION: return "ISIM_AUTHENTICATION";
- case RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU: return "RIL_REQUEST_ACKNOWLEDGE_INCOMING_GSM_SMS_WITH_PDU";
- case RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS: return "RIL_REQUEST_STK_SEND_ENVELOPE_WITH_STATUS";
- case RIL_REQUEST_VOICE_RADIO_TECH: return "VOICE_RADIO_TECH";
- case RIL_REQUEST_GET_CELL_INFO_LIST: return"GET_CELL_INFO_LIST";
- case RIL_REQUEST_SET_UNSOL_CELL_INFO_LIST_RATE: return"SET_UNSOL_CELL_INFO_LIST_RATE";
- case RIL_REQUEST_SET_INITIAL_ATTACH_APN: return "RIL_REQUEST_SET_INITIAL_ATTACH_APN";
- case RIL_REQUEST_IMS_REGISTRATION_STATE: return "IMS_REGISTRATION_STATE";
- case RIL_REQUEST_IMS_SEND_SMS: return "IMS_SEND_SMS";
- case RIL_REQUEST_SIM_TRANSMIT_APDU_BASIC: return "SIM_TRANSMIT_APDU_BASIC";
- case RIL_REQUEST_SIM_OPEN_CHANNEL: return "SIM_OPEN_CHANNEL";
- case RIL_REQUEST_SIM_CLOSE_CHANNEL: return "SIM_CLOSE_CHANNEL";
- case RIL_REQUEST_SIM_TRANSMIT_APDU_CHANNEL: return "SIM_TRANSMIT_APDU_CHANNEL";
- case RIL_REQUEST_GET_RADIO_CAPABILITY: return "RIL_REQUEST_GET_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_RADIO_CAPABILITY: return "RIL_REQUEST_SET_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_UICC_SUBSCRIPTION: return "SET_UICC_SUBSCRIPTION";
- case RIL_REQUEST_ALLOW_DATA: return "ALLOW_DATA";
- case RIL_REQUEST_GET_HARDWARE_CONFIG: return "GET_HARDWARE_CONFIG";
- case RIL_REQUEST_SIM_AUTHENTICATION: return "SIM_AUTHENTICATION";
- case RIL_REQUEST_GET_DC_RT_INFO: return "GET_DC_RT_INFO";
- case RIL_REQUEST_SET_DC_RT_INFO_RATE: return "SET_DC_RT_INFO_RATE";
- case RIL_REQUEST_SET_DATA_PROFILE: return "SET_DATA_PROFILE";
- case RIL_UNSOL_RESPONSE_RADIO_STATE_CHANGED: return "UNSOL_RESPONSE_RADIO_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_CALL_STATE_CHANGED: return "UNSOL_RESPONSE_CALL_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_PS_NETWORK_STATE_CHANGED: return "UNSOL_RESPONSE_VOICE_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_RESPONSE_NEW_SMS: return "UNSOL_RESPONSE_NEW_SMS";
- case RIL_UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT: return "UNSOL_RESPONSE_NEW_SMS_STATUS_REPORT";
- case RIL_UNSOL_RESPONSE_NEW_SMS_ON_SIM: return "UNSOL_RESPONSE_NEW_SMS_ON_SIM";
- case RIL_UNSOL_ON_USSD: return "UNSOL_ON_USSD";
- case RIL_UNSOL_ON_USSD_REQUEST: return "UNSOL_ON_USSD_REQUEST(obsolete)";
- case RIL_UNSOL_NITZ_TIME_RECEIVED: return "UNSOL_NITZ_TIME_RECEIVED";
- case RIL_UNSOL_SIGNAL_STRENGTH: return "UNSOL_SIGNAL_STRENGTH";
- case RIL_UNSOL_STK_SESSION_END: return "UNSOL_STK_SESSION_END";
- case RIL_UNSOL_STK_PROACTIVE_COMMAND: return "UNSOL_STK_PROACTIVE_COMMAND";
- case RIL_UNSOL_STK_EVENT_NOTIFY: return "UNSOL_STK_EVENT_NOTIFY";
- case RIL_UNSOL_STK_CALL_SETUP: return "UNSOL_STK_CALL_SETUP";
- case RIL_UNSOL_SIM_SMS_STORAGE_FULL: return "UNSOL_SIM_SMS_STORAGE_FUL";
- case RIL_UNSOL_SIM_REFRESH: return "UNSOL_SIM_REFRESH";
- case RIL_UNSOL_DATA_CALL_LIST_CHANGED: return "UNSOL_DATA_CALL_LIST_CHANGED";
- case RIL_UNSOL_CALL_RING: return "UNSOL_CALL_RING";
- case RIL_UNSOL_RESPONSE_SIM_STATUS_CHANGED: return "UNSOL_RESPONSE_SIM_STATUS_CHANGED";
- case RIL_UNSOL_RESPONSE_CDMA_NEW_SMS: return "UNSOL_NEW_CDMA_SMS";
- case RIL_UNSOL_RESPONSE_NEW_BROADCAST_SMS: return "UNSOL_NEW_BROADCAST_SMS";
- case RIL_UNSOL_CDMA_RUIM_SMS_STORAGE_FULL: return "UNSOL_CDMA_RUIM_SMS_STORAGE_FULL";
- case RIL_UNSOL_RESTRICTED_STATE_CHANGED: return "UNSOL_RESTRICTED_STATE_CHANGED";
- case RIL_UNSOL_ENTER_EMERGENCY_CALLBACK_MODE: return "UNSOL_ENTER_EMERGENCY_CALLBACK_MODE";
- case RIL_UNSOL_CDMA_CALL_WAITING: return "UNSOL_CDMA_CALL_WAITING";
- case RIL_UNSOL_CDMA_OTA_PROVISION_STATUS: return "UNSOL_CDMA_OTA_PROVISION_STATUS";
- case RIL_UNSOL_CDMA_INFO_REC: return "UNSOL_CDMA_INFO_REC";
- case RIL_UNSOL_OEM_HOOK_RAW: return "UNSOL_OEM_HOOK_RAW";
- case RIL_UNSOL_RINGBACK_TONE: return "UNSOL_RINGBACK_TONE";
- case RIL_UNSOL_RESEND_INCALL_MUTE: return "UNSOL_RESEND_INCALL_MUTE";
- case RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED: return "UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED";
- case RIL_UNSOL_CDMA_PRL_CHANGED: return "UNSOL_CDMA_PRL_CHANGED";
- case RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE: return "UNSOL_EXIT_EMERGENCY_CALLBACK_MODE";
- case RIL_UNSOL_RIL_CONNECTED: return "UNSOL_RIL_CONNECTED";
- case RIL_UNSOL_VOICE_RADIO_TECH_CHANGED: return "UNSOL_VOICE_RADIO_TECH_CHANGED";
- case RIL_UNSOL_CELL_INFO_LIST: return "UNSOL_CELL_INFO_LIST";
- case RIL_UNSOL_RESPONSE_IMS_NETWORK_STATE_CHANGED: return "RESPONSE_IMS_NETWORK_STATE_CHANGED";
- case RIL_UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED: return "UNSOL_UICC_SUBSCRIPTION_STATUS_CHANGED";
- case RIL_UNSOL_SRVCC_STATE_NOTIFY: return "UNSOL_SRVCC_STATE_NOTIFY";
- case RIL_UNSOL_HARDWARE_CONFIG_CHANGED: return "HARDWARE_CONFIG_CHANGED";
- case RIL_UNSOL_DC_RT_INFO_CHANGED: return "UNSOL_DC_RT_INFO_CHANGED";
- case RIL_REQUEST_SHUTDOWN: return "SHUTDOWN";
- case RIL_UNSOL_RADIO_CAPABILITY: return "RIL_UNSOL_RADIO_CAPABILITY";
- case RIL_REQUEST_SET_TRM: return "RIL_REQUEST_SET_TRM";
- case RIL_REQUEST_SET_IMS_ENABLE:return "RIL_REQUEST_SET_IMS_ENABLE";
- case RIL_REQUEST_SET_AUDIO_PATH: return "SET_AUDIO_PATH";
- case RIL_REQUEST_HANGUP_ALL: return "HANGUP_ALL";
- case RIL_REQUEST_FORCE_RELEASE_CALL: return "FORCE_RELEASE_CALL";
- case RIL_REQUEST_EMERGENCY_DIAL: return "RIL_REQUEST_EMERGENCY_DIAL";
- case RIL_REQUEST_SET_ECC_SERVICE_CATEGORY: return "RIL_REQUEST_SET_ECC_SERVICE_CATEGORY";
- case RIL_REQUEST_SET_ECC_LIST: return "RIL_REQUEST_SET_ECC_LIST";
- case RIL_REQUEST_AT_COMMAND_WITH_PROXY: return "AT_COMMAND_WITH_PROXY";
- case RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION: return "RIL_REQUEST_SET_SUPP_SVC_NOTIFICATION";
- case RIL_REQUEST_SET_CLIP: return "RIL_REQUEST_SET_CLIP";
- case RIL_REQUEST_GET_COLP: return "RIL_REQUEST_GET_COLP";
- case RIL_REQUEST_SET_COLP: return "RIL_REQUEST_SET_COLP";
- case RIL_REQUEST_GET_COLR: return "RIL_REQUEST_GET_COLR";
- case RIL_REQUEST_ADD_IMS_CONFERENCE_CALL_MEMBER: return "ADD_IMS_CONFERENCE_CALL_MEMBER";
- case RIL_REQUEST_REMOVE_IMS_CONFERENCE_CALL_MEMBER: return "REMOVE_IMS_CONFERENCE_CALL_MEMBER";
- case RIL_REQUEST_CONFERENCE_DIAL: return "CONFERENCE_DIAL";
- case RIL_REQUEST_DIAL_WITH_SIP_URI: return "DIAL_WITH_SIP_URI";
- case RIL_REQUEST_HOLD_CALL: return "HOLD_CALL";
- case RIL_REQUEST_RESUME_CALL: return "RESUME_CALL";
- case RIL_UNSOL_ECONF_SRVCC_INDICATION : return "ECONF_SRVCC_INDICATION";
- case RIL_UNSOL_ECONF_RESULT_INDICATION : return "ECONF_RESULT_INDICATION";
- case RIL_UNSOL_MAL_AT_INFO : return "UNSOL_MAL_AT_INFO";
- case RIL_REQUEST_MODEM_POWEROFF: return "MODEM_POWEROFF";
- case RIL_REQUEST_MODEM_POWERON: return "MODEM_POWERON";
- case RIL_REQUEST_WRITE_SMS_TO_SIM: return "WRITE_SMS_TO_SIM";
- case RIL_REQUEST_QUERY_ICCID: return "RIL_REQUEST_QUERY_ICCID";
- case RIL_UNSOL_TX_POWER: return "RIL_UNSOL_TX_POWER";
- case RIL_UNSOL_NETWORK_INFO: return "RIL_UNSOL_NETWORK_INFO";
- case RIL_REQUEST_DELETE_SMS_ON_SIM: return "DELETE_SMS_ON_SIM";
- case RIL_REQUEST_SET_IMSCFG: return "RIL_REQUEST_SET_IMSCFG";
-#ifdef ECALL_SUPPORT
- case RIL_REQUEST_ECALL_FAST_MAKE_ECALL: return "ECALL_FAST_MAKE_ECALL";
- case RIL_REQUEST_ECALL_SET_IVS: return "RIL_REQUEST_ECALL_SET_IVS";
- case RIL_REQUEST_ECALL_SET_PSAP: return "RIL_REQUEST_ECALL_SET_PSAP";
- case RIL_REQUEST_ECALL_MAKE_ECALL: return "RIL_REQUEST_ECALL_MAKE_ECALL";
- case RIL_REQUEST_ECALL_IVS_PUSH_MSD: return "RIL_REQUEST_ECALL_IVS_PUSH_MSD";
- case RIL_REQUEST_ECALL_PSAP_PULL_MSD: return "RIL_REQUEST_ECALL_PSAP_PULL_MSD";
- case RIL_UNSOL_ECALL_MSDHACK : return "ECALL_MSDHACK";
- case RIL_REQUEST_ECALL_SET_MSD: return "RIL_REQUEST_ECALL_SET_MSD";
- case RIL_REQUEST_ECALL_CTRL_SEQUENCE: return "ECALL_SET_CTRL_SEQUENCE";
- case RIL_UNSOL_ECALL_INDICATIONS : return "ECALL_INDICATIONS";
- case RIL_REQUEST_ECALL_RESET_IVS: return "RIL_REQUEST_ECALL_RESET_IVS";
- case RIL_REQUEST_ECALL_SET_PRI: return "RIL_REQUEST_ECALL_SET_PRI";
- case RIL_REQUEST_ECALL_SET_TEST_NUM: return "RIL_REQUEST_ECALL_SET_TEST_NUM";
- case RIL_REQUEST_ECALL_SET_RECONF_NUM: return "RIL_REQUEST_ECALL_SET_RECONF_NUM";
- case RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD: return "RIL_REQUEST_SYNC_DATA_SETTINGS_TO_MD";
- case RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME: return "RIL_REQUEST_ECALL_SET_NAD_DEREGISTRATION_TIME";
- case RIL_REQUEST_ECALL_SET_REGISTRATION_STATE: return "RIL_REQUEST_ECALL_SET_REGISTRATION_STATE";
-#endif /*ECALL_SUPPORT*/
-#ifdef KEEP_ALIVE
- case RIL_REQUEST_START_KEEPALIVE_PRO: return "RIL_REQUEST_START_KEEPALIVE_PRO";
- case RIL_REQUEST_STOP_KEEPALIVE_PRO: return "RIL_REQUEST_STOP_KEEPALIVE_PRO";
- case RIL_UNSOL_KEEPALIVE_STATUS_PRO: return "RIL_UNSOL_KEEPALIVE_STATUS_PRO";
-#endif /*KEEP_ALIVE*/
- case RIL_REQUEST_SEND_USSI: return "SEND_USSI";
- case RIL_REQUEST_CANCEL_USSI: return "CANCEL_USSI";
- case RIL_REQUEST_GET_SMS_SIM_MEM_STATUS: return "GET_SMS_SIM_MEM_STATUS";
- case RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR: return "RIL_UNSOL_SIP_CALL_PROGRESS_INDICATOR";
- case RIL_REQUEST_REPORT_AIRPLANE_MODE: return "RIL_REQUEST_REPORT_AIRPLANE_MODE";
- case RIL_REQUEST_SET_ECC_NUM: return "RIL_REQUEST_SET_ECC_NUM";
- case RIL_REQUEST_GET_ECC_NUM: return "RIL_REQUEST_GET_ECC_NUM";
- case RIL_UNSOL_ECC_NUM: return "RIL_UNSOL_ECC_NUM";
- case RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT: return "RIL_REQUEST_QUERY_AVAILABLE_NETWORKS_WITH_ACT";
- case RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_GET_BROADCAST_LANGUAGE";
- case RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE: return "RIL_REQUEST_GSM_SET_BROADCAST_LANGUAGE";
- case RIL_UNSOL_CALL_INFO_INDICATION: return "RIL_UNSOL_CALL_INFO_INDICATION";
- case RIL_REQUEST_MODIFY_APN: return "RIL_REQUEST_MODIFY_APN";
- case RIL_REQUEST_RESET_APN: return "RIL_REQUEST_RESET_APN";
- case RIL_REQUEST_QUERY_SIM_RETRY_COUNT: return "RIL_REQUEST_QUERY_SIM_RETRY_COUNT";
- case RIL_REQUEST_QUERY_EID: return "RIL_REQUEST_QUERY_EID";
- case LYNQ_REQUEST_SET_DTMF_VOLUME: return "RIL_REQUEST_SET_DTMF_VOLUME";
- case LYNQ_REQUEST_SET_SPEECH_VOLUME: return "RIL_REQUEST_SET_SPEECH_VOLUME";
- case LYNQ_REQUEST_GET_SPEECH_VOLUME: return "RIL_REQUEST_GET_SPEECH_VOLUME";
- case LYNQ_REQUEST_RECORD: return "RIL_REQUEST_RECORD";
- /*warren add for t800 ril service 2022/1/22 start*/
- case LYNQ_REQUEST_WRITE_SMS_TO_MEMORY: return "LYNQ_REQUEST_WRITE_SMS_TO_MEMORY";
- case LYNQ_REQUEST_READ_SMS_FROM_MEMORY: return "LYNQ_REQUEST_READ_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY: return "LYNQ_REQUEST_DELETE_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_LIST_SMS_FROM_MEMORY: return "LYNQ_REQUEST_LIST_SMS_FROM_MEMORY";
- case LYNQ_REQUEST_SET_DEFAULT_SIM_ALL:return "SET_DEFAULT_SIM_ALL";
- case LYNQ_REQUEST_CHANGE_SCREEN_STATE:return "LYNQ_REQUEST_CHANGE_SCREEN_STATE";/*jb.qi add for two sim sleep 2022/9/19*/
- case LYNQ_REQUEST_CHANGE_RADIO:return "LYNQ_REQUEST_CHANGE_RADIO";/*lei add for factory test of sleep 2022/9/19*/
- /*warren add for t800 ril service 2022/1/22 end*/
- default: return "<unknown request>";
- }
-}
-
-
diff --git a/src/lynq/lib/liblynq-sms/lynq_module_socket.h b/src/lynq/lib/liblynq-sms/lynq_module_socket.h
deleted file mode 100755
index aabac32..0000000
--- a/src/lynq/lib/liblynq-sms/lynq_module_socket.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef LYNQ_MODULE_SOCKET_H
-#define LYNQ_MODULE_SOCKET_H
-
-using ::android::Parcel;
-
-int lynq_set_test_network(const int test_mode);
-
-extern int g_module_Global_uToken;
-extern int g_wait_time;
-int lynq_send_common_request(Parcel*& p, int time_out, int request_id, int argc, const char* format,...);
-int lynq_start_all_urc_socket_thread();
-void lynq_close_all_urc_socket_thread();
-int lynq_start_all_rc_socket_thread();
-void lynq_close_all_rc_socket_thread();
-
-const char * requestToString(int request);
-
-void urc_msg_process(Parcel *p);
-bool is_support_urc(int urc_id);
-bool is_support_request(int req_id);
-
-#endif
diff --git a/src/lynq/lib/liblynq-sms/lynq_sms.cpp b/src/lynq/lib/liblynq-sms/lynq_sms.cpp
index ddf12b9..a176462 100755
--- a/src/lynq/lib/liblynq-sms/lynq_sms.cpp
+++ b/src/lynq/lib/liblynq-sms/lynq_sms.cpp
@@ -20,6 +20,7 @@
#include "lynq_sms.h"
#include "lynq_module_common.h"
#include "lynq_module_socket.h"
+#include "service_lib_common.h"
#define CALL_OFF (0)
#define CALL_ON (1)
@@ -27,7 +28,6 @@
using ::android::Parcel;
-#define MAX_SMS_BUF 1024
int sms_storage_index = 0;
@@ -118,13 +118,9 @@
void ArrayToStr(unsigned char *Buff, unsigned int BuffLen, char *OutputStr)
{
int i = 0;
- char TempBuff[MAX_SMS_BUF] = {0};
- char strBuff[MAX_SMS_BUF] = {0};
- if(sizeof(Buff) < BuffLen)
- {
- LYERRLOG("BuffLen is error\n");
- return;
- }
+ char TempBuff[MSG_MAX_LEN * 2 +1] = {0};
+ char strBuff[MSG_MAX_LEN * 2 +1] = {0};
+
for(i = 0; i<BuffLen;i++)
{
sprintf(TempBuff,"%02x",(unsigned char)Buff[i]);
@@ -136,6 +132,12 @@
int lynq_send_sms(char telephony_num[TELEPHONE_NUM_LEN], int charset, char *msg, int msglen)
{
+ LYINFLOG("charset is %d, msglen %d\n", charset, msglen);
+ if(msglen > MSG_MAX_LEN || msglen <= 0)
+ {
+ LYERRLOG("msglen out of the range");
+ return LYNQ_E_SMS_MSGLEN_OUT_OF_RANGE;
+ }
if(g_module_init_flag != MODULE_RUNNING)
{
LYERRLOG("%s module state %d error",__func__,g_module_init_flag);
@@ -146,6 +148,7 @@
{
char msg_e_b[msglen*2+1] = {0};// +1 for end of string.*2:A char array contains two elements of a string for each value
ArrayToStr(msg, msglen, msg_e_b);
+ LYINFLOG("tel, charset, msg_e_b: %s, %d, %s", telephony_num, charset, msg_e_b);
int ret=lynq_send_common_request(p,g_wait_time,RIL_REQUEST_SEND_SMS,3,"%s %d %s",telephony_num, charset, msg_e_b);
if(ret!=RESULT_OK)
{
@@ -342,7 +345,7 @@
p->readInt32(&resp_type);
p->readInt32(&urcid);
p->readInt32(&slot_id);
- LYINFLOG("%s urc id = %d, slot_id = %d, size is %d, msg is %s",__func__, urcid,slot_id,size,requestToString(urcid));
+ LYINFLOG("%s urc id = %d, slot_id = %d, size is %d, msg is %s",__func__, urcid,slot_id,size,android::requestToString(urcid));
switch (urcid)
{
case RIL_UNSOL_RESPONSE_NEW_SMS://new sms received
diff --git a/src/lynq/lib/liblynq-wifi6/include/libwifi6.h b/src/lynq/lib/liblynq-wifi6/include/libwifi6.h
index 0a2771d..34a6ec8 100755
--- a/src/lynq/lib/liblynq-wifi6/include/libwifi6.h
+++ b/src/lynq/lib/liblynq-wifi6/include/libwifi6.h
@@ -49,6 +49,7 @@
typedef enum {
LYNQ_WIFI_STATUS_DISCONNECT = 0,
LYNQ_WIFI_STATUS_CONNECT,
+ LYNQ_WIFI_SERVICE_ABNORMAL,
}lynq_wifi_ap_status_s;
typedef struct ap_info
@@ -153,6 +154,7 @@
//sta start connect to dest_ap
int lynq_wifi_sta_connect(lynq_wifi_index_e idx, char *ssid, lynq_wifi_auth_s auth, char *psw);
+int lynq_wifi_sta_connect_timeout(lynq_wifi_index_e idx, char *ssid, lynq_wifi_auth_s auth, char *psw, int timeout);
//disconnect
int lynq_wifi_sta_disconnect(lynq_wifi_index_e idx,char *ssid);
@@ -186,13 +188,20 @@
LYNQ_WIFI_STA_STATUS_DISCONNECT = 0,
LYNQ_WIFI_STA_STATUS_CONNECT,
LYNQ_WIFI_STA_STATUS_SCAN_RESULT, //finish sta scan
+ LYNQ_WIFI_STA_STATUS_CONNECT_FAIL,
+ LYNQ_WIFI_STA_SERVICE_ABNORMAL,
+ LYNQ_WIFI_STATUS_EGNORE,
}lynq_wifi_sta_status_s;
typedef enum
{
LYNQ_TIME_OUT = 0,
+ LYNQ_UNSPECIFIED_REASON,
+ LYNQ_AUTHENTICATION_NO_LONGER_VALID,
LYNQ_PSW_ERROR,
LYNQ_AUTH_ERROR,
+ LYNQ_AP_UNABLE_HANDLE,
LYNQ_NOT_FIND_AP,
+ LYNQ_WAIT_CONNECT_ACTIVE,
}error_number_s;
typedef void(*STA_CALLBACK_FUNC_PTR)(void *priv, lynq_wifi_sta_status_s status, error_number_s number);
diff --git a/src/lynq/lib/liblynq-wifi6/libwifi6.c b/src/lynq/lib/liblynq-wifi6/libwifi6.c
index 6c45654..b9658b9 100755
--- a/src/lynq/lib/liblynq-wifi6/libwifi6.c
+++ b/src/lynq/lib/liblynq-wifi6/libwifi6.c
@@ -22,6 +22,8 @@
#include <netdb.h>
#include <ifaddrs.h>
#include "log/log.h"
+#include <sys/time.h>
+#include <asm/errno.h>
#ifdef __cplusplus
extern "C" {
@@ -38,6 +40,7 @@
#define CTRL_STA 0
#define CTRL_AP 1
#define AP_NETWORK_0 0
+#define STA_MAX_SAVED_AP_NUM 50
pthread_t g_ap_watcher_pid = 0;
volatile int g_ap_watcher_stop_flag = 0;
@@ -62,13 +65,30 @@
const char * cmd_remove_all = "REMOVE_NETWORK all";
const char * state_scan_result = "CTRL-EVENT-SCAN-RESULTS";
const char * STATE_COMPLETED = "COMPLETED";
+const char * STATE_DISCONNECTED = "DISCONNECTED";
+
+const char * cmd_ping = "PING";
+const char * rsp_pong = "PONG";
+const int SLEEP_TIME_ON_IDLE = 100 * 1000; // usecond
+const int MAX_IDLE_COUNT = 600; // 60s
+
+const char * start_wg870_service_script = "/etc/wg870/scripts/start_wg870_service.sh";
+const char * get_interface_name_script = "/etc/wg870/scripts/get_interface_name.sh";
+const char * start_stop_sta_script = "/etc/wg870/scripts/start_stop_sta.sh";
+const char * start_stop_ap_script = "/etc/wg870/scripts/start_stop_ap.sh";
+const char * sta_status_change_script = "/etc/wg870/scripts/sta_status_change.sh";
+
+static char s_ap_iterface_name[64] = {0};
struct local_wpa_ctrl{
struct wpa_ctrl *ctrl;
pthread_mutex_t mutex;
};
+
static pthread_mutex_t s_check_wpa_ctrl_mutex = PTHREAD_MUTEX_INITIALIZER;
+static pthread_mutex_t s_sta_callback_mutex = PTHREAD_MUTEX_INITIALIZER;
+static pthread_mutex_t s_ap_callback_mutex = PTHREAD_MUTEX_INITIALIZER;
static struct local_wpa_ctrl * g_lynq_wpa_ctrl[2] = {0};
@@ -86,6 +106,117 @@
int net_no;
}curr_status_info;
+typedef enum {
+ INNER_STA_STATUS_INIT = 0,
+ INNER_STA_STATUS_CONNECTING,
+ INNER_STA_STATUS_ASSOCIATING,
+ INNER_STA_STATUS_ASSOCIATED,
+ INNER_STA_STATUS_CONNECTED,
+ INNER_STA_STATUS_DISCONNECTING,
+ INNER_STA_STATUS_DISCONNECTED,
+ INNER_STA_STATUS_CANCEL,
+}inner_sta_status_s;
+
+static pthread_cond_t s_global_check_cond = PTHREAD_COND_INITIALIZER;
+static pthread_mutex_t s_global_check_mutex = PTHREAD_MUTEX_INITIALIZER;
+static inner_sta_status_s s_sta_status = INNER_STA_STATUS_INIT;
+static error_number_s s_sta_error_number = -1;
+static char s_sta_current_connecting_ssid[64] = {0};
+static struct timespec s_sta_connect_timeout;
+const int MAX_CONNNECT_TIME = 15; // second
+pthread_t g_global_watcher_pid = 0;
+static int s_service_invoke_timeout_cnt=0;
+const int FAKE_MAX_INT_VALUE = 99999;
+
+static void notify_service_invoke_fail(int error)
+{
+ struct local_wpa_ctrl *lynq_wpa_ctrl = NULL;
+ pthread_mutex_lock(&s_global_check_mutex);
+ if (error == -2) //timeout
+ {
+ s_service_invoke_timeout_cnt++;
+ if (s_service_invoke_timeout_cnt > 10)
+ {
+ pthread_cond_signal(&s_global_check_cond);
+ }
+ }
+ else if (error == -1)
+ {
+ // check if can connect wpa service
+ lynq_wpa_ctrl = wpa_ctrl_open(CTRL_PATH[0]);
+ if (lynq_wpa_ctrl == NULL)
+ {
+ s_service_invoke_timeout_cnt = FAKE_MAX_INT_VALUE;
+ pthread_cond_signal(&s_global_check_cond);
+ }
+ wpa_ctrl_close(lynq_wpa_ctrl);
+ lynq_wpa_ctrl = wpa_ctrl_open(CTRL_PATH[1]);
+ if (lynq_wpa_ctrl == NULL)
+ {
+ s_service_invoke_timeout_cnt = FAKE_MAX_INT_VALUE;
+ pthread_cond_signal(&s_global_check_cond);
+ }
+ wpa_ctrl_close(lynq_wpa_ctrl);
+ }
+
+ pthread_mutex_unlock(&s_global_check_mutex);
+}
+
+static int system_call_v(const char * fmt, ...)
+{
+ char str_cmd[256] = {0};
+ va_list args;
+ va_start(args, fmt);
+ vsprintf(str_cmd, fmt, args);
+ va_end(args);
+ printf("system call----------%s\n", str_cmd);
+ return system(str_cmd);
+}
+
+static int exec_cmd(const char *str_cmd, char * str_cmd_ret, size_t max_len);
+
+static const char * inner_get_ap_interface_name()
+{
+ char * p;
+ char cmd[128]={0};
+
+ sprintf(cmd, "%s %d", get_interface_name_script, LYNQ_WIFI_INTERFACE_1);
+ if (0 != exec_cmd(cmd, s_ap_iterface_name, sizeof(s_ap_iterface_name)) || s_ap_iterface_name[0] == '\0')
+ {
+ memset(s_ap_iterface_name, 0, sizeof (s_ap_iterface_name));
+ return NULL;
+ }
+ p = strchr(s_ap_iterface_name, ' ');
+ if (NULL != p)
+ {
+ *p = '\0';
+ }
+ p = strchr(s_ap_iterface_name, '\n');
+ if (NULL != p)
+ {
+ *p = '\0';
+ }
+ if (s_ap_iterface_name[0] == '\0')
+ {
+ return NULL;
+ }
+
+ return s_ap_iterface_name;
+}
+
+static void check_tether_and_notify()
+{
+ RLOGD("check_tether_and_notify called");
+ if (inner_get_ap_interface_name() == NULL || 0 == system_call_v("ifconfig | grep %s", s_ap_iterface_name))
+ {
+ return;
+ }
+ pthread_mutex_lock(&s_global_check_mutex);
+ s_service_invoke_timeout_cnt = FAKE_MAX_INT_VALUE;
+ pthread_cond_signal(&s_global_check_cond);
+ pthread_mutex_unlock(&s_global_check_mutex);
+}
+
static int local_wpa_ctrl_request(struct local_wpa_ctrl *ctrl, const char *cmd, size_t cmd_len,
char *reply, size_t *reply_len,
void (*msg_cb)(char *msg, size_t len))
@@ -98,6 +229,10 @@
pthread_mutex_lock(&ctrl->mutex);
ret = wpa_ctrl_request(ctrl->ctrl, cmd, cmd_len, reply, reply_len, msg_cb);
pthread_mutex_unlock(&ctrl->mutex);
+ if (ret != 0)
+ {
+ notify_service_invoke_fail(ret);
+ }
return ret;
}
@@ -178,69 +313,157 @@
}while (0)
-static int exec_cmd(const char *str_cmd, char * str_cmd_ret, size_t max_len);
+static int check_connection(struct wpa_ctrl * wpa_ctrl)
+{
+ size_t reply_len = MAX_RET;
+ char cmd_reply[MAX_RET]={0};
+ int ret;
+
+ RLOGD("check_connection [%p]", wpa_ctrl);
+ ret = wpa_ctrl_request(wpa_ctrl, cmd_ping, strlen(cmd_ping), cmd_reply, &reply_len, NULL);
+
+ if (ret != 0 || reply_len < 4 || memcmp(cmd_reply, rsp_pong, 4) != 0)
+ {
+ RLOGE("check_connection error: ctrl [%p], ret [%d], reply_len [%d], rsp [%s]", wpa_ctrl, ret, reply_len, cmd_reply);
+ if (ret != 0)
+ {
+ notify_service_invoke_fail(ret);
+ }
+ return -1;
+ }
+
+ return 0;
+}
+
+/**
+ * @brief check_pending_msg
+ * @param lynq_wpa_ctrl
+ * @return 1 has msg, 0 no msg, -1 error
+ */
+static int check_pending_msg(struct wpa_ctrl ** pp_lynq_wpa_ctrl, int type, int* idle_count, int *started_flag)
+{
+ int ret;
+
+ if (*pp_lynq_wpa_ctrl == NULL) // need connect
+ {
+ *pp_lynq_wpa_ctrl = wpa_ctrl_open(CTRL_PATH[type]); //@todo temp change
+ if (*pp_lynq_wpa_ctrl == NULL)
+ {
+ usleep(SLEEP_TIME_ON_IDLE);
+ return -1;
+ }
+
+ ret = wpa_ctrl_attach(*pp_lynq_wpa_ctrl);
+ if (ret == 0) // attach success
+ {
+ *started_flag = 1;
+ }
+ else
+ {
+ RLOGE("[wifi error]sta watch thread wpa_ctrl_attach fail");
+ wpa_ctrl_close(*pp_lynq_wpa_ctrl);
+ *pp_lynq_wpa_ctrl = NULL;
+ *idle_count = 0;
+ notify_service_invoke_fail(-2);
+ usleep(SLEEP_TIME_ON_IDLE);
+ return -1;
+ }
+ }
+
+ ret = wpa_ctrl_pending(*pp_lynq_wpa_ctrl);
+ if ( ret == 0) // no pending messages
+ {
+ usleep(SLEEP_TIME_ON_IDLE);
+ *idle_count += 1;
+ if (*idle_count > MAX_IDLE_COUNT)
+ {
+ if (check_connection(*pp_lynq_wpa_ctrl) != 0)
+ {
+ wpa_ctrl_detach(*pp_lynq_wpa_ctrl);
+ wpa_ctrl_close(*pp_lynq_wpa_ctrl);
+ *pp_lynq_wpa_ctrl = NULL;
+ *idle_count = 0;
+ return -1;
+ }
+ *idle_count = 0;
+ }
+ return 0;
+ }
+ else if ( ret == -1) // on error
+ {
+ RLOGE("[wifi error]sta wpa_ctrl_pending");
+ wpa_ctrl_detach(*pp_lynq_wpa_ctrl);
+ wpa_ctrl_close(*pp_lynq_wpa_ctrl);
+ *pp_lynq_wpa_ctrl = NULL;
+ *idle_count = 0;
+ notify_service_invoke_fail(ret);
+ return -1;
+ }
+
+ *idle_count = 0;
+ return 1;
+}
+
+static inline void inner_notify_ap_msg(lynq_wifi_ap_status_s status)
+{
+ pthread_mutex_lock(&s_ap_callback_mutex);
+ if (g_ap_callback_func != NULL)
+ g_ap_callback_func(g_ap_callback_priv, status);
+ pthread_mutex_unlock(&s_ap_callback_mutex);
+}
static void APWatcherThreadProc() {
size_t len = MAX_RET;
char msg_notify[MAX_RET];
+ int idle_count = 0;
struct wpa_ctrl *lynq_wpa_ctrl = NULL;
g_ap_watcher_stop_flag = 0;
while (g_ap_watcher_stop_flag == 0)
{
- if (lynq_wpa_ctrl == NULL)
- {
- lynq_wpa_ctrl = wpa_ctrl_open(CTRL_PATH[CTRL_AP]); //@todo temp change
- if (lynq_wpa_ctrl == NULL)
- {
- usleep(100*1000);
- continue;
+ if (check_pending_msg(&lynq_wpa_ctrl, CTRL_AP, &idle_count, &g_ap_watcher_started_flag) != 1)
+ {
+ if (g_ap_callback_func != NULL && idle_count == MAX_IDLE_COUNT - 100 )
+ {
+ check_tether_and_notify();
}
- wpa_ctrl_attach(lynq_wpa_ctrl);
- g_ap_watcher_started_flag = 1;
- }
-
- if ( 0 == wpa_ctrl_pending(lynq_wpa_ctrl))
- {
- usleep(100*1000);
continue;
}
+
memset(msg_notify, 0, MAX_RET);
len = MAX_RET;
if (!wpa_ctrl_recv(lynq_wpa_ctrl, msg_notify, &len))
- {
+ {
msg_notify[len+1] = '\0';
- RLOGD("STAWatcherThreadProc ap------> %s\n", msg_notify);
-//you.chen change for tv-box start
+ RLOGD("APWatcherThreadProc ap------> %s\n", msg_notify);
+ //you.chen change for tv-box start
if (strstr(msg_notify, "AP-STA-DISCONNECTED") != NULL)
- {
- if (g_ap_callback_func != NULL)
- g_ap_callback_func(g_ap_callback_priv, LYNQ_WIFI_STATUS_DISCONNECT);
+ {
+ inner_notify_ap_msg(LYNQ_WIFI_STATUS_DISCONNECT);
if (g_gbw_enabled == 1 && g_gbw_mac != NULL)
- {
+ {
RLOGD("disconect %d, %s ,%s\n", g_gbw_enabled, g_gbw_mac, strstr(msg_notify, (const char*)g_gbw_mac));
if (strstr(msg_notify, (const char*)g_gbw_mac) != NULL)
- {
+ {
stopGBW();
}
}
}
else if (strstr(msg_notify, "AP-STA-CONNECTED") != NULL)
- {
- if (g_ap_callback_func != NULL)
- g_ap_callback_func(g_ap_callback_priv, LYNQ_WIFI_STATUS_CONNECT);
+ {
+ inner_notify_ap_msg(LYNQ_WIFI_STATUS_CONNECT);
if (g_gbw_enabled == 1 && g_gbw_mac != NULL)
- {
+ {
RLOGD("conect %d, %s ,%s\n", g_gbw_enabled, g_gbw_mac, strstr(msg_notify, (const char*)g_gbw_mac));
if (strstr(msg_notify, (const char*)g_gbw_mac) != NULL)
- {
+ {
startGBW();
}
}
}
-//you.chen add for tv-box end
+ //you.chen add for tv-box end
} // end if (!wpa_ctrl_recv(lynq_wpa_ctrl, msg_notify, &len))
} // end while (g_ap_watcher_stop_flag == 0)
if (lynq_wpa_ctrl != NULL)
@@ -250,83 +473,229 @@
}
}
+static void inner_check_connect_error(const char * event_msg, lynq_wifi_sta_status_s state, error_number_s error_num)
+{
+ char * p;
+ const char * try_associat_flag = "Trying to associate";
+ const char * associated_flag = "Associated with ";
+
+ pthread_mutex_lock(&s_global_check_mutex);
+ if (s_sta_status < INNER_STA_STATUS_CONNECTING || s_sta_status >= INNER_STA_STATUS_CONNECTED) //not in connecting stage, egnore
+ {
+ pthread_mutex_unlock(&s_global_check_mutex);
+ return;
+ }
+
+ if (state == LYNQ_WIFI_STATUS_EGNORE)
+ {
+ if (strstr(event_msg, try_associat_flag) != NULL && strstr(event_msg, s_sta_current_connecting_ssid) != NULL) //associating request ssid
+ {
+ s_sta_status = INNER_STA_STATUS_ASSOCIATING;
+ }
+ else if (s_sta_status == INNER_STA_STATUS_ASSOCIATING && (p=strstr(event_msg, associated_flag)) != NULL)
+ {
+ s_sta_status = INNER_STA_STATUS_ASSOCIATED;
+ }
+ }
+ else if (state == LYNQ_WIFI_STA_STATUS_DISCONNECT)
+ {
+ s_sta_error_number = error_num;
+ if (s_sta_status >= INNER_STA_STATUS_ASSOCIATING && strstr(event_msg, "CTRL-EVENT-SSID-TEMP-DISABLED") != NULL && error_num != LYNQ_WAIT_CONNECT_ACTIVE)
+ {
+ s_sta_status = INNER_STA_STATUS_DISCONNECTED;
+ pthread_cond_signal(&s_global_check_cond);
+ }
+ }
+ else if (state == LYNQ_WIFI_STA_STATUS_CONNECT)
+ {
+ s_sta_status = INNER_STA_STATUS_CONNECTED;
+ pthread_cond_signal(&s_global_check_cond);
+ }
+ pthread_mutex_unlock(&s_global_check_mutex);
+}
+
+void get_state_error(const char* modify, lynq_wifi_sta_status_s* state, error_number_s* error)
+{
+ char *pReason;
+ *error = LYNQ_WAIT_CONNECT_ACTIVE;
+ if (strstr(modify, "CTRL-EVENT-SCAN-RESULTS") != NULL)
+ {
+ *state = LYNQ_WIFI_STA_STATUS_SCAN_RESULT;
+ RLOGD("CTRL-EVENT-SCAN-RESULTS state:%d,error:%d\n",*state,*error);
+ return;
+ }
+
+ if (strstr(modify, "CTRL-EVENT-CONNECTED") != NULL)
+ {
+ *state = LYNQ_WIFI_STA_STATUS_CONNECT;
+ RLOGD("CTRL-EVENT-CONNECTED state:%d,error:%d\n",*state,*error);
+ return;
+ }
+
+ if (strstr(modify, "CTRL-EVENT-SSID-TEMP-DISABLED") != NULL)
+ {
+ pReason = strstr(modify, "reason=");
+ if (pReason != NULL)
+ {
+ pReason += strlen("reason=");
+ if (memcmp(pReason, "CONN_FAILED", 11) == 0)
+ {
+ *error = LYNQ_TIME_OUT;
+ }
+ else if (memcmp(pReason, "WRONG_KEY", 9) == 0)
+ {
+ *error = LYNQ_PSW_ERROR;
+ }
+ else
+ {
+ *error = LYNQ_UNSPECIFIED_REASON;
+ }
+ *state = LYNQ_WIFI_STA_STATUS_DISCONNECT;
+ RLOGD("CTRL-EVENT-SSID-TEMP-DISABLED state:%d,error:%d\n",*state,*error);
+ return;
+ }
+ else
+ {
+ *error = LYNQ_UNSPECIFIED_REASON;
+ *state = LYNQ_WIFI_STA_STATUS_DISCONNECT;
+ return;
+ }
+
+ }
+
+ if (strstr(modify, "CTRL-EVENT-NETWORK-NOT-FOUND") != NULL)
+ {
+ *error = LYNQ_NOT_FIND_AP;
+ *state = LYNQ_WIFI_STA_STATUS_DISCONNECT;
+ RLOGD("CTRL-EVENT-NETWORK-NOT-FOUND state:%d,error:%d\n",*state,*error);
+ return;
+ }
+
+
+ if (strstr(modify, "CTRL-EVENT-ASSOC-REJECT") != NULL)
+ {
+ RLOGD("FIND CTRL EVENT : CTRL-EVENT-ASSOC-REJECT\n");
+ pReason = strstr(modify, "status_code=");
+ if (pReason != NULL)
+ {
+ pReason += strlen("status_code=");
+ if (memcmp(pReason, "17", 2) == 0)
+ {
+ *error = LYNQ_AP_UNABLE_HANDLE;
+ }
+ else if (memcmp(pReason, "1",1) == 0)
+ {
+ *error = LYNQ_UNSPECIFIED_REASON;
+ }
+ else
+ {
+ *error = LYNQ_UNSPECIFIED_REASON;
+ }
+
+ *state = LYNQ_WIFI_STA_STATUS_DISCONNECT;
+ RLOGD("CTRL-EVENT-ASSOC-REJECT BUT NOT STATUS_CODE NOT 1 or 17 state:%d,error:%d\n",*state,*error);
+ return;
+ }
+ else
+ {
+ RLOGD("FIND CTRL EVENT : CTRL-EVENT-ASSOC-REJECT BUT NOT FOUND STATUS_CODE\n");
+ *error = LYNQ_UNSPECIFIED_REASON;
+ *state = LYNQ_WIFI_STA_STATUS_DISCONNECT;
+ RLOGD("CTRL-EVENT-ASSOC-REJECT state:%d,error:%d\n",*state,*error);
+ return;
+ }
+ }
+
+ if (strstr(modify, "CTRL-EVENT-SAE-UNKNOWN-PASSWORD-IDENTIFIER") != NULL)
+ {
+ RLOGD("FIND CTRL EVENT : CTRL-EVENT-SAE-UNKNOWN-PASSWORD-IDENTIFIER\n");
+ *error = LYNQ_AUTHENTICATION_NO_LONGER_VALID;
+ *state = LYNQ_WIFI_STA_STATUS_DISCONNECT;
+ RLOGD("CTRL-EVENT-SAE-UNKNOWN-PASSWORD-IDENTIFIER state:%d,error:%d\n",*state,*error);
+ return;
+ }
+
+ if (strstr(modify, "CTRL-EVENT-DISCONNECTED") != NULL)
+ {
+ RLOGD("FIND CTRL EVENT : CTRL-EVENT-DISCONNECTED\n");
+ *error = LYNQ_WAIT_CONNECT_ACTIVE;
+ *state = LYNQ_WIFI_STA_STATUS_DISCONNECT;
+ RLOGD("CTRL-EVENT-DISCONNECTED state:%d,error:%d\n",*state,*error);
+ return;
+ }
+
+ RLOGD("EVENT : %s\n", modify);
+ *error = LYNQ_UNSPECIFIED_REASON;
+ *state = LYNQ_WIFI_STATUS_EGNORE;
+ RLOGD("LAST : STA state:%d,error:%d\n",*state,*error);
+ return;
+
+}
+
+static void notify_connect_status(lynq_wifi_sta_status_s state, error_number_s error)
+{
+ pthread_mutex_lock(&s_sta_callback_mutex);
+ if (g_sta_callback_func != NULL && state != LYNQ_WIFI_STATUS_EGNORE)
+ {
+ RLOGD("STAWatcherThreadProc callback begin ------> %d %d\n", state, error);
+ g_sta_callback_func(g_sta_callback_priv, state, error);
+ RLOGD("STAWatcherThreadProc callback end ------> %d %d\n", state, error);
+ }
+ pthread_mutex_unlock(&s_sta_callback_mutex);
+}
+
static void STAWatcherThreadProc() {
size_t len = MAX_RET;
char msg_notify[MAX_RET];
- char *pReason;
error_number_s error;
+ lynq_wifi_sta_status_s state, last_state = -1;
+ int idle_count = 0;
struct wpa_ctrl *lynq_wpa_ctrl = NULL;
g_sta_watcher_stop_flag = 0;
+ RLOGD("STAWatcherThreadProc thread started ------");
while (g_sta_watcher_stop_flag == 0)
{
- if (lynq_wpa_ctrl == NULL)
- {
- lynq_wpa_ctrl = wpa_ctrl_open(CTRL_PATH[CTRL_STA]);
- if (lynq_wpa_ctrl == NULL)
- {
- usleep(100*1000);
- continue;
- }
-
- wpa_ctrl_attach(lynq_wpa_ctrl);
- g_sta_watcher_started_flag = 1;
- }
-
- if ( 0 == wpa_ctrl_pending(lynq_wpa_ctrl))
- {
- usleep(100*1000);
+ if (check_pending_msg(&lynq_wpa_ctrl, CTRL_STA, &idle_count, &g_sta_watcher_started_flag) != 1)
+ {
continue;
}
+
memset(msg_notify, 0, MAX_RET);
len = MAX_RET;
if (!wpa_ctrl_recv(lynq_wpa_ctrl, msg_notify, &len))
- {
+ {
msg_notify[len+1] = '\0';
RLOGD("STAWatcherThreadProc sta ------> %s\n", msg_notify);
if (strstr(msg_notify, state_scan_result) != NULL)
- {
+ {
g_sta_scan_finish_flag = 1;
}
if (g_sta_callback_func == NULL)
- {
+ {
continue;
}
- error = -1;
- if (strstr(msg_notify, "CTRL-EVENT-SCAN-RESULTS") != NULL)
- {
- g_sta_callback_func(g_ap_callback_priv, LYNQ_WIFI_STA_STATUS_SCAN_RESULT, error);
- }
- else if (strstr(msg_notify, "CTRL-EVENT-CONNECTED") != NULL)
- {
- g_sta_callback_func(g_ap_callback_priv, LYNQ_WIFI_STA_STATUS_CONNECT, error);
- }
- else if (strstr(msg_notify, "CTRL-EVENT-SSID-TEMP-DISABLED") != NULL)
- {
- pReason = strstr(msg_notify, "reason=");
- if (pReason != NULL)
- {
- pReason += strlen("reason=");
- if (memcmp(pReason, "CONN_FAILED", 11) == 0)
- {
- error = LYNQ_TIME_OUT;
+ get_state_error(msg_notify,&state,&error);
+ notify_connect_status(state, error);
+
+ if (state != LYNQ_WIFI_STA_STATUS_SCAN_RESULT)
+ {
+ inner_check_connect_error(msg_notify, state, error);
+ if (last_state != state)
+ {
+ if (state == LYNQ_WIFI_STA_STATUS_CONNECT)
+ {
+ system_call_v("%s %s", sta_status_change_script, "connect");
}
- else if (memcmp(pReason, "WRONG_KEY", 9) == 0)
- {
- error = LYNQ_PSW_ERROR;
+ else if (state == LYNQ_WIFI_STA_STATUS_DISCONNECT)
+ {
+ system_call_v("%s %s", sta_status_change_script, "disconnect");
}
- g_sta_callback_func(g_ap_callback_priv, LYNQ_WIFI_STA_STATUS_DISCONNECT, error);
}
- }
- else if (strstr(msg_notify, "CTRL-EVENT-DISCONNECTED") != NULL)
- {
- g_sta_callback_func(g_ap_callback_priv, LYNQ_WIFI_STA_STATUS_DISCONNECT, error);
- }
- else if (strstr(msg_notify, "CTRL-EVENT-NETWORK-NOT-FOUND") != NULL)
- {
- g_sta_callback_func(g_ap_callback_priv, LYNQ_WIFI_STA_STATUS_DISCONNECT, LYNQ_NOT_FIND_AP);
+
+ last_state = state;
}
}
}
@@ -337,6 +706,127 @@
}
}
+// this thread will not exit when lynq_wifi_disable called,to avoid dead lock,take care
+static void GlobalWatcherThreadProc()
+{
+ int ret, connect_timeout, service_abnormal;
+ error_number_s error_num = -1;
+ inner_sta_status_s sta_status;
+ scan_info_s *scan_list = NULL;
+ int i, scan_len=0;
+ char connecting_ssid[64];
+ struct timeval now;
+
+ RLOGD("GlobalWatcherThreadProc start to run");
+
+ while (1)
+ {
+ pthread_mutex_lock(&s_global_check_mutex);
+ pthread_cond_wait(&s_global_check_cond,&s_global_check_mutex);
+ if (s_sta_status == INNER_STA_STATUS_CONNECTED)
+ {
+ pthread_mutex_unlock(&s_global_check_mutex);
+ usleep(50*1000);
+ notify_connect_status(LYNQ_WIFI_STA_STATUS_CONNECT, 0);
+ continue;
+ }
+
+ connect_timeout = 0;
+ service_abnormal = 0;
+ if (s_sta_status >= INNER_STA_STATUS_CONNECTING && s_sta_status < INNER_STA_STATUS_CONNECTED)
+ {
+ while (1)
+ {
+ ret = pthread_cond_timedwait(&s_global_check_cond, &s_global_check_mutex, &s_sta_connect_timeout);
+ if (ret == ETIME)
+ {
+ connect_timeout = 1;
+ }
+ else if (ret != 0)
+ {
+ gettimeofday(&now,NULL);
+ if (now.tv_sec < s_sta_connect_timeout.tv_sec) //time not arrive
+ {
+ usleep(SLEEP_TIME_ON_IDLE);
+ continue;
+ }
+ connect_timeout = 1;
+ }
+ sta_status = s_sta_status;
+ error_num = s_sta_error_number;
+ s_sta_status = INNER_STA_STATUS_INIT;
+ strcpy(connecting_ssid, s_sta_current_connecting_ssid);
+ memset(&s_sta_connect_timeout, 0, sizeof (s_sta_connect_timeout));
+ memset(&s_sta_current_connecting_ssid, 0, sizeof (s_sta_current_connecting_ssid));
+ break;
+ }
+ }
+ if (s_service_invoke_timeout_cnt > 10)
+ {
+ service_abnormal = 1;
+ s_service_invoke_timeout_cnt = 0;
+ }
+ pthread_mutex_unlock(&s_global_check_mutex);
+
+ if (service_abnormal == 1)
+ {
+ sleep(1);
+ RLOGE("wpa service is abnormal info app to exit");
+ notify_connect_status(LYNQ_WIFI_STA_SERVICE_ABNORMAL, -1);
+
+ inner_notify_ap_msg(LYNQ_WIFI_SERVICE_ABNORMAL);
+
+ sleep(FAKE_MAX_INT_VALUE); // wait process to exit
+ }
+
+ if (sta_status == INNER_STA_STATUS_CANCEL)
+ {
+ continue;
+ }
+ else if (sta_status == INNER_STA_STATUS_CONNECTED)
+ {
+ notify_connect_status(LYNQ_WIFI_STA_STATUS_CONNECT, 0);
+ }
+ else if (connect_timeout == 0 && error_num == LYNQ_NOT_FIND_AP) // not found ap maybe mismatch auth
+ {
+ if (0 == lynq_get_scan_list(0, &scan_list, &scan_len) && NULL != scan_list) // if not found, but scan result exist, maybe auth error
+ {
+ for(i=0; i < scan_len;i++)
+ {
+ if (strcmp(scan_list[i].ssid, connecting_ssid) == 0)
+ {
+ error_num = LYNQ_AUTH_ERROR;
+ break;
+ }
+ }
+ free(scan_list);
+ }
+ notify_connect_status(LYNQ_WIFI_STA_STATUS_CONNECT_FAIL, error_num);
+ }
+ else if (connect_timeout == 0)
+ {
+ notify_connect_status(LYNQ_WIFI_STA_STATUS_CONNECT_FAIL, error_num);
+ }
+ else // wait timeout
+ {
+ if (0 != lynq_get_sta_status(LYNQ_WIFI_INTERFACE_0, &sta_status)) // get status fail
+ {
+ ; // wpa service abnormal
+ }
+ else if (sta_status == LYNQ_WIFI_STA_STATUS_ENABLE) // connect ok
+ {
+ RLOGD("GlobalWatcherThreadProc notify connected");
+ notify_connect_status(LYNQ_WIFI_STA_STATUS_CONNECT, 0);
+ }
+ else
+ {
+ RLOGD("GlobalWatcherThreadProc notify timeout");
+ notify_connect_status(LYNQ_WIFI_STA_STATUS_CONNECT_FAIL, LYNQ_TIME_OUT);
+ }
+ }
+ } // while (1)
+}
+
int lynq_wifi_enable(void)
{
int ret = 0;
@@ -349,15 +839,7 @@
goto out_enable;
}
- const char * cmd_check_service =
- "state=`systemctl is-active wg870_drv_insmod.service`\n"
- "[ \"\"$state == \"active\" ] && exit 0\n"
- "[ \"\"$state == \"inactive\" ] && systemctl start wg870_drv_insmod.service\n";
-// if (g_lynq_wpa_ctrl[0] != NULL && g_lynq_wpa_ctrl[1] != NULL) {
-// return 0;
-// }
-
- ret = system(cmd_check_service);
+ ret = system(start_wg870_service_script);
if (ret != 0)
{
//printf("service state %d\n", ret);
@@ -366,80 +848,16 @@
goto out_enable;
}
- RLOGD("check service state is OK");
- for (i=0; i<10; i++)
+ if (g_global_watcher_pid == 0 ) // this thread will not exit when lynq_wifi_disable called,to avoid dead lock,take care
{
- if (system("connmanctl technologies | grep -q \"/net/connman/technology/wifi\"") == 0) {
- break;
- }
- usleep(300*1000);
- }
-
- if (i >= 10)
- {
- RLOGE("[wifi error] check connman technologies no wifi");
- ret = -1;
- goto out_enable;
- }
-
- //@todo delete add temp check for socket avilable start (20220606)
- for (i=0; i<60; i++)
- {
- if (system("netstat -an | grep -q DGRAM") == 0) {
- break;
- }
- sleep(1);
- }
-
- if (i >= 60)
- {
- ret = -1;
- goto out_enable;
- }
- //@todo delete add temp check for socket avilable end (20220606)
-
- if (0 != system("ifconfig | grep -q ap0"))
- {
- system("connmanctl enable wifi");
- usleep(300*1000);
- system("wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=wlan0 disconnect");
- system("wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=wlan0 DRIVER interface_create ap0");
- usleep(300*1000);
- system("connmanctl tether wifi on lynq 1qaz@WSX#$%^");
- usleep(300*1000);
- system("wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=ap0 disconnect");
- }
- if (g_ap_watcher_pid == 0 )
- {
- ret=pthread_create(&g_ap_watcher_pid,NULL,APWatcherThreadProc,NULL);
+ ret=pthread_create(&g_global_watcher_pid,NULL,GlobalWatcherThreadProc,NULL);
if(ret<0)
- {
- RLOGE("[wifi error]creat APWatcherThreadProc fail");
+ {
+ RLOGE("[wifi error]creat GlobalWatcherThreadProc fail");
ret = -1;
goto out_enable;
}
}
-
- RLOGD("creat APWatcherTheradProc susccs");
- if (g_sta_watcher_pid == 0 ) {
- ret=pthread_create(&g_sta_watcher_pid,NULL,STAWatcherThreadProc,NULL);
- if(ret<0)
- {
- RLOGE("[wifi error]creat STAWatcherThreadProc fail");
- ret = -1;
- goto out_enable;
- }
- }
-
- RLOGD("creat STAWatcherTheradProc susccs");
- for (i=0; i<10; i++)
- {
- usleep(300*1000);
- if (g_ap_watcher_started_flag == 1 && g_sta_watcher_started_flag == 1)
- {
- break;
- }
- }
g_lynq_wpa_ctrl[0] = malloc(sizeof (struct local_wpa_ctrl));
g_lynq_wpa_ctrl[1] = malloc(sizeof (struct local_wpa_ctrl));
@@ -640,6 +1058,8 @@
*str = '\0';
}
+ results[ret] = NULL;
+
return ret;
}
@@ -665,6 +1085,9 @@
static int inner_get_hostname_by_ip(char *ip, char *hostname) {
struct in_addr addr ={0};
struct hostent *ht;
+ char cmd[64] = {0};
+ char * p;
+ int ret;
if (ip == NULL || *ip == '\0' || hostname == NULL)
{
@@ -683,6 +1106,19 @@
if (ht == NULL)
{
+ hostname[0] = '\0';
+ sprintf(cmd, "grep -F '%s' /run/wg870/ap0.lease | awk '{print $4}' | tail -1", ip);
+ ret = exec_cmd(cmd, hostname, 32);
+ if (ret == 0)
+ {
+ p = strchr(hostname, '\n');
+ if (p != NULL)
+ {
+ *p = '\0';
+ }
+ return 0;
+ }
+ hostname[0] = '\0';
RLOGE("---gethostbyaddr fail\n");
herror(NULL);
return -1;
@@ -886,6 +1322,7 @@
return -1;
}
+static int inner_get_network_auth(int interface, int net_no, lynq_wifi_auth_s *auth);
static int inner_get_status_info(int interface, curr_status_info *curr_state) {
int i, count;
char *p;
@@ -916,24 +1353,24 @@
for(i=0; i < count; i++)
{
if (curr_state->ap != NULL)
- {
+ {
p = strstr(split_lines[i], FLAG_SBSID);
if (p != NULL)
- {
+ {
strncpy(curr_state->ap->ap_mac, p + strlen(FLAG_SBSID), sizeof(curr_state->ap->ap_mac));
ret = 0;
continue;
}
p = strstr(split_lines[i], FLAG_SSID);
if (p != NULL)
- {
+ {
inner_copy_ssid(curr_state->ap->ap_ssid, p + strlen(FLAG_SSID), sizeof (curr_state->ap->ap_ssid));
ret = 0;
continue;
}
p = strstr(split_lines[i], FLAG_KEY_MGMT);
if (p != NULL)
- {
+ {
curr_state->ap->auth = convert_auth_from_key_mgmt(p + strlen(FLAG_KEY_MGMT));
RLOGD("inner_get_status_info: key_mgmt %d, -- %s\n", curr_state->ap->auth, p);
ret = 0;
@@ -941,24 +1378,24 @@
}
p = strstr(split_lines[i], FLAG_FREQ);
if (p != NULL)
- {
+ {
curr_state->ap->band = convert_band_from_freq(atoi( p + strlen(FLAG_FREQ)));
ret = 0;
continue;
}
p = strstr(split_lines[i], FLAG_IPADDR);
if (p != NULL)
- {
+ {
strncpy(curr_state->ap->ap_ip, p + strlen(FLAG_IPADDR), sizeof(curr_state->ap->ap_ip));
ret = 0;
continue;
}
} // end if (ap != NULL)
if (curr_state->state != NULL)
- {
+ {
p = strstr(split_lines[i], FLAG_STATE);
if (p != NULL)
- {
+ {
strcpy(curr_state->state, p + strlen(FLAG_STATE));
ret = 0;
continue;
@@ -966,17 +1403,21 @@
} //end else if (state != NULL)
if ((p = strstr(split_lines[i], FLAG_ID)) == split_lines[i])
- {
+ {
ret = 0;
curr_state->net_no = atoi(p + strlen(FLAG_ID));
RLOGD("inner_get_status_info:net_no %d, -- %s\n", curr_state->net_no, p);
}
}
+ if (ret == 0 && curr_state->ap != NULL && curr_state->net_no >= 0) // auth may not right when add wpa3
+ {
+ inner_get_network_auth(interface, curr_state->net_no, &curr_state->ap->auth);
+ }
+
return ret;
}
-
int lynq_wifi_ap_ssid_set(lynq_wifi_index_e idx,char *ap_ssid)
{
RLOGD("enter lynq_wifi_ap_ssid_set");
@@ -1489,6 +1930,49 @@
return 0;
}
+static int inner_check_ap_connected(lynq_wifi_index_e idx, int retry_count)
+{
+ char status[64];
+ char LYNQ_WIFI_CMD[32]={0};
+ curr_status_info curr_state;
+
+ CHECK_WPA_CTRL(CTRL_AP);
+
+ memset(status, 0, sizeof (status));
+
+ curr_state.ap = NULL;
+ curr_state.state = status;
+
+ printf("inner_check_ap_connected %d\n", retry_count);
+ usleep(500*1000);
+ if (0 == inner_get_status_info(idx, &curr_state))
+ {
+ if (strcmp(status, STATE_COMPLETED) == 0)
+ {
+ return 0;
+ }
+ else if (retry_count == 4) //not ok in 2s, do reconnect
+ {
+ DO_REQUEST("RECONNECT");
+ return inner_check_ap_connected(idx, retry_count+1);
+ }
+ else if (retry_count > 20)
+ {
+ printf("retry 10 time\n");
+ return -1;
+ }
+ else
+ {
+ if (strcmp(status, STATE_DISCONNECTED) == 0)
+ {
+ sprintf(LYNQ_WIFI_CMD,"SELECT_NETWORK %d",AP_NETWORK_0);
+ DO_REQUEST(LYNQ_WIFI_CMD);
+ }
+ return inner_check_ap_connected(idx, retry_count+1);
+ }
+ }
+ return -1;
+}
int lynq_wifi_ap_start(lynq_wifi_index_e idx)
{
@@ -1500,11 +1984,11 @@
CHECK_WPA_CTRL(CTRL_AP);
-// system("connmanctl enable wifi");
-// system("connmanctl tether wifi on cy-test 12345678");
-// system("ifconfig wlan0 down");
-// system("ifconfig wlan0 up");
-// system("ifconfig wlan0 up");
+ if (inner_get_ap_interface_name() == NULL)
+ {
+ RLOGE("lynq_wifi_ap_start get ap name fail");
+ return -1;
+ }
//DO_OK_FAIL_REQUEST(lynq_remove_all_cmd);
//DO_OK_FAIL_REQUEST(lynq_reconfig_cmd);
@@ -1512,6 +1996,20 @@
sprintf(LYNQ_WIFI_CMD,"SELECT_NETWORK %d",AP_NETWORK_0);
DO_OK_FAIL_REQUEST(LYNQ_WIFI_CMD);
+ ret = system_call_v("%s %s", start_stop_ap_script, "start");
+ if (ret != 0)
+ {
+ RLOGE("lynq_wifi_ap_start excute script fail");
+ return -1;
+ }
+
+ if (inner_check_ap_connected(idx, 0) != 0)
+ {
+ return -1;
+ }
+
+ check_tether_and_notify();
+
return 0;
}
@@ -1533,7 +2031,14 @@
DO_OK_FAIL_REQUEST(LYNQ_WIFI_CMD);
// system("connmanctl tether wifi off");
-
+
+ ret = system_call_v("%s %s", start_stop_ap_script, "stop");
+ if (ret != 0)
+ {
+ RLOGE("lynq_wifi_ap_start excute script fail");
+ return -1;
+ }
+
return 0;
}
@@ -1748,24 +2253,33 @@
if (*auth == LYNQ_WIFI_AUTH_WPA_PSK)
{
if (inner_get_param(interface, net_no, "proto", lynq_proto_str) == 0)
- {
+ {
if (strcmp(lynq_proto_str, "RSN") == 0)
- {
+ {
*auth = LYNQ_WIFI_AUTH_WPA2_PSK;
return 0;
}
+ else if (strcmp(lynq_proto_str, "WPA") == 0) // need compare when wpa3 supported
+ {
+ return 0;
+ }
}
}
+ else if (*auth == LYNQ_WIFI_AUTH_OPEN || *auth == LYNQ_WIFI_AUTH_WEP)
+ {
+ return 0;
+ }
+
if (inner_get_param(interface, net_no,"ieee80211w",lynq_auth_str) !=0)
{
- RLOGE("check ieee80211w error\n");
+ RLOGE("check ieee80211w error\n");
return -1;
}
if ( strncmp(lynq_auth_str,"1",1) == 0 )
{
- *auth = LYNQ_WIFI_AUTH_WPA2_WPA3_PSK;
- return 0;
+ *auth = LYNQ_WIFI_AUTH_WPA2_WPA3_PSK;
+ return 0;
}else if( strncmp(lynq_auth_str,"2",1) == 0 )
{
@@ -1773,6 +2287,7 @@
return 0;
}else
{
+ RLOGE("check ieee80211w error, not 1 or 2\n");
*auth = -1;
return -1;
}
@@ -1831,10 +2346,11 @@
char *split_lines[128] = {0};
char *buff, *p, *ssid, *ssid_end_flag;
char tmp_ssid[128]={0};
- RLOGD("enter lynq_sta_ssid_password_get");
+ RLOGD("enter lynq_sta_ssid_password_get");
network_len = 0;
p = NULL;
+ buff = NULL;
CHECK_IDX(idx, CTRL_STA);
@@ -1851,46 +2367,62 @@
return -1;
}
- buff = alloca(MAX_RET);
+ fseek(fp, 0, SEEK_END);
+ len = ftell(fp);
+ buff = malloc(len + 1);
+
+ if (buff == NULL)
+ {
+ RLOGE("[lynq_sta_ssid_password_get] malloc memory [%d] fail\n", len);
+ return -1;
+ }
+
fseek(fp, 0, SEEK_SET);
- len = fread(buff, 1, MAX_RET, fp);
+ len = fread(buff, 1, len, fp);
fclose(fp);
for(index=0; index < len; index ++)
{
for(; index < len; index ++)
- {
+ {
if (memcmp(buff + index, "network={", 9) != 0)
- {
+ {
continue;
}
- p = buff + index + 9;
- for (; index < len; index ++ )
- {
- if (buff[index] != '}')
- {
- continue;
- }
- buff[index] = '\0';
- break;
- }
- network_len = buff + index - p;
- break;
+ p = buff + index + 9;
+ for (; index < len; index ++ )
+ {
+ if (buff[index] != '}')
+ {
+ continue;
+ }
+ buff[index] = '\0';
+ break;
+ }
+ network_len = buff + index - p;
+ break;
}
if (p == NULL)
+ {
+ if (buff != NULL)
+ {
+ free(buff);
+ }
+
return -1;
+ }
ssid = strstr(p, "ssid=");
if (ssid != NULL) {
ssid += strlen("ssid=");
if (ssid[0] == '\"')
- {
+ {
if (memcmp(ssid + 1, ap->ap_ssid, strlen(ap->ap_ssid)) == 0 && ssid[strlen(ap->ap_ssid) + 1] == '\"')
break;
}
else
- {
+ {
ssid_end_flag = strstr(ssid, "\n");
if (ssid_end_flag != NULL)
{
@@ -1909,6 +2441,10 @@
if (index >= len || NULL == p || network_len <= 0)
{
+ if (buff != NULL)
+ {
+ free(buff);
+ }
return -1;
}
@@ -1919,23 +2455,23 @@
{
p = strstr(split_lines[index], "psk=");
if (p != NULL)
- {
+ {
p += 4;
if (*p == '\"')
- {
+ {
p++;
}
}
else if (NULL != (p = strstr(split_lines[index], "wep_key0=")))
- {
+ {
p += 9;
if (*p == '\"')
- {
+ {
p++;
}
}
else
- {
+ {
continue;
}
@@ -1945,9 +2481,9 @@
p = password;
while(password - p < 64 && *password != '\0')
- {
+ {
if (*password == '\"')
- {
+ {
*password = '\0';
break;
}
@@ -1957,6 +2493,11 @@
break;
} //end for(index=0; index < count; index++)
+ if (buff != NULL)
+ {
+ free(buff);
+ }
+
return ret;
}
@@ -2076,6 +2617,7 @@
{
info->status = LYNQ_WIFI_AP_STATUS_DISABLE;
}
+ lynq_get_connect_ap_ip(idx, info->base_info.ap_ip);
lynq_get_connect_ap_rssi(idx, &info->rssi);
lynq_sta_ssid_password_get(idx, & info->base_info, info->base_info.psw);
return 0;
@@ -2214,7 +2756,7 @@
case LYNQ_WIFI_AUTH_WPA3_PSK:
{
sprintf(lynq_auth_cmd,"SET_NETWORK %d ieee80211w 2",net_no);
- sprintf(lynq_ket_mgmt_cmd,"SET_NETWORk %d key_mgmt SAE",net_no);
+ sprintf(lynq_ket_mgmt_cmd,"SET_NETWORK %d key_mgmt SAE",net_no);
sprintf(lynq_pairwise_cmd,"SET_NETWORK %d pairwise CCMP", net_no);
sprintf(lynq_psk_cmd, "SET_NETWORK %d psk \"%s\"", net_no, password);
@@ -2260,11 +2802,15 @@
return inner_get_network_auth(CTRL_STA, net_no, auth);
}
-int lynq_wifi_sta_connect(lynq_wifi_index_e idx, char *ssid, lynq_wifi_auth_s auth, char *psw)
+int lynq_wifi_sta_connect_timeout(lynq_wifi_index_e idx, char *ssid, lynq_wifi_auth_s auth, char *psw, int timeout)
{
int count, net_no, index;
int net_no_list[128];
+ char rm_net_cmd[128];
lynq_wifi_auth_s net_auth;
+ curr_status_info curr_state;
+ ap_info_s ap_info;
+ char status[64];
if (ssid == NULL || *ssid == '\0')
{
@@ -2275,39 +2821,84 @@
if (LYNQ_WIFI_AUTH_OPEN != auth)
{
if (psw == NULL || strlen(psw) < 8 || strlen(psw) >= 64)
- {
+ {
RLOGE("bad password\n");
return -1;
}
}
+
+ pthread_mutex_lock(&s_global_check_mutex);
+ if (s_sta_status != INNER_STA_STATUS_INIT)
+ {
+ s_sta_status = INNER_STA_STATUS_CANCEL;
+ pthread_cond_signal(&s_global_check_cond);
+ }
+ pthread_mutex_unlock(&s_global_check_mutex);
+
CHECK_IDX(idx, CTRL_STA);
+ CHECK_WPA_CTRL(CTRL_STA);
net_no = -1;
- count = lynq_get_network_number_list(idx, CTRL_STA, net_no_list, ssid);
+ memset(&ap_info, 0, sizeof (ap_info));
+ memset(status, 0, sizeof (status));
- for (index=0; index < count; index++)
+ curr_state.ap = &ap_info;
+ curr_state.state = status;
+
+ if (0 == inner_get_status_info(CTRL_STA, &curr_state) && curr_state.net_no >= 0)
{
- net_auth = -1;
- if (0 == inner_get_network_auth(CTRL_STA, net_no_list[index], &net_auth) && net_auth == auth)
- {
- net_no = net_no_list[index];
- break;
+ if (strcmp(status, STATE_COMPLETED) == 0 && strcmp(ap_info.ap_ssid, ssid) ==0 && ap_info.auth == auth)
+ {
+ net_no = curr_state.net_no;
+ if (0 == lynq_sta_ssid_password_get(idx, &ap_info, ap_info.psw)
+ && strcmp(ap_info.psw, psw) == 0)
+ {
+ RLOGD("already connected\n");
+
+ pthread_mutex_lock(&s_global_check_mutex);
+ s_sta_status = INNER_STA_STATUS_CONNECTED;
+ pthread_cond_signal(&s_global_check_cond);
+ pthread_mutex_unlock(&s_global_check_mutex);
+ return 0;
+ }
}
}
- if (net_no < 0)
+ if (net_no == -1)
{
- net_no = lynq_add_network(CTRL_STA);
- if (net_no == -1)
- {
- return -1;
+ count = lynq_get_network_number_list(idx, CTRL_STA, net_no_list, ssid);
+
+ for (index=0; index < count; index++)
+ {
+ net_auth = -1;
+ if (0 == inner_get_network_auth(CTRL_STA, net_no_list[index], &net_auth) && net_auth == auth)
+ {
+ net_no = net_no_list[index];
+ break;
+ }
}
- RLOGD("net no is %d\n", net_no);
- if (0 != inner_set_sta_ssid(net_no, ssid))
- {
- return -1;
+ if (net_no < 0)
+ {
+ count = lynq_get_network_number_list(idx, CTRL_STA, net_no_list, NULL);
+ for ( index = 0; index < (count - STA_MAX_SAVED_AP_NUM + 1 ) ;index++) //+1 is for add new network
+ {
+ sprintf(rm_net_cmd,"REMOVE_NETWORK %d",net_no_list[index]);
+ RLOGD("call cmd rm_net_cmd: %s;index is %d\n",rm_net_cmd,index);
+ DO_OK_FAIL_REQUEST(rm_net_cmd);
+ }
+ net_no = lynq_add_network(CTRL_STA);
+ if (net_no == -1)
+ {
+ return -1;
+ }
+
+ RLOGD("net no is %d\n", net_no);
+ if (0 != inner_set_sta_ssid(net_no, ssid))
+ {
+ return -1;
+ }
}
}
@@ -2316,7 +2907,28 @@
return -1;
}
- return inner_sta_start_stop(net_no, 1, 1);
+
+ DO_OK_FAIL_REQUEST(cmd_disconnect);
+ system("echo \"\" > /tmp/wlan0_dhcpcd_router");
+ usleep(200*1000);
+
+ ret = inner_sta_start_stop(net_no, 1, 1);
+
+ pthread_mutex_lock(&s_global_check_mutex);
+ s_sta_status = INNER_STA_STATUS_CONNECTING;
+ strcpy(s_sta_current_connecting_ssid, ssid);
+ struct timeval now;
+ gettimeofday(&now,NULL);
+ s_sta_connect_timeout.tv_sec = now.tv_sec + timeout;
+ s_sta_connect_timeout.tv_nsec = now.tv_usec*1000;
+ pthread_cond_signal(&s_global_check_cond);
+ pthread_mutex_unlock(&s_global_check_mutex);
+ return ret;
+}
+
+int lynq_wifi_sta_connect(lynq_wifi_index_e idx, char *ssid, lynq_wifi_auth_s auth, char *psw)
+{
+ return lynq_wifi_sta_connect_timeout(idx, ssid, auth, psw, MAX_CONNNECT_TIME);
}
int lynq_wifi_sta_disconnect(lynq_wifi_index_e idx, char *ssid)
@@ -2346,6 +2958,9 @@
return 0;
}
+ pthread_mutex_lock(&s_global_check_mutex);
+ s_sta_status = INNER_STA_STATUS_DISCONNECTING;
+ pthread_mutex_unlock(&s_global_check_mutex);
return inner_sta_start_stop(curr_state.net_no, 0, 0);
}
@@ -2360,45 +2975,64 @@
CHECK_IDX(idx, CTRL_STA);
CHECK_WPA_CTRL(CTRL_STA);
- system("connmanctl enable wifi");
-
- if (system("ifconfig | grep -q wlan0") != 0)
+ ret = system_call_v("%s %s", start_stop_sta_script, "start");
+ if (ret != 0)
{
+ RLOGE("lynq_wifi_ap_start excute script fail");
return -1;
}
-// DO_OK_FAIL_REQUEST(cmd_remove_all);
-// system(lynq_first_sta_cmd);
-// system(lynq_reconfigure_cmd);
-// DO_OK_FAIL_REQUEST(lynq_reconnect_cmd);
system(lynq_enable_sta_cmd);
system(lynq_reconnect_cmd);
// DO_OK_FAIL_REQUEST(lynq_reconnect_cmd);
return 0;
}
+static int inner_get_status_info_state (int interface, char *state) {
+ curr_status_info curr_state;
+ curr_state.ap = NULL;
+ curr_state.state = state;
+ return inner_get_status_info(interface, &curr_state);
+}
+
int lynq_wifi_sta_stop(lynq_wifi_index_e idx)
{
// char lynq_disable_network_cmd[MAX_CMD];
// curr_status_info curr_state;
// ap_info_s ap_info;
+ int i=0;
+ char state[MAX_CMD];
- const char * lynq_disable_sta_cmd = "wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=wlan0 disable_net all";
+// const char * lynq_disable_sta_cmd = "wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=wlan0 disable_net all";
CHECK_IDX(idx, CTRL_STA);
CHECK_WPA_CTRL(CTRL_STA);
-// curr_state.ap = &ap_info;
-// curr_state.state = NULL;
-
-// if (0 != inner_get_status_info(CTRL_STA, &curr_state) || curr_state.net_no < 0) {
-// return 0;
-// }
-
-// sprintf(lynq_disable_network_cmd, "DISABLE_NETWORK %d", curr_state.net_no);
-// DO_OK_FAIL_REQUEST(lynq_disable_network_cmd);
- system(lynq_disable_sta_cmd);
+// system(lynq_disable_sta_cmd);
+ DO_OK_FAIL_REQUEST(cmd_disconnect);
DO_OK_FAIL_REQUEST(cmd_save_config);
+ ret = system_call_v("%s %s", start_stop_sta_script, "stop");
+ if (ret != 0)
+ {
+ RLOGE("lynq_wifi_ap_start excute script fail");
+ return -1;
+ }
+
+ for (i=0; i < 30; i++) // to check if sta is realy stoped
+ {
+ if (inner_get_status_info_state(idx, state) != 0)
+ {
+ break;
+ }
+
+ if (memcmp(state, STATE_DISCONNECTED, strlen (STATE_DISCONNECTED)) == 0)
+ {
+ break;
+ }
+ RLOGD("lynq_wifi_ap_start curr state %s", state);
+ usleep(SLEEP_TIME_ON_IDLE);
+ }
+
return 0;
// return system("connmanctl disable wifi");
}
@@ -2455,21 +3089,22 @@
CHECK_WPA_CTRL(CTRL_AP);
-// ap_info_s * tmp_ap;
-// device_info_s * tmp_list;
+ // ap_info_s * tmp_ap;
+ // device_info_s * tmp_list;
if (ap == NULL || list == NULL || len == NULL)
{
RLOGE("bad input param");
return -1;
}
-// ap = &tmp_ap;
-// list = &tmp_list;
+ // ap = &tmp_ap;
+ // list = &tmp_list;
*ap = malloc(sizeof (ap_info_s));
+ memset(*ap, 0, sizeof (ap_info_s));
- if (inner_get_status_info_ap (CTRL_AP, *ap) != 0)
+ if (inner_get_status_info_ap (CTRL_AP, *ap) != 0 || (*ap)->ap_ssid[0] == '\0')
{
- RLOGE("inner_get_status_info_ap !=0\n");
+ RLOGE("inner_get_status_info_ap !=0 or ap_ssid is empty\n");
return -1;
}
@@ -2482,7 +3117,7 @@
while (reply_len > 0)
{
if (memcmp(cmd_reply, "FAIL", 4) == 0)
- {
+ {
break;
}
line_count = lynq_split(cmd_reply, reply_len, '\n', split_lines);
@@ -2494,7 +3129,7 @@
cmd_reply[0] = '\0';
ret = local_wpa_ctrl_request(lynq_wpa_ctrl, lynq_next_sta_cmd, strlen(lynq_next_sta_cmd), cmd_reply, &reply_len, NULL);
if (ret != 0 || memcmp(cmd_reply, "FAIL", 4) == 0)
- {
+ {
RLOGD("run %s fail \n", lynq_next_sta_cmd);
break;
}
@@ -2554,6 +3189,7 @@
for(index = 1;index < count; index++)
{
RLOGD("---- %s\n",split_lines[index]);
+ memset(split_words, 0 , sizeof (split_words));
count_words = lynq_split(split_lines[index], strlen(split_lines[index]), '\t', split_words);
if (count_words < 4)
continue;
@@ -2564,7 +3200,14 @@
p->band = convert_band_from_freq(atoi(split_words[1]));
p->rssi = -1 * atoi( split_words[2]);
p->auth = convert_max_auth_from_flag(split_words[3]);
- inner_copy_ssid(p->ssid, split_words[4], sizeof (p->ssid));
+ if (count_words == 4) // ssid hided
+ {
+ p->ssid[0] = '\0';
+ }
+ else
+ {
+ inner_copy_ssid(p->ssid, split_words[4], sizeof (p->ssid));
+ }
}
return 0;
@@ -2632,29 +3275,36 @@
count = lynq_get_network_number_list(idx, CTRL_STA, net_no_list, NULL);
RLOGD("[lynq_get_sta_saved_ap]count is %d\n", count);
+ if (count < 0)
+ {
+ RLOGE("list network fail");
+ return count;
+ }
+ else if (count == 0)
+ {
+ *list = NULL;
+ *len = 0;
+ return 0;
+ }
+
*list = malloc(sizeof (saved_ap_info_s) * count);
memset(*list, 0, sizeof (saved_ap_info_s) * count);
*len = count;
for (index=0; index < count; index++)
{
- RLOGD("[lynq_get_sta_saved_ap]to get ssid %d", index);
- RLOGD("[lynq_get_sta_saved_ap][inner_get_param]to get ssid");
inner_get_param(CTRL_STA, net_no_list[index], "ssid", (*list)[index].base_info.ap_ssid);
- RLOGD("[lynq_get_sta_saved_ap][inner_get_param]to get mac");
inner_get_param(CTRL_STA, net_no_list[index], "bssid", (*list)[index].base_info.ap_mac);
- RLOGD("[lynq_get_sta_saved_ap][inner_get_param]to get auth");
inner_get_network_auth(CTRL_STA, net_no_list[index], &(*list)[index].base_info.auth);
- RLOGD("[lynq_get_sta_saved_ap][inner_get_param]to get band");
if (inner_get_param(CTRL_STA, net_no_list[index], "frequency", freq) == 0)
- {
+ {
(*list)[index].base_info.band = convert_band_from_freq(atoi(freq));
}
else
- {
+ {
(*list)[index].base_info.band = -1;
}
- RLOGD("[lynq_get_sta_saved_ap][inner_get_param]to get psw");
+ RLOGD("[lynq_get_sta_saved_ap][inner_get_param]to get psw");
lynq_sta_ssid_password_get(idx, & (*list)[index].base_info, (*list)[index].base_info.psw);
}
RLOGD("[lynq_get_sta_saved_ap] return ok");
@@ -2670,7 +3320,11 @@
CHECK_WPA_CTRL(CTRL_STA);
- system(clean_last_re);
+ if (g_sta_scan_finish_flag == 1 && s_sta_status == INNER_STA_STATUS_INIT) // temp add
+ {
+ RLOGD("tmp clear scanlist");
+ system(clean_last_re);
+ }
g_sta_scan_finish_flag = 0;
DO_REQUEST(lynq_scan_cmd);
if (reply_len >=9 && memcmp(cmd_reply, "FAIL-BUSY", 9) == 0 )
@@ -2692,19 +3346,39 @@
return -1;
}
+ pthread_mutex_lock(&s_ap_callback_mutex);
g_ap_callback_priv = priv;
g_ap_callback_func = cb;
+ pthread_mutex_unlock(&s_ap_callback_mutex);
+
+ pthread_mutex_lock(&s_check_wpa_ctrl_mutex);
+ if (g_ap_watcher_pid == 0 )
+ {
+ if(pthread_create(&g_ap_watcher_pid,NULL,APWatcherThreadProc,NULL) < 0)
+ {
+ g_ap_watcher_pid = 0;
+ pthread_mutex_unlock(&s_check_wpa_ctrl_mutex);
+ RLOGE("[wifi error]creat APWatcherThreadProc fail");
+ return -1;
+ }
+ }
+
+ pthread_mutex_unlock(&s_check_wpa_ctrl_mutex);
+ RLOGD("creat APWatcherTheradProc susccs");
return 0;
}
int lynq_unreg_ap_event_callback(void * priv) {
+ pthread_mutex_lock(&s_ap_callback_mutex);
if (g_ap_callback_priv == priv)
{
g_ap_callback_func = NULL;
g_ap_callback_priv = NULL;
+ pthread_mutex_unlock(&s_ap_callback_mutex);
return 0;
}
+ pthread_mutex_unlock(&s_ap_callback_mutex);
return -1;
}
@@ -2715,30 +3389,40 @@
return -1;
}
+ pthread_mutex_lock(&s_sta_callback_mutex);
g_sta_callback_priv = priv;
g_sta_callback_func = cb;
+ pthread_mutex_unlock(&s_sta_callback_mutex);
+ pthread_mutex_lock(&s_check_wpa_ctrl_mutex);
+ if (g_sta_watcher_pid == 0 ) {
+ if(pthread_create(&g_sta_watcher_pid,NULL,STAWatcherThreadProc,NULL) < 0)
+ {
+ g_sta_watcher_pid = 0;
+ pthread_mutex_unlock(&s_check_wpa_ctrl_mutex);
+ RLOGE("[wifi error]creat STAWatcherThreadProc fail");
+ return -1;
+ }
+ }
+
+ pthread_mutex_unlock(&s_check_wpa_ctrl_mutex);
+ RLOGD("creat STAWatcherTheradProc susccs");
return 0;
}
int lynq_unreg_sta_event_callback(void * priv) {
+ pthread_mutex_lock(&s_sta_callback_mutex);
if (g_sta_callback_priv == priv)
{
g_sta_callback_func = NULL;
g_sta_callback_priv = NULL;
+ pthread_mutex_unlock(&s_sta_callback_mutex);
return 0;
}
+ pthread_mutex_unlock(&s_sta_callback_mutex);
return -1;
}
-
-static int inner_get_status_info_state (int interface, char *state) {
- curr_status_info curr_state;
- curr_state.ap = NULL;
- curr_state.state = state;
- return inner_get_status_info(interface, &curr_state);
-}
-
int lynq_get_ap_status(lynq_wifi_index_e idx, lynq_wifi_ap_run_status_s * ap_status)
{
char state[MAX_CMD];
@@ -2854,28 +3538,111 @@
return 0;
}
-int lynq_set_country_code(lynq_wifi_index_e idx, char * country_code) {
-// const char * cmd_str = "GET country";
-// CHECK_IDX(idx, CTRL_AP);
-// CHECK_WPA_CTRL(CTRL_STA);
+static int check_and_init_uci_config(char * country_code)
+{
+ FILE * fp;
+ int is_different = 0;
+ const char * check_uci_cmd ="uci show | grep lynq_wifi_country_code";
+ const char * create_uci_cmd ="uci set lynq_uci.lynq_wifi_country_code='lynq_wifi_country_code'";
+ const char * commit_uci_cmd ="uci commit";
+ char set_country_cmd[MAX_CMD];
+ char lynq_cmd_ret[MAX_CMD]={0};
-// DO_REQUEST(cmd_str);
-// printf("result %s\n", cmd_reply);
+ sprintf(set_country_cmd, "uci set lynq_uci.lynq_wifi_country_code.code='%s'",country_code);
- if (country_code == NULL || *country_code == '\0')
+ if (0 != system(check_uci_cmd))
{
- RLOGD("bad country code\n");
+ if (0 != system(create_uci_cmd))
+ {
+ RLOGE("creat_uci_cmd fail");
+ return -1;
+ }
+ is_different = 1;
+ }
+
+ if((fp=popen("uci get lynq_uci.lynq_wifi_country_code.code","r"))==NULL)
+ {
+ RLOGE("popen error!");
return -1;
}
- char lynq_country_cmd[MAX_CMD];
- sprintf(lynq_country_cmd, "wl country %s", country_code);
- if (system(lynq_country_cmd) == 0)
+ if((fread(lynq_cmd_ret,sizeof(lynq_cmd_ret),1,fp))<0 )
{
- return 0;
+ RLOGE("fread fail!");
+ fclose(fp);
+ return -1;
}
- return -1;
+ if ( strncmp(lynq_cmd_ret,country_code,2) != 0 )
+ {
+ RLOGE("get country code for uci %s,input cpuntry code is:%s\n",lynq_cmd_ret,country_code);
+ is_different = 1;
+ }
+
+ fclose(fp);
+
+ if (is_different)
+ {
+ if ( 0 != system(set_country_cmd))
+ {
+ RLOGE("set_country_cmd fail");
+ return -1;
+ }
+ if (0 != system(commit_uci_cmd))
+ {
+ RLOGE("commmit fail");
+ }
+ }
+
+ return is_different;
+}
+
+int lynq_set_country_code(lynq_wifi_index_e idx, char * country_code) {
+ char check_current_code[10];
+ const char * support_country[] = {"CN", "EU"};
+
+ int ret,is_different, i, cc_count;
+
+ if (country_code == NULL || country_code[0] == '\0')
+ {
+ RLOGE("bad country code\n");
+ return -1;
+ }
+
+ cc_count = sizeof (support_country) / sizeof (char*);
+ for(i=0; i < cc_count; i++)
+ {
+ if (strcmp(support_country[i], country_code) == 0)
+ {
+ break;
+ }
+ }
+
+ if (i >= cc_count)
+ {
+ RLOGE("unspported country code %s\n", country_code);
+ return -1;
+ }
+
+ is_different = check_and_init_uci_config(country_code);
+ if( is_different < 0 )
+ {
+ RLOGE("init set uci fail\n");
+ return -1;
+ }
+
+ ret = lynq_get_country_code(idx,check_current_code);
+ if( ret == 0 && (is_different == 1 || strcmp(check_current_code, country_code) != 0))
+ {
+ ret = lynq_wifi_disable();
+ if(ret != 0 )
+ {
+ RLOGE("berfore set country,find bcmdhd insmod,remod fail\n");
+ return -1;
+ }
+ }
+
+ return 0;
}
int lynq_get_connect_ap_mac(lynq_wifi_index_e idx,char *mac)
@@ -2914,7 +3681,12 @@
if (idx == 1)
{
- ifaName = "tether";
+ ifaName = inner_get_ap_interface_name();
+ if (ifaName == NULL)
+ {
+ RLOGE("[lynq_get_interface_ip] ap name get fail");
+ return -1;
+ }
}
else if (idx != 0)
{
@@ -3018,24 +3790,16 @@
// *rssi = atoi(split_words[1]) * -1;
- FILE *fp;
- size_t i = 0;
char lynq_cmd_ret[MAX_RET]={0};
-// CHECK_IDX(idx, CTRL_AP);
/*******change other cmd to get rssi*******
*
*wl rssi ---> wl -i wlan0 rssi
*
***** change by qs.xiong 20221011*******/
- if((fp=popen("wl -i wlan0 rssi","r"))==NULL)
+ if (0 != exec_cmd("wl -i wlan0 rssi", lynq_cmd_ret, MAX_RET))
{
- perror("popen error!");
- return -1;
- }
- if((fread(lynq_cmd_ret,sizeof(lynq_cmd_ret),1,fp))<0)
- {
- perror("fread fail!");
+ RLOGE("[lynq_get_connect_ap_rssi] exec cmd [ wl -i wlan0 rssi ] fail");
return -1;
}
*rssi = atoi(lynq_cmd_ret) * -1;
@@ -3043,7 +3807,7 @@
if(*rssi == 0)
{
RLOGE("[lynq_get_connect_ap_rssi]sta didn't connected any ap device,please check connection\n");
- return -1;
+ return -1;
}
return 0;
@@ -3072,6 +3836,8 @@
int lynq_get_connect_ap_ip(lynq_wifi_index_e idx, char *ip)
{
+ int ret;
+ char *p;
char bssid[1024] = {0};
if (ip == NULL)
@@ -3087,7 +3853,33 @@
return -1;
}
- return inner_get_ip_by_mac(bssid, ip, 32); //better input by user
+ ip[0] = '\0';
+ ret = inner_get_ip_by_mac(bssid, ip, 32); //better input by user
+ if (ret != 0)
+ {
+ RLOGE("[lynq_get_connect_ap_ip] inner_get_ip_by_mac return fail");
+ return -1;
+ }
+
+ if (ip[0] == '\0' || strchr(ip, ':') != NULL) //temp change, not ok
+ {
+ ip[0] = '\0';
+ ret = exec_cmd("grep \"new_router\" /tmp/wlan0_dhcpcd_router | awk '{print $2}'| tail -1", ip, 32);
+ if (ret != 0)
+ {
+ ip[0] = '\0';
+ return 0;
+ }
+ else
+ {
+ p = strchr(ip, '\n');
+ if (p != NULL)
+ {
+ *p = '\0';
+ }
+ }
+ }
+ return 0;
}
int lynq_ap_connect_num(int sta_number)
@@ -3193,7 +3985,8 @@
int mask_len;
char *p;
char tmp[64] = {0};
- if (exec_cmd("ifconfig tether | grep Mask", str_cmd_ret, max_len) != 0)
+ sprintf(tmp, "ifconfig %s | grep Mask", s_ap_iterface_name);
+ if (exec_cmd(tmp, str_cmd_ret, max_len) != 0)
return -1;
p = strstr(str_cmd_ret, "Mask:");
if (p == NULL)
@@ -3230,6 +4023,12 @@
nmax = 6;
ncheckcount = nidlecount = 0;
+ if (inner_get_ap_interface_name() == NULL)
+ {
+ RLOGE("------gbw thread run\n");
+ return;
+ }
+
RLOGD("------gbw thread run\n");
sprintf(str_cmd, "ip neigh | grep %s | awk '{print $1}'", g_gbw_mac);
while (dest_ip[0] == '\0') {
@@ -3248,28 +4047,27 @@
}
}
- system("tc qdisc del dev tether root > /dev/null 2>&1");
- system("tc qdisc add dev tether root handle 1: htb r2q 1");
- system("tc class add dev tether parent 1: classid 1:1 htb rate 50Mbit ceil 70Mbit prio 2 quantum 3000");
+ system_call_v("tc qdisc del dev %s root > /dev/null 2>&1", s_ap_iterface_name);
+ system_call_v("tc qdisc add dev %s root handle 1: htb r2q 1", s_ap_iterface_name);
+ system_call_v("tc class add dev %s parent 1: classid 1:1 htb rate 50Mbit ceil 70Mbit prio 2 quantum 3000", s_ap_iterface_name);
if (get_tether_route_str(str_cmd_ret, sizeof (str_cmd_ret)) != 0)
{
RLOGD("not get tether info\n");
return;
}
- sprintf(str_cmd, "tc filter add dev tether parent 1: protocol ip prio 16 u32 match ip dst %s flowid 1:1", str_cmd_ret);
- system(str_cmd);
- system("tc class add dev tether parent 1: classid 1:2 htb rate 80Mbit ceil 100Mbit prio 0 quantum 3000000");
- sprintf(str_cmd, "tc filter add dev tether parent 1: protocol ip prio 1 u32 match ip dst %s flowid 1:2", dest_ip);
- //printf("----cmd:%s\n", str_cmd);
- system(str_cmd);
+ system_call_v("tc filter add dev %s parent 1: protocol ip prio 16 u32 match ip dst %s flowid 1:1", s_ap_iterface_name, str_cmd_ret);
+ system_call_v("tc class add dev %s parent 1: classid 1:2 htb rate 80Mbit ceil 100Mbit prio 0 quantum 3000000", s_ap_iterface_name);
+ system_call_v("tc filter add dev %s parent 1: protocol ip prio 1 u32 match ip dst %s flowid 1:2", s_ap_iterface_name, dest_ip);
while (1) {
sleep(1);
memset(str_cmd, 0, sizeof(str_cmd));
- if (0 != exec_cmd("tc -s class show dev tether classid 1:1 | grep Sent", str_cmd, sizeof (str_cmd)))
+ memset(str_cmd_ret, 0, sizeof(str_cmd_ret));
+ sprintf(str_cmd, "tc -s class show dev %s classid 1:1 | grep Sent", s_ap_iterface_name);
+ if (0 != exec_cmd(str_cmd, str_cmd_ret, sizeof (str_cmd_ret)))
continue;
//printf("ap1 --- %s\n", str_cmd);
- n = lynq_split(str_cmd, strlen(str_cmd), ' ', results);
+ n = lynq_split(str_cmd_ret, strlen(str_cmd_ret), ' ', results);
if (n > 9) {
if (strcmp(results[1], "Sent") == 0) {
currAP1Bytes = atoll(results[2]);
@@ -3280,10 +4078,12 @@
}
memset(str_cmd, 0, sizeof(str_cmd));
- if (0 != exec_cmd("tc -s class show dev tether classid 1:2 | grep Sent", str_cmd, sizeof (str_cmd)))
+ memset(str_cmd_ret, 0, sizeof(str_cmd_ret));
+ sprintf(str_cmd, "tc -s class show dev %s classid 1:2 | grep Sent", s_ap_iterface_name);
+ if (0 != exec_cmd(str_cmd, str_cmd_ret, sizeof (str_cmd_ret)))
continue;
//printf("ap2 --- %s\n", str_cmd);
- n = lynq_split(str_cmd, strlen(str_cmd), ' ', results);
+ n = lynq_split(str_cmd_ret, strlen(str_cmd_ret), ' ', results);
if (n > 9) {
if (strcmp(results[1], "Sent") == 0) {
currAP2Bytes = atoll(results[2]);
@@ -3331,9 +4131,8 @@
if (currSetAP1Speed != setAP1Speed) {
setAP1Speed = currSetAP1Speed;
- sprintf(str_cmd, "tc class replace dev tether parent 1: classid 1:1 htb rate %dMbit ceil %dMbit prio 2 quantum 3000", setAP1Speed, (int)(setAP1Speed*1.4));
- //printf("------***change speed: %s\n", str_cmd);
- system(str_cmd);
+ system_call_v(str_cmd, "tc class replace dev %s parent 1: classid 1:1 htb rate %dMbit ceil %dMbit prio 2 quantum 3000",
+ s_ap_iterface_name, setAP1Speed, (int)(setAP1Speed*1.4));
}
}
}
@@ -3392,9 +4191,15 @@
static int stopGBW() {
void* retval;
+ char cmd[64] = {0};
pthread_cancel(g_gbw_watcher_pid);
pthread_join(g_gbw_watcher_pid, &retval);
g_gbw_watcher_pid = 0;
- system("tc qdisc del dev tether root");
+ sprintf(cmd, "%s %d", get_interface_name_script, LYNQ_WIFI_INTERFACE_1);
+ if (s_ap_iterface_name[0] != '\0')
+ {
+ sprintf(cmd, "tc qdisc del dev %s root", s_ap_iterface_name);
+ system(cmd);
+ }
}
//you.chen add for tv-box end
diff --git a/src/lynq/lib/liblynq-wifi6/scripts/get_interface_name.sh b/src/lynq/lib/liblynq-wifi6/scripts/get_interface_name.sh
new file mode 100755
index 0000000..4dc8717
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts/get_interface_name.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+if [ "$1" == "0" ]; then
+ echo "wlan0"
+elif [ "$1" == "1" ]; then
+ echo "ap0"
+else
+ exit 1
+fi
+
diff --git a/src/lynq/lib/liblynq-wifi6/scripts/sta_status_change.sh b/src/lynq/lib/liblynq-wifi6/scripts/sta_status_change.sh
new file mode 100755
index 0000000..829303e
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts/sta_status_change.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+
diff --git a/src/lynq/lib/liblynq-wifi6/scripts/start_stop_ap.sh b/src/lynq/lib/liblynq-wifi6/scripts/start_stop_ap.sh
new file mode 100755
index 0000000..25dd644
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts/start_stop_ap.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+if [ "$1" == "start" ]; then
+ ifconfig ap0 192.168.15.1 netmask 255.255.255.240
+
+ if [ $? != 0 ]; then
+ exit 1
+ fi
+ mkdir -p /run/wg870/dnsmasq.d
+ conf_file="/run/wg870/dnsmasq.conf"
+ echo "port=0" > $conf_file
+ echo "interface=ap0" >> $conf_file
+ echo "listen-address=192.168.15.1" >> $conf_file
+ echo "bind-interfaces" >> $conf_file
+ echo "localise-queries" >> $conf_file
+ echo "dhcp-range=192.168.15.2,192.168.15.14,255.255.255.240,1h" >> $conf_file
+ echo "dhcp-option=3,192.168.15.1" >> $conf_file
+ echo "dhcp-option=6,192.168.15.1" >> $conf_file
+ echo "dhcp-range=192.168.15.2,192.168.15.14,255.255.255.240,1h" >> $conf_file
+ echo "dhcp-leasefile=/run/wg870/ap0.lease" >> $conf_file
+ ps -eo "%p %a" | grep "/usr/bin/dnsmasq -x /run/wg870/dnsmasq.pid" | grep -v grep
+ if [ $? != 0 ]; then
+ /usr/bin/dnsmasq -x /run/wg870/dnsmasq.pid -7 /run/wg870/dnsmasq.d --local-service -C $conf_file -r /run/wg870
+ fi
+
+elif [ "$1" == "stop" ]; then
+ ps -eo "%p %a" | grep "/usr/bin/dnsmasq -x /run/wg870/dnsmasq.pid" | grep -v grep | awk '{print "kill "$1}' | sh
+ ifconfig ap0 down
+ if [ $? != 0 ]; then
+ exit 1
+ fi
+else
+ exit 2
+fi
+
+exit 0
diff --git a/src/lynq/lib/liblynq-wifi6/scripts/start_stop_sta.sh b/src/lynq/lib/liblynq-wifi6/scripts/start_stop_sta.sh
new file mode 100755
index 0000000..25ab126
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts/start_stop_sta.sh
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+if [ "$1" == "start" ]; then
+ ifconfig wlan0 up
+ if [ $? != 0 ]; then
+ exit 1
+ fi
+ ps -eo "%p %a" | grep "dhcpcd wlan0" | grep -v grep
+ if [ $? != 0 ]; then
+ echo "" > /tmp/wlan0_dhcpcd_router
+ mkdir -p /run/wg870/
+ hook_script="/run/wg870/wlan0_dhcpcd_run_hooks.sh"
+ echo "#!/bin/sh" > $hook_script
+ echo "if [ \"\$reason\" == \"BOUND\" -o \"\$reason\" == \"RENEW\" -o \"\$reason\" == \"REBIND\" ]; then" >> $hook_script
+ echo " if [ \"\$new_routers\" != \"\" ]; then" >> $hook_script
+ echo " for x in \$new_routers; do" >> $hook_script
+ echo " echo \"new_router \$x\" > /tmp/wlan0_dhcpcd_router" >> $hook_script
+ echo " ping -c2 \$x &" >> $hook_script
+ echo " done" >> $hook_script
+ echo " fi" >> $hook_script
+ echo "fi" >> $hook_script
+ chmod +x $hook_script
+ dhcpcd wlan0 -t 0 -o domain_name_servers --noipv4ll -4 -B -G -c $hook_script &
+ fi
+elif [ "$1" == "stop" ]; then
+ ps -eo "%p %a" | grep "dhcpcd wlan0" | grep -v grep | awk '{print "kill "$1}' | sh
+ ifconfig wlan0 0.0.0.0
+ if [ $? != 0 ]; then
+ exit 1
+ fi
+else
+ exit 2
+fi
+
+exit 0
diff --git a/src/lynq/lib/liblynq-wifi6/scripts/start_wg870_service.sh b/src/lynq/lib/liblynq-wifi6/scripts/start_wg870_service.sh
new file mode 100755
index 0000000..fae9b34
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts/start_wg870_service.sh
@@ -0,0 +1,58 @@
+#!/bin/sh
+for ((i=0; i < 10; i++)); do
+ state=`systemctl is-active wg870_drv_insmod.service`
+ if [ "$state" == "active" ]; then
+ break
+ elif [ "$state" != "activating" ]; then
+ echo "to start now"
+ systemctl start wg870_drv_insmod.service
+ fi
+ usleep 100000
+done
+
+if [ "$state" != "active" ]; then
+ exit 1
+fi
+
+state=`wpa_cli -iwpa_wlan0_cmd -p/var/run/ ping`
+if [ "$state" != "PONG" ]; then
+ for ((i=0; i < 50; i++)); do
+ usleep 100000
+ state=`wpa_cli -iwpa_wlan0_cmd -p/var/run/ ping`
+ echo "$state"
+ if [ "$state" == "PONG" ]; then
+ service_started=1
+ break
+ fi
+ done
+else
+ service_started=1
+fi
+
+if [ "$service_started" != "1" ];then
+ exit 1
+fi
+
+state=`wpa_cli -iwpa_wlan0_cmd -p/var/run/ interface | grep -vE "Available|p2p-dev" | grep wlan0`
+if [ $? != 0 ]; then
+ state=`wpa_cli -iwpa_wlan0_cmd -p/var/run/ interface_add wlan0 /data/wifi/wg870/wpa_supplicant.conf nl80211`
+ if [ "$state" != "OK" ]; then
+ exit 2
+ fi
+ wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=wlan0 disconnect
+fi
+
+state=`wpa_cli -iwpa_wlan0_cmd -p/var/run/ interface | grep -vE "Available|p2p-dev" | grep ap0`
+if [ $? != 0 ]; then
+ wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=wlan0 DRIVER interface_create ap0
+ state=`wpa_cli -iwpa_wlan0_cmd -p/var/run/ interface_add ap0 /data/wifi/wg870/wpa_supplicant_ap.conf nl80211`
+
+ if [ "$state" != "OK" ]; then
+ exit 3
+ fi
+ ifconfig ap0 down
+fi
+
+
+exit 0
+
diff --git a/src/lynq/lib/liblynq-wifi6/scripts_connman/get_interface_name.sh b/src/lynq/lib/liblynq-wifi6/scripts_connman/get_interface_name.sh
new file mode 100755
index 0000000..61b44d9
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts_connman/get_interface_name.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+if [ "$1" == "0" ]; then
+ echo "wlan0"
+elif [ "$1" == "1" ]; then
+ echo "tether"
+else
+ exit 1
+fi
+
diff --git a/src/lynq/lib/liblynq-wifi6/scripts_connman/sta_status_change.sh b/src/lynq/lib/liblynq-wifi6/scripts_connman/sta_status_change.sh
new file mode 100755
index 0000000..e69de29
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts_connman/sta_status_change.sh
diff --git a/src/lynq/lib/liblynq-wifi6/scripts_connman/start_stop_ap.sh b/src/lynq/lib/liblynq-wifi6/scripts_connman/start_stop_ap.sh
new file mode 100755
index 0000000..e69de29
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts_connman/start_stop_ap.sh
diff --git a/src/lynq/lib/liblynq-wifi6/scripts_connman/start_stop_sta.sh b/src/lynq/lib/liblynq-wifi6/scripts_connman/start_stop_sta.sh
new file mode 100755
index 0000000..e69de29
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts_connman/start_stop_sta.sh
diff --git a/src/lynq/lib/liblynq-wifi6/scripts_connman/start_wg870_service.sh b/src/lynq/lib/liblynq-wifi6/scripts_connman/start_wg870_service.sh
new file mode 100755
index 0000000..303a075
--- /dev/null
+++ b/src/lynq/lib/liblynq-wifi6/scripts_connman/start_wg870_service.sh
@@ -0,0 +1,76 @@
+#!/bin/sh
+
+for ((i=0; i < 10; i++)); do
+ state=`systemctl is-active wg870_drv_insmod.service`
+ if [ "$state" == "active" ]; then
+ break
+ elif [ "$state" != "activating" ]; then
+
+ systemctl start wg870_drv_insmod.service
+ fi
+ usleep 100000
+done
+
+if [ "$state" != "active" ]; then
+ exit 1
+fi
+
+for ((i=0; i < 10; i++)); do
+ connmanctl technologies | grep -q "/net/connman/technology/wifi"
+ if [ $? == 0 ]; then
+ connman_started=1
+ break
+ fi
+done
+
+if [ "$connman_started" == ""]; then
+ exit 2
+fi
+
+ifconfig | grep -q wlan0
+
+if [ $? != 0 ]; then
+ connmanctl enable wifi
+
+ for ((i=0; i < 5; i++)); do
+ usleep 100000
+ ifconfig | grep -q wlan0
+ if [ $? == 0 ]; then
+ wlan0_started=1
+ wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=wlan0 disconnect
+ break
+ fi
+ done
+else
+ wlan0_started=1
+fi
+
+
+if [ "$wlan0_started" == ""]; then
+ exit 3
+fi
+
+ifconfig | grep -q ap0
+
+if [ $? != 0 ]; then
+ wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=wlan0 DRIVER interface_create ap0
+ connmanctl tether wifi on lynq 1qaz@WSX#$%^
+
+ for ((i=0; i < 5; i++)); do
+ usleep 100000
+ ifconfig | grep -q ap0
+ if [ $? == 0 ]; then
+ ap0_started=1
+ wpa_cli -iwpa_wlan0_cmd -p/var/run/ IFNAME=ap0 disconnect
+ break
+ fi
+ done
+else
+ ap0_started=1
+fi
+
+
+if [ "$ap0_started" == ""]; then
+ exit 4
+fi
+
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/COPYING b/src/lynq/packages/thirdpart/lynq-wg870/COPYING
index 7ca3030..5d0115c 100755
--- a/src/lynq/packages/thirdpart/lynq-wg870/COPYING
+++ b/src/lynq/packages/thirdpart/lynq-wg870/COPYING
@@ -1,7 +1,7 @@
wpa_supplicant and hostapd
--------------------------
-Copyright (c) 2002-2022, Jouni Malinen <j@w1.fi> and contributors
+Copyright (c) 2002-2019, Jouni Malinen <j@w1.fi> and contributors
All Rights Reserved.
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/README b/src/lynq/packages/thirdpart/lynq-wg870/README
index 1470c4f..a9f8069 100755
--- a/src/lynq/packages/thirdpart/lynq-wg870/README
+++ b/src/lynq/packages/thirdpart/lynq-wg870/README
@@ -1,7 +1,7 @@
wpa_supplicant and hostapd
--------------------------
-Copyright (c) 2002-2022, Jouni Malinen <j@w1.fi> and contributors
+Copyright (c) 2002-2019, Jouni Malinen <j@w1.fi> and contributors
All Rights Reserved.
These programs are licensed under the BSD license (the one with
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/conf/wpa_supplicant.conf b/src/lynq/packages/thirdpart/lynq-wg870/conf/wpa_supplicant.conf
index c288e9b..833ae20 100755
--- a/src/lynq/packages/thirdpart/lynq-wg870/conf/wpa_supplicant.conf
+++ b/src/lynq/packages/thirdpart/lynq-wg870/conf/wpa_supplicant.conf
@@ -10,4 +10,4 @@
hs20=1
interworking=1
sae_groups=19
-sae_pwe=2
\ No newline at end of file
+sae_pwe=2
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/hostapd/README b/src/lynq/packages/thirdpart/lynq-wg870/hostapd/README
index 739c964..1f30d7e 100755
--- a/src/lynq/packages/thirdpart/lynq-wg870/hostapd/README
+++ b/src/lynq/packages/thirdpart/lynq-wg870/hostapd/README
@@ -2,7 +2,7 @@
Authenticator and RADIUS authentication server
================================================================
-Copyright (c) 2002-2022, Jouni Malinen <j@w1.fi> and contributors
+Copyright (c) 2002-2019, Jouni Malinen <j@w1.fi> and contributors
All Rights Reserved.
This program is licensed under the BSD license (the one with
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd.c b/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd.c
index 07e975a..bf2874d 100755
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd.c
+++ b/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd.c
@@ -2216,9 +2216,8 @@
* If freq is DFS, and DFS is offloaded to the driver, then wait
* for CAC to complete.
*/
- //wpa_printf(MSG_DEBUG, "%s: Wait for CAC to complete", __func__);
- wpa_printf(MSG_DEBUG, "IFX: don't need wait for CAC to complete");
- //return res_dfs_offload;
+ wpa_printf(MSG_DEBUG, "%s: Wait for CAC to complete", __func__);
+ return res_dfs_offload;
}
#ifdef NEED_AP_MLME
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd.c.orig b/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd.c.orig
deleted file mode 100755
index bf2874d..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd.c.orig
+++ /dev/null
@@ -1,3830 +0,0 @@
-/*
- * hostapd / Initialization and configuration
- * Copyright (c) 2002-2021, Jouni Malinen <j@w1.fi>
- *
- * This software may be distributed under the terms of the BSD license.
- * See README for more details.
- */
-
-#include "utils/includes.h"
-#ifdef CONFIG_SQLITE
-#include <sqlite3.h>
-#endif /* CONFIG_SQLITE */
-
-#include "utils/common.h"
-#include "utils/eloop.h"
-#include "utils/crc32.h"
-#include "common/ieee802_11_defs.h"
-#include "common/wpa_ctrl.h"
-#include "common/hw_features_common.h"
-#include "radius/radius_client.h"
-#include "radius/radius_das.h"
-#include "eap_server/tncs.h"
-#include "eapol_auth/eapol_auth_sm.h"
-#include "eapol_auth/eapol_auth_sm_i.h"
-#include "fst/fst.h"
-#include "hostapd.h"
-#include "authsrv.h"
-#include "sta_info.h"
-#include "accounting.h"
-#include "ap_list.h"
-#include "beacon.h"
-#include "ieee802_1x.h"
-#include "ieee802_11_auth.h"
-#include "vlan_init.h"
-#include "wpa_auth.h"
-#include "wps_hostapd.h"
-#include "dpp_hostapd.h"
-#include "gas_query_ap.h"
-#include "hw_features.h"
-#include "wpa_auth_glue.h"
-#include "ap_drv_ops.h"
-#include "ap_config.h"
-#include "p2p_hostapd.h"
-#include "gas_serv.h"
-#include "dfs.h"
-#include "ieee802_11.h"
-#include "bss_load.h"
-#include "x_snoop.h"
-#include "dhcp_snoop.h"
-#include "ndisc_snoop.h"
-#include "neighbor_db.h"
-#include "rrm.h"
-#include "fils_hlp.h"
-#include "acs.h"
-#include "hs20.h"
-#include "airtime_policy.h"
-#include "wpa_auth_kay.h"
-
-
-static int hostapd_flush_old_stations(struct hostapd_data *hapd, u16 reason);
-#ifdef CONFIG_WEP
-static int hostapd_setup_encryption(char *iface, struct hostapd_data *hapd);
-static int hostapd_broadcast_wep_clear(struct hostapd_data *hapd);
-#endif /* CONFIG_WEP */
-static int setup_interface2(struct hostapd_iface *iface);
-static void channel_list_update_timeout(void *eloop_ctx, void *timeout_ctx);
-static void hostapd_interface_setup_failure_handler(void *eloop_ctx,
- void *timeout_ctx);
-
-
-int hostapd_for_each_interface(struct hapd_interfaces *interfaces,
- int (*cb)(struct hostapd_iface *iface,
- void *ctx), void *ctx)
-{
- size_t i;
- int ret;
-
- for (i = 0; i < interfaces->count; i++) {
- if (!interfaces->iface[i])
- continue;
- ret = cb(interfaces->iface[i], ctx);
- if (ret)
- return ret;
- }
-
- return 0;
-}
-
-
-void hostapd_reconfig_encryption(struct hostapd_data *hapd)
-{
- if (hapd->wpa_auth)
- return;
-
- hostapd_set_privacy(hapd, 0);
-#ifdef CONFIG_WEP
- hostapd_setup_encryption(hapd->conf->iface, hapd);
-#endif /* CONFIG_WEP */
-}
-
-
-static void hostapd_reload_bss(struct hostapd_data *hapd)
-{
- struct hostapd_ssid *ssid;
-
- if (!hapd->started)
- return;
-
- if (hapd->conf->wmm_enabled < 0)
- hapd->conf->wmm_enabled = hapd->iconf->ieee80211n |
- hapd->iconf->ieee80211ax;
-
-#ifndef CONFIG_NO_RADIUS
- radius_client_reconfig(hapd->radius, hapd->conf->radius);
-#endif /* CONFIG_NO_RADIUS */
-
- ssid = &hapd->conf->ssid;
- if (!ssid->wpa_psk_set && ssid->wpa_psk && !ssid->wpa_psk->next &&
- ssid->wpa_passphrase_set && ssid->wpa_passphrase) {
- /*
- * Force PSK to be derived again since SSID or passphrase may
- * have changed.
- */
- hostapd_config_clear_wpa_psk(&hapd->conf->ssid.wpa_psk);
- }
- if (hostapd_setup_wpa_psk(hapd->conf)) {
- wpa_printf(MSG_ERROR, "Failed to re-configure WPA PSK "
- "after reloading configuration");
- }
-
- if (hapd->conf->ieee802_1x || hapd->conf->wpa)
- hostapd_set_drv_ieee8021x(hapd, hapd->conf->iface, 1);
- else
- hostapd_set_drv_ieee8021x(hapd, hapd->conf->iface, 0);
-
- if ((hapd->conf->wpa || hapd->conf->osen) && hapd->wpa_auth == NULL) {
- hostapd_setup_wpa(hapd);
- if (hapd->wpa_auth)
- wpa_init_keys(hapd->wpa_auth);
- } else if (hapd->conf->wpa) {
- const u8 *wpa_ie;
- size_t wpa_ie_len;
- hostapd_reconfig_wpa(hapd);
- wpa_ie = wpa_auth_get_wpa_ie(hapd->wpa_auth, &wpa_ie_len);
- if (hostapd_set_generic_elem(hapd, wpa_ie, wpa_ie_len))
- wpa_printf(MSG_ERROR, "Failed to configure WPA IE for "
- "the kernel driver.");
- } else if (hapd->wpa_auth) {
- wpa_deinit(hapd->wpa_auth);
- hapd->wpa_auth = NULL;
- hostapd_set_privacy(hapd, 0);
-#ifdef CONFIG_WEP
- hostapd_setup_encryption(hapd->conf->iface, hapd);
-#endif /* CONFIG_WEP */
- hostapd_set_generic_elem(hapd, (u8 *) "", 0);
- }
-
- ieee802_11_set_beacon(hapd);
- hostapd_update_wps(hapd);
-
- if (hapd->conf->ssid.ssid_set &&
- hostapd_set_ssid(hapd, hapd->conf->ssid.ssid,
- hapd->conf->ssid.ssid_len)) {
- wpa_printf(MSG_ERROR, "Could not set SSID for kernel driver");
- /* try to continue */
- }
- wpa_printf(MSG_DEBUG, "Reconfigured interface %s", hapd->conf->iface);
-}
-
-
-static void hostapd_clear_old(struct hostapd_iface *iface)
-{
- size_t j;
-
- /*
- * Deauthenticate all stations since the new configuration may not
- * allow them to use the BSS anymore.
- */
- for (j = 0; j < iface->num_bss; j++) {
- hostapd_flush_old_stations(iface->bss[j],
- WLAN_REASON_PREV_AUTH_NOT_VALID);
-#ifdef CONFIG_WEP
- hostapd_broadcast_wep_clear(iface->bss[j]);
-#endif /* CONFIG_WEP */
-
-#ifndef CONFIG_NO_RADIUS
- /* TODO: update dynamic data based on changed configuration
- * items (e.g., open/close sockets, etc.) */
- radius_client_flush(iface->bss[j]->radius, 0);
-#endif /* CONFIG_NO_RADIUS */
- }
-}
-
-
-static int hostapd_iface_conf_changed(struct hostapd_config *newconf,
- struct hostapd_config *oldconf)
-{
- size_t i;
-
- if (newconf->num_bss != oldconf->num_bss)
- return 1;
-
- for (i = 0; i < newconf->num_bss; i++) {
- if (os_strcmp(newconf->bss[i]->iface,
- oldconf->bss[i]->iface) != 0)
- return 1;
- }
-
- return 0;
-}
-
-
-int hostapd_reload_config(struct hostapd_iface *iface)
-{
- struct hapd_interfaces *interfaces = iface->interfaces;
- struct hostapd_data *hapd = iface->bss[0];
- struct hostapd_config *newconf, *oldconf;
- size_t j;
-
- if (iface->config_fname == NULL) {
- /* Only in-memory config in use - assume it has been updated */
- hostapd_clear_old(iface);
- for (j = 0; j < iface->num_bss; j++)
- hostapd_reload_bss(iface->bss[j]);
- return 0;
- }
-
- if (iface->interfaces == NULL ||
- iface->interfaces->config_read_cb == NULL)
- return -1;
- newconf = iface->interfaces->config_read_cb(iface->config_fname);
- if (newconf == NULL)
- return -1;
-
- hostapd_clear_old(iface);
-
- oldconf = hapd->iconf;
- if (hostapd_iface_conf_changed(newconf, oldconf)) {
- char *fname;
- int res;
-
- wpa_printf(MSG_DEBUG,
- "Configuration changes include interface/BSS modification - force full disable+enable sequence");
- fname = os_strdup(iface->config_fname);
- if (!fname) {
- hostapd_config_free(newconf);
- return -1;
- }
- hostapd_remove_iface(interfaces, hapd->conf->iface);
- iface = hostapd_init(interfaces, fname);
- os_free(fname);
- hostapd_config_free(newconf);
- if (!iface) {
- wpa_printf(MSG_ERROR,
- "Failed to initialize interface on config reload");
- return -1;
- }
- iface->interfaces = interfaces;
- interfaces->iface[interfaces->count] = iface;
- interfaces->count++;
- res = hostapd_enable_iface(iface);
- if (res < 0)
- wpa_printf(MSG_ERROR,
- "Failed to enable interface on config reload");
- return res;
- }
- iface->conf = newconf;
-
- for (j = 0; j < iface->num_bss; j++) {
- hapd = iface->bss[j];
- hapd->iconf = newconf;
- hapd->iconf->channel = oldconf->channel;
- hapd->iconf->acs = oldconf->acs;
- hapd->iconf->secondary_channel = oldconf->secondary_channel;
- hapd->iconf->ieee80211n = oldconf->ieee80211n;
- hapd->iconf->ieee80211ac = oldconf->ieee80211ac;
- hapd->iconf->ht_capab = oldconf->ht_capab;
- hapd->iconf->vht_capab = oldconf->vht_capab;
- hostapd_set_oper_chwidth(hapd->iconf,
- hostapd_get_oper_chwidth(oldconf));
- hostapd_set_oper_centr_freq_seg0_idx(
- hapd->iconf,
- hostapd_get_oper_centr_freq_seg0_idx(oldconf));
- hostapd_set_oper_centr_freq_seg1_idx(
- hapd->iconf,
- hostapd_get_oper_centr_freq_seg1_idx(oldconf));
- hapd->conf = newconf->bss[j];
- hostapd_reload_bss(hapd);
- }
-
- hostapd_config_free(oldconf);
-
-
- return 0;
-}
-
-
-#ifdef CONFIG_WEP
-
-static void hostapd_broadcast_key_clear_iface(struct hostapd_data *hapd,
- const char *ifname)
-{
- int i;
-
- if (!ifname || !hapd->drv_priv)
- return;
- for (i = 0; i < NUM_WEP_KEYS; i++) {
- if (hostapd_drv_set_key(ifname, hapd, WPA_ALG_NONE, NULL, i, 0,
- 0, NULL, 0, NULL, 0, KEY_FLAG_GROUP)) {
- wpa_printf(MSG_DEBUG, "Failed to clear default "
- "encryption keys (ifname=%s keyidx=%d)",
- ifname, i);
- }
- }
- if (hapd->conf->ieee80211w) {
- for (i = NUM_WEP_KEYS; i < NUM_WEP_KEYS + 2; i++) {
- if (hostapd_drv_set_key(ifname, hapd, WPA_ALG_NONE,
- NULL, i, 0, 0, NULL,
- 0, NULL, 0, KEY_FLAG_GROUP)) {
- wpa_printf(MSG_DEBUG, "Failed to clear "
- "default mgmt encryption keys "
- "(ifname=%s keyidx=%d)", ifname, i);
- }
- }
- }
-}
-
-
-static int hostapd_broadcast_wep_clear(struct hostapd_data *hapd)
-{
- hostapd_broadcast_key_clear_iface(hapd, hapd->conf->iface);
- return 0;
-}
-
-
-static int hostapd_broadcast_wep_set(struct hostapd_data *hapd)
-{
- int errors = 0, idx;
- struct hostapd_ssid *ssid = &hapd->conf->ssid;
-
- idx = ssid->wep.idx;
- if (ssid->wep.default_len && ssid->wep.key[idx] &&
- hostapd_drv_set_key(hapd->conf->iface,
- hapd, WPA_ALG_WEP, broadcast_ether_addr, idx, 0,
- 1, NULL, 0, ssid->wep.key[idx],
- ssid->wep.len[idx],
- KEY_FLAG_GROUP_RX_TX_DEFAULT)) {
- wpa_printf(MSG_WARNING, "Could not set WEP encryption.");
- errors++;
- }
-
- return errors;
-}
-
-#endif /* CONFIG_WEP */
-
-
-void hostapd_free_hapd_data(struct hostapd_data *hapd)
-{
- os_free(hapd->probereq_cb);
- hapd->probereq_cb = NULL;
- hapd->num_probereq_cb = 0;
-
-#ifdef CONFIG_P2P
- wpabuf_free(hapd->p2p_beacon_ie);
- hapd->p2p_beacon_ie = NULL;
- wpabuf_free(hapd->p2p_probe_resp_ie);
- hapd->p2p_probe_resp_ie = NULL;
-#endif /* CONFIG_P2P */
-
- if (!hapd->started) {
- wpa_printf(MSG_ERROR, "%s: Interface %s wasn't started",
- __func__, hapd->conf ? hapd->conf->iface : "N/A");
- return;
- }
- hapd->started = 0;
- hapd->beacon_set_done = 0;
-
- wpa_printf(MSG_DEBUG, "%s(%s)", __func__, hapd->conf->iface);
- accounting_deinit(hapd);
- hostapd_deinit_wpa(hapd);
- vlan_deinit(hapd);
- hostapd_acl_deinit(hapd);
-#ifndef CONFIG_NO_RADIUS
- radius_client_deinit(hapd->radius);
- hapd->radius = NULL;
- radius_das_deinit(hapd->radius_das);
- hapd->radius_das = NULL;
-#endif /* CONFIG_NO_RADIUS */
-
- hostapd_deinit_wps(hapd);
- ieee802_1x_dealloc_kay_sm_hapd(hapd);
-#ifdef CONFIG_DPP
- hostapd_dpp_deinit(hapd);
- gas_query_ap_deinit(hapd->gas);
- hapd->gas = NULL;
-#endif /* CONFIG_DPP */
-
- authsrv_deinit(hapd);
-
- if (hapd->interface_added) {
- hapd->interface_added = 0;
- if (hostapd_if_remove(hapd, WPA_IF_AP_BSS, hapd->conf->iface)) {
- wpa_printf(MSG_WARNING,
- "Failed to remove BSS interface %s",
- hapd->conf->iface);
- hapd->interface_added = 1;
- } else {
- /*
- * Since this was a dynamically added interface, the
- * driver wrapper may have removed its internal instance
- * and hapd->drv_priv is not valid anymore.
- */
- hapd->drv_priv = NULL;
- }
- }
-
- wpabuf_free(hapd->time_adv);
- hapd->time_adv = NULL;
-
-#ifdef CONFIG_INTERWORKING
- gas_serv_deinit(hapd);
-#endif /* CONFIG_INTERWORKING */
-
- bss_load_update_deinit(hapd);
- ndisc_snoop_deinit(hapd);
- dhcp_snoop_deinit(hapd);
- x_snoop_deinit(hapd);
-
-#ifdef CONFIG_SQLITE
- bin_clear_free(hapd->tmp_eap_user.identity,
- hapd->tmp_eap_user.identity_len);
- bin_clear_free(hapd->tmp_eap_user.password,
- hapd->tmp_eap_user.password_len);
- os_memset(&hapd->tmp_eap_user, 0, sizeof(hapd->tmp_eap_user));
-#endif /* CONFIG_SQLITE */
-
-#ifdef CONFIG_BRCM_VENDOR_IE
- for (i = 0; i < MAX_VENDOR_IES; i++ ) {
- wpabuf_free(hapd->vendor_ie[i]);
- hapd->vendor_ie[i] = NULL;
- }
- wpabuf_free(hapd->vendor_ies);
- hapd->vendor_ies = NULL;
-#endif /* CONFIG_BRCM_VENDOR_IE */
-#ifdef CONFIG_MESH
- wpabuf_free(hapd->mesh_pending_auth);
- hapd->mesh_pending_auth = NULL;
- /* handling setup failure is already done */
- hapd->setup_complete_cb = NULL;
-#endif /* CONFIG_MESH */
-
- hostapd_clean_rrm(hapd);
- fils_hlp_deinit(hapd);
-
-#ifdef CONFIG_OCV
- eloop_cancel_timeout(hostapd_ocv_check_csa_sa_query, hapd, NULL);
-#endif /* CONFIG_OCV */
-
-#ifdef CONFIG_SAE
- {
- struct hostapd_sae_commit_queue *q;
-
- while ((q = dl_list_first(&hapd->sae_commit_queue,
- struct hostapd_sae_commit_queue,
- list))) {
- dl_list_del(&q->list);
- os_free(q);
- }
- }
- eloop_cancel_timeout(auth_sae_process_commit, hapd, NULL);
-#endif /* CONFIG_SAE */
-}
-
-
-/**
- * hostapd_cleanup - Per-BSS cleanup (deinitialization)
- * @hapd: Pointer to BSS data
- *
- * This function is used to free all per-BSS data structures and resources.
- * Most of the modules that are initialized in hostapd_setup_bss() are
- * deinitialized here.
- */
-static void hostapd_cleanup(struct hostapd_data *hapd)
-{
- wpa_printf(MSG_DEBUG, "%s(hapd=%p (%s))", __func__, hapd,
- hapd->conf ? hapd->conf->iface : "N/A");
- if (hapd->iface->interfaces &&
- hapd->iface->interfaces->ctrl_iface_deinit) {
- wpa_msg(hapd->msg_ctx, MSG_INFO, WPA_EVENT_TERMINATING);
- hapd->iface->interfaces->ctrl_iface_deinit(hapd);
- }
- hostapd_free_hapd_data(hapd);
-}
-
-
-static void sta_track_deinit(struct hostapd_iface *iface)
-{
- struct hostapd_sta_info *info;
-
- if (!iface->num_sta_seen)
- return;
-
- while ((info = dl_list_first(&iface->sta_seen, struct hostapd_sta_info,
- list))) {
- dl_list_del(&info->list);
- iface->num_sta_seen--;
- sta_track_del(info);
- }
-}
-
-
-void hostapd_cleanup_iface_partial(struct hostapd_iface *iface)
-{
- wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface);
-#ifdef NEED_AP_MLME
- hostapd_stop_setup_timers(iface);
-#endif /* NEED_AP_MLME */
- if (iface->current_mode)
- acs_cleanup(iface);
- hostapd_free_hw_features(iface->hw_features, iface->num_hw_features);
- iface->hw_features = NULL;
- iface->current_mode = NULL;
- os_free(iface->current_rates);
- iface->current_rates = NULL;
- os_free(iface->basic_rates);
- iface->basic_rates = NULL;
- ap_list_deinit(iface);
- sta_track_deinit(iface);
- airtime_policy_update_deinit(iface);
-}
-
-
-/**
- * hostapd_cleanup_iface - Complete per-interface cleanup
- * @iface: Pointer to interface data
- *
- * This function is called after per-BSS data structures are deinitialized
- * with hostapd_cleanup().
- */
-static void hostapd_cleanup_iface(struct hostapd_iface *iface)
-{
- wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface);
- eloop_cancel_timeout(channel_list_update_timeout, iface, NULL);
- eloop_cancel_timeout(hostapd_interface_setup_failure_handler, iface,
- NULL);
-
- hostapd_cleanup_iface_partial(iface);
- hostapd_config_free(iface->conf);
- iface->conf = NULL;
-
- os_free(iface->config_fname);
- os_free(iface->bss);
- wpa_printf(MSG_DEBUG, "%s: free iface=%p", __func__, iface);
- os_free(iface);
-}
-
-
-#ifdef CONFIG_WEP
-
-static void hostapd_clear_wep(struct hostapd_data *hapd)
-{
- if (hapd->drv_priv && !hapd->iface->driver_ap_teardown && hapd->conf) {
- hostapd_set_privacy(hapd, 0);
- hostapd_broadcast_wep_clear(hapd);
- }
-}
-
-
-static int hostapd_setup_encryption(char *iface, struct hostapd_data *hapd)
-{
- int i;
-
- hostapd_broadcast_wep_set(hapd);
-
- if (hapd->conf->ssid.wep.default_len) {
- hostapd_set_privacy(hapd, 1);
- return 0;
- }
-
- /*
- * When IEEE 802.1X is not enabled, the driver may need to know how to
- * set authentication algorithms for static WEP.
- */
- hostapd_drv_set_authmode(hapd, hapd->conf->auth_algs);
-
- for (i = 0; i < 4; i++) {
- if (hapd->conf->ssid.wep.key[i] &&
- hostapd_drv_set_key(iface, hapd, WPA_ALG_WEP, NULL, i, 0,
- i == hapd->conf->ssid.wep.idx, NULL, 0,
- hapd->conf->ssid.wep.key[i],
- hapd->conf->ssid.wep.len[i],
- i == hapd->conf->ssid.wep.idx ?
- KEY_FLAG_GROUP_RX_TX_DEFAULT :
- KEY_FLAG_GROUP_RX_TX)) {
- wpa_printf(MSG_WARNING, "Could not set WEP "
- "encryption.");
- return -1;
- }
- if (hapd->conf->ssid.wep.key[i] &&
- i == hapd->conf->ssid.wep.idx)
- hostapd_set_privacy(hapd, 1);
- }
-
- return 0;
-}
-
-#endif /* CONFIG_WEP */
-
-
-static int hostapd_flush_old_stations(struct hostapd_data *hapd, u16 reason)
-{
- int ret = 0;
- u8 addr[ETH_ALEN];
-
- if (hostapd_drv_none(hapd) || hapd->drv_priv == NULL)
- return 0;
-
- if (!hapd->iface->driver_ap_teardown) {
- wpa_dbg(hapd->msg_ctx, MSG_DEBUG,
- "Flushing old station entries");
-
- if (hostapd_flush(hapd)) {
- wpa_msg(hapd->msg_ctx, MSG_WARNING,
- "Could not connect to kernel driver");
- ret = -1;
- }
- }
- if (hapd->conf && hapd->conf->broadcast_deauth) {
- wpa_dbg(hapd->msg_ctx, MSG_DEBUG,
- "Deauthenticate all stations");
- os_memset(addr, 0xff, ETH_ALEN);
- hostapd_drv_sta_deauth(hapd, addr, reason);
- }
- hostapd_free_stas(hapd);
-
- return ret;
-}
-
-
-void hostapd_bss_deinit_no_free(struct hostapd_data *hapd)
-{
- hostapd_free_stas(hapd);
- hostapd_flush_old_stations(hapd, WLAN_REASON_DEAUTH_LEAVING);
-#ifdef CONFIG_WEP
- hostapd_clear_wep(hapd);
-#endif /* CONFIG_WEP */
-}
-
-
-/**
- * hostapd_validate_bssid_configuration - Validate BSSID configuration
- * @iface: Pointer to interface data
- * Returns: 0 on success, -1 on failure
- *
- * This function is used to validate that the configured BSSIDs are valid.
- */
-static int hostapd_validate_bssid_configuration(struct hostapd_iface *iface)
-{
- u8 mask[ETH_ALEN] = { 0 };
- struct hostapd_data *hapd = iface->bss[0];
- unsigned int i = iface->conf->num_bss, bits = 0, j;
- int auto_addr = 0;
-
- if (hostapd_drv_none(hapd))
- return 0;
-
- if (iface->conf->use_driver_iface_addr)
- return 0;
-
- /* Generate BSSID mask that is large enough to cover the BSSIDs. */
-
- /* Determine the bits necessary to cover the number of BSSIDs. */
- for (i--; i; i >>= 1)
- bits++;
-
- /* Determine the bits necessary to any configured BSSIDs,
- if they are higher than the number of BSSIDs. */
- for (j = 0; j < iface->conf->num_bss; j++) {
- if (is_zero_ether_addr(iface->conf->bss[j]->bssid)) {
- if (j)
- auto_addr++;
- continue;
- }
-
- for (i = 0; i < ETH_ALEN; i++) {
- mask[i] |=
- iface->conf->bss[j]->bssid[i] ^
- hapd->own_addr[i];
- }
- }
-
- if (!auto_addr)
- goto skip_mask_ext;
-
- for (i = 0; i < ETH_ALEN && mask[i] == 0; i++)
- ;
- j = 0;
- if (i < ETH_ALEN) {
- j = (5 - i) * 8;
-
- while (mask[i] != 0) {
- mask[i] >>= 1;
- j++;
- }
- }
-
- if (bits < j)
- bits = j;
-
- if (bits > 40) {
- wpa_printf(MSG_ERROR, "Too many bits in the BSSID mask (%u)",
- bits);
- return -1;
- }
-
- os_memset(mask, 0xff, ETH_ALEN);
- j = bits / 8;
- for (i = 5; i > 5 - j; i--)
- mask[i] = 0;
- j = bits % 8;
- while (j) {
- j--;
- mask[i] <<= 1;
- }
-
-skip_mask_ext:
- wpa_printf(MSG_DEBUG, "BSS count %lu, BSSID mask " MACSTR " (%d bits)",
- (unsigned long) iface->conf->num_bss, MAC2STR(mask), bits);
-
- if (!auto_addr)
- return 0;
-
- for (i = 0; i < ETH_ALEN; i++) {
- if ((hapd->own_addr[i] & mask[i]) != hapd->own_addr[i]) {
- wpa_printf(MSG_ERROR, "Invalid BSSID mask " MACSTR
- " for start address " MACSTR ".",
- MAC2STR(mask), MAC2STR(hapd->own_addr));
- wpa_printf(MSG_ERROR, "Start address must be the "
- "first address in the block (i.e., addr "
- "AND mask == addr).");
- return -1;
- }
- }
-
- return 0;
-}
-
-
-static int mac_in_conf(struct hostapd_config *conf, const void *a)
-{
- size_t i;
-
- for (i = 0; i < conf->num_bss; i++) {
- if (hostapd_mac_comp(conf->bss[i]->bssid, a) == 0) {
- return 1;
- }
- }
-
- return 0;
-}
-
-
-#ifndef CONFIG_NO_RADIUS
-
-static int hostapd_das_nas_mismatch(struct hostapd_data *hapd,
- struct radius_das_attrs *attr)
-{
- if (attr->nas_identifier &&
- (!hapd->conf->nas_identifier ||
- os_strlen(hapd->conf->nas_identifier) !=
- attr->nas_identifier_len ||
- os_memcmp(hapd->conf->nas_identifier, attr->nas_identifier,
- attr->nas_identifier_len) != 0)) {
- wpa_printf(MSG_DEBUG, "RADIUS DAS: NAS-Identifier mismatch");
- return 1;
- }
-
- if (attr->nas_ip_addr &&
- (hapd->conf->own_ip_addr.af != AF_INET ||
- os_memcmp(&hapd->conf->own_ip_addr.u.v4, attr->nas_ip_addr, 4) !=
- 0)) {
- wpa_printf(MSG_DEBUG, "RADIUS DAS: NAS-IP-Address mismatch");
- return 1;
- }
-
-#ifdef CONFIG_IPV6
- if (attr->nas_ipv6_addr &&
- (hapd->conf->own_ip_addr.af != AF_INET6 ||
- os_memcmp(&hapd->conf->own_ip_addr.u.v6, attr->nas_ipv6_addr, 16)
- != 0)) {
- wpa_printf(MSG_DEBUG, "RADIUS DAS: NAS-IPv6-Address mismatch");
- return 1;
- }
-#endif /* CONFIG_IPV6 */
-
- return 0;
-}
-
-
-static struct sta_info * hostapd_das_find_sta(struct hostapd_data *hapd,
- struct radius_das_attrs *attr,
- int *multi)
-{
- struct sta_info *selected, *sta;
- char buf[128];
- int num_attr = 0;
- int count;
-
- *multi = 0;
-
- for (sta = hapd->sta_list; sta; sta = sta->next)
- sta->radius_das_match = 1;
-
- if (attr->sta_addr) {
- num_attr++;
- sta = ap_get_sta(hapd, attr->sta_addr);
- if (!sta) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: No Calling-Station-Id match");
- return NULL;
- }
-
- selected = sta;
- for (sta = hapd->sta_list; sta; sta = sta->next) {
- if (sta != selected)
- sta->radius_das_match = 0;
- }
- wpa_printf(MSG_DEBUG, "RADIUS DAS: Calling-Station-Id match");
- }
-
- if (attr->acct_session_id) {
- num_attr++;
- if (attr->acct_session_id_len != 16) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: Acct-Session-Id cannot match");
- return NULL;
- }
- count = 0;
-
- for (sta = hapd->sta_list; sta; sta = sta->next) {
- if (!sta->radius_das_match)
- continue;
- os_snprintf(buf, sizeof(buf), "%016llX",
- (unsigned long long) sta->acct_session_id);
- if (os_memcmp(attr->acct_session_id, buf, 16) != 0)
- sta->radius_das_match = 0;
- else
- count++;
- }
-
- if (count == 0) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: No matches remaining after Acct-Session-Id check");
- return NULL;
- }
- wpa_printf(MSG_DEBUG, "RADIUS DAS: Acct-Session-Id match");
- }
-
- if (attr->acct_multi_session_id) {
- num_attr++;
- if (attr->acct_multi_session_id_len != 16) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: Acct-Multi-Session-Id cannot match");
- return NULL;
- }
- count = 0;
-
- for (sta = hapd->sta_list; sta; sta = sta->next) {
- if (!sta->radius_das_match)
- continue;
- if (!sta->eapol_sm ||
- !sta->eapol_sm->acct_multi_session_id) {
- sta->radius_das_match = 0;
- continue;
- }
- os_snprintf(buf, sizeof(buf), "%016llX",
- (unsigned long long)
- sta->eapol_sm->acct_multi_session_id);
- if (os_memcmp(attr->acct_multi_session_id, buf, 16) !=
- 0)
- sta->radius_das_match = 0;
- else
- count++;
- }
-
- if (count == 0) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: No matches remaining after Acct-Multi-Session-Id check");
- return NULL;
- }
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: Acct-Multi-Session-Id match");
- }
-
- if (attr->cui) {
- num_attr++;
- count = 0;
-
- for (sta = hapd->sta_list; sta; sta = sta->next) {
- struct wpabuf *cui;
-
- if (!sta->radius_das_match)
- continue;
- cui = ieee802_1x_get_radius_cui(sta->eapol_sm);
- if (!cui || wpabuf_len(cui) != attr->cui_len ||
- os_memcmp(wpabuf_head(cui), attr->cui,
- attr->cui_len) != 0)
- sta->radius_das_match = 0;
- else
- count++;
- }
-
- if (count == 0) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: No matches remaining after Chargeable-User-Identity check");
- return NULL;
- }
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: Chargeable-User-Identity match");
- }
-
- if (attr->user_name) {
- num_attr++;
- count = 0;
-
- for (sta = hapd->sta_list; sta; sta = sta->next) {
- u8 *identity;
- size_t identity_len;
-
- if (!sta->radius_das_match)
- continue;
- identity = ieee802_1x_get_identity(sta->eapol_sm,
- &identity_len);
- if (!identity ||
- identity_len != attr->user_name_len ||
- os_memcmp(identity, attr->user_name, identity_len)
- != 0)
- sta->radius_das_match = 0;
- else
- count++;
- }
-
- if (count == 0) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: No matches remaining after User-Name check");
- return NULL;
- }
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: User-Name match");
- }
-
- if (num_attr == 0) {
- /*
- * In theory, we could match all current associations, but it
- * seems safer to just reject requests that do not include any
- * session identification attributes.
- */
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: No session identification attributes included");
- return NULL;
- }
-
- selected = NULL;
- for (sta = hapd->sta_list; sta; sta = sta->next) {
- if (sta->radius_das_match) {
- if (selected) {
- *multi = 1;
- return NULL;
- }
- selected = sta;
- }
- }
-
- return selected;
-}
-
-
-static int hostapd_das_disconnect_pmksa(struct hostapd_data *hapd,
- struct radius_das_attrs *attr)
-{
- if (!hapd->wpa_auth)
- return -1;
- return wpa_auth_radius_das_disconnect_pmksa(hapd->wpa_auth, attr);
-}
-
-
-static enum radius_das_res
-hostapd_das_disconnect(void *ctx, struct radius_das_attrs *attr)
-{
- struct hostapd_data *hapd = ctx;
- struct sta_info *sta;
- int multi;
-
- if (hostapd_das_nas_mismatch(hapd, attr))
- return RADIUS_DAS_NAS_MISMATCH;
-
- sta = hostapd_das_find_sta(hapd, attr, &multi);
- if (sta == NULL) {
- if (multi) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: Multiple sessions match - not supported");
- return RADIUS_DAS_MULTI_SESSION_MATCH;
- }
- if (hostapd_das_disconnect_pmksa(hapd, attr) == 0) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: PMKSA cache entry matched");
- return RADIUS_DAS_SUCCESS;
- }
- wpa_printf(MSG_DEBUG, "RADIUS DAS: No matching session found");
- return RADIUS_DAS_SESSION_NOT_FOUND;
- }
-
- wpa_printf(MSG_DEBUG, "RADIUS DAS: Found a matching session " MACSTR
- " - disconnecting", MAC2STR(sta->addr));
- wpa_auth_pmksa_remove(hapd->wpa_auth, sta->addr);
-
- hostapd_drv_sta_deauth(hapd, sta->addr,
- WLAN_REASON_PREV_AUTH_NOT_VALID);
- ap_sta_deauthenticate(hapd, sta, WLAN_REASON_PREV_AUTH_NOT_VALID);
-
- return RADIUS_DAS_SUCCESS;
-}
-
-
-#ifdef CONFIG_HS20
-static enum radius_das_res
-hostapd_das_coa(void *ctx, struct radius_das_attrs *attr)
-{
- struct hostapd_data *hapd = ctx;
- struct sta_info *sta;
- int multi;
-
- if (hostapd_das_nas_mismatch(hapd, attr))
- return RADIUS_DAS_NAS_MISMATCH;
-
- sta = hostapd_das_find_sta(hapd, attr, &multi);
- if (!sta) {
- if (multi) {
- wpa_printf(MSG_DEBUG,
- "RADIUS DAS: Multiple sessions match - not supported");
- return RADIUS_DAS_MULTI_SESSION_MATCH;
- }
- wpa_printf(MSG_DEBUG, "RADIUS DAS: No matching session found");
- return RADIUS_DAS_SESSION_NOT_FOUND;
- }
-
- wpa_printf(MSG_DEBUG, "RADIUS DAS: Found a matching session " MACSTR
- " - CoA", MAC2STR(sta->addr));
-
- if (attr->hs20_t_c_filtering) {
- if (attr->hs20_t_c_filtering[0] & BIT(0)) {
- wpa_printf(MSG_DEBUG,
- "HS 2.0: Unexpected Terms and Conditions filtering required in CoA-Request");
- return RADIUS_DAS_COA_FAILED;
- }
-
- hs20_t_c_filtering(hapd, sta, 0);
- }
-
- return RADIUS_DAS_SUCCESS;
-}
-#else /* CONFIG_HS20 */
-#define hostapd_das_coa NULL
-#endif /* CONFIG_HS20 */
-
-
-#ifdef CONFIG_SQLITE
-
-static int db_table_exists(sqlite3 *db, const char *name)
-{
- char cmd[128];
-
- os_snprintf(cmd, sizeof(cmd), "SELECT 1 FROM %s;", name);
- return sqlite3_exec(db, cmd, NULL, NULL, NULL) == SQLITE_OK;
-}
-
-
-static int db_table_create_radius_attributes(sqlite3 *db)
-{
- char *err = NULL;
- const char *sql =
- "CREATE TABLE radius_attributes("
- " id INTEGER PRIMARY KEY,"
- " sta TEXT,"
- " reqtype TEXT,"
- " attr TEXT"
- ");"
- "CREATE INDEX idx_sta_reqtype ON radius_attributes(sta,reqtype);";
-
- wpa_printf(MSG_DEBUG,
- "Adding database table for RADIUS attribute information");
- if (sqlite3_exec(db, sql, NULL, NULL, &err) != SQLITE_OK) {
- wpa_printf(MSG_ERROR, "SQLite error: %s", err);
- sqlite3_free(err);
- return -1;
- }
-
- return 0;
-}
-
-#endif /* CONFIG_SQLITE */
-
-#endif /* CONFIG_NO_RADIUS */
-
-
-/**
- * hostapd_setup_bss - Per-BSS setup (initialization)
- * @hapd: Pointer to BSS data
- * @first: Whether this BSS is the first BSS of an interface; -1 = not first,
- * but interface may exist
- *
- * This function is used to initialize all per-BSS data structures and
- * resources. This gets called in a loop for each BSS when an interface is
- * initialized. Most of the modules that are initialized here will be
- * deinitialized in hostapd_cleanup().
- */
-static int hostapd_setup_bss(struct hostapd_data *hapd, int first)
-{
- struct hostapd_bss_config *conf = hapd->conf;
- u8 ssid[SSID_MAX_LEN + 1];
- int ssid_len, set_ssid;
- char force_ifname[IFNAMSIZ];
- u8 if_addr[ETH_ALEN];
- int flush_old_stations = 1;
-
- wpa_printf(MSG_DEBUG, "%s(hapd=%p (%s), first=%d)",
- __func__, hapd, conf->iface, first);
-
-#ifdef EAP_SERVER_TNC
- if (conf->tnc && tncs_global_init() < 0) {
- wpa_printf(MSG_ERROR, "Failed to initialize TNCS");
- return -1;
- }
-#endif /* EAP_SERVER_TNC */
-
- if (hapd->started) {
- wpa_printf(MSG_ERROR, "%s: Interface %s was already started",
- __func__, conf->iface);
- return -1;
- }
- hapd->started = 1;
-
- if (!first || first == -1) {
- u8 *addr = hapd->own_addr;
-
- if (!is_zero_ether_addr(conf->bssid)) {
- /* Allocate the configured BSSID. */
- os_memcpy(hapd->own_addr, conf->bssid, ETH_ALEN);
-
- if (hostapd_mac_comp(hapd->own_addr,
- hapd->iface->bss[0]->own_addr) ==
- 0) {
- wpa_printf(MSG_ERROR, "BSS '%s' may not have "
- "BSSID set to the MAC address of "
- "the radio", conf->iface);
- return -1;
- }
- } else if (hapd->iconf->use_driver_iface_addr) {
- addr = NULL;
- } else {
- /* Allocate the next available BSSID. */
- do {
- inc_byte_array(hapd->own_addr, ETH_ALEN);
- } while (mac_in_conf(hapd->iconf, hapd->own_addr));
- }
-
- hapd->interface_added = 1;
- if (hostapd_if_add(hapd->iface->bss[0], WPA_IF_AP_BSS,
- conf->iface, addr, hapd,
- &hapd->drv_priv, force_ifname, if_addr,
- conf->bridge[0] ? conf->bridge : NULL,
- first == -1)) {
- wpa_printf(MSG_ERROR, "Failed to add BSS (BSSID="
- MACSTR ")", MAC2STR(hapd->own_addr));
- hapd->interface_added = 0;
- return -1;
- }
-
- if (!addr)
- os_memcpy(hapd->own_addr, if_addr, ETH_ALEN);
- }
-
- if (conf->wmm_enabled < 0)
- conf->wmm_enabled = hapd->iconf->ieee80211n |
- hapd->iconf->ieee80211ax;
-
-#ifdef CONFIG_IEEE80211R_AP
- if (is_zero_ether_addr(conf->r1_key_holder))
- os_memcpy(conf->r1_key_holder, hapd->own_addr, ETH_ALEN);
-#endif /* CONFIG_IEEE80211R_AP */
-
-#ifdef CONFIG_MESH
- if ((hapd->conf->mesh & MESH_ENABLED) && hapd->iface->mconf == NULL)
- flush_old_stations = 0;
-#endif /* CONFIG_MESH */
-
- if (flush_old_stations)
- hostapd_flush(hapd);
- hostapd_set_privacy(hapd, 0);
-
-#ifdef CONFIG_WEP
- if (!hostapd_drv_nl80211(hapd))
- hostapd_broadcast_wep_clear(hapd);
- if (hostapd_setup_encryption(conf->iface, hapd))
- return -1;
-#endif /* CONFIG_WEP */
-
- /*
- * Fetch the SSID from the system and use it or,
- * if one was specified in the config file, verify they
- * match.
- */
- ssid_len = hostapd_get_ssid(hapd, ssid, sizeof(ssid));
- if (ssid_len < 0) {
- wpa_printf(MSG_ERROR, "Could not read SSID from system");
- return -1;
- }
- if (conf->ssid.ssid_set) {
- /*
- * If SSID is specified in the config file and it differs
- * from what is being used then force installation of the
- * new SSID.
- */
- set_ssid = (conf->ssid.ssid_len != (size_t) ssid_len ||
- os_memcmp(conf->ssid.ssid, ssid, ssid_len) != 0);
- } else {
- /*
- * No SSID in the config file; just use the one we got
- * from the system.
- */
- set_ssid = 0;
- conf->ssid.ssid_len = ssid_len;
- os_memcpy(conf->ssid.ssid, ssid, conf->ssid.ssid_len);
- }
-
- /*
- * Short SSID calculation is identical to FCS and it is defined in
- * IEEE P802.11-REVmd/D3.0, 9.4.2.170.3 (Calculating the Short-SSID).
- */
- conf->ssid.short_ssid = crc32(conf->ssid.ssid, conf->ssid.ssid_len);
-
- if (!hostapd_drv_none(hapd)) {
- wpa_printf(MSG_DEBUG, "Using interface %s with hwaddr " MACSTR
- " and ssid \"%s\"",
- conf->iface, MAC2STR(hapd->own_addr),
- wpa_ssid_txt(conf->ssid.ssid, conf->ssid.ssid_len));
- }
-
- if (hostapd_setup_wpa_psk(conf)) {
- wpa_printf(MSG_ERROR, "WPA-PSK setup failed.");
- return -1;
- }
-
- /* Set SSID for the kernel driver (to be used in beacon and probe
- * response frames) */
- if (set_ssid && hostapd_set_ssid(hapd, conf->ssid.ssid,
- conf->ssid.ssid_len)) {
- wpa_printf(MSG_ERROR, "Could not set SSID for kernel driver");
- return -1;
- }
-
- if (wpa_debug_level <= MSG_MSGDUMP)
- conf->radius->msg_dumps = 1;
-#ifndef CONFIG_NO_RADIUS
-
-#ifdef CONFIG_SQLITE
- if (conf->radius_req_attr_sqlite) {
- if (sqlite3_open(conf->radius_req_attr_sqlite,
- &hapd->rad_attr_db)) {
- wpa_printf(MSG_ERROR, "Could not open SQLite file '%s'",
- conf->radius_req_attr_sqlite);
- return -1;
- }
-
- wpa_printf(MSG_DEBUG, "Opening RADIUS attribute database: %s",
- conf->radius_req_attr_sqlite);
- if (!db_table_exists(hapd->rad_attr_db, "radius_attributes") &&
- db_table_create_radius_attributes(hapd->rad_attr_db) < 0)
- return -1;
- }
-#endif /* CONFIG_SQLITE */
-
- hapd->radius = radius_client_init(hapd, conf->radius);
- if (hapd->radius == NULL) {
- wpa_printf(MSG_ERROR, "RADIUS client initialization failed.");
- return -1;
- }
-
- if (conf->radius_das_port) {
- struct radius_das_conf das_conf;
- os_memset(&das_conf, 0, sizeof(das_conf));
- das_conf.port = conf->radius_das_port;
- das_conf.shared_secret = conf->radius_das_shared_secret;
- das_conf.shared_secret_len =
- conf->radius_das_shared_secret_len;
- das_conf.client_addr = &conf->radius_das_client_addr;
- das_conf.time_window = conf->radius_das_time_window;
- das_conf.require_event_timestamp =
- conf->radius_das_require_event_timestamp;
- das_conf.require_message_authenticator =
- conf->radius_das_require_message_authenticator;
- das_conf.ctx = hapd;
- das_conf.disconnect = hostapd_das_disconnect;
- das_conf.coa = hostapd_das_coa;
- hapd->radius_das = radius_das_init(&das_conf);
- if (hapd->radius_das == NULL) {
- wpa_printf(MSG_ERROR, "RADIUS DAS initialization "
- "failed.");
- return -1;
- }
- }
-#endif /* CONFIG_NO_RADIUS */
-
- if (hostapd_acl_init(hapd)) {
- wpa_printf(MSG_ERROR, "ACL initialization failed.");
- return -1;
- }
- if (hostapd_init_wps(hapd, conf))
- return -1;
-
-#ifdef CONFIG_DPP
- hapd->gas = gas_query_ap_init(hapd, hapd->msg_ctx);
- if (!hapd->gas)
- return -1;
- if (hostapd_dpp_init(hapd))
- return -1;
-#endif /* CONFIG_DPP */
-
- if (authsrv_init(hapd) < 0)
- return -1;
-
- if (ieee802_1x_init(hapd)) {
- wpa_printf(MSG_ERROR, "IEEE 802.1X initialization failed.");
- return -1;
- }
-
- if ((conf->wpa || conf->osen) && hostapd_setup_wpa(hapd))
- return -1;
-
- if (accounting_init(hapd)) {
- wpa_printf(MSG_ERROR, "Accounting initialization failed.");
- return -1;
- }
-
-#ifdef CONFIG_INTERWORKING
- if (gas_serv_init(hapd)) {
- wpa_printf(MSG_ERROR, "GAS server initialization failed");
- return -1;
- }
-
- if (conf->qos_map_set_len &&
- hostapd_drv_set_qos_map(hapd, conf->qos_map_set,
- conf->qos_map_set_len)) {
- wpa_printf(MSG_ERROR, "Failed to initialize QoS Map");
- return -1;
- }
-#endif /* CONFIG_INTERWORKING */
-
- if (conf->bss_load_update_period && bss_load_update_init(hapd)) {
- wpa_printf(MSG_ERROR, "BSS Load initialization failed");
- return -1;
- }
-
- if (conf->proxy_arp) {
- if (x_snoop_init(hapd)) {
- wpa_printf(MSG_ERROR,
- "Generic snooping infrastructure initialization failed");
- return -1;
- }
-
- if (dhcp_snoop_init(hapd)) {
- wpa_printf(MSG_ERROR,
- "DHCP snooping initialization failed");
- return -1;
- }
-
- if (ndisc_snoop_init(hapd)) {
- wpa_printf(MSG_ERROR,
- "Neighbor Discovery snooping initialization failed");
- return -1;
- }
- }
-
- if (!hostapd_drv_none(hapd) && vlan_init(hapd)) {
- wpa_printf(MSG_ERROR, "VLAN initialization failed.");
- return -1;
- }
-
- if (!conf->start_disabled && ieee802_11_set_beacon(hapd) < 0)
- return -1;
-
- if (flush_old_stations && !conf->start_disabled &&
- conf->broadcast_deauth) {
- u8 addr[ETH_ALEN];
-
- /* Should any previously associated STA not have noticed that
- * the AP had stopped and restarted, send one more
- * deauthentication notification now that the AP is ready to
- * operate. */
- wpa_dbg(hapd->msg_ctx, MSG_DEBUG,
- "Deauthenticate all stations at BSS start");
- os_memset(addr, 0xff, ETH_ALEN);
- hostapd_drv_sta_deauth(hapd, addr,
- WLAN_REASON_PREV_AUTH_NOT_VALID);
- }
-
- if (hapd->wpa_auth && wpa_init_keys(hapd->wpa_auth) < 0)
- return -1;
-
- if (hapd->driver && hapd->driver->set_operstate)
- hapd->driver->set_operstate(hapd->drv_priv, 1);
-
- return 0;
-}
-
-
-static void hostapd_tx_queue_params(struct hostapd_iface *iface)
-{
- struct hostapd_data *hapd = iface->bss[0];
- int i;
- struct hostapd_tx_queue_params *p;
-
-#ifdef CONFIG_MESH
- if ((hapd->conf->mesh & MESH_ENABLED) && iface->mconf == NULL)
- return;
-#endif /* CONFIG_MESH */
-
- for (i = 0; i < NUM_TX_QUEUES; i++) {
- p = &iface->conf->tx_queue[i];
-
- if (hostapd_set_tx_queue_params(hapd, i, p->aifs, p->cwmin,
- p->cwmax, p->burst)) {
- wpa_printf(MSG_DEBUG, "Failed to set TX queue "
- "parameters for queue %d.", i);
- /* Continue anyway */
- }
- }
-}
-
-
-static int hostapd_set_acl_list(struct hostapd_data *hapd,
- struct mac_acl_entry *mac_acl,
- int n_entries, u8 accept_acl)
-{
- struct hostapd_acl_params *acl_params;
- int i, err;
-
- acl_params = os_zalloc(sizeof(*acl_params) +
- (n_entries * sizeof(acl_params->mac_acl[0])));
- if (!acl_params)
- return -ENOMEM;
-
- for (i = 0; i < n_entries; i++)
- os_memcpy(acl_params->mac_acl[i].addr, mac_acl[i].addr,
- ETH_ALEN);
-
- acl_params->acl_policy = accept_acl;
- acl_params->num_mac_acl = n_entries;
-
- err = hostapd_drv_set_acl(hapd, acl_params);
-
- os_free(acl_params);
-
- return err;
-}
-
-
-static void hostapd_set_acl(struct hostapd_data *hapd)
-{
- struct hostapd_config *conf = hapd->iconf;
- int err;
- u8 accept_acl;
-
- if (hapd->iface->drv_max_acl_mac_addrs == 0)
- return;
-
- if (conf->bss[0]->macaddr_acl == DENY_UNLESS_ACCEPTED) {
- accept_acl = 1;
- err = hostapd_set_acl_list(hapd, conf->bss[0]->accept_mac,
- conf->bss[0]->num_accept_mac,
- accept_acl);
- if (err) {
- wpa_printf(MSG_DEBUG, "Failed to set accept acl");
- return;
- }
- } else if (conf->bss[0]->macaddr_acl == ACCEPT_UNLESS_DENIED) {
- accept_acl = 0;
- err = hostapd_set_acl_list(hapd, conf->bss[0]->deny_mac,
- conf->bss[0]->num_deny_mac,
- accept_acl);
- if (err) {
- wpa_printf(MSG_DEBUG, "Failed to set deny acl");
- return;
- }
- }
-}
-
-
-static int start_ctrl_iface_bss(struct hostapd_data *hapd)
-{
- if (!hapd->iface->interfaces ||
- !hapd->iface->interfaces->ctrl_iface_init)
- return 0;
-
- if (hapd->iface->interfaces->ctrl_iface_init(hapd)) {
- wpa_printf(MSG_ERROR,
- "Failed to setup control interface for %s",
- hapd->conf->iface);
- return -1;
- }
-
- return 0;
-}
-
-
-static int start_ctrl_iface(struct hostapd_iface *iface)
-{
- size_t i;
-
- if (!iface->interfaces || !iface->interfaces->ctrl_iface_init)
- return 0;
-
- for (i = 0; i < iface->num_bss; i++) {
- struct hostapd_data *hapd = iface->bss[i];
- if (iface->interfaces->ctrl_iface_init(hapd)) {
- wpa_printf(MSG_ERROR,
- "Failed to setup control interface for %s",
- hapd->conf->iface);
- return -1;
- }
- }
-
- return 0;
-}
-
-
-static void channel_list_update_timeout(void *eloop_ctx, void *timeout_ctx)
-{
- struct hostapd_iface *iface = eloop_ctx;
-
- if (!iface->wait_channel_update) {
- wpa_printf(MSG_INFO, "Channel list update timeout, but interface was not waiting for it");
- return;
- }
-
- /*
- * It is possible that the existing channel list is acceptable, so try
- * to proceed.
- */
- wpa_printf(MSG_DEBUG, "Channel list update timeout - try to continue anyway");
- setup_interface2(iface);
-}
-
-
-void hostapd_channel_list_updated(struct hostapd_iface *iface, int initiator)
-{
- if (!iface->wait_channel_update || initiator != REGDOM_SET_BY_USER)
- return;
-
- wpa_printf(MSG_DEBUG, "Channel list updated - continue setup");
- eloop_cancel_timeout(channel_list_update_timeout, iface, NULL);
- setup_interface2(iface);
-}
-
-
-static int setup_interface(struct hostapd_iface *iface)
-{
- struct hostapd_data *hapd = iface->bss[0];
- size_t i;
-
- /*
- * It is possible that setup_interface() is called after the interface
- * was disabled etc., in which case driver_ap_teardown is possibly set
- * to 1. Clear it here so any other key/station deletion, which is not
- * part of a teardown flow, would also call the relevant driver
- * callbacks.
- */
- iface->driver_ap_teardown = 0;
-
- if (!iface->phy[0]) {
- const char *phy = hostapd_drv_get_radio_name(hapd);
- if (phy) {
- wpa_printf(MSG_DEBUG, "phy: %s", phy);
- os_strlcpy(iface->phy, phy, sizeof(iface->phy));
- }
- }
-
- /*
- * Make sure that all BSSes get configured with a pointer to the same
- * driver interface.
- */
- for (i = 1; i < iface->num_bss; i++) {
- iface->bss[i]->driver = hapd->driver;
- iface->bss[i]->drv_priv = hapd->drv_priv;
- }
-
- if (hostapd_validate_bssid_configuration(iface))
- return -1;
-
- /*
- * Initialize control interfaces early to allow external monitoring of
- * channel setup operations that may take considerable amount of time
- * especially for DFS cases.
- */
- if (start_ctrl_iface(iface))
- return -1;
-
- if (hapd->iconf->country[0] && hapd->iconf->country[1]) {
- char country[4], previous_country[4];
-
- hostapd_set_state(iface, HAPD_IFACE_COUNTRY_UPDATE);
- if (hostapd_get_country(hapd, previous_country) < 0)
- previous_country[0] = '\0';
-
- os_memcpy(country, hapd->iconf->country, 3);
- country[3] = '\0';
- if (hostapd_set_country(hapd, country) < 0) {
- wpa_printf(MSG_ERROR, "Failed to set country code");
- return -1;
- }
-
- wpa_printf(MSG_DEBUG, "Previous country code %s, new country code %s",
- previous_country, country);
-
- if (os_strncmp(previous_country, country, 2) != 0) {
- wpa_printf(MSG_DEBUG, "Continue interface setup after channel list update");
- iface->wait_channel_update = 1;
- eloop_register_timeout(5, 0,
- channel_list_update_timeout,
- iface, NULL);
- return 0;
- }
- }
-
- return setup_interface2(iface);
-}
-
-
-static int configured_fixed_chan_to_freq(struct hostapd_iface *iface)
-{
- int freq, i, j;
-
- if (!iface->conf->channel)
- return 0;
- if (iface->conf->op_class) {
- freq = ieee80211_chan_to_freq(NULL, iface->conf->op_class,
- iface->conf->channel);
- if (freq < 0) {
- wpa_printf(MSG_INFO,
- "Could not convert op_class %u channel %u to operating frequency",
- iface->conf->op_class, iface->conf->channel);
- return -1;
- }
- iface->freq = freq;
- return 0;
- }
-
- /* Old configurations using only 2.4/5/60 GHz bands may not specify the
- * op_class parameter. Select a matching channel from the configured
- * mode using the channel parameter for these cases.
- */
- for (j = 0; j < iface->num_hw_features; j++) {
- struct hostapd_hw_modes *mode = &iface->hw_features[j];
-
- if (iface->conf->hw_mode != HOSTAPD_MODE_IEEE80211ANY &&
- iface->conf->hw_mode != mode->mode)
- continue;
- for (i = 0; i < mode->num_channels; i++) {
- struct hostapd_channel_data *chan = &mode->channels[i];
-
- if (chan->chan == iface->conf->channel &&
- !is_6ghz_freq(chan->freq)) {
- iface->freq = chan->freq;
- return 0;
- }
- }
- }
-
- wpa_printf(MSG_INFO, "Could not determine operating frequency");
- return -1;
-}
-
-#ifndef CONFIG_ACS
-#ifdef CONFIG_BRCM_AUTOMOTIVE
-void bcm_private_acs(struct hostapd_iface *iface)
-{
- char cmd[1024];
- char reply[1024];
- char *p = cmd;
- struct hostapd_data *hapd;
-
- hapd = iface->bss[0];
- if (hapd == NULL) {
- wpa_printf(MSG_ERROR, "Failed to get good channel hapd is null");
- return;
- }
-
- memset(cmd, 0, sizeof(cmd));
- memset(reply, 0, sizeof(reply));
-
- memcpy(p, "HAPD_AUTO_CHANNEL", 17);
- p += 17;
-
- if ((iface->conf->hw_mode == HOSTAPD_MODE_IEEE80211G)
- || (iface->conf->hw_mode == HOSTAPD_MODE_IEEE80211B)) {
- memcpy(p, " band=2g", 8);
- }
- else {
- memcpy(p, " band=5g", 8);
- }
-
- wpa_printf(MSG_DEBUG, "cmd %s", cmd);
-
- if (!hapd->driver->driver_cmd)
- return ;
-
- if (hapd->driver->driver_cmd(hapd->drv_priv, cmd, reply, sizeof(reply)) <= 0) {
- wpa_printf(MSG_ERROR, "Failed to get good channel");
- return;
- }
-
- iface->conf->channel = atoi(reply);
- wpa_printf(MSG_DEBUG, "Channel selected by private ACS = %d", iface->conf->channel);
- return ;
-}
-#endif
-#endif
-
-static void hostapd_set_6ghz_sec_chan(struct hostapd_iface *iface)
-{
- int bw, seg0;
-
- if (!is_6ghz_op_class(iface->conf->op_class))
- return;
-
- seg0 = hostapd_get_oper_centr_freq_seg0_idx(iface->conf);
- bw = center_idx_to_bw_6ghz(seg0);
- /* Assign the secondary channel if absent in config for
- * bandwidths > 20 MHz */
- if (bw > 20 && !iface->conf->secondary_channel) {
- if (((iface->conf->channel - 1) / 4) % 2)
- iface->conf->secondary_channel = -1;
- else
- iface->conf->secondary_channel = 1;
- }
-}
-
-
-static int setup_interface2(struct hostapd_iface *iface)
-{
- iface->wait_channel_update = 0;
-
- if (hostapd_get_hw_features(iface)) {
- /* Not all drivers support this yet, so continue without hw
- * feature data. */
- } else {
-#ifndef CONFIG_ACS
-#ifdef CONFIG_BRCM_AUTOMOTIVE
- if(!iface->conf->channel)
- bcm_private_acs(iface);
-#endif
-#endif
- int ret;
-
- ret = configured_fixed_chan_to_freq(iface);
- if (ret < 0)
- goto fail;
-
- if (iface->conf->op_class) {
- int ch_width;
-
- ch_width = op_class_to_ch_width(iface->conf->op_class);
- hostapd_set_oper_chwidth(iface->conf, ch_width);
- hostapd_set_6ghz_sec_chan(iface);
- }
-
- ret = hostapd_select_hw_mode(iface);
- if (ret < 0) {
- wpa_printf(MSG_ERROR, "Could not select hw_mode and "
- "channel. (%d)", ret);
- goto fail;
- }
- if (ret == 1) {
- wpa_printf(MSG_DEBUG, "Interface initialization will be completed in a callback (ACS)");
- return 0;
- }
- ret = hostapd_check_edmg_capab(iface);
- if (ret < 0)
- goto fail;
- ret = hostapd_check_he_6ghz_capab(iface);
- if (ret < 0)
- goto fail;
- ret = hostapd_check_ht_capab(iface);
- if (ret < 0)
- goto fail;
- if (ret == 1) {
- wpa_printf(MSG_DEBUG, "Interface initialization will "
- "be completed in a callback");
- return 0;
- }
-
- if (iface->conf->ieee80211h)
- wpa_printf(MSG_DEBUG, "DFS support is enabled");
- }
- return hostapd_setup_interface_complete(iface, 0);
-
-fail:
- hostapd_set_state(iface, HAPD_IFACE_DISABLED);
- wpa_msg(iface->bss[0]->msg_ctx, MSG_INFO, AP_EVENT_DISABLED);
- if (iface->interfaces && iface->interfaces->terminate_on_error)
- eloop_terminate();
- return -1;
-}
-
-
-#ifdef CONFIG_FST
-
-static const u8 * fst_hostapd_get_bssid_cb(void *ctx)
-{
- struct hostapd_data *hapd = ctx;
-
- return hapd->own_addr;
-}
-
-
-static void fst_hostapd_get_channel_info_cb(void *ctx,
- enum hostapd_hw_mode *hw_mode,
- u8 *channel)
-{
- struct hostapd_data *hapd = ctx;
-
- *hw_mode = ieee80211_freq_to_chan(hapd->iface->freq, channel);
-}
-
-
-static void fst_hostapd_set_ies_cb(void *ctx, const struct wpabuf *fst_ies)
-{
- struct hostapd_data *hapd = ctx;
-
- if (hapd->iface->fst_ies != fst_ies) {
- hapd->iface->fst_ies = fst_ies;
- if (ieee802_11_set_beacon(hapd))
- wpa_printf(MSG_WARNING, "FST: Cannot set beacon");
- }
-}
-
-
-static int fst_hostapd_send_action_cb(void *ctx, const u8 *da,
- struct wpabuf *buf)
-{
- struct hostapd_data *hapd = ctx;
-
- return hostapd_drv_send_action(hapd, hapd->iface->freq, 0, da,
- wpabuf_head(buf), wpabuf_len(buf));
-}
-
-
-static const struct wpabuf * fst_hostapd_get_mb_ie_cb(void *ctx, const u8 *addr)
-{
- struct hostapd_data *hapd = ctx;
- struct sta_info *sta = ap_get_sta(hapd, addr);
-
- return sta ? sta->mb_ies : NULL;
-}
-
-
-static void fst_hostapd_update_mb_ie_cb(void *ctx, const u8 *addr,
- const u8 *buf, size_t size)
-{
- struct hostapd_data *hapd = ctx;
- struct sta_info *sta = ap_get_sta(hapd, addr);
-
- if (sta) {
- struct mb_ies_info info;
-
- if (!mb_ies_info_by_ies(&info, buf, size)) {
- wpabuf_free(sta->mb_ies);
- sta->mb_ies = mb_ies_by_info(&info);
- }
- }
-}
-
-
-static const u8 * fst_hostapd_get_sta(struct fst_get_peer_ctx **get_ctx,
- bool mb_only)
-{
- struct sta_info *s = (struct sta_info *) *get_ctx;
-
- if (mb_only) {
- for (; s && !s->mb_ies; s = s->next)
- ;
- }
-
- if (s) {
- *get_ctx = (struct fst_get_peer_ctx *) s->next;
-
- return s->addr;
- }
-
- *get_ctx = NULL;
- return NULL;
-}
-
-
-static const u8 * fst_hostapd_get_peer_first(void *ctx,
- struct fst_get_peer_ctx **get_ctx,
- bool mb_only)
-{
- struct hostapd_data *hapd = ctx;
-
- *get_ctx = (struct fst_get_peer_ctx *) hapd->sta_list;
-
- return fst_hostapd_get_sta(get_ctx, mb_only);
-}
-
-
-static const u8 * fst_hostapd_get_peer_next(void *ctx,
- struct fst_get_peer_ctx **get_ctx,
- bool mb_only)
-{
- return fst_hostapd_get_sta(get_ctx, mb_only);
-}
-
-
-void fst_hostapd_fill_iface_obj(struct hostapd_data *hapd,
- struct fst_wpa_obj *iface_obj)
-{
- iface_obj->ctx = hapd;
- iface_obj->get_bssid = fst_hostapd_get_bssid_cb;
- iface_obj->get_channel_info = fst_hostapd_get_channel_info_cb;
- iface_obj->set_ies = fst_hostapd_set_ies_cb;
- iface_obj->send_action = fst_hostapd_send_action_cb;
- iface_obj->get_mb_ie = fst_hostapd_get_mb_ie_cb;
- iface_obj->update_mb_ie = fst_hostapd_update_mb_ie_cb;
- iface_obj->get_peer_first = fst_hostapd_get_peer_first;
- iface_obj->get_peer_next = fst_hostapd_get_peer_next;
-}
-
-#endif /* CONFIG_FST */
-
-#ifdef CONFIG_OWE
-
-static int hostapd_owe_iface_iter(struct hostapd_iface *iface, void *ctx)
-{
- struct hostapd_data *hapd = ctx;
- size_t i;
-
- for (i = 0; i < iface->num_bss; i++) {
- struct hostapd_data *bss = iface->bss[i];
-
- if (os_strcmp(hapd->conf->owe_transition_ifname,
- bss->conf->iface) != 0)
- continue;
-
- wpa_printf(MSG_DEBUG,
- "OWE: ifname=%s found transition mode ifname=%s BSSID "
- MACSTR " SSID %s",
- hapd->conf->iface, bss->conf->iface,
- MAC2STR(bss->own_addr),
- wpa_ssid_txt(bss->conf->ssid.ssid,
- bss->conf->ssid.ssid_len));
- if (!bss->conf->ssid.ssid_set || !bss->conf->ssid.ssid_len ||
- is_zero_ether_addr(bss->own_addr))
- continue;
-
- os_memcpy(hapd->conf->owe_transition_bssid, bss->own_addr,
- ETH_ALEN);
- os_memcpy(hapd->conf->owe_transition_ssid,
- bss->conf->ssid.ssid, bss->conf->ssid.ssid_len);
- hapd->conf->owe_transition_ssid_len = bss->conf->ssid.ssid_len;
- wpa_printf(MSG_DEBUG,
- "OWE: Copied transition mode information");
- return 1;
- }
-
- return 0;
-}
-
-
-int hostapd_owe_trans_get_info(struct hostapd_data *hapd)
-{
- if (hapd->conf->owe_transition_ssid_len > 0 &&
- !is_zero_ether_addr(hapd->conf->owe_transition_bssid))
- return 0;
-
- /* Find transition mode SSID/BSSID information from a BSS operated by
- * this hostapd instance. */
- if (!hapd->iface->interfaces ||
- !hapd->iface->interfaces->for_each_interface)
- return hostapd_owe_iface_iter(hapd->iface, hapd);
- else
- return hapd->iface->interfaces->for_each_interface(
- hapd->iface->interfaces, hostapd_owe_iface_iter, hapd);
-}
-
-
-static int hostapd_owe_iface_iter2(struct hostapd_iface *iface, void *ctx)
-{
- size_t i;
-
- for (i = 0; i < iface->num_bss; i++) {
- struct hostapd_data *bss = iface->bss[i];
- int res;
-
- if (!bss->conf->owe_transition_ifname[0])
- continue;
- if (bss->iface->state != HAPD_IFACE_ENABLED) {
- wpa_printf(MSG_DEBUG,
- "OWE: Interface %s state %s - defer beacon update",
- bss->conf->iface,
- hostapd_state_text(bss->iface->state));
- continue;
- }
- res = hostapd_owe_trans_get_info(bss);
- if (res == 0)
- continue;
- wpa_printf(MSG_DEBUG,
- "OWE: Matching transition mode interface enabled - update beacon data for %s",
- bss->conf->iface);
- ieee802_11_set_beacon(bss);
- }
-
- return 0;
-}
-
-#endif /* CONFIG_OWE */
-
-
-static void hostapd_owe_update_trans(struct hostapd_iface *iface)
-{
-#ifdef CONFIG_OWE
- /* Check whether the enabled BSS can complete OWE transition mode
- * configuration for any pending interface. */
- if (!iface->interfaces ||
- !iface->interfaces->for_each_interface)
- hostapd_owe_iface_iter2(iface, NULL);
- else
- iface->interfaces->for_each_interface(
- iface->interfaces, hostapd_owe_iface_iter2, NULL);
-#endif /* CONFIG_OWE */
-}
-
-
-static void hostapd_interface_setup_failure_handler(void *eloop_ctx,
- void *timeout_ctx)
-{
- struct hostapd_iface *iface = eloop_ctx;
- struct hostapd_data *hapd;
-
- if (iface->num_bss < 1 || !iface->bss || !iface->bss[0])
- return;
- hapd = iface->bss[0];
- if (hapd->setup_complete_cb)
- hapd->setup_complete_cb(hapd->setup_complete_cb_ctx);
-}
-
-
-static int hostapd_setup_interface_complete_sync(struct hostapd_iface *iface,
- int err)
-{
- struct hostapd_data *hapd = iface->bss[0];
- size_t j;
- u8 *prev_addr;
- int delay_apply_cfg = 0;
- int res_dfs_offload = 0;
-
- if (err)
- goto fail;
-
- wpa_printf(MSG_DEBUG, "Completing interface initialization");
- if (iface->freq) {
-#ifdef NEED_AP_MLME
- int res;
-#endif /* NEED_AP_MLME */
-
- wpa_printf(MSG_DEBUG, "Mode: %s Channel: %d "
- "Frequency: %d MHz",
- hostapd_hw_mode_txt(iface->conf->hw_mode),
- iface->conf->channel, iface->freq);
-
-#ifdef NEED_AP_MLME
- /* Handle DFS only if it is not offloaded to the driver */
- if (!(iface->drv_flags & WPA_DRIVER_FLAGS_DFS_OFFLOAD)) {
- /* Check DFS */
- res = hostapd_handle_dfs(iface);
- if (res <= 0) {
- if (res < 0)
- goto fail;
- return res;
- }
- } else {
- /* If DFS is offloaded to the driver */
- res_dfs_offload = hostapd_handle_dfs_offload(iface);
- if (res_dfs_offload <= 0) {
- if (res_dfs_offload < 0)
- goto fail;
- } else {
- wpa_printf(MSG_DEBUG,
- "Proceed with AP/channel setup");
- /*
- * If this is a DFS channel, move to completing
- * AP setup.
- */
- if (res_dfs_offload == 1)
- goto dfs_offload;
- /* Otherwise fall through. */
- }
- }
-#endif /* NEED_AP_MLME */
-
-#ifdef CONFIG_MESH
- if (iface->mconf != NULL) {
- wpa_printf(MSG_DEBUG,
- "%s: Mesh configuration will be applied while joining the mesh network",
- iface->bss[0]->conf->iface);
- delay_apply_cfg = 1;
- }
-#endif /* CONFIG_MESH */
-
- if (!delay_apply_cfg &&
- hostapd_set_freq(hapd, hapd->iconf->hw_mode, iface->freq,
- hapd->iconf->channel,
- hapd->iconf->enable_edmg,
- hapd->iconf->edmg_channel,
- hapd->iconf->ieee80211n,
- hapd->iconf->ieee80211ac,
- hapd->iconf->ieee80211ax,
- hapd->iconf->secondary_channel,
- hostapd_get_oper_chwidth(hapd->iconf),
- hostapd_get_oper_centr_freq_seg0_idx(
- hapd->iconf),
- hostapd_get_oper_centr_freq_seg1_idx(
- hapd->iconf))) {
- wpa_printf(MSG_ERROR, "Could not set channel for "
- "kernel driver");
- goto fail;
- }
- }
-
- if (iface->current_mode) {
- if (hostapd_prepare_rates(iface, iface->current_mode)) {
- wpa_printf(MSG_ERROR, "Failed to prepare rates "
- "table.");
- hostapd_logger(hapd, NULL, HOSTAPD_MODULE_IEEE80211,
- HOSTAPD_LEVEL_WARNING,
- "Failed to prepare rates table.");
- goto fail;
- }
- }
-
- if (hapd->iconf->rts_threshold >= -1 &&
- hostapd_set_rts(hapd, hapd->iconf->rts_threshold) &&
- hapd->iconf->rts_threshold >= -1) {
- wpa_printf(MSG_ERROR, "Could not set RTS threshold for "
- "kernel driver");
- goto fail;
- }
-
- if (hapd->iconf->fragm_threshold >= -1 &&
- hostapd_set_frag(hapd, hapd->iconf->fragm_threshold) &&
- hapd->iconf->fragm_threshold != -1) {
- wpa_printf(MSG_ERROR, "Could not set fragmentation threshold "
- "for kernel driver");
- goto fail;
- }
-
- prev_addr = hapd->own_addr;
-
- for (j = 0; j < iface->num_bss; j++) {
- hapd = iface->bss[j];
- if (j)
- os_memcpy(hapd->own_addr, prev_addr, ETH_ALEN);
- if (hostapd_setup_bss(hapd, j == 0)) {
- for (;;) {
- hapd = iface->bss[j];
- hostapd_bss_deinit_no_free(hapd);
- hostapd_free_hapd_data(hapd);
- if (j == 0)
- break;
- j--;
- }
- goto fail;
- }
- if (is_zero_ether_addr(hapd->conf->bssid))
- prev_addr = hapd->own_addr;
- }
- hapd = iface->bss[0];
-
- hostapd_tx_queue_params(iface);
-
- ap_list_init(iface);
-
- hostapd_set_acl(hapd);
-
- if (hostapd_driver_commit(hapd) < 0) {
- wpa_printf(MSG_ERROR, "%s: Failed to commit driver "
- "configuration", __func__);
- goto fail;
- }
-
- /*
- * WPS UPnP module can be initialized only when the "upnp_iface" is up.
- * If "interface" and "upnp_iface" are the same (e.g., non-bridge
- * mode), the interface is up only after driver_commit, so initialize
- * WPS after driver_commit.
- */
- for (j = 0; j < iface->num_bss; j++) {
- if (hostapd_init_wps_complete(iface->bss[j]))
- goto fail;
- }
-
- if ((iface->drv_flags & WPA_DRIVER_FLAGS_DFS_OFFLOAD) &&
- !res_dfs_offload) {
- /*
- * If freq is DFS, and DFS is offloaded to the driver, then wait
- * for CAC to complete.
- */
- wpa_printf(MSG_DEBUG, "%s: Wait for CAC to complete", __func__);
- return res_dfs_offload;
- }
-
-#ifdef NEED_AP_MLME
-dfs_offload:
-#endif /* NEED_AP_MLME */
-
-#ifdef CONFIG_FST
- if (hapd->iconf->fst_cfg.group_id[0]) {
- struct fst_wpa_obj iface_obj;
-
- fst_hostapd_fill_iface_obj(hapd, &iface_obj);
- iface->fst = fst_attach(hapd->conf->iface, hapd->own_addr,
- &iface_obj, &hapd->iconf->fst_cfg);
- if (!iface->fst) {
- wpa_printf(MSG_ERROR, "Could not attach to FST %s",
- hapd->iconf->fst_cfg.group_id);
- goto fail;
- }
- }
-#endif /* CONFIG_FST */
-
- hostapd_set_state(iface, HAPD_IFACE_ENABLED);
- hostapd_owe_update_trans(iface);
- airtime_policy_update_init(iface);
- wpa_msg(iface->bss[0]->msg_ctx, MSG_INFO, AP_EVENT_ENABLED);
- if (hapd->setup_complete_cb)
- hapd->setup_complete_cb(hapd->setup_complete_cb_ctx);
-
-#ifdef CONFIG_MESH
- if (delay_apply_cfg && !iface->mconf) {
- wpa_printf(MSG_ERROR, "Error while completing mesh init");
- goto fail;
- }
-#endif /* CONFIG_MESH */
-
- wpa_printf(MSG_DEBUG, "%s: Setup of interface done.",
- iface->bss[0]->conf->iface);
- if (iface->interfaces && iface->interfaces->terminate_on_error > 0)
- iface->interfaces->terminate_on_error--;
-
- for (j = 0; j < iface->num_bss; j++)
- hostapd_neighbor_set_own_report(iface->bss[j]);
-
- return 0;
-
-fail:
- wpa_printf(MSG_ERROR, "Interface initialization failed");
- hostapd_set_state(iface, HAPD_IFACE_DISABLED);
- wpa_msg(hapd->msg_ctx, MSG_INFO, AP_EVENT_DISABLED);
-#ifdef CONFIG_FST
- if (iface->fst) {
- fst_detach(iface->fst);
- iface->fst = NULL;
- }
-#endif /* CONFIG_FST */
-
- if (iface->interfaces && iface->interfaces->terminate_on_error) {
- eloop_terminate();
- } else if (hapd->setup_complete_cb) {
- /*
- * Calling hapd->setup_complete_cb directly may cause iface
- * deinitialization which may be accessed later by the caller.
- */
- eloop_register_timeout(0, 0,
- hostapd_interface_setup_failure_handler,
- iface, NULL);
- }
-
- return -1;
-}
-
-
-/**
- * hostapd_setup_interface_complete - Complete interface setup
- *
- * This function is called when previous steps in the interface setup has been
- * completed. This can also start operations, e.g., DFS, that will require
- * additional processing before interface is ready to be enabled. Such
- * operations will call this function from eloop callbacks when finished.
- */
-int hostapd_setup_interface_complete(struct hostapd_iface *iface, int err)
-{
- struct hapd_interfaces *interfaces = iface->interfaces;
- struct hostapd_data *hapd = iface->bss[0];
- unsigned int i;
- int not_ready_in_sync_ifaces = 0;
-
- if (!iface->need_to_start_in_sync)
- return hostapd_setup_interface_complete_sync(iface, err);
-
- if (err) {
- wpa_printf(MSG_ERROR, "Interface initialization failed");
- hostapd_set_state(iface, HAPD_IFACE_DISABLED);
- iface->need_to_start_in_sync = 0;
- wpa_msg(hapd->msg_ctx, MSG_INFO, AP_EVENT_DISABLED);
- if (interfaces && interfaces->terminate_on_error)
- eloop_terminate();
- return -1;
- }
-
- if (iface->ready_to_start_in_sync) {
- /* Already in ready and waiting. should never happpen */
- return 0;
- }
-
- for (i = 0; i < interfaces->count; i++) {
- if (interfaces->iface[i]->need_to_start_in_sync &&
- !interfaces->iface[i]->ready_to_start_in_sync)
- not_ready_in_sync_ifaces++;
- }
-
- /*
- * Check if this is the last interface, if yes then start all the other
- * waiting interfaces. If not, add this interface to the waiting list.
- */
- if (not_ready_in_sync_ifaces > 1 && iface->state == HAPD_IFACE_DFS) {
- /*
- * If this interface went through CAC, do not synchronize, just
- * start immediately.
- */
- iface->need_to_start_in_sync = 0;
- wpa_printf(MSG_INFO,
- "%s: Finished CAC - bypass sync and start interface",
- iface->bss[0]->conf->iface);
- return hostapd_setup_interface_complete_sync(iface, err);
- }
-
- if (not_ready_in_sync_ifaces > 1) {
- /* need to wait as there are other interfaces still coming up */
- iface->ready_to_start_in_sync = 1;
- wpa_printf(MSG_INFO,
- "%s: Interface waiting to sync with other interfaces",
- iface->bss[0]->conf->iface);
- return 0;
- }
-
- wpa_printf(MSG_INFO,
- "%s: Last interface to sync - starting all interfaces",
- iface->bss[0]->conf->iface);
- iface->need_to_start_in_sync = 0;
- hostapd_setup_interface_complete_sync(iface, err);
- for (i = 0; i < interfaces->count; i++) {
- if (interfaces->iface[i]->need_to_start_in_sync &&
- interfaces->iface[i]->ready_to_start_in_sync) {
- hostapd_setup_interface_complete_sync(
- interfaces->iface[i], 0);
- /* Only once the interfaces are sync started */
- interfaces->iface[i]->need_to_start_in_sync = 0;
- }
- }
-
- return 0;
-}
-
-
-/**
- * hostapd_setup_interface - Setup of an interface
- * @iface: Pointer to interface data.
- * Returns: 0 on success, -1 on failure
- *
- * Initializes the driver interface, validates the configuration,
- * and sets driver parameters based on the configuration.
- * Flushes old stations, sets the channel, encryption,
- * beacons, and WDS links based on the configuration.
- *
- * If interface setup requires more time, e.g., to perform HT co-ex scans, ACS,
- * or DFS operations, this function returns 0 before such operations have been
- * completed. The pending operations are registered into eloop and will be
- * completed from eloop callbacks. Those callbacks end up calling
- * hostapd_setup_interface_complete() once setup has been completed.
- */
-int hostapd_setup_interface(struct hostapd_iface *iface)
-{
- int ret;
-
- if (!iface->conf)
- return -1;
- ret = setup_interface(iface);
- if (ret) {
- wpa_printf(MSG_ERROR, "%s: Unable to setup interface.",
- iface->conf->bss[0]->iface);
- return -1;
- }
-
- return 0;
-}
-
-
-/**
- * hostapd_alloc_bss_data - Allocate and initialize per-BSS data
- * @hapd_iface: Pointer to interface data
- * @conf: Pointer to per-interface configuration
- * @bss: Pointer to per-BSS configuration for this BSS
- * Returns: Pointer to allocated BSS data
- *
- * This function is used to allocate per-BSS data structure. This data will be
- * freed after hostapd_cleanup() is called for it during interface
- * deinitialization.
- */
-struct hostapd_data *
-hostapd_alloc_bss_data(struct hostapd_iface *hapd_iface,
- struct hostapd_config *conf,
- struct hostapd_bss_config *bss)
-{
- struct hostapd_data *hapd;
-
- hapd = os_zalloc(sizeof(*hapd));
- if (hapd == NULL)
- return NULL;
-
- hapd->new_assoc_sta_cb = hostapd_new_assoc_sta;
- hapd->iconf = conf;
- hapd->conf = bss;
- hapd->iface = hapd_iface;
- if (conf)
- hapd->driver = conf->driver;
- hapd->ctrl_sock = -1;
- dl_list_init(&hapd->ctrl_dst);
- dl_list_init(&hapd->nr_db);
- hapd->dhcp_sock = -1;
-#ifdef CONFIG_IEEE80211R_AP
- dl_list_init(&hapd->l2_queue);
- dl_list_init(&hapd->l2_oui_queue);
-#endif /* CONFIG_IEEE80211R_AP */
-#ifdef CONFIG_SAE
- dl_list_init(&hapd->sae_commit_queue);
-#endif /* CONFIG_SAE */
-
- return hapd;
-}
-
-
-static void hostapd_bss_deinit(struct hostapd_data *hapd)
-{
- if (!hapd)
- return;
- wpa_printf(MSG_DEBUG, "%s: deinit bss %s", __func__,
- hapd->conf ? hapd->conf->iface : "N/A");
- hostapd_bss_deinit_no_free(hapd);
- wpa_msg(hapd->msg_ctx, MSG_INFO, AP_EVENT_DISABLED);
-#ifdef CONFIG_SQLITE
- if (hapd->rad_attr_db) {
- sqlite3_close(hapd->rad_attr_db);
- hapd->rad_attr_db = NULL;
- }
-#endif /* CONFIG_SQLITE */
- hostapd_cleanup(hapd);
-}
-
-
-void hostapd_interface_deinit(struct hostapd_iface *iface)
-{
- int j;
-
- wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface);
- if (iface == NULL)
- return;
-
- hostapd_set_state(iface, HAPD_IFACE_DISABLED);
-
- eloop_cancel_timeout(channel_list_update_timeout, iface, NULL);
- iface->wait_channel_update = 0;
-
-#ifdef CONFIG_FST
- if (iface->fst) {
- fst_detach(iface->fst);
- iface->fst = NULL;
- }
-#endif /* CONFIG_FST */
-
- for (j = (int) iface->num_bss - 1; j >= 0; j--) {
- if (!iface->bss)
- break;
- hostapd_bss_deinit(iface->bss[j]);
- }
-
-#ifdef NEED_AP_MLME
- hostapd_stop_setup_timers(iface);
- eloop_cancel_timeout(ap_ht2040_timeout, iface, NULL);
-#endif /* NEED_AP_MLME */
-}
-
-
-void hostapd_interface_free(struct hostapd_iface *iface)
-{
- size_t j;
- wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface);
- for (j = 0; j < iface->num_bss; j++) {
- if (!iface->bss)
- break;
- wpa_printf(MSG_DEBUG, "%s: free hapd %p",
- __func__, iface->bss[j]);
- os_free(iface->bss[j]);
- }
- hostapd_cleanup_iface(iface);
-}
-
-
-struct hostapd_iface * hostapd_alloc_iface(void)
-{
- struct hostapd_iface *hapd_iface;
-
- hapd_iface = os_zalloc(sizeof(*hapd_iface));
- if (!hapd_iface)
- return NULL;
-
- dl_list_init(&hapd_iface->sta_seen);
-
- return hapd_iface;
-}
-
-
-/**
- * hostapd_init - Allocate and initialize per-interface data
- * @config_file: Path to the configuration file
- * Returns: Pointer to the allocated interface data or %NULL on failure
- *
- * This function is used to allocate main data structures for per-interface
- * data. The allocated data buffer will be freed by calling
- * hostapd_cleanup_iface().
- */
-struct hostapd_iface * hostapd_init(struct hapd_interfaces *interfaces,
- const char *config_file)
-{
- struct hostapd_iface *hapd_iface = NULL;
- struct hostapd_config *conf = NULL;
- struct hostapd_data *hapd;
- size_t i;
-
- hapd_iface = hostapd_alloc_iface();
- if (hapd_iface == NULL)
- goto fail;
-
- hapd_iface->config_fname = os_strdup(config_file);
- if (hapd_iface->config_fname == NULL)
- goto fail;
-
- conf = interfaces->config_read_cb(hapd_iface->config_fname);
- if (conf == NULL)
- goto fail;
- hapd_iface->conf = conf;
-
- hapd_iface->num_bss = conf->num_bss;
- hapd_iface->bss = os_calloc(conf->num_bss,
- sizeof(struct hostapd_data *));
- if (hapd_iface->bss == NULL)
- goto fail;
-
- for (i = 0; i < conf->num_bss; i++) {
- hapd = hapd_iface->bss[i] =
- hostapd_alloc_bss_data(hapd_iface, conf,
- conf->bss[i]);
- if (hapd == NULL)
- goto fail;
- hapd->msg_ctx = hapd;
- }
-
- return hapd_iface;
-
-fail:
- wpa_printf(MSG_ERROR, "Failed to set up interface with %s",
- config_file);
- if (conf)
- hostapd_config_free(conf);
- if (hapd_iface) {
- os_free(hapd_iface->config_fname);
- os_free(hapd_iface->bss);
- wpa_printf(MSG_DEBUG, "%s: free iface %p",
- __func__, hapd_iface);
- os_free(hapd_iface);
- }
- return NULL;
-}
-
-
-static int ifname_in_use(struct hapd_interfaces *interfaces, const char *ifname)
-{
- size_t i, j;
-
- for (i = 0; i < interfaces->count; i++) {
- struct hostapd_iface *iface = interfaces->iface[i];
- for (j = 0; j < iface->num_bss; j++) {
- struct hostapd_data *hapd = iface->bss[j];
- if (os_strcmp(ifname, hapd->conf->iface) == 0)
- return 1;
- }
- }
-
- return 0;
-}
-
-
-/**
- * hostapd_interface_init_bss - Read configuration file and init BSS data
- *
- * This function is used to parse configuration file for a BSS. This BSS is
- * added to an existing interface sharing the same radio (if any) or a new
- * interface is created if this is the first interface on a radio. This
- * allocate memory for the BSS. No actual driver operations are started.
- *
- * This is similar to hostapd_interface_init(), but for a case where the
- * configuration is used to add a single BSS instead of all BSSes for a radio.
- */
-struct hostapd_iface *
-hostapd_interface_init_bss(struct hapd_interfaces *interfaces, const char *phy,
- const char *config_fname, int debug)
-{
- struct hostapd_iface *new_iface = NULL, *iface = NULL;
- struct hostapd_data *hapd;
- int k;
- size_t i, bss_idx;
-
- if (!phy || !*phy)
- return NULL;
-
- for (i = 0; i < interfaces->count; i++) {
- if (os_strcmp(interfaces->iface[i]->phy, phy) == 0) {
- iface = interfaces->iface[i];
- break;
- }
- }
-
- wpa_printf(MSG_INFO, "Configuration file: %s (phy %s)%s",
- config_fname, phy, iface ? "" : " --> new PHY");
- if (iface) {
- struct hostapd_config *conf;
- struct hostapd_bss_config **tmp_conf;
- struct hostapd_data **tmp_bss;
- struct hostapd_bss_config *bss;
- const char *ifname;
-
- /* Add new BSS to existing iface */
- conf = interfaces->config_read_cb(config_fname);
- if (conf == NULL)
- return NULL;
- if (conf->num_bss > 1) {
- wpa_printf(MSG_ERROR, "Multiple BSSes specified in BSS-config");
- hostapd_config_free(conf);
- return NULL;
- }
-
- ifname = conf->bss[0]->iface;
- if (ifname[0] != '\0' && ifname_in_use(interfaces, ifname)) {
- wpa_printf(MSG_ERROR,
- "Interface name %s already in use", ifname);
- hostapd_config_free(conf);
- return NULL;
- }
-
- tmp_conf = os_realloc_array(
- iface->conf->bss, iface->conf->num_bss + 1,
- sizeof(struct hostapd_bss_config *));
- tmp_bss = os_realloc_array(iface->bss, iface->num_bss + 1,
- sizeof(struct hostapd_data *));
- if (tmp_bss)
- iface->bss = tmp_bss;
- if (tmp_conf) {
- iface->conf->bss = tmp_conf;
- iface->conf->last_bss = tmp_conf[0];
- }
- if (tmp_bss == NULL || tmp_conf == NULL) {
- hostapd_config_free(conf);
- return NULL;
- }
- bss = iface->conf->bss[iface->conf->num_bss] = conf->bss[0];
- iface->conf->num_bss++;
-
- hapd = hostapd_alloc_bss_data(iface, iface->conf, bss);
- if (hapd == NULL) {
- iface->conf->num_bss--;
- hostapd_config_free(conf);
- return NULL;
- }
- iface->conf->last_bss = bss;
- iface->bss[iface->num_bss] = hapd;
- hapd->msg_ctx = hapd;
-
- bss_idx = iface->num_bss++;
- conf->num_bss--;
- conf->bss[0] = NULL;
- hostapd_config_free(conf);
- } else {
- /* Add a new iface with the first BSS */
- new_iface = iface = hostapd_init(interfaces, config_fname);
- if (!iface)
- return NULL;
- os_strlcpy(iface->phy, phy, sizeof(iface->phy));
- iface->interfaces = interfaces;
- bss_idx = 0;
- }
-
- for (k = 0; k < debug; k++) {
- if (iface->bss[bss_idx]->conf->logger_stdout_level > 0)
- iface->bss[bss_idx]->conf->logger_stdout_level--;
- }
-
- if (iface->conf->bss[bss_idx]->iface[0] == '\0' &&
- !hostapd_drv_none(iface->bss[bss_idx])) {
- wpa_printf(MSG_ERROR, "Interface name not specified in %s",
- config_fname);
- if (new_iface)
- hostapd_interface_deinit_free(new_iface);
- return NULL;
- }
-
- return iface;
-}
-
-
-void hostapd_interface_deinit_free(struct hostapd_iface *iface)
-{
- const struct wpa_driver_ops *driver;
- void *drv_priv;
-
- wpa_printf(MSG_DEBUG, "%s(%p)", __func__, iface);
- if (iface == NULL)
- return;
- wpa_printf(MSG_DEBUG, "%s: num_bss=%u conf->num_bss=%u",
- __func__, (unsigned int) iface->num_bss,
- (unsigned int) iface->conf->num_bss);
- driver = iface->bss[0]->driver;
- drv_priv = iface->bss[0]->drv_priv;
- hostapd_interface_deinit(iface);
- wpa_printf(MSG_DEBUG, "%s: driver=%p drv_priv=%p -> hapd_deinit",
- __func__, driver, drv_priv);
- if (driver && driver->hapd_deinit && drv_priv) {
- driver->hapd_deinit(drv_priv);
- iface->bss[0]->drv_priv = NULL;
- }
- hostapd_interface_free(iface);
-}
-
-
-static void hostapd_deinit_driver(const struct wpa_driver_ops *driver,
- void *drv_priv,
- struct hostapd_iface *hapd_iface)
-{
- size_t j;
-
- wpa_printf(MSG_DEBUG, "%s: driver=%p drv_priv=%p -> hapd_deinit",
- __func__, driver, drv_priv);
- if (driver && driver->hapd_deinit && drv_priv) {
- driver->hapd_deinit(drv_priv);
- for (j = 0; j < hapd_iface->num_bss; j++) {
- wpa_printf(MSG_DEBUG, "%s:bss[%d]->drv_priv=%p",
- __func__, (int) j,
- hapd_iface->bss[j]->drv_priv);
- if (hapd_iface->bss[j]->drv_priv == drv_priv) {
- hapd_iface->bss[j]->drv_priv = NULL;
- hapd_iface->extended_capa = NULL;
- hapd_iface->extended_capa_mask = NULL;
- hapd_iface->extended_capa_len = 0;
- }
- }
- }
-}
-
-
-int hostapd_enable_iface(struct hostapd_iface *hapd_iface)
-{
- size_t j;
-
- if (!hapd_iface)
- return -1;
-
- if (hapd_iface->enable_iface_cb)
- return hapd_iface->enable_iface_cb(hapd_iface);
-
- if (hapd_iface->bss[0]->drv_priv != NULL) {
- wpa_printf(MSG_ERROR, "Interface %s already enabled",
- hapd_iface->conf->bss[0]->iface);
- return -1;
- }
-
- wpa_printf(MSG_DEBUG, "Enable interface %s",
- hapd_iface->conf->bss[0]->iface);
-
- for (j = 0; j < hapd_iface->num_bss; j++)
- hostapd_set_security_params(hapd_iface->conf->bss[j], 1);
- if (hostapd_config_check(hapd_iface->conf, 1) < 0) {
- wpa_printf(MSG_INFO, "Invalid configuration - cannot enable");
- return -1;
- }
-
- if (hapd_iface->interfaces == NULL ||
- hapd_iface->interfaces->driver_init == NULL ||
- hapd_iface->interfaces->driver_init(hapd_iface))
- return -1;
-
- if (hostapd_setup_interface(hapd_iface)) {
- hostapd_deinit_driver(hapd_iface->bss[0]->driver,
- hapd_iface->bss[0]->drv_priv,
- hapd_iface);
- return -1;
- }
-
- return 0;
-}
-
-
-int hostapd_reload_iface(struct hostapd_iface *hapd_iface)
-{
- size_t j;
-
- wpa_printf(MSG_DEBUG, "Reload interface %s",
- hapd_iface->conf->bss[0]->iface);
- for (j = 0; j < hapd_iface->num_bss; j++)
- hostapd_set_security_params(hapd_iface->conf->bss[j], 1);
- if (hostapd_config_check(hapd_iface->conf, 1) < 0) {
- wpa_printf(MSG_ERROR, "Updated configuration is invalid");
- return -1;
- }
- hostapd_clear_old(hapd_iface);
- for (j = 0; j < hapd_iface->num_bss; j++)
- hostapd_reload_bss(hapd_iface->bss[j]);
-
- return 0;
-}
-
-
-int hostapd_disable_iface(struct hostapd_iface *hapd_iface)
-{
- size_t j;
- const struct wpa_driver_ops *driver;
- void *drv_priv;
-
- if (hapd_iface == NULL)
- return -1;
-
- if (hapd_iface->disable_iface_cb)
- return hapd_iface->disable_iface_cb(hapd_iface);
-
- if (hapd_iface->bss[0]->drv_priv == NULL) {
- wpa_printf(MSG_INFO, "Interface %s already disabled",
- hapd_iface->conf->bss[0]->iface);
- return -1;
- }
-
- wpa_msg(hapd_iface->bss[0]->msg_ctx, MSG_INFO, AP_EVENT_DISABLED);
- driver = hapd_iface->bss[0]->driver;
- drv_priv = hapd_iface->bss[0]->drv_priv;
-
- hapd_iface->driver_ap_teardown =
- !!(hapd_iface->drv_flags &
- WPA_DRIVER_FLAGS_AP_TEARDOWN_SUPPORT);
-
-#ifdef NEED_AP_MLME
- for (j = 0; j < hapd_iface->num_bss; j++)
- hostapd_cleanup_cs_params(hapd_iface->bss[j]);
-#endif /* NEED_AP_MLME */
-
- /* same as hostapd_interface_deinit without deinitializing ctrl-iface */
- for (j = 0; j < hapd_iface->num_bss; j++) {
- struct hostapd_data *hapd = hapd_iface->bss[j];
- hostapd_bss_deinit_no_free(hapd);
- hostapd_free_hapd_data(hapd);
- }
-
- hostapd_deinit_driver(driver, drv_priv, hapd_iface);
-
- /* From hostapd_cleanup_iface: These were initialized in
- * hostapd_setup_interface and hostapd_setup_interface_complete
- */
- hostapd_cleanup_iface_partial(hapd_iface);
-
- wpa_printf(MSG_DEBUG, "Interface %s disabled",
- hapd_iface->bss[0]->conf->iface);
- hostapd_set_state(hapd_iface, HAPD_IFACE_DISABLED);
- return 0;
-}
-
-
-static struct hostapd_iface *
-hostapd_iface_alloc(struct hapd_interfaces *interfaces)
-{
- struct hostapd_iface **iface, *hapd_iface;
-
- iface = os_realloc_array(interfaces->iface, interfaces->count + 1,
- sizeof(struct hostapd_iface *));
- if (iface == NULL)
- return NULL;
- interfaces->iface = iface;
- hapd_iface = interfaces->iface[interfaces->count] =
- hostapd_alloc_iface();
- if (hapd_iface == NULL) {
- wpa_printf(MSG_ERROR, "%s: Failed to allocate memory for "
- "the interface", __func__);
- return NULL;
- }
- interfaces->count++;
- hapd_iface->interfaces = interfaces;
-
- return hapd_iface;
-}
-
-
-static struct hostapd_config *
-hostapd_config_alloc(struct hapd_interfaces *interfaces, const char *ifname,
- const char *ctrl_iface, const char *driver)
-{
- struct hostapd_bss_config *bss;
- struct hostapd_config *conf;
-
- /* Allocates memory for bss and conf */
- conf = hostapd_config_defaults();
- if (conf == NULL) {
- wpa_printf(MSG_ERROR, "%s: Failed to allocate memory for "
- "configuration", __func__);
- return NULL;
- }
-
- if (driver) {
- int j;
-
- for (j = 0; wpa_drivers[j]; j++) {
- if (os_strcmp(driver, wpa_drivers[j]->name) == 0) {
- conf->driver = wpa_drivers[j];
- goto skip;
- }
- }
-
- wpa_printf(MSG_ERROR,
- "Invalid/unknown driver '%s' - registering the default driver",
- driver);
- }
-
- conf->driver = wpa_drivers[0];
- if (conf->driver == NULL) {
- wpa_printf(MSG_ERROR, "No driver wrappers registered!");
- hostapd_config_free(conf);
- return NULL;
- }
-
-skip:
- bss = conf->last_bss = conf->bss[0];
-
- os_strlcpy(bss->iface, ifname, sizeof(bss->iface));
- bss->ctrl_interface = os_strdup(ctrl_iface);
- if (bss->ctrl_interface == NULL) {
- hostapd_config_free(conf);
- return NULL;
- }
-
- /* Reading configuration file skipped, will be done in SET!
- * From reading the configuration till the end has to be done in
- * SET
- */
- return conf;
-}
-
-
-static int hostapd_data_alloc(struct hostapd_iface *hapd_iface,
- struct hostapd_config *conf)
-{
- size_t i;
- struct hostapd_data *hapd;
-
- hapd_iface->bss = os_calloc(conf->num_bss,
- sizeof(struct hostapd_data *));
- if (hapd_iface->bss == NULL)
- return -1;
-
- for (i = 0; i < conf->num_bss; i++) {
- hapd = hapd_iface->bss[i] =
- hostapd_alloc_bss_data(hapd_iface, conf, conf->bss[i]);
- if (hapd == NULL) {
- while (i > 0) {
- i--;
- os_free(hapd_iface->bss[i]);
- hapd_iface->bss[i] = NULL;
- }
- os_free(hapd_iface->bss);
- hapd_iface->bss = NULL;
- return -1;
- }
- hapd->msg_ctx = hapd;
- }
-
- hapd_iface->conf = conf;
- hapd_iface->num_bss = conf->num_bss;
-
- return 0;
-}
-
-
-int hostapd_add_iface(struct hapd_interfaces *interfaces, char *buf)
-{
- struct hostapd_config *conf = NULL;
- struct hostapd_iface *hapd_iface = NULL, *new_iface = NULL;
- struct hostapd_data *hapd;
- char *ptr;
- size_t i, j;
- const char *conf_file = NULL, *phy_name = NULL;
-
- if (os_strncmp(buf, "bss_config=", 11) == 0) {
- char *pos;
- phy_name = buf + 11;
- pos = os_strchr(phy_name, ':');
- if (!pos)
- return -1;
- *pos++ = '\0';
- conf_file = pos;
- if (!os_strlen(conf_file))
- return -1;
-
- hapd_iface = hostapd_interface_init_bss(interfaces, phy_name,
- conf_file, 0);
- if (!hapd_iface)
- return -1;
- for (j = 0; j < interfaces->count; j++) {
- if (interfaces->iface[j] == hapd_iface)
- break;
- }
- if (j == interfaces->count) {
- struct hostapd_iface **tmp;
- tmp = os_realloc_array(interfaces->iface,
- interfaces->count + 1,
- sizeof(struct hostapd_iface *));
- if (!tmp) {
- hostapd_interface_deinit_free(hapd_iface);
- return -1;
- }
- interfaces->iface = tmp;
- interfaces->iface[interfaces->count++] = hapd_iface;
- new_iface = hapd_iface;
- }
-
- if (new_iface) {
- if (interfaces->driver_init(hapd_iface))
- goto fail;
-
- if (hostapd_setup_interface(hapd_iface)) {
- hostapd_deinit_driver(
- hapd_iface->bss[0]->driver,
- hapd_iface->bss[0]->drv_priv,
- hapd_iface);
- goto fail;
- }
- } else {
- /* Assign new BSS with bss[0]'s driver info */
- hapd = hapd_iface->bss[hapd_iface->num_bss - 1];
- hapd->driver = hapd_iface->bss[0]->driver;
- hapd->drv_priv = hapd_iface->bss[0]->drv_priv;
- os_memcpy(hapd->own_addr, hapd_iface->bss[0]->own_addr,
- ETH_ALEN);
-
- if (start_ctrl_iface_bss(hapd) < 0 ||
- (hapd_iface->state == HAPD_IFACE_ENABLED &&
- hostapd_setup_bss(hapd, -1))) {
- hostapd_cleanup(hapd);
- hapd_iface->bss[hapd_iface->num_bss - 1] = NULL;
- hapd_iface->conf->num_bss--;
- hapd_iface->num_bss--;
- wpa_printf(MSG_DEBUG, "%s: free hapd %p %s",
- __func__, hapd, hapd->conf->iface);
- hostapd_config_free_bss(hapd->conf);
- hapd->conf = NULL;
- os_free(hapd);
- return -1;
- }
- }
- hostapd_owe_update_trans(hapd_iface);
- return 0;
- }
-
- ptr = os_strchr(buf, ' ');
- if (ptr == NULL)
- return -1;
- *ptr++ = '\0';
-
- if (os_strncmp(ptr, "config=", 7) == 0)
- conf_file = ptr + 7;
-
- for (i = 0; i < interfaces->count; i++) {
- if (!os_strcmp(interfaces->iface[i]->conf->bss[0]->iface,
- buf)) {
- wpa_printf(MSG_INFO, "Cannot add interface - it "
- "already exists");
- return -1;
- }
- }
-
- hapd_iface = hostapd_iface_alloc(interfaces);
- if (hapd_iface == NULL) {
- wpa_printf(MSG_ERROR, "%s: Failed to allocate memory "
- "for interface", __func__);
- goto fail;
- }
- new_iface = hapd_iface;
-
- if (conf_file && interfaces->config_read_cb) {
- conf = interfaces->config_read_cb(conf_file);
- if (conf && conf->bss)
- os_strlcpy(conf->bss[0]->iface, buf,
- sizeof(conf->bss[0]->iface));
- } else {
- char *driver = os_strchr(ptr, ' ');
-
- if (driver)
- *driver++ = '\0';
- conf = hostapd_config_alloc(interfaces, buf, ptr, driver);
- }
-
- if (conf == NULL || conf->bss == NULL) {
- wpa_printf(MSG_ERROR, "%s: Failed to allocate memory "
- "for configuration", __func__);
- goto fail;
- }
-
- if (hostapd_data_alloc(hapd_iface, conf) < 0) {
- wpa_printf(MSG_ERROR, "%s: Failed to allocate memory "
- "for hostapd", __func__);
- goto fail;
- }
- conf = NULL;
-
- if (start_ctrl_iface(hapd_iface) < 0)
- goto fail;
-
- wpa_printf(MSG_INFO, "Add interface '%s'",
- hapd_iface->conf->bss[0]->iface);
-
- return 0;
-
-fail:
- if (conf)
- hostapd_config_free(conf);
- if (hapd_iface) {
- if (hapd_iface->bss) {
- for (i = 0; i < hapd_iface->num_bss; i++) {
- hapd = hapd_iface->bss[i];
- if (!hapd)
- continue;
- if (hapd_iface->interfaces &&
- hapd_iface->interfaces->ctrl_iface_deinit)
- hapd_iface->interfaces->
- ctrl_iface_deinit(hapd);
- wpa_printf(MSG_DEBUG, "%s: free hapd %p (%s)",
- __func__, hapd_iface->bss[i],
- hapd->conf->iface);
- hostapd_cleanup(hapd);
- os_free(hapd);
- hapd_iface->bss[i] = NULL;
- }
- os_free(hapd_iface->bss);
- hapd_iface->bss = NULL;
- }
- if (new_iface) {
- interfaces->count--;
- interfaces->iface[interfaces->count] = NULL;
- }
- hostapd_cleanup_iface(hapd_iface);
- }
- return -1;
-}
-
-
-static int hostapd_remove_bss(struct hostapd_iface *iface, unsigned int idx)
-{
- size_t i;
-
- wpa_printf(MSG_INFO, "Remove BSS '%s'", iface->conf->bss[idx]->iface);
-
- /* Remove hostapd_data only if it has already been initialized */
- if (idx < iface->num_bss) {
- struct hostapd_data *hapd = iface->bss[idx];
-
- hostapd_bss_deinit(hapd);
- wpa_printf(MSG_DEBUG, "%s: free hapd %p (%s)",
- __func__, hapd, hapd->conf->iface);
- hostapd_config_free_bss(hapd->conf);
- hapd->conf = NULL;
- os_free(hapd);
-
- iface->num_bss--;
-
- for (i = idx; i < iface->num_bss; i++)
- iface->bss[i] = iface->bss[i + 1];
- } else {
- hostapd_config_free_bss(iface->conf->bss[idx]);
- iface->conf->bss[idx] = NULL;
- }
-
- iface->conf->num_bss--;
- for (i = idx; i < iface->conf->num_bss; i++)
- iface->conf->bss[i] = iface->conf->bss[i + 1];
-
- return 0;
-}
-
-
-int hostapd_remove_iface(struct hapd_interfaces *interfaces, char *buf)
-{
- struct hostapd_iface *hapd_iface;
- size_t i, j, k = 0;
-
- for (i = 0; i < interfaces->count; i++) {
- hapd_iface = interfaces->iface[i];
- if (hapd_iface == NULL)
- return -1;
- if (!os_strcmp(hapd_iface->conf->bss[0]->iface, buf)) {
- wpa_printf(MSG_INFO, "Remove interface '%s'", buf);
- hapd_iface->driver_ap_teardown =
- !!(hapd_iface->drv_flags &
- WPA_DRIVER_FLAGS_AP_TEARDOWN_SUPPORT);
-
- hostapd_interface_deinit_free(hapd_iface);
- k = i;
- while (k < (interfaces->count - 1)) {
- interfaces->iface[k] =
- interfaces->iface[k + 1];
- k++;
- }
- interfaces->count--;
- return 0;
- }
-
- for (j = 0; j < hapd_iface->conf->num_bss; j++) {
- if (!os_strcmp(hapd_iface->conf->bss[j]->iface, buf)) {
- hapd_iface->driver_ap_teardown =
- !(hapd_iface->drv_flags &
- WPA_DRIVER_FLAGS_AP_TEARDOWN_SUPPORT);
- return hostapd_remove_bss(hapd_iface, j);
- }
- }
- }
- return -1;
-}
-
-
-/**
- * hostapd_new_assoc_sta - Notify that a new station associated with the AP
- * @hapd: Pointer to BSS data
- * @sta: Pointer to the associated STA data
- * @reassoc: 1 to indicate this was a re-association; 0 = first association
- *
- * This function will be called whenever a station associates with the AP. It
- * can be called from ieee802_11.c for drivers that export MLME to hostapd and
- * from drv_callbacks.c based on driver events for drivers that take care of
- * management frames (IEEE 802.11 authentication and association) internally.
- */
-void hostapd_new_assoc_sta(struct hostapd_data *hapd, struct sta_info *sta,
- int reassoc)
-{
-
- if (hapd->tkip_countermeasures) {
- hostapd_drv_sta_deauth(hapd, sta->addr,
- WLAN_REASON_MICHAEL_MIC_FAILURE);
- return;
- }
-
- hostapd_prune_associations(hapd, sta->addr);
- ap_sta_clear_disconnect_timeouts(hapd, sta);
- sta->post_csa_sa_query = 0;
-
-#ifdef CONFIG_P2P
- if (sta->p2p_ie == NULL && !sta->no_p2p_set) {
- sta->no_p2p_set = 1;
- hapd->num_sta_no_p2p++;
- if (hapd->num_sta_no_p2p == 1)
- hostapd_p2p_non_p2p_sta_connected(hapd);
- }
-#endif /* CONFIG_P2P */
-
- airtime_policy_new_sta(hapd, sta);
-
- /* Start accounting here, if IEEE 802.1X and WPA are not used.
- * IEEE 802.1X/WPA code will start accounting after the station has
- * been authorized. */
- if (!hapd->conf->ieee802_1x && !hapd->conf->wpa && !hapd->conf->osen) {
- ap_sta_set_authorized(hapd, sta, 1);
- os_get_reltime(&sta->connected_time);
- accounting_sta_start(hapd, sta);
- }
-
- /* Start IEEE 802.1X authentication process for new stations */
- ieee802_1x_new_station(hapd, sta);
- if (reassoc) {
- if (sta->auth_alg != WLAN_AUTH_FT &&
- sta->auth_alg != WLAN_AUTH_FILS_SK &&
- sta->auth_alg != WLAN_AUTH_FILS_SK_PFS &&
- sta->auth_alg != WLAN_AUTH_FILS_PK &&
- !(sta->flags & (WLAN_STA_WPS | WLAN_STA_MAYBE_WPS)))
- wpa_auth_sm_event(sta->wpa_sm, WPA_REAUTH);
- } else
- wpa_auth_sta_associated(hapd->wpa_auth, sta->wpa_sm);
-
- if (hapd->iface->drv_flags & WPA_DRIVER_FLAGS_WIRED) {
- if (eloop_cancel_timeout(ap_handle_timer, hapd, sta) > 0) {
- wpa_printf(MSG_DEBUG,
- "%s: %s: canceled wired ap_handle_timer timeout for "
- MACSTR,
- hapd->conf->iface, __func__,
- MAC2STR(sta->addr));
- }
- } else if (!(hapd->iface->drv_flags &
- WPA_DRIVER_FLAGS_INACTIVITY_TIMER)) {
- wpa_printf(MSG_DEBUG,
- "%s: %s: reschedule ap_handle_timer timeout for "
- MACSTR " (%d seconds - ap_max_inactivity)",
- hapd->conf->iface, __func__, MAC2STR(sta->addr),
- hapd->conf->ap_max_inactivity);
- eloop_cancel_timeout(ap_handle_timer, hapd, sta);
- eloop_register_timeout(hapd->conf->ap_max_inactivity, 0,
- ap_handle_timer, hapd, sta);
- }
-
-#ifdef CONFIG_MACSEC
- if (hapd->conf->wpa_key_mgmt == WPA_KEY_MGMT_NONE &&
- hapd->conf->mka_psk_set)
- ieee802_1x_create_preshared_mka_hapd(hapd, sta);
- else
- ieee802_1x_alloc_kay_sm_hapd(hapd, sta);
-#endif /* CONFIG_MACSEC */
-}
-
-
-const char * hostapd_state_text(enum hostapd_iface_state s)
-{
- switch (s) {
- case HAPD_IFACE_UNINITIALIZED:
- return "UNINITIALIZED";
- case HAPD_IFACE_DISABLED:
- return "DISABLED";
- case HAPD_IFACE_COUNTRY_UPDATE:
- return "COUNTRY_UPDATE";
- case HAPD_IFACE_ACS:
- return "ACS";
- case HAPD_IFACE_HT_SCAN:
- return "HT_SCAN";
- case HAPD_IFACE_DFS:
- return "DFS";
- case HAPD_IFACE_ENABLED:
- return "ENABLED";
- }
-
- return "UNKNOWN";
-}
-
-
-void hostapd_set_state(struct hostapd_iface *iface, enum hostapd_iface_state s)
-{
- wpa_printf(MSG_INFO, "%s: interface state %s->%s",
- iface->conf ? iface->conf->bss[0]->iface : "N/A",
- hostapd_state_text(iface->state), hostapd_state_text(s));
- iface->state = s;
-}
-
-
-int hostapd_csa_in_progress(struct hostapd_iface *iface)
-{
- unsigned int i;
-
- for (i = 0; i < iface->num_bss; i++)
- if (iface->bss[i]->csa_in_progress)
- return 1;
- return 0;
-}
-
-
-#ifdef NEED_AP_MLME
-
-static void free_beacon_data(struct beacon_data *beacon)
-{
- os_free(beacon->head);
- beacon->head = NULL;
- os_free(beacon->tail);
- beacon->tail = NULL;
- os_free(beacon->probe_resp);
- beacon->probe_resp = NULL;
- os_free(beacon->beacon_ies);
- beacon->beacon_ies = NULL;
- os_free(beacon->proberesp_ies);
- beacon->proberesp_ies = NULL;
- os_free(beacon->assocresp_ies);
- beacon->assocresp_ies = NULL;
-}
-
-
-static int hostapd_build_beacon_data(struct hostapd_data *hapd,
- struct beacon_data *beacon)
-{
- struct wpabuf *beacon_extra, *proberesp_extra, *assocresp_extra;
- struct wpa_driver_ap_params params;
- int ret;
-
- os_memset(beacon, 0, sizeof(*beacon));
- ret = ieee802_11_build_ap_params(hapd, ¶ms);
- if (ret < 0)
- return ret;
-
- ret = hostapd_build_ap_extra_ies(hapd, &beacon_extra,
- &proberesp_extra,
- &assocresp_extra);
- if (ret)
- goto free_ap_params;
-
- ret = -1;
- beacon->head = os_memdup(params.head, params.head_len);
- if (!beacon->head)
- goto free_ap_extra_ies;
-
- beacon->head_len = params.head_len;
-
- beacon->tail = os_memdup(params.tail, params.tail_len);
- if (!beacon->tail)
- goto free_beacon;
-
- beacon->tail_len = params.tail_len;
-
- if (params.proberesp != NULL) {
- beacon->probe_resp = os_memdup(params.proberesp,
- params.proberesp_len);
- if (!beacon->probe_resp)
- goto free_beacon;
-
- beacon->probe_resp_len = params.proberesp_len;
- }
-
- /* copy the extra ies */
- if (beacon_extra) {
- beacon->beacon_ies = os_memdup(beacon_extra->buf,
- wpabuf_len(beacon_extra));
- if (!beacon->beacon_ies)
- goto free_beacon;
-
- beacon->beacon_ies_len = wpabuf_len(beacon_extra);
- }
-
- if (proberesp_extra) {
- beacon->proberesp_ies = os_memdup(proberesp_extra->buf,
- wpabuf_len(proberesp_extra));
- if (!beacon->proberesp_ies)
- goto free_beacon;
-
- beacon->proberesp_ies_len = wpabuf_len(proberesp_extra);
- }
-
- if (assocresp_extra) {
- beacon->assocresp_ies = os_memdup(assocresp_extra->buf,
- wpabuf_len(assocresp_extra));
- if (!beacon->assocresp_ies)
- goto free_beacon;
-
- beacon->assocresp_ies_len = wpabuf_len(assocresp_extra);
- }
-
- ret = 0;
-free_beacon:
- /* if the function fails, the caller should not free beacon data */
- if (ret)
- free_beacon_data(beacon);
-
-free_ap_extra_ies:
- hostapd_free_ap_extra_ies(hapd, beacon_extra, proberesp_extra,
- assocresp_extra);
-free_ap_params:
- ieee802_11_free_ap_params(¶ms);
- return ret;
-}
-
-
-/*
- * TODO: This flow currently supports only changing channel and width within
- * the same hw_mode. Any other changes to MAC parameters or provided settings
- * are not supported.
- */
-static int hostapd_change_config_freq(struct hostapd_data *hapd,
- struct hostapd_config *conf,
- struct hostapd_freq_params *params,
- struct hostapd_freq_params *old_params)
-{
- int channel;
- u8 seg0, seg1;
- struct hostapd_hw_modes *mode;
-
- if (!params->channel) {
- /* check if the new channel is supported by hw */
- params->channel = hostapd_hw_get_channel(hapd, params->freq);
- }
-
- channel = params->channel;
- if (!channel)
- return -1;
-
- mode = hapd->iface->current_mode;
-
- /* if a pointer to old_params is provided we save previous state */
- if (old_params &&
- hostapd_set_freq_params(old_params, conf->hw_mode,
- hostapd_hw_get_freq(hapd, conf->channel),
- conf->channel, conf->enable_edmg,
- conf->edmg_channel, conf->ieee80211n,
- conf->ieee80211ac, conf->ieee80211ax,
- conf->secondary_channel,
- hostapd_get_oper_chwidth(conf),
- hostapd_get_oper_centr_freq_seg0_idx(conf),
- hostapd_get_oper_centr_freq_seg1_idx(conf),
- conf->vht_capab,
- mode ? &mode->he_capab[IEEE80211_MODE_AP] :
- NULL))
- return -1;
-
- switch (params->bandwidth) {
- case 0:
- case 20:
- conf->ht_capab &= ~HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET;
- break;
- case 40:
- case 80:
- case 160:
- conf->ht_capab |= HT_CAP_INFO_SUPP_CHANNEL_WIDTH_SET;
- break;
- default:
- return -1;
- }
-
- switch (params->bandwidth) {
- case 0:
- case 20:
- case 40:
- hostapd_set_oper_chwidth(conf, CHANWIDTH_USE_HT);
- break;
- case 80:
- if (params->center_freq2)
- hostapd_set_oper_chwidth(conf, CHANWIDTH_80P80MHZ);
- else
- hostapd_set_oper_chwidth(conf, CHANWIDTH_80MHZ);
- break;
- case 160:
- hostapd_set_oper_chwidth(conf, CHANWIDTH_160MHZ);
- break;
- default:
- return -1;
- }
-
- conf->channel = channel;
- conf->ieee80211n = params->ht_enabled;
- conf->ieee80211ac = params->vht_enabled;
- conf->secondary_channel = params->sec_channel_offset;
- ieee80211_freq_to_chan(params->center_freq1,
- &seg0);
- ieee80211_freq_to_chan(params->center_freq2,
- &seg1);
- hostapd_set_oper_centr_freq_seg0_idx(conf, seg0);
- hostapd_set_oper_centr_freq_seg1_idx(conf, seg1);
-
- /* TODO: maybe call here hostapd_config_check here? */
-
- return 0;
-}
-
-
-static int hostapd_fill_csa_settings(struct hostapd_data *hapd,
- struct csa_settings *settings)
-{
- struct hostapd_iface *iface = hapd->iface;
- struct hostapd_freq_params old_freq;
- int ret;
- u8 chan, bandwidth;
-
- os_memset(&old_freq, 0, sizeof(old_freq));
- if (!iface || !iface->freq || hapd->csa_in_progress)
- return -1;
-
- switch (settings->freq_params.bandwidth) {
- case 80:
- if (settings->freq_params.center_freq2)
- bandwidth = CHANWIDTH_80P80MHZ;
- else
- bandwidth = CHANWIDTH_80MHZ;
- break;
- case 160:
- bandwidth = CHANWIDTH_160MHZ;
- break;
- default:
- bandwidth = CHANWIDTH_USE_HT;
- break;
- }
-
- if (ieee80211_freq_to_channel_ext(
- settings->freq_params.freq,
- settings->freq_params.sec_channel_offset,
- bandwidth,
- &hapd->iface->cs_oper_class,
- &chan) == NUM_HOSTAPD_MODES) {
- wpa_printf(MSG_DEBUG,
- "invalid frequency for channel switch (freq=%d, sec_channel_offset=%d, vht_enabled=%d, he_enabled=%d)",
- settings->freq_params.freq,
- settings->freq_params.sec_channel_offset,
- settings->freq_params.vht_enabled,
- settings->freq_params.he_enabled);
- return -1;
- }
-
- settings->freq_params.channel = chan;
-
- ret = hostapd_change_config_freq(iface->bss[0], iface->conf,
- &settings->freq_params,
- &old_freq);
- if (ret)
- return ret;
-
- ret = hostapd_build_beacon_data(hapd, &settings->beacon_after);
-
- /* change back the configuration */
- hostapd_change_config_freq(iface->bss[0], iface->conf,
- &old_freq, NULL);
-
- if (ret)
- return ret;
-
- /* set channel switch parameters for csa ie */
- hapd->cs_freq_params = settings->freq_params;
- hapd->cs_count = settings->cs_count;
- hapd->cs_block_tx = settings->block_tx;
-
- ret = hostapd_build_beacon_data(hapd, &settings->beacon_csa);
- if (ret) {
- free_beacon_data(&settings->beacon_after);
- return ret;
- }
-
- settings->counter_offset_beacon[0] = hapd->cs_c_off_beacon;
- settings->counter_offset_presp[0] = hapd->cs_c_off_proberesp;
- settings->counter_offset_beacon[1] = hapd->cs_c_off_ecsa_beacon;
- settings->counter_offset_presp[1] = hapd->cs_c_off_ecsa_proberesp;
-
- return 0;
-}
-
-
-void hostapd_cleanup_cs_params(struct hostapd_data *hapd)
-{
- os_memset(&hapd->cs_freq_params, 0, sizeof(hapd->cs_freq_params));
- hapd->cs_count = 0;
- hapd->cs_block_tx = 0;
- hapd->cs_c_off_beacon = 0;
- hapd->cs_c_off_proberesp = 0;
- hapd->csa_in_progress = 0;
- hapd->cs_c_off_ecsa_beacon = 0;
- hapd->cs_c_off_ecsa_proberesp = 0;
-}
-
-
-void hostapd_chan_switch_config(struct hostapd_data *hapd,
- struct hostapd_freq_params *freq_params)
-{
- if (freq_params->he_enabled)
- hapd->iconf->ch_switch_he_config |= CH_SWITCH_HE_ENABLED;
- else
- hapd->iconf->ch_switch_he_config |= CH_SWITCH_HE_DISABLED;
-
- if (freq_params->vht_enabled)
- hapd->iconf->ch_switch_vht_config |= CH_SWITCH_VHT_ENABLED;
- else
- hapd->iconf->ch_switch_vht_config |= CH_SWITCH_VHT_DISABLED;
-
- hostapd_logger(hapd, NULL, HOSTAPD_MODULE_IEEE80211,
- HOSTAPD_LEVEL_INFO,
- "CHAN_SWITCH HE config 0x%x VHT config 0x%x",
- hapd->iconf->ch_switch_he_config,
- hapd->iconf->ch_switch_vht_config);
-}
-
-
-int hostapd_switch_channel(struct hostapd_data *hapd,
- struct csa_settings *settings)
-{
- int ret;
-
- if (!(hapd->iface->drv_flags & WPA_DRIVER_FLAGS_AP_CSA)) {
- wpa_printf(MSG_INFO, "CSA is not supported");
- return -1;
- }
-
- ret = hostapd_fill_csa_settings(hapd, settings);
- if (ret)
- return ret;
-
- ret = hostapd_drv_switch_channel(hapd, settings);
- free_beacon_data(&settings->beacon_csa);
- free_beacon_data(&settings->beacon_after);
-
- if (ret) {
- /* if we failed, clean cs parameters */
- hostapd_cleanup_cs_params(hapd);
- return ret;
- }
-
- hapd->csa_in_progress = 1;
- return 0;
-}
-
-
-void
-hostapd_switch_channel_fallback(struct hostapd_iface *iface,
- const struct hostapd_freq_params *freq_params)
-{
- int seg0_idx = 0, seg1_idx = 0, bw = CHANWIDTH_USE_HT;
-
- wpa_printf(MSG_DEBUG, "Restarting all CSA-related BSSes");
-
- if (freq_params->center_freq1)
- seg0_idx = 36 + (freq_params->center_freq1 - 5180) / 5;
- if (freq_params->center_freq2)
- seg1_idx = 36 + (freq_params->center_freq2 - 5180) / 5;
-
- switch (freq_params->bandwidth) {
- case 0:
- case 20:
- case 40:
- bw = CHANWIDTH_USE_HT;
- break;
- case 80:
- if (freq_params->center_freq2)
- bw = CHANWIDTH_80P80MHZ;
- else
- bw = CHANWIDTH_80MHZ;
- break;
- case 160:
- bw = CHANWIDTH_160MHZ;
- break;
- default:
- wpa_printf(MSG_WARNING, "Unknown CSA bandwidth: %d",
- freq_params->bandwidth);
- break;
- }
-
- iface->freq = freq_params->freq;
- iface->conf->channel = freq_params->channel;
- iface->conf->secondary_channel = freq_params->sec_channel_offset;
- hostapd_set_oper_centr_freq_seg0_idx(iface->conf, seg0_idx);
- hostapd_set_oper_centr_freq_seg1_idx(iface->conf, seg1_idx);
- hostapd_set_oper_chwidth(iface->conf, bw);
- iface->conf->ieee80211n = freq_params->ht_enabled;
- iface->conf->ieee80211ac = freq_params->vht_enabled;
- iface->conf->ieee80211ax = freq_params->he_enabled;
-
- /*
- * cs_params must not be cleared earlier because the freq_params
- * argument may actually point to one of these.
- * These params will be cleared during interface disable below.
- */
- hostapd_disable_iface(iface);
- hostapd_enable_iface(iface);
-}
-
-#endif /* NEED_AP_MLME */
-
-
-struct hostapd_data * hostapd_get_iface(struct hapd_interfaces *interfaces,
- const char *ifname)
-{
- size_t i, j;
-
- for (i = 0; i < interfaces->count; i++) {
- struct hostapd_iface *iface = interfaces->iface[i];
-
- for (j = 0; j < iface->num_bss; j++) {
- struct hostapd_data *hapd = iface->bss[j];
-
- if (os_strcmp(ifname, hapd->conf->iface) == 0)
- return hapd;
- }
- }
-
- return NULL;
-}
-
-
-void hostapd_periodic_iface(struct hostapd_iface *iface)
-{
- size_t i;
-
- ap_list_timer(iface);
-
- for (i = 0; i < iface->num_bss; i++) {
- struct hostapd_data *hapd = iface->bss[i];
-
- if (!hapd->started)
- continue;
-
-#ifndef CONFIG_NO_RADIUS
- hostapd_acl_expire(hapd);
-#endif /* CONFIG_NO_RADIUS */
- }
-}
-
-
-#ifdef CONFIG_OCV
-void hostapd_ocv_check_csa_sa_query(void *eloop_ctx, void *timeout_ctx)
-{
- struct hostapd_data *hapd = eloop_ctx;
- struct sta_info *sta;
-
- wpa_printf(MSG_DEBUG, "OCV: Post-CSA SA Query initiation check");
-
- for (sta = hapd->sta_list; sta; sta = sta->next) {
- if (!sta->post_csa_sa_query)
- continue;
-
- wpa_printf(MSG_DEBUG, "OCV: OCVC STA " MACSTR
- " did not start SA Query after CSA - disconnect",
- MAC2STR(sta->addr));
- ap_sta_disconnect(hapd, sta, sta->addr,
- WLAN_REASON_PREV_AUTH_NOT_VALID);
- }
-}
-#endif /* CONFIG_OCV */
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd_patch_20230316.diff b/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd_patch_20230316.diff
deleted file mode 100755
index 96a7d2c..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/ap/hostapd_patch_20230316.diff
+++ /dev/null
@@ -1,14 +0,0 @@
---- b/hostapd.c 2023-03-16 16:56:03.313755143 +0800
-+++ a/hostapd.c 2023-03-16 16:57:59.997750241 +0800
-@@ -2294,8 +2294,9 @@
- * If freq is DFS, and DFS is offloaded to the driver, then wait
- * for CAC to complete.
- */
-- wpa_printf(MSG_DEBUG, "%s: Wait for CAC to complete", __func__);
-- return res_dfs_offload;
-+ //wpa_printf(MSG_DEBUG, "%s: Wait for CAC to complete", __func__);
-+ wpa_printf(MSG_DEBUG, "IFX: don't need wait for CAC to complete");
-+ //return res_dfs_offload;
- }
-
- #ifdef NEED_AP_MLME
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/Makefile b/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/Makefile
deleted file mode 100755
index cffba62..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/Makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-all:
- @echo Nothing to be made.
-
-clean:
- for d in $(SUBDIRS); do make -C $$d clean; done
- rm -f *~ *.o *.d
-
-install:
- @echo Nothing to be made.
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi.h b/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi.h
deleted file mode 100755
index 075b9ba..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/** @file wapi.h
- * @brief This header file contains data structures and function declarations of wapi
- *
- * Copyright (C) 2001-2008, Iwncomm Ltd.
- */
-
-#ifndef WAPI_H
-#define WAPI_H
-
-#include "wapi_asue.h"
-
-//#define BIT(n) (1 << (n))
-
-
-#define WAI_VERSION 1
-#define WAI_TYPE 1
-/*WAI packets type*/
-enum {
- WAI_PREAUTH_START = 0x01, /*pre-authentication start*/
- WAI_STAKEY_REQUEST = 0x02, /*STAKey request */
- WAI_AUTHACTIVE = 0x03, /*authentication activation*/
- WAI_ACCESS_AUTH_REQUEST = 0x04, /*access authentication request */
- WAI_ACCESS_AUTH_RESPONSE = 0x05, /*access authentication response */
- WAI_CERT_AUTH_REQUEST = 0x06, /*certificate authentication request */
- WAI_CERT_AUTH_RESPONSE = 0x07, /*certificate authentication response */
- WAI_USK_NEGOTIATION_REQUEST = 0x08, /*unicast key negotiation request */
- WAI_USK_NEGOTIATION_RESPONSE = 0x09, /* unicast key negotiation response */
- WAI_USK_NEGOTIATION_CONFIRMATION = 0x0A,/*unicast key negotiation confirmation */
- WAI_MSK_ANNOUNCEMENT = 0x0B, /*multicast key/STAKey announcement */
- WAI_MSK_ANNOUNCEMENT_RESPONSE = 0x0C, /*multicast key/STAKey announcement response */
- //WAI_SENDBK = 0x10, /*BK for TMC ??*/
-};
-
-
-enum {
- REASON_RETRY_TIMEOUT = 25
-};
-
-//void * MEMCPY(void *dbuf, const void *srcbuf, int len) ;
-
-#endif /* WPA_H */
-
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue.c b/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue.c
deleted file mode 100755
index 06186ef..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue.c
+++ /dev/null
@@ -1,254 +0,0 @@
-/* @file wapi_asue.c
- * @brief This file contains functions for wapi_asue
- *
- * Copyright (C) 2001-2008, Iwncomm Ltd.
- */
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <stdarg.h>
-#include <unistd.h>
-#include <string.h>
-#include <assert.h>
-/*for declaration of function `inet_addr'*/
-#include <sys/types.h>
-#include <sys/socket.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <signal.h>
-#include <sys/time.h>
-
-#include "wireless_copy.h"
-#include "common.h"
-#include "version.h"
-#include "wapi_asue.h"
-#include "wapi.h"
-#include "wapi_config.h"
-#include "wapi_asue_i.h"
-#include "utils/eloop.h"
-#include "drivers/driver_wext.h"
-#include "wapi/wapi_interface.h"
-#include "wpa.h"
-#include "wpa_supplicant_i.h"
-#include "wpa_ctrl.h"
-
-extern void eloop_handle_alarm(int sig);
-
-struct wpa_supplicant * wapi_asue_match_supp_handle(struct wpa_global *global)
-{
- struct wpa_supplicant *wpa_s;
- for (wpa_s = global->ifaces; wpa_s; wpa_s = wpa_s->next) {
- if (os_strcmp(wpa_s->ifname, wapi_asue_get_ifname()) == 0) {
- return wpa_s;
- }
- }
- wpa_printf(MSG_ERROR, "%s: No matching supp handle found\n", __FUNCTION__);
- return NULL;
-}
-
-void *free_rxfrag(struct wapi_rxfrag *frag)
-{
- if(frag != NULL){
- free_buffer((void *)(frag->data), frag->maxlen);
- free_buffer((void *)frag, sizeof(struct wapi_rxfrag ));
- }
- return NULL;
-}
-
-void wapi_asue_rx_wai(void *ctx, const u8 *src_addr, const u8 *buf, size_t len)
-{
- wpa_printf(MSG_DEBUG, "%s, received %d bytes packet: %s\n",
- __FUNCTION__, len, buf);
- WAI_RX_packets_indication(buf, len);
-}
-
-unsigned char WIFI_get_rand_byte()
-{
- return (unsigned char)(rand() & 0xFF);
-}
-
-void WIFI_Action_Deauth()
-{
- struct wpa_global *global;
- struct wpa_supplicant *wpa_s;
-
- global = (struct wpa_global *)eloop_get_user_data();
- wpa_s = global->ifaces;
-
- wpa_msg(wpa_s, MSG_INFO, "WAPI: authentication failed");
- wpa_supplicant_deauthenticate(wpa_s, 15);
-}
-
-unsigned long WIFI_TX_packet(const char* pbuf, int length)
-{
- struct wpa_global *global;
- struct wpa_supplicant *wpa_s;
- int ret;
-
- global = (struct wpa_global *)eloop_get_user_data();
- wpa_s = wapi_asue_match_supp_handle(global);
-
- wpa_printf(MSG_DEBUG, "%s: sending l2 %d bytes data: %s\n",
- __FUNCTION__, length, pbuf);
- ret = l2_packet_send(wpa_s->l2_wapi, wpa_s->bssid, 0x88b4,
- (const u8*)pbuf, (unsigned int)length);
-
- if (ret < 0) {
- return 0;
- }
- else {
- return (unsigned long)ret;
- }
-}
-
-int WIFI_group_key_set(const unsigned char* pKeyValue, int keylength, int key_idx, const unsigned char* keyIV)
-{
- struct wpa_global *global;
- struct wpa_supplicant *wpa_s;
- int alg;
-
- wpa_printf(MSG_DEBUG, "WIFI_group_key_set: Installing group key to the driver.");
- wpa_hexdump(MSG_DEBUG, "WIFI_group_key_set: KEYSC", keyIV, 16);
-
- global = (struct wpa_global *)eloop_get_user_data();
- wpa_s = wapi_asue_match_supp_handle(global);
-
- alg = WAPI_ALG_SMS4;
- if (wapi_drv_set_key(wpa_s, alg, (u8 *) "\xff\xff\xff\xff\xff\xff",
- key_idx, 1, keyIV, 16, pKeyValue, keylength,
- KEY_FLAG_GROUP_RX_TX_DEFAULT) < 0) {
- wpa_printf(MSG_WARNING, "WPA: Failed to set MSK to "
- "the driver.");
- return -1;
- }
- else {
- wpa_printf(MSG_DEBUG, "WAPI: succeeded to set MSK to the driver.");
- }
-
- wpa_printf(MSG_DEBUG,"WIFI_group_key_set(): after setting the group key,"
- "set the wapi again.\n");
-
- wpa_printf(MSG_DEBUG,"wpa_s->conf->wapi_policy = 0x%x\n",
- wpa_s->wapi_conf->wapi_policy);
-
- if (wapi_drv_set_wapi(wpa_s, wpa_s->wapi_conf->wapi_policy) < 0) {
- wpa_printf(MSG_ERROR, "Failed to enable WPA in the driver.\n");
- return -1;
- }
- else {
- wpa_printf(MSG_DEBUG,"WIFI_group_key_set(): calling "
- "wpa_supplicant_set_state(WPA_COMPLETE).\n");
- wpa_s->wapi_state = WAPI_COMPLETED;
- wpa_supplicant_set_state(wpa_s, WPA_COMPLETED);
- }
-
- return 0;
-}
-
-
-int WIFI_unicast_key_set(const char* pKeyValue, int keylength, int key_idx)
-{
- struct wpa_global *global;
- struct wpa_supplicant *wpa_s;
-
- int alg, keylen, rsclen;
- u8 *key_rsc;
- u8 null_rsc[16] = { 0, 0, 0, 0, 0, 0, 0, 0 };
-
- wpa_printf(MSG_DEBUG, "WIFI_unicast_key_set: Installing USK to the driver.");
-
- global = (struct wpa_global *)eloop_get_user_data();
- wpa_s = wapi_asue_match_supp_handle(global);
-
- alg = WAPI_ALG_SMS4;
- keylen = 32;
- rsclen = 16;
-
- key_rsc = null_rsc;
- if (wapi_drv_set_key(wpa_s, alg, wpa_s->bssid, key_idx, 1, key_rsc, rsclen,
- (u8 *) pKeyValue, keylen, KEY_FLAG_PAIRWISE_RX_TX) < 0) {
- wpa_printf(MSG_WARNING, "WIFI_unicast_key_set: Failed to set PTK to the driver");
- return -1;
- }
-
- return 0;
-}
-
-static void init_sigaction(int signum, OS_timer_expired handle)
-{
- signal(signum, handle);
-}
-
-void* OS_timer_setup(int deltaTimer, int repeated, OS_timer_expired pfunction,
- const void* pdata)
-{
- struct itimerval value;
- int sec = 0, usec = 0;
- int repsec = 0, repusec = 0;
-
- if (deltaTimer < 0 || repeated < 0 || pfunction == NULL)
- return NULL;
-
- init_sigaction(SIGALRM, pfunction);
-
- sec = deltaTimer/(1000);
- usec = (deltaTimer%(1000)) * 1000;
-
- repsec = repeated/(1000);
- repusec = (repeated%(1000)) * 1000;
-
- memset(&value, 0, sizeof(value));
-
- value.it_interval.tv_sec = repsec;
- value.it_interval.tv_usec = repusec;
-
- value.it_value.tv_sec = sec;
- value.it_value.tv_usec = usec;
-
- setitimer(ITIMER_REAL, &value, NULL);
-
- return (void *)pfunction;
-}
-
-void OS_timer_clean(void* pTimer)
-{
- struct itimerval value;
-
- memset(&value, 0, sizeof(value));
- setitimer(ITIMER_REAL, &value, NULL);
-
- signal(SIGALRM, eloop_handle_alarm);
-}
-
-int WIFI_WAI_IE_set(const u8* pbuf, int length)
-{
- struct wpa_global *global;
- struct wpa_supplicant *wpa_s;
-
- global = (struct wpa_global *)eloop_get_user_data();
- wpa_printf(MSG_ERROR, "#### Enter WIFI_WAI_IE_set\n");
- if (global == NULL) {
- wpa_printf(MSG_ERROR, " global = NULL\n");
- return -1;
- }
- else {
- wpa_s = wapi_asue_match_supp_handle(global);
- }
- if (wpa_s == NULL) {
- wpa_printf(MSG_ERROR, " wpa_s = NULL\n");
- return -1;
- }
- wpa_printf(MSG_ERROR, " Set wpa_s to global->ifaces");
- wapi_drv_set_wpa_ie(wpa_s, pbuf, length);
- wpa_s->assoc_wapi_ie_len = length;
- wpa_printf(MSG_DEBUG, "wpa_s->assoc_wapi_ie_len : %d",
- wpa_s->assoc_wapi_ie_len);
- memcpy(wpa_s->assoc_wapi_ie, pbuf, length);
- wpa_printf(MSG_DEBUG, "wpa_s->assoc_wapi_ie: [%02x][%02x][%02x][%02x]\n",
- wpa_s->assoc_wapi_ie[0], wpa_s->assoc_wapi_ie[1],
- wpa_s->assoc_wapi_ie[2], wpa_s->assoc_wapi_ie[3]);
- wpa_printf(MSG_DEBUG, "@@@@@@@@@@@@@ wpa_s ===> %p\n",wpa_s);
-
- return 0;
-}
-
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue.h b/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue.h
deleted file mode 100755
index 5ccb089..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue.h
+++ /dev/null
@@ -1,183 +0,0 @@
-/** @file wapi_asue.h
- * @brief This header file contains data structures and function declarations of wapi_asue
- *
- * Copyright (C) 2001-2008, Iwncomm Ltd.
- */
-
-
-#ifndef __WAPI_ASUE_H__
-#define __WAPI_ASUE_H__
-#include <sys/socket.h>
-#include <netinet/in.h>
-
-#include <sys/time.h>
-#ifdef WAPI
-#include "../wpa_supplicant/config.h"
-#else
-#include "config.h"
-#endif
-#include "drivers/driver.h"
-#include "wapi_config.h"
-#include "l2_packet/l2_packet.h"
-//#include "wpa_supplicant.h"
-#include "wapi.h"
-
-#define CTRL_IFACE_SOCK struct sockaddr_in
-#define WPA_CTRL_IFACE_PORT 9003
-//#define WPA_CGI_IFACE_PORT 9002
-
-typedef enum {
- WAPI_DISCONNECTED=0,
-#ifdef WAPI
- WAPI_UNDEFINED_1,
-#endif
- WAPI_INACTIVE,
- WAPI_SCANNING,
-#ifdef WAPI
- WAPI_UNDEFINED_2,
-#endif
- WAPI_ASSOCIATING,
- WAPI_ASSOCIATED,
- WAPI_AUTHENICATING,
- WAPI_CERT_HANDSHAKE,
- WAPI_3WAY_HANDSHAKE,
- WAPI_3WAYING,
- WAPI_GROUP_HANDSHAKE,
- WAPI_GROUPING,
- WAPI_COMPLETED
-} wapi_states;
-
-typedef enum {
- WAI_ERR_INIT=0,
- WAI_ERR_BKID,
- WAI_ERR_CHALLENGE,
- WAI_ERR_IE,
- WAI_ERR_MIC,
-} wapi_wai_err;
-
-struct wai_hdr {
- u8 version[2];
- u8 type;
- u8 stype;
- u8 reserve[2];
- u16 length;
- u8 rxseq[2]; /* Packet Sequence Number */
- u8 frag_sc; /* Fragment Sequence Number*/
- u8 more_frag; /* Flag */
- /* followed octets of data */
-};// __attribute__ ((packed));
-
-struct wapi_state_machine {
- int bksa_count; /* number of entries in PMKSA cache */
-
- u8 own_addr[ETH_ALEN];
- const char *ifname;
- u8 bssid[ETH_ALEN];
-
- /* Selected configuration (based on Beacon/ProbeResp WAPI IE) */
- unsigned int pairwise_cipher;
- unsigned int group_cipher;
- unsigned int key_mgmt;
-
- u8 assoc_wapi_ie[256]; /* Own WAPI/RSN IE from (Re)AssocReq */
- u8 assoc_wapi_ie_len;
- u8 ap_wapi_ie[256];
- u8 ap_wapi_ie_len;
-};
-
-struct wapi_rxfrag{
- const u8 *data;
- int data_len;
- int maxlen;
- int rxfragstamp;
-};
-typedef struct byte_data_{
- u8 length;
- u8 data[256];
-}byte_data;
-
-
-/*Structure retry buf*/
-struct _resendbuf_st{
- u16 cur_count;
- u16 len;
- void *data;
-};
-typedef struct _resendbuf_st resendbuf_st;
-
-
-/**
- * struct wapi_ssid - Network configuration data
- *
- * This structure includes all the configuration variables for a network. This
- * data is included in the per-interface configuration data as an element of
- * the network list, struct wpa_config::ssid. Each network block in the
- * configuration is mapped to a struct wpa_ssid instance.
- */
-
-struct wapi_asue_st {
- struct l2_packet_data *l2;
- u8 own_addr[ETH_ALEN];
- u8 bssid[ETH_ALEN];
- char ifname[100];
- char *confname;
- struct wapi_config *conf;
- int reassociate; /* reassociation requested */
- int disconnected; /* all connections disabled; i.e., do no reassociate
- * before this has been cleared */
- int wai_received;
- /* Selected configuration (based on Beacon/ProbeResp WPA IE) */
- int pairwise_cipher;
- int group_cipher;
- int key_mgmt;
-
- void *drv_priv; /* private data used by driver_ops */
- struct wpa_scan_result *scan_results;
- int num_scan_results;
- struct wpa_driver_ops *driver;
- struct wapi_state_machine *wapi_sm;
- int ctrl_sock; /* UNIX domain socket for control interface or -1 if
- * not used */
- int cgi_sock; /* UNIX domain socket for control interface or -1 if
- * not used */
- int rxfragstamp;
- struct wapi_rxfrag *rxfrag;
- u16 rxseq;
- u16 txseq;
-
- wapi_states wapi_state;
- wapi_wai_err wai_err;
- unsigned char last_wai_src[ETH_ALEN];
- u8 pad;
- u8 flag;
- struct _resendbuf_st buf;
- u8 assoc_wapi_ie[256]; /* Own WAPI/RSN IE from (Re)AssocReq */
- u8 ap_wapi_ie[256];
- u8 ap_wapi_ie_len;
- u8 assoc_wapi_ie_len;
-};
-/**
- * wpa_supplicant_event - report a driver event for wpa_supplicant
- * @wpa_s: pointer to wpa_supplicant data; this is the @ctx variable registered
- * with wpa_driver_events_init()
- * @event: event type (defined above)
- * @data: possible extra data for the event
- *
- * Driver wrapper code should call this function whenever an event is received
- * from the driver.
- */
-//void wapi_asue_event(struct wpa_supplicant *wpa_s, wpa_event_type event,
-// void *data);
-//int wapi_asue_get_scan_results(struct wpa_supplicant *wpa_s);
-//void wapi_asue_cancel_auth_timeout(struct wpa_supplicant *wpa_s);
-#ifdef CONFIG_NO_WPA_MSG
-#define wpa_msg(args...) do { } while (0)
-#else
-extern void wpa_msg(void *ctx, int level, const char *fmt, ...);
-#endif
-//void wapi_asue_req_scan(struct wpa_supplicant *wpa_s, int sec, int usec);
-//void wapi_asue_associate(struct wpa_supplicant *wpa_s,const u8 *ssid, int ssid_len);
-//void wapi_asue_disassociate(struct wpa_supplicant *wpa_s, int reason_code);
-void *free_rxfrag(struct wapi_rxfrag *frag);
-void wapi_asue_rx_wai(void *ctx, const u8 *src_addr, const u8 *buf, size_t len);
-#endif
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue_i.h b/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue_i.h
deleted file mode 100755
index 8753526..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_asue_i.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/** @file wapi_asue_i.h
- * @brief This header file contains data structures and function declarations of wapi_asue_i
- *
- * Copyright (c) 2003-2005, Jouni Malinen <jkmaline@cc.hut.fi>
- * Copyright (C) 2001-2008, Iwncomm Ltd.
- */
-
-#include "drivers/driver.h"
-#include "common.h"
-#include "wpa_supplicant_i.h"
-
-/* driver_ops */
-
-static inline int wapi_drv_set_wapi(struct wpa_supplicant *wpa_s, int enabled)
-{
- if (wpa_s->driver->set_wapi)
- {
- int ret = -1;
- ret = wpa_s->driver->set_wapi(wpa_s->drv_priv, enabled);
- return ret;
- }
- return -1;
-}
-
-static inline int wapi_drv_set_key(struct wpa_supplicant *wpa_s, enum wpa_alg alg,
- const u8 *addr, int key_idx, int set_tx,
- const u8 *seq, size_t seq_len,
- const u8 *key, size_t key_len,
- enum key_flag key_flag)
-{
- if (wpa_s->driver->set_key) {
- struct wpa_driver_set_key_params params;
-
- os_memset(¶ms, 0, sizeof(params));
- params.ifname = wpa_s->ifname;
- params.alg = alg;
- params.addr = addr;
- params.key_idx = key_idx;
- params.set_tx = set_tx;
- params.seq = seq;
- params.seq_len = seq_len;
- params.key = key;
- params.key_len = key_len;
- params.vlan_id = 0;
- params.key_flag = key_flag;
- return wpa_s->driver->set_key(wpa_s->drv_priv, ¶ms);
- }
- return -1;
-}
-
-static inline int wapi_drv_set_wpa_ie(struct wpa_supplicant *wpa_s, const u8 *wpa_ie, size_t wpa_ie_len)
-{
- if (wpa_s->driver->set_wpa_ie) {
- return wpa_s->driver->set_wpa_ie(wpa_s->drv_priv, wpa_ie, wpa_ie_len);
- }
- return -1;
-}
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_config.c b/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_config.c
deleted file mode 100755
index fe1446f..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_config.c
+++ /dev/null
@@ -1,483 +0,0 @@
-/** @file wapi_config.c
- * @brief This file contains functions for wapi_config
- *
- * Copyright (C) 2001-2008, Iwncomm Ltd.
- */
-
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <stdarg.h>
-#include <unistd.h>
-#include <string.h>
-#include <dirent.h>
-
-//#include "wapi_common.h"
-#include "wapi_config.h"
-#include "config.h"
-#include "wapi.h"
-#include "utils/eloop.h"
-#include "wapi/wapi_interface.h"
-#include "wapi_asue.h"
-#include "wpa_supplicant_i.h"
-
-#define SEP_Q_MARK '"'
-
-static int get_pr (char type, char *line, prop_data *prop)
-{
- char *index = NULL;
- char *keyptr = NULL;
-
- if (line[0] != '#')
- {
- // modified by kWlW, separator changed to this vvv from "="
- keyptr = (char *)strstr(line, "setenv ");
- //finds the first occurrence of the substring 'setenv' in line
- if (keyptr != NULL) line = keyptr + 7;
- /* Add size of 'setenv ' string */
- index = strstr (line, type == SEP_EQUAL ? "=" : type == SEP_SPACE ? " " : "\t");
- if (((char *)index) != NULL)
- {
- *((char *) index) = '\0';
- /* skip leading spaces or tabs at the beginning of the line */
- while ( (*line == ' ') || (*line == '\t') ){
- line++;
- }
- if ((prop->key = (char *)malloc (strlen (line) + 1)) != NULL &&
- (prop->value =(char *) malloc (strlen ((char *) (index + 1)) + 1)) != NULL)
- {
- strcpy (prop->key, line);
- strcpy (prop->value, (char *) (index + 1));
- return 1;
- }
- }
- }
- return 0;
-}
-
-
-int load_prop (char type, char *file_name, prop_data properties[])
-{
- FILE *fid;
- char line[1024];
- int prop_count = 0;
- char * buf;
-
- if ((fid = fopen (file_name, "r")) == NULL) return 0;
- while (!feof (fid))
- {
- buf = fgets(line, 255, fid);
- if(feof(fid)) break;
- if (strchr(line, '\n')) *(strchr(line, '\n')) = '\0';
- if (get_pr (type, line, (prop_data *) & properties[prop_count]))
- {
- prop_count++;
- }
- }
- fclose (fid);
- return prop_count;
-}
-
-static char *strip (char *string, char delimiter)
-{
- register int x, y;
-
- y = strlen (string);
- x = 0;
- while ((x < y) && (string[x] == delimiter))
- {
- x++;
- };
- while ((y > 0) && (string[y - 1] == delimiter))
- {
- y--;
- };
- string[y] = 0;
- return string + x;
-}
-char *get_prop (char *key, char *result, prop_data properties[], int count)
-{
- int index;
- char tmp_str[256] = "";
- for (index = 0; index < count; index++)
- {
- if (strcmp (properties[index].key, key) == 0)
- {
- strcpy(tmp_str, properties[index].value);
- strcpy (result, strip(tmp_str, SEP_Q_MARK));
- return result;
- }
- }
- return NULL;
-}
-
-int hex2int(char c)
-{
- if (c >= '0' && c <= '9')
- return (c - '0');
- if (c >= 'a' && c <= 'f')
- return (c - 'a' + 10);
- if (c >= 'A' && c <= 'F')
- return (c - 'A' + 10);
- return -1;
-}
-
-int str2byte( unsigned char *str, int len, char *byte_out)
-{
- int i, val, val2;
- unsigned char *pos = str;
-
- for (i = 0; i < len/2; i++) {
- val = hex2int(*pos++);
- if (val < 0)
- return -1;
- val2 = hex2int(*pos++);
- if (val2 < 0)
- return -1;
- byte_out[i] = (val * 16 + val2) & 0xff;
- }
-
- return 0;
-}
-
-void *get_buffer(int len)
-{
- char *buffer=NULL;
- buffer = (char *)malloc(len);
- if(buffer)
- memset(buffer, 0, len);
- else
- buffer = NULL;
- return buffer;
-}
-void *free_buffer(void *buffer, int len)
-{
- char *tmpbuf = (char *)buffer;
-
- if(tmpbuf != NULL)
- {
- memset(tmpbuf, 0, len);
- free(tmpbuf);
- return NULL;
- }
- else
- return NULL;
-}
-
-int free_prop (prop_data properties[], int count)
-{
- int index;
- for (index = 0; index < count; index++)
- {
- free (properties[index].key);
- free (properties[index].value);
- }
- return 1;
-}
-
-int save_global_conf(char type, char* filename, char *command, char *key, char *value)
-{
- FILE* fidIn, *fidOut;
- char line[1024], tmp_line[1024];
- char tmp_fname[255], *index;
- char separator[2];
- int i=0;
- char * buf;
-
- if ((fidIn=fopen(filename,"r"))==NULL) return 0;
- strcpy(tmp_fname,filename);
- strcat(tmp_fname,".new");
-
- if ((fidOut=fopen(tmp_fname,"w"))==NULL) return 0;
-
- strcpy(separator,(type==SEP_EQUAL?"=":type==SEP_SPACE?" ":"\t"));
- type=separator[0];
-
- while(!feof(fidIn))
- {
- buf = fgets(line,1024,fidIn);
- strcpy(tmp_line,command);
- strcat(tmp_line,key);
- if (((index=strstr(line,tmp_line))!=NULL) && (index==line)) {
- printf("finding\n");
- i=1;
- if (!feof(fidIn)) {
- if (type != '0')
- fprintf(fidOut,"%s%s%c%s\n",command,key,type,value);
- else
- fprintf(fidOut,"%s%s%s\n",command,key,value);
- }
- } else
- if (!feof(fidIn)) fprintf(fidOut,"%s",line);
- }
-
- if (i==0) {
- if (type != '0') { fprintf(fidOut,"%s%s%c%s\n",command,key,type,value); }
- else fprintf(fidOut,"%s%s%s\n",command,key,value);
- }
-
- fclose(fidIn);
- fclose(fidOut);
- unlink(filename);
- rename(tmp_fname,filename);
- return 1;
-
-}
-
-int change_cert_format(const char *cert_file,
- unsigned char *out_user,
- int len_user,
- unsigned char *out_asu,
- int len_asu);
-
-
-void wapi_config_free(struct wapi_config *config)
-{
- struct wapi_config *prev = NULL;
- prev = config;
- if (prev) {
- if(prev->ssid)
- free(prev->ssid);
- if(prev->cert_name)
- free(prev->cert_name);
- free(config);
- }
-}
-
-/**
- * Save User certificate status
-*/
-int save_cert_status(char *fileconfig, char *cert_flag)
-{
- int res = 0;
- res = !save_global_conf(SEP_EQUAL,fileconfig,"", "CERT_STATUS",cert_flag);
- if(res != 0)
- {
- wpa_printf(MSG_DEBUG, "open file %s error\n", fileconfig);
- }
- return res;
-}
-
-
-struct wapi_config * wapi_config_read(const char *config_file)
-{
- char buf[256] = {0,};
- prop_data properties[KEYS_MAX];
- int prop_count=0;
- struct wapi_config *config = NULL;
- CNTAP_PARA lib_param;
- u8 psk_type = 0;
- struct wpa_global *eloop = (struct wpa_global *)eloop_get_user_data();
-
- if ( eloop == NULL ) return NULL;
-
- config = malloc(sizeof(*config));
- if (config == NULL)
- return NULL;
- memset(config, 0, sizeof(*config));
-
- wpa_printf(MSG_DEBUG, "Reading configuration file '%s'",
- config_file);
- prop_count=load_prop(SEP_EQUAL, (char *)config_file,properties);
-
- if(prop_count == 0){
- wpa_printf(MSG_ERROR, "no keys and values pair in configuration file '%s'",
- config_file);
- return NULL;
- }
-
- memset(buf, 0, 256);
-
- /*Get Authentication and Key Management Suites*/
- get_prop("wapi", buf, properties, prop_count);
- config->wapi_policy = atoi(buf);
- wpa_printf(MSG_DEBUG, "wapi_policy '%d'", config->wapi_policy);
-
- if (config->wapi_policy & 0x08)
- {
- lib_param.authType = AUTH_TYPE_WAPI;
- }
- else
- if (config->wapi_policy & 0x04)
- {
- lib_param.authType = AUTH_TYPE_WAPI_PSK;
- }
- else
- {
- lib_param.authType = AUTH_TYPE_NONE_WAPI;
- }
-
- wpa_printf(MSG_DEBUG, "WAPI '%d'", config->wapi_policy);
-
- if(config->wapi_policy != 0)
- {
- config->group_cipher = WAPI_CIPHER_SMS4;
- config->pairwise_cipher = WAPI_CIPHER_SMS4;
- }
- memset(buf, 0, 256);
-
- get_prop("ssid", buf, properties, prop_count);
- config->ssid_len = strlen(buf);
- config->ssid = (u8*)strdup(buf);
- wpa_hexdump_ascii(MSG_DEBUG, " SSID:", config->ssid, config->ssid_len);
-
- memset(buf, 0, 256);
- get_prop("cert_index", buf, properties, prop_count);
- eloop->cert_info.config.used_cert = (u8)atoi(buf);/*1:x509 2:GBW */
-
- memset(buf, 0, 256);
- get_prop("cert_name", eloop->cert_info.config.cert_name, properties, prop_count);
- wpa_printf(MSG_DEBUG, "CERT_NAME '%s'", eloop->cert_info.config.cert_name);
-
- if((config->wapi_policy & 0x08) && strlen(eloop->cert_info.config.cert_name))
- {
-
- change_cert_format(eloop->cert_info.config.cert_name,
- lib_param.para.user, 2048,
- lib_param.para.as, 2048);
- }
-
- memset(buf, 0, sizeof(buf));
- get_prop("psk_key_type", buf, properties, prop_count);
- psk_type = (u8)atoi(buf);
- wpa_printf(MSG_DEBUG, "PSK_KEY_TYPE '%d'", psk_type);
-
- memset(buf, 0, 256);
- get_prop("psk", buf, properties, prop_count);
- wpa_printf(MSG_DEBUG, "PSK'%s'", buf);
-
- if(config->wapi_policy & WAPI_KEY_MGMT_PSK){ /*bit 2:PSK*/
-
- lib_param.para.kt = psk_type;
- lib_param.para.kl = strlen(buf);
- memcpy(lib_param.para.kv, buf, lib_param.para.kl);
- }
-
- WAI_CNTAPPARA_SET(&lib_param, eloop->ifaces->ifname); // do it after the wpa_s has been attached to global
-
- /* copy wapi_config stuff into wpa_config structure? */
- free_prop(properties,prop_count);
- return config;
-}
-
-
-
-/**
- * find mark in src
- */
-static const unsigned char* findmark_mem(const unsigned char* src, int lsrc, const unsigned char* mark, int lmark)
-{
- const unsigned char* p = src;
- const unsigned char* pe = src+lsrc;
- if (NULL==src || NULL==mark || lsrc<0 || lmark<0 || lsrc<lmark)
- {
- return NULL;
- }
- pe -= lmark;
- for (; p<=pe; p++)
- {
- if (0 == memcmp(p, mark, lmark))
- {
- return p;
- }
- }
- return NULL;
-}
-
-static const unsigned char* findstrmark_mem(const unsigned char* src, int lsrc, const char* mark)
-{
- return findmark_mem(src, lsrc, (const unsigned char*)mark, strlen(mark));
-}
-
-int change_cert_format(const char *cert_file,
- unsigned char *out_user,
- int len_user,
- unsigned char *out_asu,
- int len_asu)
-{
- int ret = -1;
- int len = 0;
- unsigned char buf[1024*8] = {0};
-
- const char* mark_asu_s = "-----BEGIN ASU CERTIFICATE-----";
- const char* mark_asu_e = "-----END ASU CERTIFICATE-----";
- const char* mark_user_s = "-----BEGIN USER CERTIFICATE-----";
- const char* mark_user_e = "-----END USER CERTIFICATE-----";
- const char* mark_ec_s = "-----BEGIN EC PRIVATE KEY-----";
- const char* mark_ec_e = "-----END EC PRIVATE KEY-----";
- const char* mark_s = "-----BEGIN CERTIFICATE-----";
- const char* mark_e = "-----END CERTIFICATE-----";
-
- if (cert_file == NULL || out_user == NULL || out_asu == NULL || len_user <= 0 || len_asu <= 0)
- {
- return ret;
- }
-
- {
- FILE* fp = fopen((const char*)cert_file, "rb");
- if (fp == NULL)
- {
- return ret;
- }
- len = fread(buf, 1, 1024*8, fp);
- fclose(fp);
- if (len <= 0)
- {
- return ret;
- }
- }
-
- {
- unsigned char *p = NULL;
- const unsigned char *ps = NULL;
- const unsigned char *pe = NULL;
- ps = findstrmark_mem(buf, len, mark_asu_s);
- pe = findstrmark_mem(buf, len, mark_asu_e);
- if (NULL==ps || NULL==pe || ps>=pe)
- {
- return ret;
- }
- if ((unsigned int)len_asu < strlen(mark_s)+pe-ps-strlen(mark_asu_s)+strlen(mark_e))
- {
- return ret;
- }
- p = out_asu;
- memcpy(p, mark_s, strlen(mark_s));
- p += strlen(mark_s);
- memcpy(p, ps+strlen(mark_asu_s), pe-ps-strlen(mark_asu_s));
- p += pe-ps-strlen(mark_asu_s);
- memcpy(p, mark_e, strlen(mark_e));
-
- ps = findstrmark_mem(buf, len, mark_user_s);
- pe = findstrmark_mem(buf, len, mark_user_e);
- if (NULL==ps || NULL==pe || ps>=pe)
- {
- return ret;
- }
- if ((unsigned int)len_user < strlen(mark_s)+pe-ps-strlen(mark_user_s)+strlen(mark_e))
- {
- return ret;
- }
- p = out_user;
- memcpy(p, mark_s, strlen(mark_s));
- p += strlen(mark_s);
- memcpy(p, ps+strlen(mark_user_s), pe-ps-strlen(mark_user_s));
- p += pe-ps-strlen(mark_user_s);
- memcpy(p, mark_e, strlen(mark_e));
- p += strlen(mark_e);
-
- ps = findstrmark_mem(buf, len, mark_ec_s);
- pe = findstrmark_mem(buf, len, mark_ec_e);
- if (NULL==ps || NULL==pe || ps>=pe)
- {
- return ret;
- }
- if (len_user-strlen((char*)out_user) < pe-ps+strlen(mark_ec_e))
- {
- return ret;
- }
- memcpy(p, ps, pe-ps+strlen(mark_ec_e));
- }
- ret = 0;
- return ret;
-}
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_config.h b/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_config.h
deleted file mode 100755
index feb88fc..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_config.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/** @file wapi_config.h
- * @brief This header file contains data structures and function declarations of wapi_config
- *
- * Copyright (C) 2001-2008, Iwncomm Ltd.
- */
-
-#ifndef __WAPI_CONFIG_H__
-#define __WAPI_CONFIG_H__
-
-#include "common.h"
-
-#define MAX_SSID_LEN 32
-#define BK_LEN 16
-#define EAP_PSK_LEN 16
-#define EAP_PSK_LEN 16
-#define WAPI_CIPHER_NONE BIT(0)
-#define WAPI_CIPHER_SMS4 BIT(4)
-
-#define WAPI_KEY_MGMT_NONE 0
-#define WAPI_KEY_MGMT_CERT BIT(1)
-#define WAPI_KEY_MGMT_PSK BIT(2)
-
-/* Separators */
-#define SEP_EQUAL '='
-#define SEP_SPACE ' '
-#define SEP_TAB (char)0x9
-
-#define ENABLE 1
-#define DISABLE 2
-#define MYVERIFY 3
-#define LENGTH 255
-#define KEYS_MAX 255
-
-
-struct prop_data_st
-{
- char *key;
- char *value;
-};
-
-typedef struct prop_data_st prop_data;
-
-struct asue_config
-{
- char cert_name[256];
- unsigned short used_cert;
- unsigned short pad;
-};
-
-struct _asue_cert_info {
- struct asue_config config;
-};
-
-int load_prop (char type, char *file_name, prop_data properties[]);
-char *get_prop (char *key, char *result, prop_data properties[], int count);
-int save_global_conf(char type, char* filename, char *command, char *key, char *value);
-int free_prop (prop_data properties[], int count);
-int hex2int(char c);
-void *get_buffer(int len);
-void *free_buffer(void *buffer, int len);
-int str2byte( unsigned char *str, int len, char *byte_out);
-
-struct wapi_config{
- u8 *ssid;
- size_t ssid_len;
-
- u8 *psk;
- size_t psk_len;
- u8 psk_bk[BK_LEN];
- int psk_set;
-
- int wapi_policy;
- int wpi_policy;
- int pairwise_cipher;
- int group_cipher;
- int key_mgmt;
-
- int proto;
- int auth_alg;
- char *cert_name;
- int disabled;
-};
-void wapi_config_free(struct wapi_config *config);
-struct wapi_config * wapi_config_read(const char *config_file);
-int change_cert_format(const char *cert_file, unsigned char *out_user, int len_user, unsigned char *out_asu, int len_asu);
-#endif
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_interface.h b/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_interface.h
deleted file mode 100755
index 2e82225..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/src/wapi/wapi_interface.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/** @file wapi_interface.h
- * @brief This header file contains data structures and function declarations of interface of this lib
- *
- * Copyright (C) 2001-2008, Iwncomm Ltd.
- */
-
-
-#ifndef _INTERFACE_INOUT_H_
-#define _INTERFACE_INOUT_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-typedef enum
-{
- AUTH_TYPE_NONE_WAPI = 0, /*no WAPI */
- AUTH_TYPE_WAPI, /*Certificate*/
- AUTH_TYPE_WAPI_PSK, /*Pre-PSK*/
-}AUTH_TYPE;
-
-typedef enum
-{
- KEY_TYPE_ASCII = 0, /*ascii */
- KEY_TYPE_HEX, /*HEX*/
-}KEY_TYPE;
-
-typedef struct
-{
- AUTH_TYPE authType; /*Authentication type*/
- union
- {
- struct
- {
- KEY_TYPE kt; /*Key type*/
- unsigned int kl; /*key length*/
- unsigned char kv[128];/*value*/
- };
- struct
- {
- unsigned char as[2048]; /*ASU Certificate*/
- unsigned char user[2048];/*User Certificate*/
- };
- }para;
-}CNTAP_PARA;
-
-typedef enum
-{
- CONN_ASSOC = 0,
- CONN_DISASSOC,
-}CONN_STATUS;
-typedef struct
-{
- unsigned char v[6];
- unsigned char pad[2];
-}MAC_ADDRESS;
-
-/**
- * WAI_CNTAPPARA_SET - Set WIE to driver
- * @CNTAP_PARA: Pointer to struct CNTAP_PARA
- * Returns: 0 on success, -1 on failure
- *
- * set WIE to driver
- *
- */
-int WAI_CNTAPPARA_SET(const CNTAP_PARA* pPar, char *ifname);
-
-void WAI_Msg_Input(CONN_STATUS action, const MAC_ADDRESS* pBSSID, const MAC_ADDRESS* pLocalMAC, unsigned char *assoc_ie, unsigned char assoc_ie_len);
-
-unsigned long WAI_RX_packets_indication(const u8* pbuf, int length);
-
-int WIFI_lib_init();
-
-int WIFI_lib_exit();
-
-int WIFI_lib_initialized();
-
-int lib_get_wapi_state(void);
-
-
-
-typedef void (*OS_timer_expired)(const int pdata);
-void* OS_timer_setup(int deltaTimer, int repeated, OS_timer_expired pfunction, const void* pdata);
-void OS_timer_clean(void* pTimer);
-void WIFI_Action_Deauth();
-unsigned long WIFI_TX_packet(const char* pbuf, int length);
-int WIFI_unicast_key_set(const char* pKeyValue, int keylength, int key_idx);
-int WIFI_group_key_set(const unsigned char* pKeyValue, int keylength, int key_idx, const unsigned char* keyIV);
-int WIFI_WAI_IE_set(const unsigned char* pbuf, int length);
-unsigned char WIFI_get_rand_byte();
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _INTERFACE_INOUT_H_ */
-
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/.config b/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/.config
index 8f89787..0199bde 100755
--- a/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/.config
+++ b/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/.config
@@ -373,7 +373,7 @@
# Add support for new DBus control interface
# (fi.w1.hostap.wpa_supplicant1)
-CONFIG_CTRL_IFACE_DBUS_NEW=y
+#CONFIG_CTRL_IFACE_DBUS_NEW=y
# Add introspection support for new DBus control interface
CONFIG_CTRL_IFACE_DBUS_INTRO=y
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/blacklist.c b/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/blacklist.c
deleted file mode 100755
index 2f32644..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/blacklist.c
+++ /dev/null
@@ -1,221 +0,0 @@
-/*
- * wpa_supplicant - Temporary BSSID blacklist
- * Copyright (c) 2003-2007, Jouni Malinen <j@w1.fi>
- *
- * This software may be distributed under the terms of the BSD license.
- * See README for more details.
- */
-
-#include "includes.h"
-
-#include "common.h"
-#include "wpa_supplicant_i.h"
-#include "blacklist.h"
-
-/**
- * wpa_blacklist_get - Get the blacklist entry for a BSSID
- * @wpa_s: Pointer to wpa_supplicant data
- * @bssid: BSSID
- * Returns: Matching blacklist entry for the BSSID or %NULL if not found
- */
-struct wpa_blacklist * wpa_blacklist_get(struct wpa_supplicant *wpa_s,
- const u8 *bssid)
-{
- struct wpa_blacklist *e;
-
- if (wpa_s == NULL || bssid == NULL)
- return NULL;
-
- if (wpa_s->current_ssid &&
- wpa_s->current_ssid->was_recently_reconfigured) {
- wpa_blacklist_clear(wpa_s);
- wpa_s->current_ssid->was_recently_reconfigured = false;
- return NULL;
- }
-
- wpa_blacklist_update(wpa_s);
-
- e = wpa_s->blacklist;
- while (e) {
- if (os_memcmp(e->bssid, bssid, ETH_ALEN) == 0)
- return e;
- e = e->next;
- }
-
- return NULL;
-}
-
-
-/**
- * wpa_blacklist_add - Add an BSSID to the blacklist
- * @wpa_s: Pointer to wpa_supplicant data
- * @bssid: BSSID to be added to the blacklist
- * Returns: Current blacklist count on success, -1 on failure
- *
- * This function adds the specified BSSID to the blacklist or increases the
- * blacklist count if the BSSID was already listed. It should be called when
- * an association attempt fails either due to the selected BSS rejecting
- * association or due to timeout.
- *
- * This blacklist is used to force %wpa_supplicant to go through all available
- * BSSes before retrying to associate with an BSS that rejected or timed out
- * association. It does not prevent the listed BSS from being used; it only
- * changes the order in which they are tried.
- */
-int wpa_blacklist_add(struct wpa_supplicant *wpa_s, const u8 *bssid)
-{
- struct wpa_blacklist *e;
- struct os_reltime now;
-
- if (wpa_s == NULL || bssid == NULL)
- return -1;
-
- e = wpa_blacklist_get(wpa_s, bssid);
- os_get_reltime(&now);
- if (e) {
- e->blacklist_start = now;
- e->count++;
- if (e->count > 5)
- e->timeout_secs = 1800;
- else if (e->count == 5)
- e->timeout_secs = 600;
- else if (e->count == 4)
- e->timeout_secs = 120;
- else if (e->count == 3)
- e->timeout_secs = 60;
- else
- e->timeout_secs = 10;
- wpa_printf(MSG_INFO, "BSSID " MACSTR
- " blacklist count incremented to %d, blacklisting for %d seconds",
- MAC2STR(bssid), e->count, e->timeout_secs);
- return e->count;
- }
-
- e = os_zalloc(sizeof(*e));
- if (e == NULL)
- return -1;
- os_memcpy(e->bssid, bssid, ETH_ALEN);
- e->count = 1;
- e->timeout_secs = 10;
- e->blacklist_start = now;
- e->next = wpa_s->blacklist;
- wpa_s->blacklist = e;
- wpa_printf(MSG_DEBUG, "Added BSSID " MACSTR
- " into blacklist, blacklisting for %d seconds",
- MAC2STR(bssid), e->timeout_secs);
-
- return e->count;
-}
-
-
-/**
- * wpa_blacklist_del - Remove an BSSID from the blacklist
- * @wpa_s: Pointer to wpa_supplicant data
- * @bssid: BSSID to be removed from the blacklist
- * Returns: 0 on success, -1 on failure
- */
-int wpa_blacklist_del(struct wpa_supplicant *wpa_s, const u8 *bssid)
-{
- struct wpa_blacklist *e, *prev = NULL;
-
- if (wpa_s == NULL || bssid == NULL)
- return -1;
-
- e = wpa_s->blacklist;
- while (e) {
- if (os_memcmp(e->bssid, bssid, ETH_ALEN) == 0) {
- if (prev == NULL) {
- wpa_s->blacklist = e->next;
- } else {
- prev->next = e->next;
- }
- wpa_printf(MSG_DEBUG, "Removed BSSID " MACSTR " from "
- "blacklist", MAC2STR(bssid));
- os_free(e);
- return 0;
- }
- prev = e;
- e = e->next;
- }
- return -1;
-}
-
-
-/**
- * wpa_blacklist_is_blacklisted - Check the blacklist status of a BSS
- * @wpa_s: Pointer to wpa_supplicant data
- * @bssid: BSSID to be checked
- * Returns: count if BSS is currently considered to be blacklisted, 0 otherwise
- */
-int wpa_blacklist_is_blacklisted(struct wpa_supplicant *wpa_s, const u8 *bssid)
-{
- struct wpa_blacklist *e;
- struct os_reltime now;
-
- e = wpa_blacklist_get(wpa_s, bssid);
- if (!e)
- return 0;
- os_get_reltime(&now);
- if (os_reltime_expired(&now, &e->blacklist_start, e->timeout_secs))
- return 0;
- return e->count;
-}
-
-
-/**
- * wpa_blacklist_clear - Clear the blacklist of all entries
- * @wpa_s: Pointer to wpa_supplicant data
- */
-void wpa_blacklist_clear(struct wpa_supplicant *wpa_s)
-{
- struct wpa_blacklist *e, *prev;
-
- e = wpa_s->blacklist;
- wpa_s->blacklist = NULL;
- while (e) {
- prev = e;
- e = e->next;
- wpa_printf(MSG_DEBUG, "Removed BSSID " MACSTR " from "
- "blacklist (clear)", MAC2STR(prev->bssid));
- os_free(prev);
- }
-}
-
-
-/**
- * wpa_blacklist_update - Update the entries in the blacklist,
- * deleting entries that have been expired for over an hour.
- * @wpa_s: Pointer to wpa_supplicant data
- */
-void wpa_blacklist_update(struct wpa_supplicant *wpa_s)
-{
- struct wpa_blacklist *e, *prev = NULL;
- struct os_reltime now;
-
- if (!wpa_s)
- return;
-
- e = wpa_s->blacklist;
- os_get_reltime(&now);
- while (e) {
- if (os_reltime_expired(&now, &e->blacklist_start,
- e->timeout_secs + 3600)) {
- struct wpa_blacklist *to_delete = e;
-
- if (prev) {
- prev->next = e->next;
- e = prev->next;
- } else {
- wpa_s->blacklist = e->next;
- e = wpa_s->blacklist;
- }
- wpa_printf(MSG_INFO, "Removed BSSID " MACSTR
- " from blacklist (expired)",
- MAC2STR(to_delete->bssid));
- os_free(to_delete);
- } else {
- prev = e;
- e = e->next;
- }
- }
-}
diff --git a/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/blacklist.h b/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/blacklist.h
deleted file mode 100755
index a1c60d5..0000000
--- a/src/lynq/packages/thirdpart/lynq-wg870/wpa_supplicant/blacklist.h
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * wpa_supplicant - Temporary BSSID blacklist
- * Copyright (c) 2003-2007, Jouni Malinen <j@w1.fi>
- *
- * This software may be distributed under the terms of the BSD license.
- * See README for more details.
- */
-
-#ifndef BLACKLIST_H
-#define BLACKLIST_H
-
-struct wpa_blacklist {
- struct wpa_blacklist *next;
- u8 bssid[ETH_ALEN];
- int count;
- /* Time of most recent blacklist event. */
- struct os_reltime blacklist_start;
- /*
- * Number of seconds after blacklist_start that the entry will be
- * considered blacklisted.
- */
- int timeout_secs;
-};
-
-struct wpa_blacklist * wpa_blacklist_get(struct wpa_supplicant *wpa_s,
- const u8 *bssid);
-int wpa_blacklist_add(struct wpa_supplicant *wpa_s, const u8 *bssid);
-int wpa_blacklist_del(struct wpa_supplicant *wpa_s, const u8 *bssid);
-int wpa_blacklist_is_blacklisted(struct wpa_supplicant *wpa_s, const u8 *bssid);
-void wpa_blacklist_clear(struct wpa_supplicant *wpa_s);
-void wpa_blacklist_update(struct wpa_supplicant *wpa_s);
-
-#endif /* BLACKLIST_H */
diff --git a/src/multimedia/audio-misc/audio-ctrl-service/audio_big_sw/audio-ctrl-service.c b/src/multimedia/audio-misc/audio-ctrl-service/audio_big_sw/audio-ctrl-service.c
old mode 100644
new mode 100755
index a510514..6ae29eb
--- a/src/multimedia/audio-misc/audio-ctrl-service/audio_big_sw/audio-ctrl-service.c
+++ b/src/multimedia/audio-misc/audio-ctrl-service/audio_big_sw/audio-ctrl-service.c
@@ -691,7 +691,7 @@
if (ret) {
return ret;
}
-
+ updateVolume(XML_SPEECH_VOLUME);
return 0;
}
@@ -711,7 +711,7 @@
g_is_speech_on = enable;
input_device = AUDIO_DEVICE_IN_BUILTIN_MIC;
- g_current_output_device = AUDIO_DEVICE_OUT_SPEAKER;
+ g_current_output_device = AUDIO_DEVICE_OUT_TBOX_HANDSFREE;
do {
if (enable || !g_record_buf) {
diff --git a/src/multimedia/libspeech_drv/audio_big_sw/AudioSpeechEnhancement/ENH_Parser/SpeechParser.cpp b/src/multimedia/libspeech_drv/audio_big_sw/AudioSpeechEnhancement/ENH_Parser/SpeechParser.cpp
old mode 100644
new mode 100755
index 1aa2980..e2574c2
--- a/src/multimedia/libspeech_drv/audio_big_sw/AudioSpeechEnhancement/ENH_Parser/SpeechParser.cpp
+++ b/src/multimedia/libspeech_drv/audio_big_sw/AudioSpeechEnhancement/ENH_Parser/SpeechParser.cpp
@@ -50,7 +50,8 @@
"Tty_HCO_Handset",
"Tty_HCO_Handsfree",
"Tty_VCO_Handset",
- "Tty_VCO_Handsfree"
+ "Tty_VCO_Handsfree",
+ "TBOX_Handsfree"
};
//--------------------------------------------------------------------------------
@@ -577,6 +578,10 @@
idxSphProfile = PARSER_SPEECH_PROFILE_USB_HEADSET;
break;
+ case AUDIO_DEVICE_OUT_TBOX_HANDSFREE:
+ idxSphProfile = PARSER_SPEECH_PROFILE_TBOX_HANDSFREE;
+ break;
+
default:
if (getFeatureOn(SPEECH_FEATURE_HAC, speechParserAttribute.speechFeatureOn)) {
idxSphProfile = PARSER_SPEECH_PROFILE_HAC;
diff --git a/src/multimedia/libspeech_drv/audio_big_sw/AudioSpeechEnhancement/ENH_Parser/SpeechParser.h b/src/multimedia/libspeech_drv/audio_big_sw/AudioSpeechEnhancement/ENH_Parser/SpeechParser.h
old mode 100644
new mode 100755
index c0a7649..a374a08
--- a/src/multimedia/libspeech_drv/audio_big_sw/AudioSpeechEnhancement/ENH_Parser/SpeechParser.h
+++ b/src/multimedia/libspeech_drv/audio_big_sw/AudioSpeechEnhancement/ENH_Parser/SpeechParser.h
@@ -153,8 +153,9 @@
PARSER_SPEECH_PROFILE_TTY_HCO_HANDSFREE = 17,
PARSER_SPEECH_PROFILE_TTY_VCO_HANDSET = 18,
PARSER_SPEECH_PROFILE_TTY_VCO_HANDSFREE = 19,
+ PARSER_SPEECH_PROFILE_TBOX_HANDSFREE = 20,
- PARSER_SPEECH_PROFILE_MAX_NUM = 20
+ PARSER_SPEECH_PROFILE_MAX_NUM = 21
};
typedef struct _PARSER_SPEECH_PARAM_SUPPORT_STRUCT {
diff --git a/src/multimedia/libspeech_drv/audio_big_sw/hardware/src/AudioALSAGainController.cpp b/src/multimedia/libspeech_drv/audio_big_sw/hardware/src/AudioALSAGainController.cpp
old mode 100644
new mode 100755
index b0c0477..3dd7b9d
--- a/src/multimedia/libspeech_drv/audio_big_sw/hardware/src/AudioALSAGainController.cpp
+++ b/src/multimedia/libspeech_drv/audio_big_sw/hardware/src/AudioALSAGainController.cpp
@@ -357,7 +357,7 @@
// get gain device
GAIN_DEVICE gainDevice = GAIN_DEVICE_NONE;
gainDevice = getGainDevice(devices);
-
+ ALOGD("%s(), gainDevice = %d", __FUNCTION__, gainDevice);
// set digital gain
//setAMPGain(ampgain, AMP_CONTROL_POINT, device);
uint8_t digitalDegradeDb = mGainTable.nonSceneGain.speechGain[mBand][mNetwork][gainDevice][index].digital;
@@ -406,7 +406,13 @@
gainDevice = GAIN_DEVICE_SPEAKER;
} else {
/* output device */
+ if (devices & AUDIO_DEVICE_OUT_SPEAKER) {
gainDevice = GAIN_DEVICE_SPEAKER;
+ } else if (devices & AUDIO_DEVICE_OUT_TBOX_HANDSFREE) {
+ gainDevice = GAIN_DEVICE_SPEAKER_TBOX;
+ } else {
+ gainDevice = GAIN_DEVICE_SPEAKER;
+ }
}
//ALOGG("%s(), input devices = 0x%x, return gainDevice = %d", __FUNCTION__, devices, gainDevice);
diff --git a/src/multimedia/libspeech_drv/audio_big_sw/os/system/audio-base-utils.h b/src/multimedia/libspeech_drv/audio_big_sw/os/system/audio-base-utils.h
old mode 100644
new mode 100755
index 5d44423..9b3c373
--- a/src/multimedia/libspeech_drv/audio_big_sw/os/system/audio-base-utils.h
+++ b/src/multimedia/libspeech_drv/audio_big_sw/os/system/audio-base-utils.h
@@ -119,6 +119,7 @@
AUDIO_DEVICE_OUT_USB_HEADSET |
AUDIO_DEVICE_OUT_HEARING_AID |
AUDIO_DEVICE_OUT_ECHO_CANCELLER |
+ AUDIO_DEVICE_OUT_TBOX_HANDSFREE |
AUDIO_DEVICE_OUT_DEFAULT,
AUDIO_DEVICE_OUT_ALL_A2DP = AUDIO_DEVICE_OUT_BLUETOOTH_A2DP |
diff --git a/src/multimedia/libspeech_drv/audio_big_sw/os/system/audio-base.h b/src/multimedia/libspeech_drv/audio_big_sw/os/system/audio-base.h
old mode 100644
new mode 100755
index 7121af6..e9f08b0
--- a/src/multimedia/libspeech_drv/audio_big_sw/os/system/audio-base.h
+++ b/src/multimedia/libspeech_drv/audio_big_sw/os/system/audio-base.h
@@ -322,6 +322,7 @@
AUDIO_DEVICE_OUT_USB_HEADSET = 0x4000000u,
AUDIO_DEVICE_OUT_HEARING_AID = 0x8000000u,
AUDIO_DEVICE_OUT_ECHO_CANCELLER = 0x10000000u,
+ AUDIO_DEVICE_OUT_TBOX_HANDSFREE = 0x20000000u,
AUDIO_DEVICE_OUT_DEFAULT = 0x40000000u, // BIT_DEFAULT
AUDIO_DEVICE_IN_COMMUNICATION = 0x80000001u, // BIT_IN | 0x1
diff --git a/src/telephonyware/3.0/atcid/atci/src/Makefile b/src/telephonyware/3.0/atcid/atci/src/Makefile
index 77f997a..36e2eae 100755
--- a/src/telephonyware/3.0/atcid/atci/src/Makefile
+++ b/src/telephonyware/3.0/atcid/atci/src/Makefile
@@ -7,6 +7,10 @@
FLAGS += -DLYNQ_ATSVC
endif
+ifeq ($(strip $(MOBILETEK_ATCID_CFG)), WOM)
+ FLAGS += -DCONFIG_WOM_ATCID
+endif
+
INCLUDES := -I. \
-I./platform \
-I./lynq-private \
@@ -55,4 +59,4 @@
.PHONY: clean
clean:
$(warning "makefile atcid clean")
- rm -rf $(OBJS) $(CXXOBJS) $(TARGET)
\ No newline at end of file
+ rm -rf $(OBJS) $(CXXOBJS) $(TARGET)
diff --git a/src/telephonyware/3.0/atcid/atci/src/atcid.c b/src/telephonyware/3.0/atcid/atci/src/atcid.c
index 0eaff4f..54f1c5e 100755
--- a/src/telephonyware/3.0/atcid/atci/src/atcid.c
+++ b/src/telephonyware/3.0/atcid/atci/src/atcid.c
@@ -94,6 +94,27 @@
listenVCOM = 1;
}
#else
+#ifdef CONFIG_WOM_ATCID
+ /*dongyu@2023.5.2 VCOM port as AT port in WOM platform meta mode, ELT port as AT port in normal mode start*/
+ snprintf(serial.devicename[0], strlen(TTY_GS0) + 1, "%s", TTY_GS0);
+ int listenVCOM = 1;
+ int bootMode = readSys_int(BOOTMODE_PATH);
+
+ LOGATCI(LOG_INFO, "bootMode = %d", bootMode);
+
+ if(bootMode == META_BOOT)
+ {
+ LOGATCI(LOG_INFO, "meta mode for CPE/ IVT, listen VCOM");
+ listenVCOM = 0;
+ }
+ else if(bootMode == NORMAL_BOOT)
+ {
+ LOGATCI(LOG_INFO, "normal mode for CPE/ IVT, listen ELT");
+ snprintf(serial.devicename[0], strlen(TTY_GS3) + 1, "%s", TTY_GS3);
+ listenVCOM = 1;
+ }
+ /*dongyu@2023.4.2 VCOM port as AT port in WOM platform meta mode, ELT port as AT port in normal mode end*/
+#else
//for CPE / IVT listen TTYGS0
snprintf(serial.devicename[0], strlen(TTY_GS0) + 1, "%s", TTY_GS0);
int listenVCOM = 1; //listen ETS port as default
@@ -106,6 +127,7 @@
listenVCOM = 0;
}
#endif
+#endif
if (listenVCOM == 1) {
for (i = 0; i < MAX_DEVICE_VCOM_NUM; i++) {
diff --git a/src/telephonyware/3.0/atcid/atci/src/lynq-private/lynq_atsvc_plugin.xml b/src/telephonyware/3.0/atcid/atci/src/lynq-private/lynq_atsvc_plugin.xml
index f4a3de8..3acb0f7 100755
--- a/src/telephonyware/3.0/atcid/atci/src/lynq-private/lynq_atsvc_plugin.xml
+++ b/src/telephonyware/3.0/atcid/atci/src/lynq-private/lynq_atsvc_plugin.xml
@@ -6,7 +6,7 @@
/>
<module name="/lib64/liblynq-gnss.so"
register="lynq_register_gnss"
- cmd="AT+CGPS;AT+CGPSNMEA"
+ cmd="AT+CGPS;AT+CGPSNMEA;AT+CGPSINFO"
/>
<module name="/lib64/liblynq-at-common.so"
register="lynq_register_at_common"