Commit Graph

48 Commits

Author SHA1 Message Date
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
John Ernberg 2db09e4e3f ifxmodem: Use g_slist_free_full 2016-04-22 15:21:11 -05:00
Denis Kenzior 68df0eb758 ifx: Fix the case of modem-originated call
During STK Set Up Call, we have modem-originated calls that do not go
through the core 'Dial' method.  Make sure the calls are still detected
in this case.
2012-11-28 10:31:15 -06:00
Denis Kenzior 2e51814f32 ifx: Add CSSI and CSSU support 2012-07-12 14:12:55 -05:00
Marcel Holtmann b88a621528 ifxmodem: Remove another usage g_utf8_validate 2012-02-10 09:42:54 +01:00
Denis Kenzior 9d666ccce0 ifx: Don't use g_utf8_validate
Emergency Numbers can only be digits, so there's no point to use the
'Hammer of Thor' that is g_utf8_validate when a much simpler function
will do the job just as well.
2012-02-10 00:38:37 -06:00
Denis Kenzior 7e42c5bbb0 ifx: Modify XLEMA behavior
XLEMA reports emergency numbers that are hardcoded (e.g. 112 and 911)
and that are already read from EFecc.  The additional emergency numbers
we are interested in should only come from the NVM or the network NITZ
update.
2012-02-09 22:34:02 -06:00
Marcel Holtmann cfdc96186e ifxmodem: Handle malformed emergency numbers
This might be either a modem firmware bug or the SIM card is provisioned
really badly, but the last entry contains garbage characters.

ofonod[20620]: Voice: < \r\n+XLEMA: 1,9,"112",,1\r\n\r\n+XLEMA: 2,9,"911",,1\r\n\r\n+XLEMA: 3,9,"000",57,1\r\n\r\n+XLEMA: 4,9,"08",49,1\r\n\r\n+XLEMA: 5,9,"112",49,1\r\n\r\n+XLEMA: 6,9,"118",0,1\r\n\r\n+XLEMA: 7,9,"119",0,1\r\n\r\n+XLEMA: 8,9,"911",0,1\r\n\r\n+XLEMA: 9,9,"999\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377",0,1\r\n

