it depends on your Build Structure, you need to add multiple Parameters.
lemme show your my way to do it:
i placed all my stuff in /vendor/quectel/ec25
vendor/quectel/ec25$ cat BoardConfigPartial.mk
BUILD_WITH_EC25 := true
BOARD_HAS_GPS := true
BOARD_HAVE_DONGLE := true
vendor/quectel/ec25$ cat device-partial.mk
ifeq ($(BUILD_WITH_EC25),true)
PRODUCT_PACKAGES += \
rild \
## check if needed
PRODUCT_COPY_FILES += \
vendor/quectel/ec25/ril/libreference-ril.so:vendor/lib64/libquectel-ril.so \
vendor/quectel/ec25/ril/ql-ril.conf:system/etc/ql-ril.conf \
vendor/quectel/ec25/ril/chat:system/bin/chat \
vendor/quectel/ec25/tools/QAndroidLog:system/bin/QAndroidLog \
vendor/quectel/ec25/tools/QFirehose:system/bin/QFirehose \
vendor/quectel/ec25/ril/ip-up:system/etc/ppp/ip-up \
vendor/quectel/ec25/ril/ip-down:system/etc/ppp/ip-down \
vendor/quectel/ec25/ril/atinout:system/bin/atinout \
vendor/quectel/ec25/apns-conf.xml:system/etc/apns-conf.xml \
frameworks/native/data/etc/android.hardware.telephony.cdma.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.cdma.xml \
frameworks/native/data/etc/android.hardware.telephony.gsm.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.telephony.gsm.xml \
frameworks/native/data/etc/android.software.sip.voip.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.sip.voip.xml \
frameworks/native/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \
frameworks/native/data/etc/android.hardware.audio.low_latency.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.audio.low_latency.xml
# RILD Related
PRODUCT_PROPERTY_OVERRIDES += \
hw.nophone=no \
ro.boot.noril=no \
ro.radio.noril=no \
ro.telephony.default_network=10 \
vendor.rild.libpath=/vendor/lib64/libquectel-ril.so \
vendor.rild.libargs=-d/dev/ttyUSB2 \
keyguard.no_require_sim=true \
ril.function.dataonly=0
# ril.subscription.types=NV,RUIM \
# Phone Related
PRODUCT_PROPERTY_OVERRIDES += \
persist.telephony.support.ipv6=1 \
persists.telephony.support.ipv4=1 \
telephony.lteOnGsmDevice=1 \
telephony.lteOnCdmaDevice=0 \
ro.telephony.call_ring.delay=0 \
ro.ril.enable.amr.wideband=1 \
ring.delay=0 \
ro.config.vc_call_steps=20 \
persist.cust.tel.eons=1 \
ro.config.hw_fast_dormancy=1 \
ro.radio.networkmode=enable \
persist.audio.fluence.voicecall=false
PRODUCT_PROPERTY_OVERRIDES += \
ro.HOME_APP_ADJ=1 \
persist.sys.use_dithering=1 \
ro.config.nocheckin=1 \
persist.adb.tcp.port=5555 \
hw.nobattery=true \
ro.com.android.dataroaming=false
ro.telephony.get_imsi_from_sim=true \
ro.telephony.ril.config=simactivation
endif ### BUILD_WITH_EC25 ###
ifeq ($(BOARD_HAS_GPS),true)
PRODUCT_PACKAGES += \
android.hardware.gnss@1.0-impl \
android.hardware.gnss@1.0-service
PRODUCT_COPY_FILES += \
vendor/quectel/ec25/gps/gps.default.so:vendor/lib64/hw/gps.default.so \
vendor/quectel/ec25/gps/gps_cfg.inf:system/etc/gps_cfg.inf \
vendor/quectel/ec25/gps/gps.cfg:system/etc/gps.cfg \
frameworks/native/data/etc/android.hardware.location.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.xml \
frameworks/native/data/etc/android.hardware.location.gps.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.location.gps.xml
PRODUCT_PROPERTY_OVERRIDES += \
ro.kernel.android.gps=ttyUSB1 \
ro.kernel.android.gps.speed=115200 \
ro.kernel.android.gps.max_rate=1
endif ### BUILD_WITH_EC25_GPS ###
in your BoardConfig.mk
-include vendor/quectel/ec25/BoardConfigPartial.mk
in your device.mk
$(call inherit-product-if-exists, vendor/quectel/ec25/device-partial.mk)
…
ifeq ($(BUILD_WITH_EC25),true)
PRODUCT_COPY_FILES += \
$(LOCAL_PATH)/init.quectel.rc:root/init.quectel.rc
endif
in your init.device.rc
import init.quectel.rc
init.quectel.rc make shure you comment all other rild due duplicates
service vendor.ril-daemon /vendor/bin/hw/rild -l /vendor/lib64/libquectel-ril.so
class main
user root
group radio vpn cache inet misc audio log readproc wakelock
capabilities BLOCK_SUSPEND NET_ADMIN NET_RAW
# hardware/interfaces/gnss/1.0/default/android.hardware.gnss@1.0-service.rc
service gnss_service /vendor/bin/hw/android.hardware.gnss@1.0-service
class hal
user gps
group system gps radio
in your manifest.xml
<hal format="hidl">
<name>android.hardware.broadcastradio</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IBroadcastRadioFactory</name>
<instance>default</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.radio.deprecated</name>
<transport>hwbinder</transport>
<version>1.0</version>
<interface>
<name>IOemHook</name>
<instance>slot1</instance>
</interface>
</hal>
<hal format="hidl">
<name>android.hardware.radio</name>
<transport>hwbinder</transport>
<version>1.1</version>
<interface>
<name>IRadio</name>
<instance>slot1</instance>
</interface>
<interface>
<name>ISap</name>
<instance>slot1</instance>
</interface>
</hal>
Regards,
Brian