[pkg-fso-commits] [SCM] FSO frameworkd Debian packaging branch, stabilization/milestone4, updated. milestone4-63-g97bd68d

Michael 'Mickey' Lauer mickey at vanille-media.de
Mon Feb 2 18:52:08 UTC 2009


The following commit has been merged in the stabilization/milestone4 branch:
commit 97bd68d4a2f3681dfb35647a62ca12dd8b287f8e
Author: Michael 'Mickey' Lauer <mickey at vanille-media.de>
Date:   Sat Dec 27 16:00:37 2008 +0100

    ogsmd: [TI CALYPSO] Add TI-Calypso specific configuration option "ti_calypso_dsp_mode" to configure
    DSP audio enhancements. Documentation for this option has been added to the sample configuration file.
    (Some lowlevel details can be found in framework/subsystems/ogsmd/modems/ti_calypso/channel.py)
    This closes FSO ticket #274 and #253.
    
    Conflicts:
    
    	ChangeLog
    	framework/subsystems/ogsmd/modems/ti_calypso/channel.py

diff --git a/ChangeLog b/ChangeLog
index d72d821..9559608 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,125 @@
+2008-12-27	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Refactored Modem.dataOptions() into "pppd-configuration" attribute in modem data storage.
+	* [ogsmd] Added TI-Calypso specific configuration option "ti_calypso_dsp_mode" to configure
+	  audio enhancements. Documentation for this option has been added to the sample configuration file.
+
+2008-12-24	Daniel Willmann	<daniel at totalueberwachung.de>
+
+	* [ogsmd] Added network access type to Provider Info (WARNING, breaks API!)
+	* [ogsmd] Support for Ericsson F3507g modem (as found in Thinkpads)
+	* [ogsmd] Preliminary support for Option UMTS cards
+
+2008-12-20	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Create qualcomm_msm modem abstraction based on singleline with minimal changes.
+
+2008-12-18	Michael Lauer	<mickey at openmoko.org>
+
+	* [ousaged] Check resume reason and launch emergency shutdown, if we
+	  woke up due to low battery. NOTE: This is only supported on Openmoko
+	  devices now. As there is no standard infrastructure for that in the
+	  kernel, we have to deal with device-specific solutions in lowlevel.py
+
+2008-12-17	Jan Luebbe      <jluebbe at debian.org>
+
+	* [otimed] Add simple timesync to NTP and GPS
+
+2008-12-12	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Implemented org.freesmartphone.GSM.Phone.[Start|Stop]AutoRegister()
+	  and its signal org.freesmartphone.GSM.Phone.ServiceStatus()
+	  This is a convenient way to ensure that ogsmd always tries to unlock the SIM
+	  and register with a provider, if necessary.
+	  (Corresponding functionality for Gprs is under discussion).
+
+2008-12-11	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Implemented org.freesmartphone.GSM.PDP.NetworkStatus()
+	* [ogsmd] Implemented org.freesmartphone.GSM.PDP.GetNetworkStatus()
+	* [ogsmd] Implemented org.freesmartphone.GSM.Network.TimeZoneReport()
+	* [ogsmd] Refactored PDP handling for more stability
+
+2008-12-06	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Added 'cid' and 'lac' results to org.freesmartphone.GSM.Network.GetStatus()
+	* [ogsmd] Implemented org.freesmartphone.GSM.SIM.GetIssuer()
+	  NOTE: Clients can now show the Mobile Virtual Network Operator instead of the
+	  actual service provider, if they want to. See e.g. FSO ticket #271.
+	* [ogsmd] Added codeToOperator function and a mobile network operator database
+	* [ogsmd] [FREESCALE NEPTUNE] Query our MNO database to show the alphanumeric operator name.
+
+2008-12-05	Michael Lauer	<mickey at openmoko.org>
+
+	* [odeviced] Implemented org.freesmartphone.Device.LED.SetNetworking(s,s) -> ()
+
+2008-12-04	Michael Lauer	<mickey at openmoko.org>
+
+	* Added necessary methods for a clean system -> subsystems -> objects shutdown.
+	* [ousaged] Disabled resource on shutdown.
+	* [ogsmd] Implemented org.freesmartphone.GSM.Device.[Get|Set]MicrophoneMuted
+
+2008-12-02	Michael Lauer	<mickey at openmoko.org>
+
+	* [onetworkd] Simple connection sharing now works. See
+	  org.freesmartphone.Network.StartConnectionSharingWithInterface(s) -> ()
+	  This fixes FSO ticket #244.
+	* [odeviced] Added two new resources: 'CPU' and 'Display':
+	  Requesting the CPU resource will prevent the idle notifier from falling
+	  into the 'suspend' state, requesting the Display resource will prevent
+	  the idle notifier from falling into the 'idle_dim' (and following) state(s).
+	  With these two resource, it now takes only one additional rule to prevent
+	  the system from suspending while on a call or a musicplayer is playing.
+	* [ousaged] org.freesmartphone.Usage.Suspend() now returns a value instead
+	  of timing out (call did not return before the actual suspend was triggered).
+	  As an inherent result, the suspend now occurs asynchronous.
+	  This fixes FSO ticket #215.
+	* [ousaged] Added org.freesmartphone.Usage.[Shutdown|Reboot]() -> ()
+	* [ousaged] Send signal org.freesmartphone.Usage.SystemAction()
+	  before suspending, after resuming, before shutting down, before rebooting.
+	  This fixes FSO ticket #287.
+
+2008-12-01	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Implement org.freesmartphone.GSM.Device.[Get|Set]SpeakerVolume
+
+2008-11-30	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Start with CINTERION MC75 support
+
+2008-11-28	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Revamped callhandling. Refactored the state-based call handler
+	  from TI Calypso (and Freescale Neptune) into a generic class that will
+	  be used from all modem abstractions. Ported singleline to use the new
+	  call handler. More tests needed for TI Calypso and Freescale Neptune.
+
+2008-11-27	Michael Lauer	<mickey at openmoko.org>
+
+	* [tests] Started with dbus API tests
+
+2008-11-23	Michael Lauer	<mickey at openmoko.org>
+
+	* [ogsmd] Added reinit method to abstract modem class,
+	   added hook for handling a HUP in the low level channel class,
+	   added reinitializing the TI Calypso modem class whenever
+	   a HUP on any MUXer channel has been detected (which means
+	   that the gsm0710muxd has probably been killed).
+	   NOTE: We now survive a killall gsm0710muxd transparently!
+
+2008-11-21	Michael Lauer	<mickey at openmoko.org>
+
+	* [odeviced] Fixed a couple of problems in the Audio problem and support new features
+	  such as a loop parameter and an optional length override (time in seconds).
+	  NOTE: Some codecs (i.e. machine emulators such as siddec) can not find out
+	  when a song ends, hence it will play forever until you stop it (or give
+	  it a length override, which is now possible).
+	  WARNING: API breakage in org.freesmartphone.Device.Audio.PlaySound()
+	* [oeventsd]: catch up with API breakage in odeviced/audio
+	* [rules]: override length for SID ring and message tunes
+	  This fixes FSO ticket #247 and the message notification tone only working
+	  for the first time in ms4(.1)
+
 2008-11-19	Tobias Gruetzmacher	<tobias-lists at 23.gs>
 
 	* Support audio file options in org.freesmartphone.Device.Audio
