Commit Graph

123 Commits

Author SHA1 Message Date
Lars Poeschel a01613ad13 atmodem: Get strength and tech the quectel way on EC21
I had some trouble getting network strengh and access technology the
standard way on Quectel EC21. It does work - but only kind of. I did not
get URCs when I am sure I should. This way through CIEV, CIND and CMER
is also not documented in Quectel documentation, so I suspect this to be
unsupported.
This is now changed to the "quectelish" way of gettings those values and
this does work more fine-grained and reliable on the Quectel EC21.
2020-08-11 10:47:58 -05:00
Jonas Bonn a86d6ffede atmodem: export struct netreg
In order to do inheritance by composition.
2019-07-19 01:38:56 -05:00
Jonas Bonn 3e55559301 atmodem: export generic netreg funcs
An upcoming netreg driver for uBlox modems will need to override the
probe method in order to set itself up, but for further functionality
the "generic" AT implementations are sufficient.  The easiest way to do
this is to just set up a vtable with a custom probe implementation and
defer all other methods to the common/generic methods.

The problem is that the AT methods are not actually exported.  This
generic AT functionality was not intended to be hooked directly into
other drivers.

This patch exports all the methods of the atmodem network-registration
driver implementation so that they can be used as generic/common
implementations for other drivers.
2019-07-19 01:38:52 -05:00
Jonas Bonn a5adf39aa1 atmodem: drop vendor type for Toby L2 model
The 'Toby L2'-specific vendor type is used only to prevent the CMER
command from attempting to set mode '3'.  For all u-blox models, mode
'3' is just an alias for mode '1'.  As such, mode '1' can be used in
place of mode '3', removing the model-specific quirk in favour of a
vendor-specific quirk.

With this change, the L2-specific vendor type is no longer needed.
2019-03-13 13:19:15 -05:00
Jonas Bonn a88ebf4913 Fix whitespace weirdness 2019-03-13 13:13:27 -05:00
Giacinto Cifelli 713585963f atmodem: Change cinterion prefix to gemalto 2018-10-29 15:00:44 -05:00
Giacinto Cifelli a429950f2f atmodem: change vendor cinterion to gemalto 2018-10-29 15:00:05 -05:00
Jonas Bonn 3beeff758d treewide: Remove superfluous use of _GNU_SOURCE
There are a large number of files in the tree that define _GNU_SOURCE
despite not actually using features hidden behind this flag.  This patch
removes all these definitions in one fell swoop...
2018-10-17 10:01:57 -05:00
Jonas Bonn 67701b1c40 drivers: constify vtables
The driver vtables are read-only structures.  This patch declares them as
'const' allowing the compiler to (optionally) put them in the RELRO
section.  RELRO pages may be marked as read-only by the linker after
the relocations have been done ensuring that they aren't inadvertently
or maliciously altered at runtime.
2018-10-17 09:56:27 -05:00
Anirudh Gargi 276330abc4 atmodem: add EUTRAN tech for creg read status
Add handling for CREG's status to get the technology type. CREG
notify URC does not need additional handling as 'AcT' is mapped
one-on-one to tech.
2018-09-27 07:35:17 -05:00
Mariem Cherif ce37f864f3 gemalto: acquire the network technology 2018-03-16 09:24:42 -05:00
Christophe Ronco b3e4837641 atmodem: correctly report lte bearer for huawei modems 2017-09-07 11:41:01 -05:00
Dragos Tatulea 6970a289c2 atmodem: add support for U-Blox TOBY L2 modems
Besides exceptions below, act like normal U-Blox devices.

gprs-context: don't set auth for TOBY L2. U-Blox Toby L2
doesn't support PAP/CHAP APN auth method.