Fix this by just validating the string and cutting off once an invalid
character is found.
2012-02-10 02:15:16 +01:00
Marcel Holtmann 4e77afffb3 drivers: Update copyright information 2011-10-10 13:39:48 -07:00
Denis Kenzior a60c4df143 ifxmodem: Remove unneeded code 2011-06-06 18:06:10 -05:00
Denis Kenzior 1aaa5da906 ifxmodem: Fix minor style issue 2011-06-06 18:04:26 -05:00
Jeevaka Badrappan 377a512375 ifxmodem: emergency number list support 2011-06-06 17:57:58 -05:00
Jeevaka Badrappan 0930de9319 ifxmodem: add CNAP support 2011-02-11 11:21:12 -06:00
Jeevaka Badrappan 67f41014de ifxmodem: move call creation to xcallstat_notify 2011-02-08 11:52:38 -06:00
Jeevaka Badrappan 09780386d8 ifxmodem: remove colp handling done inside atd_cb 2011-02-07 16:56:53 -06:00
Jeevaka Badrappan 9e944f550c ifxmodem: add handling of XCOLP notification 2011-02-07 16:55:33 -06:00
Jeevaka Badrappan 2037f5515c ifxmodem: fix issue with gatchat usage 2011-02-07 15:40:53 -06:00
Jeevaka Badrappan 021e8836b8 ifxmodem: M16 coding style fix 2011-02-05 07:04:53 -08:00
Jeevaka Badrappan b4c8d107ad ifxmodem: Use defined call_status enum 2011-02-05 05:09:09 -08:00
Lucas De Marchi 641a6d98be ifxmodem: use ofono_call initializer 2011-02-01 18:31:36 +01:00
Jeevaka Badrappan 52e46e42ff ifxmodem: remove NULL check 2011-01-29 18:39:37 +01:00
Jeevaka Badrappan 12c3cf6969 voicecall: remove ofono_cug_option 2011-01-26 16:38:15 -06:00
Jeevaka Badrappan e7367d7ae1 ifxmodem: M15 coding style fix 2011-01-12 08:06:58 -08:00
Denis Kenzior c37f155478 ifx: Take out unused defines 2010-12-16 18:40:18 -06:00
Lucas De Marchi b82a7f8511 drivers: explicitly compare pointers to NULL
This patch was generated by the following semantic patch
(http://coccinelle.lip6.fr/)

// <smpl>
@fix disable is_null,isnt_null1@
expression *E;
@@

- !E
+ E == NULL
// </smpl>
2010-11-29 11:37:09 -06:00
Marcel Holtmann cada693dc8 ifxmodem: Enable emergency call state notifications
This enables the Infineon specific emergency call state notifications so
that they show up in the traces when this happens. No logic to handle
them properly is implemented.
2010-10-29 13:56:09 +02:00
Marcel Holtmann b433249763 ifxmodem: Enable Calling Name Presentation (CNAP) notifications
This enables the CNAP notifications so that they show up in the traces
if used by a network. No logic is implemented to handle them.
2010-10-28 18:10:15 +02:00
Marcel Holtmann b7fbef011b ifxmodem: Send DTMF commands without quotes
The AT+VTS command takes a single character and should not use quotes.
2010-10-13 08:24:13 +03:00
Marcel Holtmann fb864c91c0 ifxmodem: Remove setting of XPROGRESS notifications
The XPROGRESS notifcations are now handled inside an Infineon specific
audio settings driver. So no need to do that in the the voice call
driver as well.
2010-09-30 00:21:23 +09:00
Denis Kenzior ddb32c99ab ifx: ifx_chup should send a +CHUP 2010-09-28 16:39:58 -05:00
Marcel Holtmann 11154dfea0 ifxmodem: Enable audio related progress information
This is using AT+XPROGRESS=1 to enable the audio related notifications
of the modem. None of these information is currently used. This command
is only present to have these details show up in the debug logs.
2010-09-27 23:33:58 +09:00
Marcel Holtmann 6d2b2dcc4a ifxmodem: Two more cleanups 2010-09-27 08:06:48 +09:00
Marcel Holtmann cfca38bad1 ifxmodem: Some cleanups in voice call driver 2010-09-27 08:03:40 +09:00
Denis Kenzior 9620b00e77 ifx: Fix double free issue 2010-09-26 07:41:06 -05:00
Marcel Holtmann 554344b453 ifxmodem: Fix name of voice call driver 2010-09-25 11:29:47 +09:00
Denis Kenzior 71fb9c74c6 ifx: Take out the vendor field in voicecall driver 2010-09-24 00:30:02 -05:00
Denis Kenzior 6db4483f26 ifx: Assume CLIP always arrives
If the CLIP always arrives after a CRING, then we do not ever need to
poll CLCC.
2010-09-24 00:30:02 -05:00
Denis Kenzior 4b134bd15f ifx: Don't bother polling on an ATD
The core can handle stateless drivers that do not keep clip state, in
the case of IFX we can skip the poll after ATD for finding out our CLIP
and just keep it as invalid / obtained from COLP.  The core should do
the right thing.
2010-09-24 00:29:59 -05:00
Denis Kenzior 7ab1258a76 ifx: Update comment 2010-09-24 00:08:32 -05:00
Denis Kenzior 44f31d7e91 ifx: xcallstat should notify active->held 2010-09-24 00:08:30 -05:00
Denis Kenzior 26d6de7f53 ifx: Remove a few CLCC polls
Polling here is no longer needed due to XCALLSTAT
2010-09-23 23:53:41 -05:00
Denis Kenzior 1fc2216bfd ifx: Don't bother using RING
We enable CRC=1, so only CRING should be sent
2010-09-23 23:53:41 -05:00
Denis Kenzior 6b10d14402 ifx: IFX provides hangup_all and hangup_active 2010-09-23 23:53:41 -05:00
Denis Kenzior e1ee41b654 ifx: IFX provides swap_without_accept using CHLD=6 2010-09-23 23:53:40 -05:00
Denis Kenzior 6d37663713 ifx: No need to register to standard notifications
XCALLSTAT tells us when a call has been disconnected
2010-09-23 23:53:40 -05:00
Denis Kenzior 9d70f936e9 ifx: Use none_prefix on other init commands 2010-09-23 23:53:40 -05:00
Denis Kenzior 1f68dcabeb ifx: Add IFX proprietory XCALLSTAT indicator 2010-09-23 23:53:38 -05:00
Denis Kenzior 8028a0b788 ifx: Copy voicecall driver from atmodem
IFX is a fairly bone stock AT based modem so the atmodem driver is a
good start.
2010-09-23 21:56:23 -05:00