###3. Add Reset Resume ⦁For linux Kernel Version newer than 3.4: File: [KERNEL]/drivers/usb/serial/option.c
1 2 3 4 5 6 7 8 9 10 11 12 13
staticstructusb_serial_driveroption_1port_device = { .driver = { .owner = THIS_MODULE, .name = "option1", }, #ifdef CONFIG_PM .suspend = usb_wwan_suspend, .resume = usb_wwan_resume, #endif //+add by airm2m for Air720 .reset_resume = usb_wwan_resume, //-add by airm2m for Air720 };
⦁For linux Kernel Version older than 3.5: File: [kernel]/drivers/usb/serial/usb-serial.c
1 2 3 4 5 6 7 8 9 10 11 12
/* Driver structure we register with the USB core */ staticstructusb_driverusb_serial_driver = { .name ="usbserial", .probe =usb_serial_probe, .disconnect =usb_serial_disconnect, .suspend =usb_serial_suspend, .resume =usb_serial_resume, //+add by airm2m for Air72x .reset_resume = usb_serial_resume, //-add by airm2m for Air72x .no_dynamic_id = 1, };
###4. Modify Kernel Configuration ####Step 1:
1
cd <your kernel directory>
Step 2:
1
make menuconfig
Step 3:Enable CONFIG_USB_SERIAL_OPTION
1 2 3 4
[*] Device Drivers → [*] USB Support → [*] USB Serial Converter support → [*] USB driver for GSM and CDMA modems
Step 4:Configure Kernel to Support PPP
1 2 3
[*] Device Drivers → [*] Network device support → [*] PPP (point-to-point protocol) support
# ril related services service ril-daemon /system/bin/rild -l /system/lib/libreference-ril.so class main socket rild stream 660 root radio socket rild-debug stream 660 radio system user root
#####64位android系统
1 2 3 4 5
#ril related services service ril-daemon /system/bin/rild -l /system/lib64/libreference-ril.so class main socket rild stream 660 root radio socket rild-debug stream 660 radio system user root