修复PCIE下模组的问题

This commit is contained in:
ling 2024-04-11 09:10:46 +08:00
parent 0eccd09d4c
commit 8af7484906
7 changed files with 40 additions and 31 deletions

View File

@ -28,9 +28,10 @@
| 移远通信 | RG200U-CNDONGLE版 | 紫光展锐 | USB | ECMMBIMRNDISNCM |
| 移远通信 | RM500U-CN | 紫光展锐 | USB | ECMMBIMRNDISNCM |
| 移远通信 | RM500Q-CN | 高通 | USB | RMNETECMMBIMRNDISNCM |
| 移远通信 | RM500Q-AE | 高通 | USB | RMNETECMMBIMRNDISNCM |
| 移远通信 | RM500Q-GL | 高通 | USB | RMNETECMMBIMRNDISNCM |
| 移远通信 | RM502Q-GL | 高通 | USB | RMNETECMMBIMRNDISNCM |
| 移远通信 | RM502Q-AE | 高通 | USB | RMNETECMMBIMRNDISNCM |
| 移远通信 | RM502Q-GL | 高通 | USB | RMNETECMMBIMRNDISNCM |
| 移远通信 | RM520N-CN | 高通 | USB | RMNETECMMBIMRNDISNCM |
| 移远通信 | RM520N-GL | 高通 | USB | RMNETECMMBIMRNDISNCM |
| 移远通信 | RM500Q-GL | 高通 | PCIE | RMNETMBIM |

View File

@ -12,6 +12,11 @@ source "/usr/share/modem/modem_util.sh"
#始终确保存在运行目录
mkdir -m 0755 -p "${MODEM_RUNDIR}"
初始化模组配置
[[ "${INTERFACE}" = *"ip6tnl0"* ]] && {
sh "${SCRIPT_DIR}/modem_init.sh"
}
if [[ "${INTERFACE}" = *"usb"* ]] || [[ "${INTERFACE}" = *"wwan"* ]] || [[ "${INTERFACE}" = *"eth"* ]]; then
#配置网络设备
m_set_network_device "${ACTION}" "${INTERFACE}" "/sys${DEVPATH}" "usb"

View File

@ -10,7 +10,8 @@ SCRIPT_DIR="/usr/share/modem"
start_service()
{
/bin/sh ${SCRIPT_DIR}/modem_init.sh
# 暂时弃用
# /bin/sh ${SCRIPT_DIR}/modem_init.sh
# procd_open_instance #启动实例
# procd_set_param command /bin/sh /usr/share/modem/modem_init.sh
# procd_set_param respawn # 定义respawn参数告知procd当task程序退出后尝试进行重启

View File

@ -324,7 +324,7 @@ fibocom_get_sim_status()
{
local sim_status
case $1 in
"") sim_status="miss" ;;
"") sim_status="unknown" ;;
*"ERROR"*) sim_status="miss" ;;
*"READY"*) sim_status="ready" ;;
*"SIM PIN"*) sim_status="MT is waiting SIM PIN to be given" ;;
@ -363,6 +363,9 @@ fibocom_sim_info()
#SIM StatusSIM状态
at_command="AT+CPIN?"
sim_status_flag=$(sh ${SCRIPT_DIR}/modem_at.sh ${at_port} ${at_command} | grep "+CPIN: ")
[ -z "$sim_status_flag" ] && {
sim_status_flag=$(sh ${SCRIPT_DIR}/modem_at.sh ${at_port} ${at_command} | grep "+CME")
}
sim_status=$(fibocom_get_sim_status "$sim_status_flag")
if [ "$sim_status" != "ready" ]; then

View File

@ -8,9 +8,6 @@ source "${SCRIPT_DIR}/modem_util.sh"
#模组配置初始化
modem_init()
{
#防止开机时存在
# [ -d "$MODEM_RUNDIR" ] && rm -rf "${MODEM_RUNDIR}"
m_log "info" "Clearing all modem configurations"
#清空模组配置
local modem_no

View File

@ -5,7 +5,7 @@
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"unisoc",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["ecm","mbim","rndis","ncm"]
},
@ -13,7 +13,7 @@
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"unisoc",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["ecm","mbim","rndis","ncm"]
},
@ -21,7 +21,7 @@
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"qualcomm",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
@ -29,7 +29,7 @@
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"qualcomm",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
@ -37,15 +37,7 @@
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"qualcomm",
"network_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
"rm502q-gl":{
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"qualcomm",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
@ -53,7 +45,15 @@
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"qualcomm",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
"rm502q-gl":{
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"qualcomm",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
@ -61,7 +61,7 @@
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"qualcomm",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
@ -69,7 +69,7 @@
"manufacturer_id":"2c7c",
"manufacturer":"quectel",
"platform":"qualcomm",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
@ -77,7 +77,7 @@
"manufacturer_id":"2cb7",
"manufacturer":"fibocom",
"platform":"unisoc",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["ecm","mbim","rndis","ncm"]
},
@ -85,7 +85,7 @@
"manufacturer_id":"0e8d",
"manufacturer":"fibocom",
"platform":"mediatek",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"3",
"modes":["rndis"]
},
@ -93,7 +93,7 @@
"manufacturer_id":"2cb7",
"manufacturer":"fibocom",
"platform":"qualcomm",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
},
@ -101,7 +101,7 @@
"manufacturer_id":"2cb7",
"manufacturer":"fibocom",
"platform":"qualcomm",
"network_interface":"usb",
"data_interface":"usb",
"define_connect":"1",
"modes":["qmi","gobinet","ecm","mbim","rndis","ncm"]
}
@ -110,28 +110,28 @@
"rm500q-gl":{
"manufacturer":"quectel",
"platform":"qualcomm",
"network_interface":"pcie",
"data_interface":"pcie",
"define_connect":"1",
"modes":["qmi","gobinet","mbim"]
},
"rm502q-gl":{
"manufacturer":"fibocom",
"platform":"qualcomm",
"network_interface":"pcie",
"data_interface":"pcie",
"define_connect":"1",
"modes":["qmi","gobinet","mbim"]
},
"fm350-gl":{
"manufacturer":"fibocom",
"platform":"mediatek",
"network_interface":"pcie",
"data_interface":"pcie",
"define_connect":"1",
"modes":["mbim"]
},
"fm150-ae":{
"manufacturer":"fibocom",
"platform":"qualcomm",
"network_interface":"pcie",
"data_interface":"pcie",
"define_connect":"1",
"modes":["qmi","mbim"]
}

View File

@ -701,6 +701,8 @@ m_set_modem_port()
#不存在串口,返回
[ -z "${all_port}" ] && return
#删除原串口
uci -q del modem.modem${modem_no}.ports
#设置串口
local port_cache
for port_path in $all_port; do
@ -710,7 +712,7 @@ m_set_modem_port()
#跳过重复的串口
[ "$port" = "$port_cache" ] && continue
#跳过重复的串口
#跳过多余串口PCIE
[[ "$port" = *"mhi_uci_q"* ]] && continue
[[ "$port" = *"mhi_cntrl_q"* ]] && continue