diff --git a/conf/example/frameworkd.conf b/conf/example/frameworkd.conf
index 0b9fbb5..3895900 100644
--- a/conf/example/frameworkd.conf
+++ b/conf/example/frameworkd.conf
@@ -57,10 +57,23 @@ disable = 0
 
 [ogsmd]
 disable = 0
-# chose your modem type, available types are: ti_calypso, freescale_neptune, (singleline, muxed4line)
+# chose your modem type, available types are: ti_calypso, freescale_neptune, singleline, muxed4line, option, ...
 modemtype = ti_calypso
-# if you have a ti_calypso, you can chose the deep sleep mode: valid values are: never, adaptive (default), always
+# if you have a ti_calypso, you can chose the deep sleep mode. Valid values are: never, adaptive (default), always
 ti_calypso_deep_sleep = adaptive
+# if you have a ti_calypso, you can choose the dsp mode for audio enhancement. Valid values are:
+#    "short-aec": Short Echo Cancellation (max)
+#    "long-aec":  Long Echo Cancellation (max)
+#    "long-aec:6db": Long Echo Cancellation (-6db)
+#    "long-aec:12db": Long Echo Cancellation (-12db)
+#    "long-aec:18db": Long Echo Cancellation (-18db)
+#    "nr": Noise Reduction (max)
+#    "nr:6db": Noise Reduction (-6db)
+#    "nr:12db": Noise Reduction (-12db)
+#    "nr:18db": Noise Reduction (-18db)
+#    "aec+nr": Long Echo Cancellation (max) plus Noise Reduction (max) [default]
+#    "none": No audio processing.
+ti_calypso_dsp_mode = aec+nr
 log_level = INFO
 
 [ogpsd]