atmodem: TOBY L2 supports only CMER mode 1. Also chaged original
mode variable to ind, which is a more appropriate name.
mode is what is being set first.
2016-03-16 13:15:08 -05:00
Alex J Lennon 4242f6ee72 atmodem: Add Cinterion quirk for signal strength
Implement OFONO_VENDOR_CINTERION specific vendor support to register
textual +CIEV indications for signal strength using AT^SIND command.
2015-05-13 09:57:53 -05:00
Denis Kenzior 85cdacb509 netreg: Turn off CIEV indications other than rssi 2013-11-26 16:25:03 -06:00
Denis Kenzior b131cfde52 atmodem: Fix whitespace violation 2013-07-22 15:56:28 -05:00
Anthony Viallard d1ac1ba3d4 SIMCOM: add a quirk for signal strength reporting
We must tell we want the signal strength reporting using
AT+AUTOCSQ command (ref. "SIM5215_SIM5216_ATC_V1.18.pdf - §10.7").
2013-07-22 15:48:59 -05:00
Denis Kenzior 2fa7a4a66e netreg: Fix broken CMER behavior on MBM 2013-01-21 10:23:34 -06:00
Marcel Holtmann 48a5fec5cc atmodem: Monitor IFX technology and band changes 2012-11-23 16:20:15 +01:00
Denis Kenzior b274e74102 netreg: Remove netreg atom in case init fails 2012-09-11 23:21:48 -05:00
Denis Kenzior bb0f308223 netreg: Don't register for CIEV twice 2012-09-11 23:20:53 -05:00
Christopher Vogl edbf04cded netreg: Add telit version for ciev notification 2012-09-11 23:16:32 -05:00
Christopher Vogl b87619a43a netreg: Query and select supported CMER modes 2012-09-11 22:54:43 -05:00
Marcel Holtmann ec4ba8a6fc atmodem: Enable Icera radio access technology updates 2012-05-26 16:15:34 +02:00
Marcel Holtmann 2c2871cd9e atmodem: Fix parsing of Icera network state updates 2012-05-25 14:46:41 +02:00
Marcel Holtmann 119b4434b4 atmodem: Add support for Icera network status updates 2012-05-24 05:00:01 +02:00
Marcel Holtmann a96422cd50 atmodem: Add support for Icera network time handling 2012-05-24 04:58:35 +02:00
Marcel Holtmann 1f9f161e0b atmodem: Fix issue with AT+CREG=? and AT+CGREG=? handling
Some modems might see an interim +CREG: or +CGREG: notification when
querying the supported modes.

  Aux: > AT+CFUN=1\r
  Aux: < \r\nOK\r\n
  Aux: > AT+CREG=?\r
  Aux: < \r\n+CREG: 2\r\n
  Aux: < \r\n+CREG: (0-2)\r\nOK\r\n
  Unable to initialize Network Registration

To make this work, skip to the first line with an actual range value.
2012-05-24 03:28:50 +02:00
Marcel Holtmann 929c529716 atmodem: The Icera modem does not support CIND reporting 2012-05-22 12:03:00 +02:00
Marcel Holtmann 04ab1b2863 atmodem: Use CSQ based notification for IFX signal strength
Since the XCIEV notifications are unclear, use XCSQ notifcations to
report signal strength updates.
2012-02-16 08:20:29 +01:00
Marcel Holtmann bba5a1a000 atmodem: Ignore results from IFX radio signal strength indication
It seems the that XCIEV notification actually returns results from XCSQ
and not the described range 0-7. This makes this notification rather
useless to report signal strength.
2012-02-16 08:15:48 +01:00
Marcel Holtmann 1ed0b9997c atmodem: Fix handling of IFX signal strength indication 2012-02-14 15:23:59 +01:00
Marcel Holtmann 286b4a8530 atmodem: Add debug for IFX signal strength reporting 2012-02-14 14:53:51 +01:00
Renat Zaripov a81490560b atmodem: Add SIMCOM vendor quirk
Adding vendor quirk for SIMCOM SIM900 modem module.
2012-01-11 23:48:24 -06:00
Christopher Vogl 750658f23f telit: use CIND "rssi" indicator instead of "signal"
"signal" indicator permanently reports 99 (not measurable).
2011-12-15 22:37:10 -06:00
Marcel Holtmann 4e77afffb3 drivers: Update copyright information 2011-10-10 13:39:48 -07:00
Marcel Holtmann be747df578 atmodem: Samsung devices do not support CIND signal strength reporting 2011-08-09 16:50:29 -07:00
Marcel Holtmann 45e3dc1b3e atmodem: Add support for ZTE technology reporting 2011-08-04 00:39:29 +02:00
Marcel Holtmann eea276a0a8 atmodem: Enable timezone reporting for ZTE modems 2011-08-03 23:26:53 +02:00
Marcel Holtmann a69690b3b5 atmodem: Add Huawei specific technology reporting 2011-07-29 13:11:44 +02:00
Marcel Holtmann 95c9e12da2 atmodem: Add support for Huawei network time reports 2011-07-25 16:53:03 +02:00
Bernhard Guillon 128f96d097 network-registration.c: add telit support
*add support for CIND=? tokens like ("signal",(0-7,99))
*add telit quirk for token encapsulation e.g.
    (("one",(0-7,99)),("two",(0-7,99)))
2011-06-06 17:50:03 -05:00
Jeevaka Badrappan 97eea8144b atmodem: fix issue in time reporting with ifx 2011-03-18 09:51:57 -07:00
Jeevaka Badrappan 4258fb5915 atmodem: remove NULL check 2011-01-29 18:39:37 +01:00
Marcel Holtmann 89c4ea6130 atmodem: Add support for technology reporting via CNTI 2011-01-22 15:03:12 +01:00
Marcel Holtmann 62686f7719 atmodem: Add support for Gobi technology change handling 2011-01-22 13:12:15 +01:00
Aki Niemi 56b428dcd5 atmodem: Remove deregister implementation 2011-01-20 09:55:23 -06:00
Jeevaka Badrappan 3ae5e46b69 atmodem: fix signal strength issue with ifx 2011-01-18 16:05:29 +01:00
Jeevaka Badrappan b97676acc3 atmodem: M15 coding style fix 2011-01-12 08:06:58 -08:00
Marcel Holtmann 39599b9106 netreg: Report timezone updates if available 2010-12-26 11:47:32 -08:00