€•DŒsphinx.addnodes”Œdocument”“”)”}”(Œ rawsource”Œ”Œchildren”]”(Œ translations”Œ LanguagesNode”“”)”}”(hhh]”(hŒ pending_xref”“”)”}”(hhh]”Œdocutils.nodes”ŒText”“”ŒChinese (Simplified)”…””}”Œparent”hsbaŒ attributes”}”(Œids”]”Œclasses”]”Œnames”]”Œdupnames”]”Œbackrefs”]”Œ refdomain”Œstd”Œreftype”Œdoc”Œ reftarget”Œ7/translations/zh_CN/networking/device_drivers/wwan/iosm”Œmodname”NŒ classname”NŒ refexplicit”ˆuŒtagname”hhh ubh)”}”(hhh]”hŒChinese (Traditional)”…””}”hh2sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ7/translations/zh_TW/networking/device_drivers/wwan/iosm”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒItalian”…””}”hhFsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ7/translations/it_IT/networking/device_drivers/wwan/iosm”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒJapanese”…””}”hhZsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ7/translations/ja_JP/networking/device_drivers/wwan/iosm”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒKorean”…””}”hhnsbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ7/translations/ko_KR/networking/device_drivers/wwan/iosm”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒPortuguese (Brazilian)”…””}”hh‚sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ7/translations/pt_BR/networking/device_drivers/wwan/iosm”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubh)”}”(hhh]”hŒSpanish”…””}”hh–sbah}”(h]”h ]”h"]”h$]”h&]”Œ refdomain”h)Œreftype”h+Œ reftarget”Œ7/translations/sp_SP/networking/device_drivers/wwan/iosm”Œmodname”NŒ classname”NŒ refexplicit”ˆuh1hhh ubeh}”(h]”h ]”h"]”h$]”h&]”Œcurrent_language”ŒEnglish”uh1h hhŒ _document”hŒsource”NŒline”NubhŒcomment”“”)”}”(hŒ%SPDX-License-Identifier: GPL-2.0-only”h]”hŒ%SPDX-License-Identifier: GPL-2.0-only”…””}”hh·sbah}”(h]”h ]”h"]”h$]”h&]”Œ xml:space”Œpreserve”uh1hµhhh²hh³ŒQ/var/lib/git/docbuild/linux/Documentation/networking/device_drivers/wwan/iosm.rst”h´Kubh¶)”}”(hŒ'Copyright (C) 2020-21 Intel Corporation”h]”hŒ'Copyright (C) 2020-21 Intel Corporation”…””}”hhÈsbah}”(h]”h ]”h"]”h$]”h&]”hÅhÆuh1hµhhh²hh³hÇh´KubhŒtarget”“”)”}”(hŒ.. _iosm_driver_doc:”h]”h}”(h]”h ]”h"]”h$]”h&]”Œrefid”Œiosm-driver-doc”uh1hÖh´Khhh²hh³hÇubhŒsection”“”)”}”(hhh]”(hŒtitle”“”)”}”(hŒ+IOSM Driver for Intel M.2 PCIe based Modems”h]”hŒ+IOSM Driver for Intel M.2 PCIe based Modems”…””}”(hhëh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1héhhæh²hh³hÇh´K ubhŒ paragraph”“”)”}”(hX|The IOSM (IPC over Shared Memory) driver is a WWAN PCIe host driver developed for linux or chrome platform for data exchange over PCIe interface between Host platform & Intel M.2 Modem. The driver exposes interface conforming to the MBIM protocol [1]. Any front end application ( eg: Modem Manager) could easily manage the MBIM interface to enable data communication towards WWAN.”h]”hX|The IOSM (IPC over Shared Memory) driver is a WWAN PCIe host driver developed for linux or chrome platform for data exchange over PCIe interface between Host platform & Intel M.2 Modem. The driver exposes interface conforming to the MBIM protocol [1]. Any front end application ( eg: Modem Manager) could easily manage the MBIM interface to enable data communication towards WWAN.”…””}”(hhûh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hùh³hÇh´K hhæh²hubhå)”}”(hhh]”(hê)”}”(hŒ Basic usage”h]”hŒ Basic usage”…””}”(hj h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1héhj h²hh³hÇh´Kubhú)”}”(hX/MBIM functions are inactive when unmanaged. The IOSM driver only provides a userspace interface MBIM "WWAN PORT" representing MBIM control channel and does not play any role in managing the functionality. It is the job of a userspace application to detect port enumeration and enable MBIM functionality.”h]”hX3MBIM functions are inactive when unmanaged. The IOSM driver only provides a userspace interface MBIM “WWAN PORT†representing MBIM control channel and does not play any role in managing the functionality. It is the job of a userspace application to detect port enumeration and enable MBIM functionality.”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hùh³hÇh´Khj h²hubhú)”}”(hŒzExamples of few such userspace application are: - mbimcli (included with the libmbim [2] library), and - Modem Manager [3]”h]”hŒzExamples of few such userspace application are: - mbimcli (included with the libmbim [2] library), and - Modem Manager [3]”…””}”(hj(h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hùh³hÇh´Khj h²hubhú)”}”(hŒÛManagement Applications to carry out below required actions for establishing MBIM IP session: - open the MBIM control channel - configure network connection settings - connect to network - configure IP network interface”h]”hŒÛManagement Applications to carry out below required actions for establishing MBIM IP session: - open the MBIM control channel - configure network connection settings - connect to network - configure IP network interface”…””}”(hj6h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hùh³hÇh´Khj h²hubeh}”(h]”Œ basic-usage”ah ]”h"]”Œ basic usage”ah$]”h&]”uh1hähhæh²hh³hÇh´Kubhå)”}”(hhh]”(hê)”}”(hŒ"Management application development”h]”hŒ"Management application development”…””}”(hjOh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1héhjLh²hh³hÇh´K#ubhú)”}”(hŒŽThe driver and userspace interfaces are described below. The MBIM protocol is described in [1] Mobile Broadband Interface Model v1.0 Errata-1.”h]”hŒŽThe driver and userspace interfaces are described below. The MBIM protocol is described in [1] Mobile Broadband Interface Model v1.0 Errata-1.”…””}”(hj]h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hùh³hÇh´K$hjLh²hubhå)”}”(hhh]”(hê)”}”(hŒ"MBIM control channel userspace ABI”h]”hŒ"MBIM control channel userspace ABI”…””}”(hjnh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1héhjkh²hh³hÇh´K(ubhå)”}”(hhh]”(hê)”}”(hŒ /dev/wwan0mbim0 character device”h]”hŒ /dev/wwan0mbim0 character device”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1héhj|h²hh³hÇh´K+ubhú)”}”(hŒôThe driver exposes an MBIM interface to the MBIM function by implementing MBIM WWAN Port. The userspace end of the control channel pipe is a /dev/wwan0mbim0 character device. Application shall use this interface for MBIM protocol communication.”h]”hŒôThe driver exposes an MBIM interface to the MBIM function by implementing MBIM WWAN Port. The userspace end of the control channel pipe is a /dev/wwan0mbim0 character device. Application shall use this interface for MBIM protocol communication.”…””}”(hjh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hùh³hÇh´K,hj|h²hubeh}”(h]”Œdev-wwan0mbim0-character-device”ah ]”h"]”Œ /dev/wwan0mbim0 character device”ah$]”h&]”uh1hähjkh²hh³hÇh´K+ubhå)”}”(hhh]”(hê)”}”(hŒ Fragmentation”h]”hŒ Fragmentation”…””}”(hj¦h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1héhj£h²hh³hÇh´K2ubhú)”}”(hŒ}The userspace application is responsible for all control message fragmentation and defragmentation as per MBIM specification.”h]”hŒ}The userspace application is responsible for all control message fragmentation and defragmentation as per MBIM specification.”…””}”(hj´h²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hùh³hÇh´K3hj£h²hubeh}”(h]”Œ fragmentation”ah ]”h"]”Œ fragmentation”ah$]”h&]”uh1hähjkh²hh³hÇh´K2ubhå)”}”(hhh]”(hê)”}”(hŒ/dev/wwan0mbim0 write()”h]”hŒ/dev/wwan0mbim0 write()”…””}”(hjÍh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1héhjÊh²hh³hÇh´K7ubhú)”}”(hŒnThe MBIM control messages from the management application must not exceed the negotiated control message size.”h]”hŒnThe MBIM control messages from the management application must not exceed the negotiated control message size.”…””}”(hjÛh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1hùh³hÇh´K8hjÊh²hubeh}”(h]”Œdev-wwan0mbim0-write”ah ]”h"]”Œ/dev/wwan0mbim0 write()”ah$]”h&]”uh1hähjkh²hh³hÇh´K7ubhå)”}”(hhh]”(hê)”}”(hŒ/dev/wwan0mbim0 read()”h]”hŒ/dev/wwan0mbim0 read()”…””}”(hjôh²hh³Nh´Nubah}”(h]”h ]”h"]”h$]”h&]”uh1héhjñh²hh³hÇh´K