diff --git a/framework/subsystems/ogsmd/modems/ti_calypso/channel.py b/framework/subsystems/ogsmd/modems/ti_calypso/channel.py
index 5ac93e3..e3b6d27 100644
--- a/framework/subsystems/ogsmd/modems/ti_calypso/channel.py
+++ b/framework/subsystems/ogsmd/modems/ti_calypso/channel.py
@@ -13,7 +13,7 @@ Module: channel
 TI Calypso specific modem channels
 """
 
-__version__ = "0.9.9.2"
+__version__ = "0.9.10.0"
 
 from framework.config import config
 
@@ -31,6 +31,47 @@ import logging
 logger = logging.getLogger('ogsmd')
 
 #=========================================================================#
+#  MMI_AEC_REQ : 0283 = Long AEC, 105 = SPENH, 187 = AEC+SPENH, 1 = STOP
+#      aec_control register bits | 0  0  Sa t2|t1 g3 g2 g1|g0 e2 e1 ak|
+#              bit 0 : ACK bit : set to 1 in order to warn DSP that a new command
+#              is present.
+#              bit 1 : enable AEC
+#              bit 2 : enable SPENH (= Speech Enhancement = noise reduction)
+#              bit 3 : additionnal AEC gain attenuation (lsb)
+#              bit 4 : additionnal AEC gain attenuation (msb)
+#              bit 5 : additionnal SPENH gain attenuation (lsb)
+#              bit 6 : additionnal SPENH gain attenuation (msb)
+#              bit 7 : reset trigger for AEC
+#              bit 8 : reset trigger for SPENH
+#              bit 9 : AEC selector 0 : short AEC, 1 : long AEC
+#
+#  for Short AEC        0083
+#  for long AEC         0283
+#  for long AEC  -6 dB  028B
+#  for long AEC  -12 dB 0293
+#  for long AEC  -18 dB 029B
+#  for SPENH            0105
+#  for SPENH -6 dB      0125
+#  for SPENH -12 dB     0145
+#  for SPENH -18 dB     0165
+#  for BOTH             0187
+#  for STOP ALL         0001 (all bits reset + ACK to 1 to warn the DSP)
+
+AEC_NR_MAP = { \
+    "short-aec":        "0083",
+    "long-aec":         "0283",
+    "long-aec:6db":     "028B",
+    "long-aec:12db":    "0293",
+    "long-aec:18db":    "029B",
+    "nr":               "0105",
+    "nr:6db":           "0125",
+    "nr:12db":          "0145",
+    "nr:18db":          "0165",
+    "aec+nr":           "0187",
+    "none":             "0001",
+    }
+
+#=========================================================================#
 class CalypsoModemChannel( AbstractModemChannel ):
 #=========================================================================#
     modem_communication_timestamp = 1
@@ -211,8 +252,6 @@ class UnsolicitedResponseChannel( CalypsoModemChannel ):
         c.append( "%CGREG=3" )
         c.append( "%CSTAT=1" )
         c.append( '@ST="-26"' ) # audio side tone: set to minimum
-        c.append( "%N028B" ) # Long Echo Cancellation: active, -6db
-        c.append( "%N0125" ) # Noise reduction: active, -6db
 
         deepSleepMode = config.getValue( "ogsmd", "ti_calypso_deep_sleep", "adaptive" )
         if deepSleepMode == "never":
@@ -220,7 +259,9 @@ class UnsolicitedResponseChannel( CalypsoModemChannel ):
         else:
             c.append( "%SLEEP=4" ) # sleep mode: enable all
 
-        # FIXME might enable %CPRI later
+        dspMode = config.getValue( "ogsmd", "ti_calypso_dsp_mode", "aec+nr" )
+        c.append( "%N" + AEC_NR_MAP.get( dspMode, "aec+nr" ) )
+
         c = self._commands["sim"]
 
         c = self._commands["suspend"]

-- 
FSO frameworkd Debian packaging



More information about the pkg-fso-commits mailing list