xref: /OK3568_Linux_fs/kernel/drivers/net/usb/GobiNet/ReleaseNote.txt (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunRelease Notes
2*4882a593Smuzhiyun
3*4882a593Smuzhiyun[V1.6.2.14]
4*4882a593SmuzhiyunDate:   3/18/2020
5*4882a593Smuzhiyunenhancement:
6*4882a593Smuzhiyunfix:
7*4882a593Smuzhiyun	1. fix kasam: use-after-free when do modem reboot stress test
8*4882a593Smuzhiyun	2. wait qmi_sync_thread() finish in DeregisterQMIDevice(), usb will disconnect when driver is still in qmi_sync_thread()
9*4882a593Smuzhiyun
10*4882a593Smuzhiyun[V1.6.2.13]
11*4882a593SmuzhiyunDate:   12/31/2020
12*4882a593Smuzhiyunenhancement:
13*4882a593Smuzhiyunfix:
14*4882a593Smuzhiyun	1. fix quectel-CM open error when driver is still in qmi_sync_thread() but SOC enter sleep.
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun[V1.6.2.12]
17*4882a593SmuzhiyunDate:   12/31/2020
18*4882a593Smuzhiyunenhancement:
19*4882a593Smuzhiyunfix:
20*4882a593Smuzhiyun	1. for multi-pdn-call, can not ping when usb resume for usb suspend state.
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun[V1.6.2.11]
23*4882a593SmuzhiyunDate:   11/7/2020
24*4882a593Smuzhiyunenhancement:
25*4882a593Smuzhiyun  1. support QUECTEL_QMI_MERGE, for some SOC, control endpoint only support read max 64 bytes QMI.
26*4882a593Smuzhiyun     for QMI that size > 64, we need read serval times, and merge.
27*4882a593Smuzhiyunfix:
28*4882a593Smuzhiyun
29*4882a593Smuzhiyun[V1.6.2.10]
30*4882a593SmuzhiyunDate:   9/15/2020
31*4882a593Smuzhiyunenhancement:
32*4882a593Smuzhiyunfix:
33*4882a593Smuzhiyun  1. for X55, fix panic on kernel V2.6 ~ V3.2
34*4882a593Smuzhiyun
35*4882a593Smuzhiyun[V1.6.2.9]
36*4882a593SmuzhiyunDate:   7/24/2020
37*4882a593Smuzhiyunenhancement:
38*4882a593Smuzhiyunfix:
39*4882a593Smuzhiyun  1. for X55, fix errors on Big Endian SOC.
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun[V1.6.2.8]
42*4882a593SmuzhiyunDate:   7/2/2020
43*4882a593Smuzhiyunenhancement:
44*4882a593Smuzhiyun  1. support QMAPV5, UL AGG (porting from qmi_wwan_q)
45*4882a593Smuzhiyunfix:
46*4882a593Smuzhiyun  1. fix errors kernel V2.6 .
47*4882a593Smuzhiyun
48*4882a593Smuzhiyun[V1.6.2.7]
49*4882a593SmuzhiyunDate:   6/9/2020
50*4882a593Smuzhiyunenhancement:
51*4882a593Smuzhiyunfix:
52*4882a593Smuzhiyun  1. when send qmi ctl request, clear qmi ctl response which's TID is same
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun[V1.6.2.6]
55*4882a593SmuzhiyunDate:   5/19/2020
56*4882a593Smuzhiyunenhancement:
57*4882a593Smuzhiyun	1. support bridge mode for multi-pdn-call
58*4882a593Smuzhiyunfix:
59*4882a593Smuzhiyun
60*4882a593Smuzhiyun[V1.6.2.5]
61*4882a593SmuzhiyunDate:   4/26/2020
62*4882a593Smuzhiyunenhancement:
63*4882a593Smuzhiyun	1. fix netcard name as usbX (from ethX)
64*4882a593Smuzhiyunfix:
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun......
67*4882a593Smuzhiyun
68*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.5.0]
69*4882a593SmuzhiyunDate:   2018/04/17
70*4882a593Smuzhiyunenhancement::
71*4882a593Smuzhiyun1. support EG20&RG500
72*4882a593Smuzhiyun2. fix set rx_urb_size as 1520. do not change accroding to MTU
73*4882a593Smuzhiyun
74*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.4.3]
75*4882a593SmuzhiyunDate:   2018/04/16
76*4882a593Smuzhiyunenhancement::
77*4882a593Smuzhiyun1. increase QMAP's rx_urb_size to 32KB
78*4882a593Smuzhiyun
79*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.4.2]
80*4882a593SmuzhiyunDate:   2018/04/03
81*4882a593Smuzhiyunbug fix:
82*4882a593Smuzhiyun1. fix qmi client can not be released when quectel-CM killed by ��kill -9��
83*4882a593Smuzhiyun
84*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.4.1]
85*4882a593SmuzhiyunDate:   2018/02/20
86*4882a593Smuzhiyunbug fix:
87*4882a593Smuzhiyun1. fix a compiler error on Kernel lager than 4.11
88*4882a593Smuzhiyun
89*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.4.0]
90*4882a593SmuzhiyunDate:   2018/12/17
91*4882a593Smuzhiyunbug fix:
92*4882a593Smuzhiyun1. fix a USB DMA error when built as GobiNet.ko on Kernel lager than 4.15
93*4882a593Smuzhiyun
94*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.3.8]
95*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.3.7]
96*4882a593SmuzhiyunDate:   2018/09/25
97*4882a593Smuzhiyunenhancement:
98*4882a593Smuzhiyun1. check skb length in tx_fixup functions.
99*4882a593Smuzhiyun2. when QMAP enabled, set FLAG_RX_ASSEMBLE to advoid 'RX errors' of ifconfig
100*4882a593Smuzhiyun
101*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.3.6]
102*4882a593SmuzhiyunDate:   2018/09/11
103*4882a593Smuzhiyunenhancement:
104*4882a593Smuzhiyun1. support EG12 EM12
105*4882a593Smuzhiyun2. optimization QMAP source code
106*4882a593Smuzhiyun3. fix compile errors and warnnings on kernel version 4.15
107*4882a593Smuzhiyun
108*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.3.5]
109*4882a593SmuzhiyunDate:   2018/05/12
110*4882a593Smuzhiyunenhancement:
111*4882a593Smuzhiyun1. provide two method to enable QMAP function.
112*4882a593Smuzhiyun	1.1 set module parameters 'qmap_mode' to X(1~4) to enable QMAP.
113*4882a593Smuzhiyun	1.2 ifconfig usb0 down, then 'echo X > /sys/class/usbX/qmap_mode' to enable QMAP
114*4882a593Smuzhiyun	for above two method, X(1) used to enable 'IP Aggregation' and X(2~4) to enable 'IP Mux'
115*4882a593Smuzhiyun2. support bridge mode, also provide two method to enable bridge mode.
116*4882a593Smuzhiyun	2.1 set module parameters 'bridge_mode' to 1 to enable bridge mode.
117*4882a593Smuzhiyun	2.2 'echo 1 > /sys/class/usbX/bridge_mode' to enable bridge mode.
118*4882a593Smuzhiyun	bridge mode setups:
119*4882a593Smuzhiyun		brctl addbr br0; brctl addif br0 eth0; brctl addif usb0; ./quectel-CM; ifconfig br0 up; ifconfig eth0 up
120*4882a593Smuzhiyun		then connect eth0 to PC by ethernet cable. and PC run DHCP tool to obtain network public IP address.
121*4882a593Smuzhiyun
122*4882a593Smuzhiyun	'WCDMA&LTE_QConnectManager_Linux&Android_V1.1.40' and later version is required to use QMAP and bridge mode.
123*4882a593Smuzhiyun
124*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.3.4]
125*4882a593SmuzhiyunDate:   2018/05/07
126*4882a593Smuzhiyunenhancement:
127*4882a593Smuzhiyun1. support use 'AT$QCRMCALL=1,1' to setup data call.
128*4882a593Smuzhiyun   when use 'AT$QCRMCALL=1,1', must set module parameters 'qcrmcall_mode' to 1,
129*4882a593Smuzhiyun   and GobiNet Driver will do not tx&rx QMI.
130*4882a593Smuzhiyun
131*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.3.3]
132*4882a593SmuzhiyunDate:   2018/04/04
133*4882a593Smuzhiyunoptimization:
134*4882a593Smuzhiyun1. optimization QMAP source code
135*4882a593Smuzhiyun
136*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.3.2]
137*4882a593SmuzhiyunDate:   2018/03/23
138*4882a593Smuzhiyunenhancement:
139*4882a593Smuzhiyun1. support Qualcomm Mux and Aggregation Protocol (QMAP)
140*4882a593Smuzhiyun	1.1 IP Mux: GobiNet Driver register multiple netcards, one netcards corresponding to one PDP.
141*4882a593Smuzhiyun	    and GobiNet Driver will tx/rx multiple IP packets maybe belong to different PDPs in one URB.
142*4882a593Smuzhiyun	1.2 IP Aggregation: GobiNet Driver will rx multiple IP packets in one URB, used to increase throughput theoretically by reducing the number of usb interrupts.
143*4882a593Smuzhiyun	    the max rx URB size of MDM9x07 is 4KB, the max rx URB size of MDM9x40&SDX20 is 16KB
144*4882a593Smuzhiyun
145*4882a593Smuzhiyun[Quectel_WCDMA&LTE_Linux&Android_GobiNet_Driver_V1.3.1]
146*4882a593SmuzhiyunDate:   2017/11/20
147*4882a593Smuzhiyunenhancement:
148*4882a593Smuzhiyun1. support BG96
149