RK3588 Android12 广和通L716 4G模块调试记录
创始人
2025-06-01 17:59:46

调试前先找模块厂获取相关资料

Kernel修改:

  1. 供电引脚,我是自己写的驱动供电,也可用RK的参考配置来控制,把原理图对应角位配置上就行。

rk_modem: rk-modem {
compatible="4g-modem-platdata";
pinctrl-names = "default";
pinctrl-0 = <<e_vbat <e_power_en <e_reset>;
4G,vbat-gpio = <&gpio4 RK_PD0 GPIO_ACTIVE_HIGH>;
4G,power-gpio = <&gpio4 RK_PC6 GPIO_ACTIVE_LOW>;
4G,reset-gpio = <&gpio4 RK_PD4 GPIO_ACTIVE_LOW>;
status = "okay";
};
  1. 添加模块VID,PID

kernel-5.10:
--- a/drivers/usb/serial/option.c
+++ b/drivers/usb/serial/option.c
@@ -97,6 +97,18 @@ static void option_instat_callback(struct urb *urb);#define YISO_VENDOR_ID                         0x0EAB#define YISO_PRODUCT_U893                      0xC893+/* Fibocom products */
+#define FIBOCOM_VENDOR_ID                      0x2cb7
+#define FIBOCOM_PRODUCT_L71X           0x0001
+
+#define FIBOCOM_USB_VENDOR_AND_INTERFACE_INFO(vend, cl, sc, pr) \
+.match_flags = USB_DEVICE_ID_MATCH_INT_INFO \
+| USB_DEVICE_ID_MATCH_VENDOR, \
+.idVendor = (vend), \
+.bInterfaceClass = (cl), \
+.bInterfaceSubClass = (sc), \
+.bInterfaceProtocol = (pr)
+/** NOVATEL WIRELESS PRODUCTS*
@@ -1873,6 +1885,11 @@ static const struct usb_device_id option_ids[] = {{ USB_VENDOR_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff, 0x02, 0x05) },{ USB_VENDOR_AND_INTERFACE_INFO(ZTE_VENDOR_ID, 0xff, 0x86, 0x10) },+       { FIBOCOM_USB_VENDOR_AND_INTERFACE_INFO(FIBOCOM_VENDOR_ID, 0xff, 0xff, 0xff) },
+       { FIBOCOM_USB_VENDOR_AND_INTERFACE_INFO(FIBOCOM_VENDOR_ID, 0x0a, 0x00, 0xff) },
+       { USB_DEVICE_AND_INTERFACE_INFO(0x19d2, 0x0256, 0xff, 0xff, 0xff) },
+       { USB_DEVICE_AND_INTERFACE_INFO(0x19d2, 0x0579, 0xff, 0xff, 0xff) },
+{ USB_DEVICE(BENQ_VENDOR_ID, BENQ_PRODUCT_H10) },{ USB_DEVICE(DLINK_VENDOR_ID, DLINK_PRODUCT_DWM_652) },{ USB_DEVICE(ALINK_VENDOR_ID, DLINK_PRODUCT_DWM_652_U5) }, /* Yes, ALINK_VENDOR_ID */
@@ -2188,6 +2205,16 @@ static int option_probe(struct usb_serial *serial,if (iface_desc->bInterfaceClass == USB_CLASS_MASS_STORAGE)return -ENODEV;+       if(serial->dev->descriptor.idVendor == FIBOCOM_VENDOR_ID &&
+               serial->dev->descriptor.idProduct == FIBOCOM_PRODUCT_L71X &&
+               serial->interface->cur_altsetting->desc.bInterfaceClass == 0x7)
+               return -ENODEV;
+
+       if(serial->dev->descriptor.idVendor == ZTE_VENDOR_ID &&
+               serial->dev->descriptor.idProduct == 0x0579 &&
+               serial->interface->cur_altsetting->desc.bInterfaceClass == 0x6)
+               return -ENODEV;
+/** Don't bind reserved interfaces (like network ones) which often have* the same class/subclass/protocol as the serial interfaces.  Look at
  1. 内核编译配置项

平台已默认打开配置,按如下配置在检查下

CONFIG_PPP=y
CONFIG_PPP_MULTILINK=y
CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=y
CONFIG_PPP_SYNC_TTY=y
CONFIG_PPP_DEFLATE=y
CONFIG_PPP_BSDCOMP=y
  1. 以上修改完成后编译烧录进机器查看是否生成对应设备

console:/ # lsusb                                                              
Bus 006 Device 003: ID 2cb7:0001console:/ # ifconfig  
eth1      Link encap:Ethernet  HWaddr 34:4b:50:00:00:00  Driver cdc_etherUP BROADCAST MULTICAST  MTU:1500  Metric:1RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 TX bytes:0 console:/ # ls /dev/ttyUSB*                                                    
/dev/ttyUSB0  /dev/ttyUSB1  /dev/ttyUSB2  /dev/ttyUSB3
  1. 问题排查:

如未生成对应节点先排查供电是否正常。

在排查主控对应USB phy节点是否打开

模块需保证 VBUS 信号连接到 5V 供电,若此信号悬空,USB 口无法正常枚举

Android修改:

1.启动ril进程

hardware/ril
--- a/rild/rild.rc
+++ b/rild/rild.rc
@@ -1,5 +1,6 @@
-service vendor.ril-daemon /vendor/bin/hw/rild
+service ril-daemon /vendor/bin/hw/rild -l /vendor/lib64/libreference-ril-l716.soclass main
-    user radio
-    group radio cache inet misc audio log readproc wakelock
-    capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
+    socket rild stream 660 root radio
+    socket rild-debug stream 660 radio system
+    user root
+    group radio cache inet misc audio sdcard_rw log启动rild进程加载对应ril库
-l 指定 RIL 库加载路径

2.打开系统4G服务

device/rockchip/common/BoardConfig.mk
BOARD_HAS_RK_4G_MODEM ?= true

3.打开BOARD_HAS_RK_4G_MODEM选项后会有一些报错,添加如下补丁:(如打开宏没有报错不用添加下面补丁,rk3568可以直接编译,目前发现rk3588 android12会报错)

/vendor/rockchip/common:
--- a/phone/phone.mk
+++ b/phone/phone.mk
@@ -26,8 +26,8 @@ PRODUCT_PACKAGES += \chatPRODUCT_PROPERTY_OVERRIDES +=ro.boot.noril=false
-else
-PRODUCT_PROPERTY_OVERRIDES +=ro.boot.noril=true
+# else
+# PRODUCT_PROPERTY_OVERRIDES +=ro.boot.noril=trueendif
/device/rockchip/common:
--- a/modules/4g_modem.mk
+++ b/modules/4g_modem.mk
@@ -38,8 +38,8 @@ PRODUCT_PROPERTY_OVERRIDES += \vendor.rild.libpath=/vendor/lib64/librk-ril.soPRODUCT_COPY_FILES += \
-    $(LOCAL_PATH)/4g_modem/bin64/dhcpcd:$(TARGET_COPY_OUT_VENDOR)/bin/dhcpcd \
-    $(LOCAL_PATH)/4g_modem/lib64/librk-ril.so:$(TARGET_COPY_OUT_VENDOR)/lib64/librk-ril.so
+    $(LOCAL_PATH)/../4g_modem/bin64/dhcpcd:$(TARGET_COPY_OUT_VENDOR)/bin/dhcpcd \
+    $(LOCAL_PATH)/../4g_modem/lib64/librk-ril.so:$(TARGET_COPY_OUT_VENDOR)/lib64/librk-ril.so
hardware/interfaces:
--- a/compatibility_matrices/compatibility_matrix.6.xml
+++ b/compatibility_matrices/compatibility_matrix.6.xml
@@ -434,6 +434,11 @@android.hardware.radio
+        1.1
+        1.2
+        1.3
+        1.4
+        1.51.6IRadio
@@ -450,11 +455,20 @@slot1
+    
+       android.hardware.radio.deprecated
+        1.0
+        
+        IOemHook
+        slot1
+        
+        android.hardware.radio.config
+        1.01.1IRadioConfig

4.添加模块厂提供ril库编译并指定ril库路径

所需文件:libreference-ril-l716.so

ght_ril_config.ini

将文件拷贝到/device/rockchip/common/lib64目录

添加如下代码拷贝到系统

/device/rockchip/common:
--- a/modules/4g_modem.mk
+++ b/modules/4g_modem.mk
@@ -35,11 +35,12 @@ DEVICE_MANIFEST_FILE += device/rockchip/common/4g_modem/manifest.xmlifeq ($(strip $(TARGET_ARCH)), arm64)PRODUCT_PROPERTY_OVERRIDES += \
-    vendor.rild.libpath=/vendor/lib64/librk-ril.so
+    vendor.rild.libpath=/vendor/lib64/libreference-ril-l716.soPRODUCT_COPY_FILES += \
-    $(LOCAL_PATH)/4g_modem/bin64/dhcpcd:$(TARGET_COPY_OUT_VENDOR)/bin/dhcpcd \
-    $(LOCAL_PATH)/4g_modem/lib64/librk-ril.so:$(TARGET_COPY_OUT_VENDOR)/lib64/librk-ril.so
+    $(LOCAL_PATH)/../4g_modem/bin64/dhcpcd:$(TARGET_COPY_OUT_VENDOR)/bin/dhcpcd \
+    $(LOCAL_PATH)/../4g_modem/lib64/libreference-ril-l716.so:$(TARGET_COPY_OUT_VENDOR)/lib64/libreference-ril-l716.so \
+    $(LOCAL_PATH)/../4g_modem/lib64/ght_ril_config.ini:system/etc/ght_ril_config.inielsePRODUCT_PROPERTY_OVERRIDES += \vendor.rild.libpath=/vendor/lib/librk-ril.so

5.修改模块所需prop属性

device/rockchip/rk3588:
--- a/device.mk
+++ b/device.mk
@@ -82,6 +82,9 @@ PRODUCT_PROPERTY_OVERRIDES += \ro.ril.ecclist=112,911 \ro.opengles.version=196610 \wifi.interface=wlan0 \
+                rild.libargs=-d /dev/ttyUSB2 \
+                ril.fibocom.dialmode=1 \
+                ril.fibocom.NetifName=eth1 \
参数说明:
rild.libargs  AT指令端口,可询问模块厂或向端口发送AT指令可得知,一般只ttyUSB1 ttyUSB2
ril.fibocom.dialmode   拨号模式    / 0 : ppp 拨号, 1 : ECM 拨号 推荐使用ECM
ril.fibocom.NetifName   自定义拨号网卡,根据实际生成网卡填写

6.编译Android烧录

7.编译完成后查看系统属性是否已经设置成功

console:/ # getprop | grep ril                                                 
[init.svc.ril-daemon]: [running]
[init.svc_debug_pid.ril-daemon]: [505]
[ril.currentapntype]: [default]
[ril.fibocom.NetifName]: [eth1]
[ril.fibocom.dialmode]: [1]
[ril.fibocom.version]: [Fibocom_RIL_V12X.06.V1.0.7]
[ril.function.dataonly]: [1]
[rild.libargs]: [-d]
[ro.boot.noril]: [false]
[ro.boottime.ril-daemon]: [5861295027]
[ro.ril.ecclist]: [112,911]
[vendor.rild.libpath]: [/vendor/lib64/libreference-ril-l716.so]

7.1查看rild进程是否启动

console:/ # ps -ef | grep rild
root           505     1 0 10:03:39 ?     00:00:00 rild -l /vendor/lib64/libreference-ril-l716.so
root         19667  2210 3 10:43:59 ttyFIQ0 00:00:00 grep rild

7.2插入sim卡检测

输入AT指令到对应端口号查看是否检测到SIM卡

echo "AT+CPIN?" > /dev/ttyUSB2
cat /dev/ttyUSB2
CPIN: READY

7.3查看eth1节点是否获取到ip

7.4 ping网络测试

如有问题请确认ril库是否对应模块及Android版本,系统是否已经加载上了ril库

adb logcat –b radio –v time 抓取Log给模块厂帮忙分析。

相关内容

热门资讯

6.3股市早8点丨三天假发生了... 三天假发生了啥事?股市早8点 老沙自媒体2025年6月3日(周二)每日大道正道消息▊美股小涨北京时间...
绿通科技:拟现金收购大摩半导体... 【绿通科技筹划收购大摩半导体不低于51%股权】6月2日晚间,绿通科技公告,筹划现金收购江苏大摩半导体...
股市必读:爱博医疗(68805... 截至2025年5月30日收盘,爱博医疗(688050)报收于71.41元,下跌1.76%,换手率1....
销售会“提问”,再冷淡的客户,... 回复“9”限时领《9套销售话术资料包》 作者:Dora 在销售咨询过程中,“高效提问”不仅是获取客户...
原创 德... 2025年2月24日,恰逢俄乌冲突爆发三周年,德国也于前一天举行了新一轮的议会选举。在过去的三年中,...
明天沪主板新股海阳科技申购!聚... 明天,沪主板将迎来一家新股申购! 格隆汇获悉,海阳科技(603382)于6月3日申购,发行价格为11...
三一重工、山推股份谋求赴港上市... 本报(chinatimes.net.cn)记者李贝贝 上海报道工程机械龙头企业纷纷瞄准港股市场:5月...
2024跨境电商平台出海目的地... 今天分享的是:2024跨境电商平台出海目的地中东市场:行业呈现三足鼎立态势,物流和支付是竞争关键 报...
虎嗅【作·嗅之星】周榜第264... 作·嗅之星榜单,以周榜的形式,呈现每周新鲜出炉的优秀作品。2025年5月23日~2025年5月29日...
原创 美... 尊敬的审阅人员和品鉴读者:本文是经过严格查阅相关权威文献和资料。 全文数据有据可依,可供查证。 美...
原创 美... 前言 中国商务部那间熟悉的发布厅里,发言人拿出一摞资料,语气格外严肃。 说好了一起守规矩,结果呢?...
原创 节... 不出意外,大家的仓位越来越轻了。 如果目前的位置是今年的顶部,为什么要想方设法驱赶散户离场呢?大家都...
美股下跌,钢铁股大涨!金价重回... 6月2日,美国三大股指开盘走低,截至22:40发稿,道指跌0.5%,标普500指数跌0.25%,纳斯...
深康佳A:拟择机出售武汉天源不... 新京报贝壳财经讯 深康佳A6月2日晚间公告,目前公司持有武汉天源(301127)股份合计8618.4...
深夜,利空!直线跳水! 深夜利... 美国经济传来利空信号。今晚,美股三大指数盘初集体跳水,道指一度跌超1%。消息面上,ISM公布的数据显...
这个账单,决定后半辈子幸福… ... 图:Hiroki Kawanabe 第一波延迟退休的人出来了。 挺多人晒出来的退休年龄数字,已经有零...
国际金价年内上涨超25%5月纳... 【#国际金价年内上涨超25%##5月纳指涨幅接近10%#】首先来看美股上周交易的情况。受美欧贸易谈判...
深夜!美股下跌,黄金白银原油飙... 北京时间6月2日晚间,美股低开低走。截至22:02,道琼斯跌0.89%,纳斯达克跌0.51%,标普5...
德国银行高管:美政府政策频繁变... 根据德国《商报》6月2日刊发的专访文章,德国国家开发银行复兴信贷银行董事会主席斯特凡·温特尔斯指出,...
理想一季度销量、营收同比有所增... 理想汽车公布2025年第一季度财报。财报显示,第一季度,公司实现营收259亿元,同比增长1.1%;净...
科技破局、全链升级:澳优四大羊... 人们所熟悉的羊奶资源,除了应用在配方奶以外,还有哪些新应用?羊奶的产业化,有哪些技术瓶颈有待突破? ...
靠卖丸子年入百亿,拿下10万家... 订阅 快刀财经 ▲ 做您的私人商学院一粒鱼丸的逆袭史。作者:朱末来源:快刀财经(ID:kuaidao...
每30秒卖一辆,老牌车企在海外... 你还记得“奇瑞QQ”吗?今年又又又打算上市那个。这张国产汽车销量逆袭并称霸海外的成绩单上,奇瑞是MV...
“近视神药”跌下神坛,“眼药大... “近视神药”能成为百亿大药吗??作者 | 赵普编辑丨高岩来源 | 野马财经在眼药领域,尤其是备受瞩目...
棕榈油、豆油、菜油:供给预期双... 【油脂市场供需及价差情况分析】棕榈油方面,产地预估产量环比走高,季节性增产临近,供给预期增加。国内港...
这届高考,仍是史上最难 史上最... 作者 |暴雨再过几天,我们会迎来历史上最难的一届高考。你可能会反驳,1335万名考生,比去年少了7万...
关键时刻,日美关系出现重大转折... 作者 | 无疆编辑 | 剑书日 美关系出现一个重大转折,影响可能不亚于贸易协议。就在最近,曾被拜登坚...
深圳半山巨宅底价成交,3749... “老李,听说了吗?大鹏那栋别墅被人底价捡走了!” “真的假的?那个叶老板花大钱建的城堡,现在才卖三千...
郑商所就丙烯期货和期权合约及期... 5月30日,郑州商品交易所就丙烯期货和期权合约及期货业务细则公开征求意见。这意味着我国产量最大的烯烃...
上涨!金饰价格重回1000元大... 随着国际黄金价格上涨,国内金饰价格重新升至每克千元以上。 6月2日,老凤祥金饰品为1000元/克,这...