I discover a issue with QMI mode, If the wwan0 MTU from network operator or explicitly set to less than 1500, then packets that requires fragmentation(size above MTU) will hang the modem and will require a reboot to respond again.
My test was:
set RG500Q-EA (Revision: RG500QEAAAR13A01M4G) to QMI mode (AT+QCFG="usbnet",0);
let network operator or explicitly set wwan0 device MTU to less than 1500;
for the test I configure the network so that is not the default gateway, so I can control the size of packets for the modem.
For example, the operator will set wwan0 MTU=1400, so I test with ping:
ping -I wwan0 -s 1372 1.1.1.1 (the size of the packet will be equal to 1372+28=1400) → result OK
ping -I wwan0 -s 1373 1.1.1.1 (the size of the packet will be equal to 1373+28=1401 above MTU) → result FAIL and modem will not respond anymore.
Is this a kernel driver qmi_wwan.c problem or a modem firmware problem?
I don’t know of the benefits of QMI over MBIM.
I’m just reporting the issue so developers of RG500Q-EA and buyers that need QMI mode know the existence of this issue.
Maybe this issue get a fix via quectel/kernel or even someone finds a workaround for this, for example for some quectel modems the fix is explicitly setting MSS maximum segment size with nftables, but did not work with this modem.