146 lines
8.6 KiB
Plaintext
Executable File
146 lines
8.6 KiB
Plaintext
Executable File
root@OpenWrt:~# insmod pcie_mhi.ko mhi_mbim_enabled=1
|
|
root@OpenWrt:~# dmesg | grep mhi
|
|
[ 65.587160] mhi_init Quectel_Linux_PCIE_MHI_Driver_V1.3.0.6
|
|
[ 65.597089] mhi_pci_probe pci_dev->name = 0000:01:00.0, domain=0, bus=1, slot=0, vendor=17CB, device=0306
|
|
[ 65.602250] mhi_q 0000:01:00.0: BAR 0: assigned [mem 0x20300000-0x20300fff 64bit]
|
|
[ 65.611690] mhi_q 0000:01:00.0: enabling device (0140 -> 0142)
|
|
[ 65.619307] [I][mhi_init_pci_dev] msi_required = 5, msi_allocated = 5, msi_irq = 63
|
|
[ 65.619327] [I][mhi_power_up] dev_state:RESET
|
|
[ 65.619331] [I][mhi_async_power_up] Requested to power on
|
|
[ 65.619449] [I][mhi_alloc_coherent] size = 114688, dma_handle = 6fca0000
|
|
[ 65.619462] [I][mhi_init_dev_ctxt] mhi_ctxt->ctrl_seg = c221e000
|
|
[ 65.619731] [I][mhi_async_power_up] dev_state:RESET ee:AMSS
|
|
[ 65.619747] [I][mhi_pm_st_worker] Transition to state:READY
|
|
[ 65.619760] [I][mhi_pm_st_worker] INVALID_EE -> AMSS
|
|
[ 65.619764] [I][mhi_ready_state_transition] Waiting to enter READY state
|
|
[ 65.619885] [I][mhi_async_power_up] Power on setup success
|
|
[ 65.619897] [I][mhi_pci_probe] Return successful
|
|
[ 65.665114] [I][mhi_ready_state_transition] Device in READY State
|
|
[ 65.665125] [I][mhi_intvec_threaded_handlr] device ee:AMSS dev_state:READY, pm_state:POR
|
|
[ 65.665131] [I][mhi_intvec_threaded_handlr] device ee:AMSS dev_state:READY, INVALID_EE
|
|
[ 65.665133] [I][mhi_tryset_pm_state] Transition to pm state from:POR to:POR
|
|
[ 65.665137] [I][mhi_init_mmio] Initializing MMIO
|
|
[ 65.665142] [I][mhi_init_mmio] CHDBOFF:0x300
|
|
[ 65.665151] [I][mhi_init_mmio] ERDBOFF:0x700
|
|
[ 65.665156] [I][mhi_init_mmio] Programming all MMIO values.
|
|
[ 65.786283] [I][mhi_dump_tre] carl_ev evt_state_change mhistate=2
|
|
[ 65.786289] [I][mhi_process_ctrl_ev_ring] MHI state change event to state:M0
|
|
[ 65.786295] [I][mhi_pm_m0_transition] Entered With State:READY PM_STATE:POR
|
|
[ 65.786300] [I][mhi_tryset_pm_state] Transition to pm state from:POR to:M0
|
|
[ 65.789734] [I][mhi_dump_tre] carl_ev evt_ee_state execenv=2
|
|
[ 65.789739] [I][mhi_process_ctrl_ev_ring] MHI EE received event:AMSS
|
|
[ 65.789756] [I][mhi_pm_st_worker] Transition to state:MISSION MODE
|
|
[ 65.789767] [I][mhi_pm_st_worker] INVALID_EE -> AMSS
|
|
[ 65.789771] [I][mhi_pm_mission_mode_transition] Processing Mission Mode Transition
|
|
[ 65.789787] [I][mhi_init_timesync] No timesync capability found
|
|
[ 65.789791] [I][mhi_pm_mission_mode_transition] Adding new devices
|
|
[ 65.790570] [I][mhi_dtr_probe] Enter for DTR control channel
|
|
[ 65.790577] [I][__mhi_prepare_channel] Entered: preparing channel:18
|
|
[ 65.797036] [I][mhi_dump_tre] carl_ev evt_cmd_comp code=1
|
|
[ 65.797051] [I][__mhi_prepare_channel] Chan:18 successfully moved to start state
|
|
[ 65.797055] [I][__mhi_prepare_channel] Entered: preparing channel:19
|
|
[ 65.802457] [I][mhi_dump_tre] carl_ev evt_cmd_comp code=1
|
|
[ 65.802469] [I][__mhi_prepare_channel] Chan:19 successfully moved to start state
|
|
[ 65.802485] [I][mhi_dtr_probe] Exit with ret:0
|
|
[ 65.802748] [I][mhi_netdev_enable_iface] Prepare the channels for transfer
|
|
[ 65.802772] [I][__mhi_prepare_channel] Entered: preparing channel:100
|
|
[ 65.825279] [I][mhi_dump_tre] carl_ev evt_cmd_comp code=1
|
|
[ 65.825293] [I][__mhi_prepare_channel] Chan:100 successfully moved to start state
|
|
[ 65.825297] [I][__mhi_prepare_channel] Entered: preparing channel:101
|
|
[ 65.835565] [I][mhi_dump_tre] carl_ev evt_cmd_comp code=1
|
|
[ 65.835578] [I][__mhi_prepare_channel] Chan:101 successfully moved to start state
|
|
[ 65.839141] [I][mhi_netdev_enable_iface] Exited.
|
|
[ 65.839875] rmnet_vnd_register_device(rmnet_mhi0.1)=0
|
|
[ 65.843278] net rmnet_mhi0 rmnet_mhi0.1: NSS context created
|
|
[ 65.861808] [I][mhi_pm_mission_mode_transition] Exit with ret:0
|
|
[ 68.625595] [I][__mhi_prepare_channel] Entered: preparing channel:12
|
|
[ 68.634610] [I][mhi_dump_tre] carl_ev evt_cmd_comp code=1
|
|
[ 68.634622] [I][__mhi_prepare_channel] Chan:12 successfully moved to start state
|
|
[ 68.634625] [I][__mhi_prepare_channel] Entered: preparing channel:13
|
|
[ 68.644978] [I][mhi_dump_tre] carl_ev evt_cmd_comp code=1
|
|
[ 68.644987] [I][__mhi_prepare_channel] Chan:13 successfully moved to start state
|
|
[ 69.170666] net rmnet_mhi0: link_state 0x0 -> 0x1
|
|
[ 69.177035] [I][mhi_netdev_open] Opened net dev interface
|
|
[ 71.655431] [I][mhi_netdev_open] Opened net dev interface
|
|
|
|
root@OpenWrt:~# ./quectel-CM &
|
|
[04-02_04:14:12:134] Quectel_QConnectManager_Linux_V1.6.0.5
|
|
[04-02_04:14:12:134] Find /sys/bus/usb/devices/4-1 idVendor=0x2c7c idProduct=0x800, bus=0x004, dev=0x002
|
|
[04-02_04:14:12:135] network interface '' or qmidev '' is not exist
|
|
[04-02_04:14:12:135] netcard driver = pcie_mhi, driver version = V1.3.0.6
|
|
[04-02_04:14:12:135] Modem works in MBIM mode
|
|
[04-02_04:14:12:135] apn (null), user (null), passwd (null), auth 0
|
|
[04-02_04:14:12:135] IP Proto MBIMContextIPTypeIPv4
|
|
[04-02_04:14:12:154] mbim_read_thread is created
|
|
sh: can't create /sys/class/net/rmnet_mhi0/mbim/link_state: nonexistent directory
|
|
[04-02_04:14:12:156] system(echo 0 > /sys/class/net/rmnet_mhi0/mbim/link_state)=256
|
|
[04-02_04:14:12:185] system(ip address flush dev rmnet_mhi0)=0
|
|
[04-02_04:14:12:187] system(ip link set dev rmnet_mhi0 down)=0
|
|
[04-02_04:14:12:188] mbim_open_device()
|
|
[04-02_04:14:12:605] mbim_device_caps_query()
|
|
[04-02_04:14:12:610] DeviceId: 869710030002905
|
|
[04-02_04:14:12:610] HardwareInfo: 0
|
|
[04-02_04:14:12:610] mbim_set_radio_state( 1 )
|
|
[04-02_04:14:12:613] HwRadioState: 1, SwRadioState: 1
|
|
[04-02_04:14:12:613] mbim_subscriber_status_query()
|
|
[04-02_04:14:12:620] SubscriberReadyState NotInitialized -> Initialized
|
|
[04-02_04:14:12:620] mbim_register_state_query()
|
|
[04-02_04:14:12:625] RegisterState Unknown -> Home
|
|
[04-02_04:14:12:625] mbim_packet_service_query()
|
|
[04-02_04:14:12:629] PacketServiceState Unknown -> Attached
|
|
[04-02_04:14:12:629] mbim_query_connect(sessionID=0)
|
|
[04-02_04:14:12:633] ActivationState Unknown -> Deactivated
|
|
[04-02_04:14:12:633] mbim_set_connect(onoff=1, sessionID=0)
|
|
[ 69.170666] net rmnet_mhi0: link_state 0x0 -> 0x1
|
|
[04-02_04:14:12:680] ActivationState Deactivated -> Activated
|
|
[ 69.177035] [I][mhi_netdev_open] Opened net dev interface
|
|
[04-02_04:14:12:680] mbim_ip_config(sessionID=0)
|
|
[04-02_04:14:12:683] < SessionId = 0
|
|
[04-02_04:14:12:683] < IPv4ConfigurationAvailable = 0xf
|
|
[04-02_04:14:12:683] < IPv6ConfigurationAvailable = 0x0
|
|
[04-02_04:14:12:683] < IPv4AddressCount = 0x1
|
|
[04-02_04:14:12:683] < IPv4AddressOffset = 0x3c
|
|
[04-02_04:14:12:683] < IPv6AddressCount = 0x0
|
|
[04-02_04:14:12:683] < IPv6AddressOffset = 0x0
|
|
[04-02_04:14:12:683] < IPv4 = 10.129.59.93/30
|
|
[04-02_04:14:12:683] < gw = 10.129.59.94
|
|
[04-02_04:14:12:683] < dns1 = 211.138.180.2
|
|
[04-02_04:14:12:683] < dns2 = 211.138.180.3
|
|
[04-02_04:14:12:683] < ipv4 mtu = 1500
|
|
sh: can't create /sys/class/net/rmnet_mhi0/mbim/link_state: nonexistent directory
|
|
[04-02_04:14:12:684] system(echo 1 > /sys/class/net/rmnet_mhi0/mbim/link_state)=256
|
|
[04-02_04:14:12:689] system(ip link set dev rmnet_mhi0 up)=0
|
|
[04-02_04:14:12:692] system(ip -4 address flush dev rmnet_mhi0)=0
|
|
[04-02_04:14:12:694] system(ip -4 address add 10.129.59.93/30 dev rmnet_mhi0)=0
|
|
[04-02_04:14:12:697] system(ip -4 route add default via 10.129.59.94 dev rmnet_mhi0)=0
|
|
[04-02_04:14:12:699] system(ip -4 link set dev rmnet_mhi0 mtu 1500)=0
|
|
|
|
root@OpenWrt:~# ifconfig rmnet_mhi0
|
|
rmnet_mhi0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
|
|
UP RUNNING NOARP MTU:1500 Metric:1
|
|
RX packets:99379 errors:0 dropped:0 overruns:0 frame:0
|
|
TX packets:176569 errors:0 dropped:0 overruns:0 carrier:0
|
|
collisions:0 txqueuelen:1000
|
|
RX bytes:1528181052 (1.4 GiB) TX bytes:62467192 (59.5 MiB)
|
|
|
|
root@OpenWrt:~# ifconfig rmnet_mhi0.1
|
|
rmnet_mhi0.1 Link encap:UNSPEC HWaddr 02-50-F4-00-00-00-00-00-00-00-00-00-00-00-00-00
|
|
inet addr:10.129.59.93 Mask:255.255.255.252
|
|
inet6 addr: fe80::50:f4ff:fe00:0/64 Scope:Link
|
|
UP RUNNING NOARP MTU:1500 Metric:1
|
|
RX packets:1089360 errors:0 dropped:0 overruns:0 frame:0
|
|
TX packets:176581 errors:0 dropped:0 overruns:0 carrier:0
|
|
collisions:0 txqueuelen:1000
|
|
RX bytes:1521449058 (1.4 GiB) TX bytes:57525792 (54.8 MiB)
|
|
|
|
# adjust CPU load balancing
|
|
root@OpenWrt:~# echo 2 > /sys/class/net/rmnet_mhi0/queues/rx-0/rps_cpus
|
|
root@OpenWrt:~# echo 4 > /sys/class/net/rmnet_mhi0.1/queues/rx-0/rps_cpus
|
|
root@OpenWrt:~# echo 2000 > /proc/sys/net/core/netdev_max_backlog
|
|
root@OpenWrt:~# cat /sys/class/net/rmnet_mhi0/queues/rx-0/rps_cpus
|
|
2
|
|
root@OpenWrt:~# cat /sys/class/net/rmnet_mhi0.1/queues/rx-0/rps_cpus
|
|
4
|
|
root@OpenWrt:~# cat /proc/sys/net/core/netdev_max_backlog
|
|
2000
|