完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
先要获得技术步骤支持
一,先在USB模块上完成4G 步骤二,移植到PCIE子座上 磨刀不费砍材功,请先得到技术支持,我的参考文档首先是:Quectel_Android_RIL_Driver_V3 .3.62_master_beta(支持EC200A).tgz 主要文件:Quectel_Android_RIL_Driver_V3.3.62_master_beta(支持EC200A)\libquectel-ril\arm64-v8a\libreference-ril.so 主要文档:Quectel_Android_RIL_Driver_User_Guide_V2.0.pdf //##//## //##//##//##//##//##//##//##//##//##//##//##//##// ##//##//##//##//##//##//## 系统部分: 1.添加rild库(\libquectel-ril\arm64-v8a\libreference-ril.so) 译名:librk-ril.so编成这样才编成 :\device\rockcommon\4g\4g\lib64\librk-ril芯片 要重新编译编译,有没有库的情况,更新后大可以 2。更新已下文件 \vendor\rockchip\common\phone\bin\chat \vendor\rockchip\common\phone\etc\ppp\ip-down \vendor\rockchip\common\phone\etc\ppp\ip-up \vendor\rockchip\common\phone\etc\ql-ril.conf \vendor\rockchip\common\phone\lib\libreference-ril-ec20.so 3.关闭SELINUX \device\rockchip\common\BoardConfig.mk -BOARD_SELINUX_ENFORCING ?= true +BOARD_SELINUX_ENFORCING ?= false 如果在android动画,建议看一降频篇 4.打开BOARD_HAS_RK_4G_MODEM #enable 3g dongle BOARD_HAVE_DONGLE ?= false ifeq ( $(BOARD_HAVE_DONGLE),true) PRODUCT_PACKAGES += \ android.hardware.radio@1.2 -radio-service \ android.hardware.radio.config@1.0 -service PRODUCT_PACKAGES += \ rild \ com.android.phone.common endif #for rk 4g modem BOARD_HAS_RK_4G_MODEM ?= false +BOARD_HAS_RK_4G_MODEM ?= true ifeq ($(strip $(BOARD_HAS_RK_4G_MODEM)),true) DEVICE_MANIFEST_FILE += device/rockchip/common/4g_modem/manifest.xml endif 5. 删除property:ro.boot.noril 如果存在这个电话服务,就执行下面的设置内容 setprop ro.radio.noril 为true 暂停ril-daemon -a/device/rockchip/common/init.rk30board.rc + b/device/rockchip/common/init.rk30board.rc @@ -238,7 +238,7 @@ on property:sys.boot_completed=1 # 用于电话功能 -on property:ro.boot.noril=true - setprop ro.radio.noril true - 停止 ril-daemon +#on property:ro.boot.noril=true +# setprop ro.radio.noril true +# stop ril-daemon 6.\manifest.xml \device\rockchip\common\4g_modem\manifest.xml 《manifest》 《 hal 》 《name》android.hardware.radio《/name》 《transport》hwbinder《/transport》 《fqname》@1.1::IRadio/slot1《/fqname》 《fqname》@1.1::IRadio/slot2《/fqname》 《fqname》@1.2::ISap/slot1《/fqname》 《fqname》@1.4::IRadio/slot1《/fqname》 《/hal》 《hal》 《name》android.hardware.radio.deprecated《/name》 《运输》hwbinder《/transport》 《版本》1.0《/版本》 《接口》 《name》IOemHook《/name》 《instance》slot1《/instance》 《/interface》 《/hal》 《hal》 《name》android.hardware.radio《/name》 《transport》hwbinder《/transport》 《version》 1.0《/version》 《interface》 《name》IRadio《/name》 《instance》slot1《/instance》 《/interface》 《/hal》 《/manifest》 \device\rockchip\common\manifest.xml + 《hal 》 + 《name》android.hardware.radio《/name》 + 《transport》hwbinder《/transport》 + 《fqname》@1.1::IRadio/slot1《/fqname》 + 《fqname》@1.1::IRadio/slot2《/fqname》 + 《fqname》@1.2::ISap/slot1《/fqname》 + 《/hal》 7. 添加APN \vendor\rockchip\common\phone\etc\apns-full-conf.xml 《apn carrier_id = “2470” mcc =“334” mnc=“140” user=“” password=“” /》 + 《apn mcc=“460” mnc=“11” /》 + 《apn mcc=“460” mnc=“04” /》 + 《apn mcc=“460” mnc=“04” /》 + 《apn mcc=“460” mnc=“06” port=“80” /》 + 《apn mcc=“460” mnc=“06” /》 + 《apn mcc=“460” mnc=“03” user=“m2m”password=“vnet.mobi” /》 8.G上网正常,但没有状态 《/ 没有4G图标(完整图标) device\rockchip\rk356x\overlay\frameworks\base\core\res\res\value\配置文件 《!-- 该字符串数组应被设备覆盖以呈现网络 属性列表。 连接管理器使用它来根据硬件决定哪些网络可以共存--》 《!-- “[连接名称]、[连接管理器连接类型]、 [关联无线电类型]、[优先级]、 [restoral-timer(ms)],[dependencyMet] --》 《!-- 第5个元素“resore-time”表示自动恢复默认连接前延迟的毫秒数 。如果连接 不需要,设置-1 auto-restore.--》 《!-- 第6个元素表示启动时依赖满足值。--》 《string-array》 《item》“wifi,1,1,2,-1,true”《/item》 + 《item》“mobile,0,0,0,-1,true”《/item》 + 《item》“mobile_mms, 2,0,2,60000,true”《/item》 + 《item》“mobile_supl,3,0,2,60000,true”《/item》 + 《item》“mobile_dun,4,0,2,60000, true”《/item》 + 《item》“mobile_hipri,5,0,3,60000,true”《/item》 + 《item》“mobile_fota,10,0,2,60000,true”《/item》 + 《 item》“mobile_ims,11,0,2,60000,true”《/item》 + 《item》“mobile_cbs,12,0,2,60000,true”《/item》 《item》“bluetooth,7,7, 0,-1,true”《/item》 《item》“ethernet,9,9,9,-1,true”《/item》 《/string-array》 9.在device\rockchip\common\ueventd.rockchip.rc中打开权限,增加 \device\rockchip\common\ueventd.rockchip.rc #for radio /dev/ttyUSB* 0666 radio radio #for uart /dev/ttyS3 0777 根系统 /dev/ttyS4 0777 根系统 /dev/ttyS5 0777 根系统 /dev/ttyS6 0777 根系统 /dev/ttyS9 0777 根系统 /dev/ttyS8 0777 根系统 /dev/ttyS9 0777根系统 #for cdc-wdm0 /dev/cdc-wdm* 0660 radio radio #for qcqmi0 /dev/qcqmi* 0660 radio radio /dev/cdc-acm* 0660 radio radio /dev/ttyACM* 0660 radio radio #PCIe /dev /mhi_DUN 0660 无线电无线电 /dev/mhi_DIAG 0660 无线电无线电 /dev/mhi_BHI 0660 radio radio /dev/mhi_LOOPBACK 0660 radio radio /dev/mhi_QMI0 0660 radio radio 10.添加cdc-wdm0节点 system\core\init\devices.cpp // Minors被分成128个一组,从“001” int bus_id = uevent.minor / 128 + 1; int device_id = uevent.minor % 128 + 1; devpath = StringPrintf(“/dev/bus/u***/%03d/%03d”, bus_id, device_id); } +#if 1 //由 quectel 为 mknod 添加 /dev/cdc-wdmo + } else if (uevent.subsystem == “u***misc” && !uevent.device_name.empty()) { + devpath = “/dev/” + uevent.device_name; +#endif } else if (StartsWith(uevent.subsystem, “u***”)) { 忽略其他 USB 事件 11.实际上应该是使用下面的这个: //这个本来的 device\rockchip\有的common\device.mk ifeq ($(strip $(TARGET_ARCH)), arm64) PRODUCT_PROPERTY_OVERRIDES += \ vendor.rild.libpath=/vendor/lib64/librk-ril.so PRODUCT_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 else PRODUCT_PROPERTY_OVERRIDES += \ vendor.rild.libpath=/vendor/lib/librk -ril.so PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/4g_modem/bin32/dhcpcd:$(TARGET_COPY_OUT_VENDOR)/bin/dhcpcd \ $(LOCAL_PATH)/4g_modem/lib32/librk-ril.so:$(TARGET_COPY_OUT_VENDOR)/lib/librk-ril.so endif 12 更新加载文件点 \vendor\rockchip\common\phone\phone.mk CUR_PATH := vendor/rockchip/common ########################## ############################## 3G 加密狗支持 ################ ######################################## PRODUCT_COPY_FILES += \ # $(CUR_PATH )/phone/etc/ppp/ip-down:system/etc/ppp/ip-down\ #$(CUR_PATH)/phone/etc/ppp/ip-up:system/etc/ppp/ip-up\ #$ (CUR_PATH)/phone/etc/ppp/call-pppd:system/etc/ppp/call-pppd \ # $(CUR_PATH)/phone/etc/operator_table:system/etc/operator_table PRODUCT_COPY_FILES += \ + $(CUR_PATH)/phone/etc/ppp/ip-down:system/etc/ppp/ip-down \ + $( CUR_PATH)/phone/etc/ppp/ip-up:system/etc/ppp/ip-up \ + $(CUR_PATH)/phone/bin/chat:system/bin/chat \ + $(CUR_PATH)/phone/lib /libreference-ril-ec20.so:vendor/lib64/libreference-ril-ec20.so \ + $(CUR_PATH)/phone/etc/ppp/ql-ril.conf:system/etc/ql-ril.conf \ + $(CUR_PATH)/etc/spn-conf.xml:system/etc/spn-conf.xml ifeq ($(strip $(BOARD_HAVE_DONGLE)),true) PRODUCT_PACKAGES += \ rild \ libril-rk29-dataonly \ u***_dongle \ u***_modeswitch \ 聊天 PRODUCT_PROPERTY_OVERRIDES +=ro.boot.noril=false 否则 PRODUCT_PROPERTY_OVERRIDES +=ro.boot.noril=true endif PRODUCT_PROPERTY_OVERRIDES += \keyguard.no_require_sim=true \ ro.com.android.dataroaming=true \ ril.function.dataonly=1 。 13.修改ril-daemon - /hardware/ril/rild/rild.rc + /hardware/ril/rild/rild.rc @@ -1,5 +1,5 @@ -service vendor.ril-daemon /vendor/ bin/hw/rild +service ril-daemon /vendor/bin/hw/rild -l /vendor/lib64/libreference-ril-ec20.so 类主 - 用户收音机 - 组收音机缓存 inet 杂项音频日志 readproc 唤醒锁 - 功能 BLOCK_SUSPEND NET_ADMIN NET_RAW + 用户根 + group radio cache inet misc audio sdcard_rw log + capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW 14.指定使用的库,这里没有配,因为前面的device.mk已经指定 -a/device/rockchip/rk356x/device.mk + b/device/rockchip /rk356x/device.mk @@ -77,6 +77,9 @@ PRODUCT_PROPERTY_OVERRIDES += \ ro.ril.ecclist=112,911 \ ro.opengles.version=196610 \ wifi.interface=wlan0 \ ro.audio.monitorOrientation= true \ debug.nfc.fw_download=false \ debug.nfc.se=false \ +# ro.telephony.default_network=9 \ +# rild.libpath=/vendor/lib64/libquectel-ril-ec200t.so \ +# rild.libargs=-d /dev/ttyUSB2 \ |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
小黑屋| 手机版| Archiver| 电子发烧友 ( 粤ICP备14022951号 )
GMT+8, 2022-7-30 00:07 , Processed in 0.636781 second(s), Total 78, Slave 59 queries , Memcache On.
Powered by 电子发烧友网
© 2015 www.ws-dc.com