[pkg-fso-commits] [SCM] FSO frameworkd Debian packaging branch, master, updated. milestone4-368-g700ab82
Michael 'Mickey' Lauer
mickey at vanille-media.de
Mon Feb 2 18:51:53 UTC 2009
The following commit has been merged in the master branch:
commit f78a6d92cf8c6e3ae7b2f846a0d6206b4702abdd
Author: Michael 'Mickey' Lauer <mickey at vanille-media.de>
Date: Fri Jan 9 20:43:18 2009 +0100
ogsmd: [TI CALYPSO] resend the DSP command on every call setup.
NOTE: I'm not convinced and there is no evidence that this is necessary,
but I'm sick of discussing this over and over again, hence it goes in.
This closes #253 for good.
diff --git a/ChangeLog b/ChangeLog
index abfeb9c..c0c467b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2009-01-09 Michael Lauer <mlauer at vanille-media.de>
+
+ * [ogsmd] [TI CALYPSO] DSP command gets now resent before call setup.
+
2009-01-07 Michael Lauer <mlauer at vanille-media.de>
* [ogsmd] Implemented org.freesmartphone.GSM.Monitoring.* as stub
diff --git a/framework/subsystems/ogsmd/modems/ti_calypso/channel.py b/framework/subsystems/ogsmd/modems/ti_calypso/channel.py
index f57bb87..eff17fb 100644
--- a/framework/subsystems/ogsmd/modems/ti_calypso/channel.py
+++ b/framework/subsystems/ogsmd/modems/ti_calypso/channel.py
@@ -71,6 +71,10 @@ AEC_NR_MAP = { \
"none": "0001",
}
+def createDspCommand():
+ dspMode = config.getValue( "ogsmd", "ti_calypso_dsp_mode", "aec+nr" )
+ return "%N" + AEC_NR_MAP.get( dspMode, "aec+nr" )
+
#=========================================================================#
class CalypsoModemChannel( AbstractModemChannel ):
#=========================================================================#
@@ -264,8 +268,7 @@ class UnsolicitedResponseChannel( CalypsoModemChannel ):
else:
c.append( "%SLEEP=4" ) # sleep mode: enable all
- dspMode = config.getValue( "ogsmd", "ti_calypso_dsp_mode", "aec+nr" )
- c.append( "%N" + AEC_NR_MAP.get( dspMode, "aec+nr" ) )
+ c.append( createDspCommand() )
c = self._commands["sim"]
diff --git a/framework/subsystems/ogsmd/modems/ti_calypso/unsolicited.py b/framework/subsystems/ogsmd/modems/ti_calypso/unsolicited.py
index 0daf2a7..dd2dcb9 100644
--- a/framework/subsystems/ogsmd/modems/ti_calypso/unsolicited.py
+++ b/framework/subsystems/ogsmd/modems/ti_calypso/unsolicited.py
@@ -9,7 +9,10 @@ GPLv2 or later
__version__ = "0.8.3"
+from .channel import createDspCommand
+
from framework.config import config
+from ogsmd.modems import currentModem
from ogsmd.modems.abstract.unsolicited import AbstractUnsolicitedResponseDelegate
from ogsmd.gsm import const
from ogsmd.helpers import safesplit
@@ -66,7 +69,6 @@ class UnsolicitedResponseDelegate( AbstractUnsolicitedResponseDelegate ):
gobject.source_remove( self.recampingTimeout )
self.recampingTimeout = gobject.timeout_add_seconds( 60*60, self._reactivateDeepSleep )
-
def _reactivateDeepSleep( self ):
logger.info( "Reenabling deep sleep mode on TI Calypso (giving it another chance)" )
self.lastStatus = "busy"
@@ -247,9 +249,13 @@ class UnsolicitedResponseDelegate( AbstractUnsolicitedResponseDelegate ):
info.update( { "status": "outgoing" } )
elif msgType == "3": # Sometimes setup is not sent?!
info.update( { "status": info["direction"] } )
- if msgType in ( "013689" ):
+ if msgType in "013689":
self._callHandler.statusChangeFromNetwork( int(callId), info )
+ # DSP bandaid
+ if msgType in "34":
+ currentModem().channel( "MiscMediator" ).enqueue( createDspCommand() )
+
# %CPRI: 1,2
def percentCPRI( self, righthandside ):
gsm, gprs = safesplit( righthandside, ',' )
diff --git a/framework/subsystems/testing/testing.py b/framework/subsystems/testing/testing.py
index 12b7440..e0af4d7 100644
--- a/framework/subsystems/testing/testing.py
+++ b/framework/subsystems/testing/testing.py
@@ -92,6 +92,16 @@ class Resource( resource.Resource ):
d = {"foo":"bar"}
dbus_ok( [d,d] )
+ @dbus.service.method( DBUS_INTERFACE, "", "",
+ async_callbacks=( "dbus_ok", "dbus_error" ) )
+ def SignalTest( self, dbus_ok, dbus_error ):
+ self.Test( dict(yo="kurt") )
+ dbus_ok()
+
+ @dbus.service.signal( DBUS_INTERFACE, "a{sv}" )
+ def Test( self, asv ):
+ logger.info( "emitting signal" )
+
#============================================================================#
def factory(prefix, controller):
#============================================================================#
--
FSO frameworkd Debian packaging
More information about the pkg-fso-commits
mailing list