All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH qmi lte v3 0/6] QMI LTE series
@ 2017-04-15 15:34 Jonas Bonn
  2017-04-15 15:34 ` [PATCH qmi lte v3 0/7] " Jonas Bonn
                   ` (6 more replies)
  0 siblings, 7 replies; 21+ messages in thread
From: Jonas Bonn @ 2017-04-15 15:34 UTC (permalink / raw)
  To: ofono

[-- Attachment #1: Type: text/plain, Size: 2210 bytes --]

Changes since v2:
* Revert callback data setup changes; the original model was fine so
  this amounted mostly to churn and, unfortunately, ended up introducing
  memory leaks
* Use ofono_gprs_context_deactivated in the detach_shutdown path instead
  of modifying release_active_contexts()
* Add support for roaming registration state

Original cover letter follows:

LTE is different from other 'GPRS' technologies in that a default bearer
always gets set up when the modem registers to the network.  Ofono has
some support for this and this series tries to set this up for QMI
modems.

The key to understanding this series is to understand that QMI modems
do not automatically enable the network interface when connecting to
an LTE network, even though the default bearer is already set up.  A
call to "start network" needs to be made in order to allow packets to
flow.  So the jist of this series is:

i) detect network registration to LTE network
ii) call ofono_gprs_cid_activated
iii) in read_settings, start by calling "start network"

...and then there are some other adjustments in the series to make
this all work.

I've tested this with my EC21, both on LTE and UMTS networks.  It
all seems to work, including moving out of network connectivity and
bringing the modem repeatedly online/offline.

One open question at this point:

* What happens if the connection manager calls deactivate_context
on the default bearer context?  I don't see that any other drivers
guard against this, and the QMI driver will happily stop the network
interface even though the default bearer is still up in the background.

Jonas Bonn (6):
  qmi: free cb_data on error
  qmi: implement detach_shutdown method
  qmi: activate default bearer context for LTE networks
  qim: use named status value
  qmi: stop listening to packet service notifications
  qmi: consolidate ss_info handling functions

 drivers/qmimodem/gprs-context.c         |  58 ++++++--------
 drivers/qmimodem/gprs.c                 | 135 ++++++++++++++++++++++++--------
 drivers/qmimodem/network-registration.c |  53 ++++++-------
 3 files changed, 146 insertions(+), 100 deletions(-)

-- 
2.9.3


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2017-04-17 20:19 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-04-15 15:34 [PATCH qmi lte v3 0/6] QMI LTE series Jonas Bonn
2017-04-15 15:34 ` [PATCH qmi lte v3 0/7] " Jonas Bonn
2017-04-15 15:34 ` [PATCH qmi lte v3 1/6] qmi: free cb_data on error Jonas Bonn
2017-04-17 17:08   ` Denis Kenzior
2017-04-15 15:34 ` [PATCH qmi lte v3 2/6] qmi: implement detach_shutdown method Jonas Bonn
2017-04-17 17:10   ` Denis Kenzior
2017-04-15 15:34 ` [PATCH qmi lte v3 3/6] qmi: activate default bearer context for LTE networks Jonas Bonn
2017-04-17 17:37   ` Denis Kenzior
2017-04-17 19:57     ` Jonas Bonn
2017-04-17 20:12       ` Denis Kenzior
2017-04-17 20:17         ` Jonas Bonn
2017-04-15 15:34 ` [PATCH qmi lte v3 4/6] qim: use named status value Jonas Bonn
2017-04-17 17:12   ` Denis Kenzior
2017-04-15 15:34 ` [PATCH qmi lte v3 5/6] qmi: stop listening to packet service notifications Jonas Bonn
2017-04-17 17:19   ` Denis Kenzior
2017-04-17 19:45     ` Jonas Bonn
2017-04-17 19:51       ` Denis Kenzior
2017-04-17 20:05         ` Jonas Bonn
2017-04-17 20:19           ` Denis Kenzior
2017-04-15 15:34 ` [PATCH qmi lte v3 6/6] qmi: consolidate ss_info handling functions Jonas Bonn
2017-04-17 17:27   ` Denis Kenzior

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.