<div dir="ltr">Ok, thanks for the quick reply, but does it mean that I cannot use the same client for different calls?<br>something like this for example?<br><span style="color:rgb(80,0,80)"><br></span><span style="color:rgb(80,0,80)">client_cb(...)</span><span style="color:rgb(80,0,80)"><br></span>{<br>....<br style="color:rgb(80,0,80)"><span style="color:rgb(80,0,80)">qmi_client_dms_swi_get_current</span><span style="color:rgb(80,0,80)">_firmware(...</span><br style="color:rgb(80,0,80)"><span style="color:rgb(80,0,80)">qmi_client_dms_get_operating_m</span><span style="color:rgb(80,0,80)">ode(...</span><br>....<br>}<span style="color:rgb(80,0,80)"><br>qmi_device_allocate_client</span><span style="color:rgb(80,0,80)">(dev</span><span style="color:rgb(80,0,80)">, QMI_SERVICE_DMS, ...., client_cb,..)</span><br><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Dec 6, 2022 at 2:13 PM Aleksander Morgado <<a href="mailto:aleksandermj@chromium.org">aleksandermj@chromium.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hey<br>
<br>
><br>
> Is it allowed to create one QMI device but have multiple clients?<br>
><br>
> In other words, is this kinda code flow allowed with libqmi?<br>
><br>
> qmi_device_new()<br>
> qmi_device_open()<br>
> qmi_device_allocate_client(dev, QMI_SERVICE_DMS, ....)<br>
><br>
> qmi_client_dms_swi_get_current_firmware<br>
> qmi_client_dms_get_operating_mode<br>
><br>
> qmi_device_allocate_client(dev, QMI_SERVICE_UIM, ....)<br>
> qmi_device_allocate_client(dev, QMI_SERVICE_WDS, ....)<br>
><br>
<br>
Of course it is yes, that is what ModemManager does really.<br>
You can even have different clients for the same service (e.g. more<br>
than one QmiClientWds) created from the same QmiDevice.<br>
<br>
-- <br>
Aleksander<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"> </div>