# dmesg
[ 1737.738025] usb 1-1.2: new high-speed USB device number 5 using xhci-hcd
[ 1737.838917] usb 1-1.2: New USB device found, idVendor=2c7c, idProduct=0512, bcdDevice= 3.18
[ 1737.838948] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 1737.838963] usb 1-1.2: Product: EG12-EA
[ 1737.838975] usb 1-1.2: Manufacturer: Quectel
[ 1737.838986] usb 1-1.2: SerialNumber: 0123456789ABCDE
[ 1737.994955] option 1-1.2:1.0: GSM modem (1-port) converter detected
[ 1737.995430] usb 1-1.2: GSM modem (1-port) converter now attached to ttyUSB0
[ 1737.995978] option 1-1.2:1.1: GSM modem (1-port) converter detected
[ 1737.996409] usb 1-1.2: GSM modem (1-port) converter now attached to ttyUSB1
[ 1737.996963] option 1-1.2:1.2: GSM modem (1-port) converter detected
[ 1737.997351] usb 1-1.2: GSM modem (1-port) converter now attached to ttyUSB2
[ 1737.997909] option 1-1.2:1.3: GSM modem (1-port) converter detected
[ 1737.998976] usb 1-1.2: GSM modem (1-port) converter now attached to ttyUSB3
[ 1825.835796] qmi_wwan 1-1.2:1.4: cdc-wdm0: USB WDM device
[ 1825.839685] qmi_wwan 1-1.2:1.4 wwan0: register 'qmi_wwan' at usb-fe9c0000.xhci-1.2, WWAN/QMI device, 0e:80:14:b1:f6:b9
[ 1825.840062] usbcore: registered new interface driver qmi_wwan

# ifconfig wwan0 down
# echo Y > /sys/class/net/wwan0/qmi/raw_ip 

# echo 1 > /sys/class/net/wwan0/qmi/add_mux 
# ifconfig qmimux0
qmimux0: flags=4240<POINTOPOINT,NOARP,MULTICAST>  mtu 1500
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        
# echo 2 > /sys/class/net/wwan0/qmi/add_mux 
# echo 3 > /sys/class/net/wwan0/qmi/add_mux 
# echo 4 > /sys/class/net/wwan0/qmi/add_mux 
# ifconfig qmimux3
qmimux3: flags=4240<POINTOPOINT,NOARP,MULTICAST>  mtu 1500
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        
set wwan0's mtu to max qmap packet size, for usbnet.c:usbnet_change_mtu() do not accept         
# ifconfig wwan0 mtu 16385
        
run qmi proxy programm, 
# quectel-CM/quectel-qmi-proxy -d /dev/cdc-wdm0
or libqmi's qmi-proxy, if use libqmi's qmi-proxy, you can use qmicli to setup data call.
# /usr/libexec/qmi-proxy --verbose --no-exit

use quectel-CM to setup data call, if use libqmi's qmi-proxy, use '-p qmi-proxy' instead of '-p quectel-qmi-proxy'
# quectel-CM -p quectel-qmi-proxy -n 4 -s cmnet4
# quectel-CM -p quectel-qmi-proxy -n 1 -s cmnet

for how to use libqmi to setup data call, please refer to https://knowledge.quectel.com/display/SWSYSTLinuxAndroid/libqmi_How+to+using+QMAP+multiplexing