--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/accessoryservices/pluggeddisplay/tsrc/stubs/tvoutconfig/bwins/tvoutconfig_stubu.def Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,7 @@
+EXPORTS
+ ?TagAssign@STvOutConfigSharedData@@QAEXXZ @ 1 NONAME ; void STvOutConfigSharedData::TagAssign(void)
+ ?ZeroLoadDataNotTag@STvOutConfigSharedData@@QAEXXZ @ 2 NONAME ; void STvOutConfigSharedData::ZeroLoadDataNotTag(void)
+ ?TagCheckL@STvOutConfigSharedData@@QAEXXZ @ 3 NONAME ; void STvOutConfigSharedData::TagCheckL(void)
+ ?ApiVersion@CTvOutConfig@@SAIXZ @ 4 NONAME ; unsigned int CTvOutConfig::ApiVersion(void)
+ ?NewL@CTvOutConfig@@SAPAV1@XZ @ 5 NONAME ; class CTvOutConfig * CTvOutConfig::NewL(void)
+
--- a/accessoryservices/pluggeddisplay/tsrc/stubs/tvoutconfig/bwins/tvoutconfigu.def Tue Oct 12 15:02:43 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,7 +0,0 @@
-EXPORTS
- ?TagAssign@STvOutConfigSharedData@@QAEXXZ @ 1 NONAME ; void STvOutConfigSharedData::TagAssign(void)
- ?ZeroLoadDataNotTag@STvOutConfigSharedData@@QAEXXZ @ 2 NONAME ; void STvOutConfigSharedData::ZeroLoadDataNotTag(void)
- ?TagCheckL@STvOutConfigSharedData@@QAEXXZ @ 3 NONAME ; void STvOutConfigSharedData::TagCheckL(void)
- ?ApiVersion@CTvOutConfig@@SAIXZ @ 4 NONAME ; unsigned int CTvOutConfig::ApiVersion(void)
- ?NewL@CTvOutConfig@@SAPAV1@XZ @ 5 NONAME ; class CTvOutConfig * CTvOutConfig::NewL(void)
-
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/accessoryservices/pluggeddisplay/tsrc/stubs/tvoutconfig/eabi/tvoutconfig_stubu.def Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,11 @@
+EXPORTS
+ _ZN12CTvOutConfig10ApiVersionEv @ 1 NONAME
+ _ZN12CTvOutConfig4NewLEv @ 2 NONAME
+ _ZN22STvOutConfigSharedData18ZeroLoadDataNotTagEv @ 3 NONAME
+ _ZN22STvOutConfigSharedData9TagAssignEv @ 4 NONAME
+ _ZN22STvOutConfigSharedData9TagCheckLEv @ 5 NONAME
+ _ZTI15CTvOutConfigImp @ 6 NONAME ; #<TI>#
+ _ZTI23CTVOutStubEventListener @ 7 NONAME ; #<TI>#
+ _ZTV15CTvOutConfigImp @ 8 NONAME ; #<VT>#
+ _ZTV23CTVOutStubEventListener @ 9 NONAME ; #<VT>#
+
--- a/accessoryservices/pluggeddisplay/tsrc/stubs/tvoutconfig/eabi/tvoutconfigu.def Tue Oct 12 15:02:43 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-EXPORTS
- _ZN12CTvOutConfig10ApiVersionEv @ 1 NONAME
- _ZN12CTvOutConfig4NewLEv @ 2 NONAME
- _ZN22STvOutConfigSharedData18ZeroLoadDataNotTagEv @ 3 NONAME
- _ZN22STvOutConfigSharedData9TagAssignEv @ 4 NONAME
- _ZN22STvOutConfigSharedData9TagCheckLEv @ 5 NONAME
- _ZTI15CTvOutConfigImp @ 6 NONAME ; #<TI>#
- _ZTI23CTVOutStubEventListener @ 7 NONAME ; #<TI>#
- _ZTV15CTvOutConfigImp @ 8 NONAME ; #<VT>#
- _ZTV23CTVOutStubEventListener @ 9 NONAME ; #<VT>#
-
--- a/commonservices/PlatformEnv/platformver/src/versioninfo.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/commonservices/PlatformEnv/platformver/src/versioninfo.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -23,8 +23,8 @@
#include "platformverdebug.h"
// CONSTANTS
-_LIT( KS60ProductIDFiles, "z:\\system\\install\\series60v*.sis" );
-const TInt KS60ProductIDPos = 9; // Length of 'series60v'
+_LIT( KS60ProductIDFiles, "z:\\system\\install\\Symbianv*.sis" );
+const TInt KS60ProductIDPos = 8; // Length of 'Symbianv'
_LIT( KS60ProductIDSplitMark, "." ); // For splitting 'XX.YY' to 'XX' and 'YY'
--- a/commonservices/PlatformEnv/platformver/tsrc/platformvertest/src/platformvertestcases.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/commonservices/PlatformEnv/platformver/tsrc/platformvertest/src/platformvertestcases.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -51,7 +51,7 @@
// ============================= LOCAL FUNCTIONS ===============================
-_LIT( KS60ProductIDFiles, "z:\\system\\install\\series60v*.sis" );
+_LIT( KS60ProductIDFiles, "z:\\system\\install\\Symbianv*.sis" );
// -----------------------------------------------------------------------------
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devicesrv_plat/energymgmt_chipset_api/group/bld.inf Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,29 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: File that exports the files belonging to
+* Energy Management Chipset API
+*
+*/
+
+
+#include <platform_paths.hrh>
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+
+../inc/adc_chipset_api.h OS_LAYER_PLATFORM_EXPORT_PATH(adc_chipset_api.h)
+../inc/adc_types.h OS_LAYER_PLATFORM_EXPORT_PATH(adc_types.h)
+../inc/em_chipset_api.h OS_LAYER_PLATFORM_EXPORT_PATH(em_chipset_api.h)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devicesrv_plat/energymgmt_chipset_api/inc/adc_chipset_api.h Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,174 @@
+/*
+ Nokia/Devices/R&D/CT/Adaptation SW/BB
+ CONFIDENTIAL
+ Deliverable software
+
+
+
+ adc_chipset_api.h
+ --------------------------------
+
+ SW Include Document - Symbian OS
+
+
+
+ Document identification and location in Synergy/CM
+
+ Database: co1core
+
+ Object (this information is substituted by Synergy/CM):
+ %name: adc_chipset_api.h %
+ %cvtype: incl %
+ %instance: bh1dsgas_1 %
+ %version: 1 %
+ %date_modified: Wed Oct 06 17:16:07 2010 %
+
+ Copyright (c) Nokia. This material, including documentation and any related
+ computer programs, is protected by copyright controlled by Nokia.
+ All rights are reserved. Copying, including reproducing, storing, adapting or
+ translating, any or all of this material requires the prior written consent
+ of Nokia. This material also contains confidential information, which may not
+ be disclosed to others without the prior written consent of Nokia.
+ */
+
+/** @file
+ @brief Chipset API H Template
+
+ This is a header template for Chipset API work. This template should not be
+ used as a normal code template because the location of where the API is
+ documented is different in normal coding style! Doxygen commenting style tries
+ to be similar what Symbian is using for their kernel side development.
+
+ You can define here also the scope of the whole API see below, or you can
+ define the scope separately before the class or even before the function if
+ that is needed.
+
+ @publishedDeviceAbstraction
+ */
+
+#ifndef ADC_CHIPSET_API_H
+#define ADC_CHIPSET_API_H
+
+/* ---------------------------------------------------------------------------
+ *
+ * CONSTANTS
+ *
+ */
+
+/* Battery Voltage (VBAT) */
+#define HAL_ADC_CHIPSET_VBAT 0x01
+
+/* Battery Size Identification (BSI) */
+#define HAL_ADC_CHIPSET_BSI 0x04
+
+/* Battery TEMPerature (BTEMP) */
+#define HAL_ADC_CHIPSET_BTEMP 0x05
+
+/* Power Amplifier TEMPerature (PATEMP) */
+#define HAL_ADC_PATEMP 0x09
+
+/* Battery current (positive: current from battery to phone, negative: current running to the battery) */
+/* Ibat can be implemented as a physical or logical adc channel, in case of logical this channel is still used in calibration */
+#define HAL_ADC_CHIPSET_IBAT 0x0E
+
+/* PWB Temperature */
+#define HAL_ADC_CHIPSET_PWBTEMP 0x22
+
+/* Main channel */
+#define HAL_ADC_MAIN_CAL 0xFE
+
+#include <kernel.h>
+#include <platform.h>
+
+/* ---------------------------------------------------------------------------
+ *
+ * TYPES
+ *
+ */
+
+/*
+ * Type definition for the call-back function used writing to
+ * asynchronous em callback.
+ */
+typedef void (*HAL_ADC_CALLBACK)(TUint event, TInt p1, TAny* p2);
+
+/* ---------------------------------------------------------------------------
+ *
+ * FUNCTIONAL PROTOTYPES AND MACROS
+ *
+ */
+class TAdcHal
+ {
+
+ // Class declaration
+
+ /**
+ Implements AdcHal chipset
+ */
+
+public:
+
+ enum THalAdcCalType
+ {
+ EHalAdcCalAppliedVoltage = 1,
+ EHalAdcCalAppliedCurrent,
+ EHalAdcCalSensor
+ };
+
+ /* ---------------------------------------------------------------------------
+ *
+ * DATA STRUCTURES
+ *
+ */
+
+ class HAL_ADC_CAL_DATA_ELEMENT_TYPE
+ {
+ public:
+ TUint8 Channel;
+ TUint16 RawReading;
+ THalAdcCalType Type;
+ TInt32 ReferenceValue;
+ TInt32 Identification;
+ };
+
+ class HAL_ADC_CAL_DATA_TYPE
+ {
+ public:
+ TUint16 NumberOfElements;
+ HAL_ADC_CAL_DATA_ELEMENT_TYPE *Element;
+ };
+
+ /*
+ * Constructor:
+ */
+
+ TAdcHal();
+
+ /*
+ * Extension entrypoint
+ */
+ IMPORT_C static TAdcHal* hal_adc_entry_point();
+
+ /* Initialisation */
+ virtual void hal_adc_init();
+
+ /* Read/convert raw values */
+ virtual TInt hal_adc_raw_read(TUint channel, TUint* value,
+ HAL_ADC_CALLBACK adc_handler, TAny* context);
+ virtual TInt hal_adc_unit_convert(TUint channel, TUint value);
+
+ /* Calibration depending function */
+ virtual TInt hal_adc_unit_read(TUint channel, TInt* value,
+ HAL_ADC_CALLBACK adc_handler, TAny* context);
+ virtual TInt hal_adc_cal_unit_conv(TUint channel, TUint rawval,
+ TInt *unitval);
+ virtual TInt hal_adc_cal_get(TUint8 channel, TUint *identification,
+ TInt *value1, TInt *value2, TInt *value3);
+ virtual TInt hal_adc_cal_set(HAL_ADC_CAL_DATA_TYPE *data);
+ virtual TInt hal_adc_cal_store();
+ virtual TInt hal_adc_unit_lock_channel(TUint channel, TBool action,
+ TInt value);
+ };
+
+#endif /* ADC_CHIPSET_API_H */
+/* End of Include File */
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devicesrv_plat/energymgmt_chipset_api/inc/adc_types.h Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,38 @@
+/*
+ adc_types.h
+
+ Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+ All rights reserved.
+
+ This program and the accompanying materials are made available
+ under the terms of the Eclipse Public License v1.0 which accompanies
+ this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Initial Contributors:
+ Nokia Corporation - initial contribution.
+
+ Contributors:
+*/
+
+/** @file
+@brief Energy Management Chipset API H
+
+This is the header file for Energy Management Chipset API that is used to access
+the Energy Management releated service provided by the third party chipset vendor.
+
+@publishedDeviceAbstraction
+*/
+
+#include<kernel.h>
+#include <kern_priv.h>
+
+
+
+typedef TUint8 uint8;
+typedef TUint16 uint16;
+typedef TUint32 uint32;
+
+typedef TInt32 int32;
+
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devicesrv_plat/energymgmt_chipset_api/inc/em_chipset_api.h Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,222 @@
+/*
+ Nokia/Devices/R&D/CT/Adaptation SW/BB
+ CONFIDENTIAL
+ Deliverable software
+
+
+
+ em_chipset_api.h
+ --------------------------------
+
+ SW Include Document - Symbian OS
+
+
+
+ Document identification and location in Synergy/CM
+
+ Database: co1core
+
+ Object (this information is substituted by Synergy/CM):
+ %name: em_chipset_api.h %
+ %cvtype: incl %
+ %instance: bh1dsgas_1 %
+ %version: 1 %
+ %date_modified: Wed Oct 06 17:16:17 2010 %
+
+ Copyright (c) Nokia. This material, including documentation and any related
+ computer programs, is protected by copyright controlled by Nokia.
+ All rights are reserved. Copying, including reproducing, storing, adapting or
+ translating, any or all of this material requires the prior written consent
+ of Nokia. This material also contains confidential information, which may not
+ be disclosed to others without the prior written consent of Nokia.
+ */
+
+/** @file
+ @brief Chipset API H Template
+
+ This is a header template for Chipset API work. This template should not be
+ used as a normal code template because the location of where the API is
+ documented is different in normal coding style! Doxygen commenting style tries
+ to be similar what Symbian is using for their kernel side development.
+
+ You can define here also the scope of the whole API see below, or you can
+ define the scope separately before the class or even before the function if
+ that is needed.
+
+ @publishedDeviceAbstraction
+ */
+
+#ifndef EM_CHIPSET_API_H
+#define EM_CHIPSET_API_H
+
+#include <kernel.h>
+#include <platform.h>
+
+/* ---------------------------------------------------------------------------
+ *
+ * TYPES
+ *
+ */
+
+/*
+ * Type definition for the call-back function used writing to
+ * asynchronous em callback. Callback is executed in the EM chipset's context.
+ */
+typedef void (*HAL_EM_CALLBACK)(TUint event, TInt p1, TAny* p2);
+
+/* ---------------------------------------------------------------------------
+ *
+ * FUNCTIONAL PROTOTYPES AND MACROS
+ *
+ */
+
+class TEmHal
+ {
+ // Class declaration
+
+ /**
+ Implements EmHal chipset
+ */
+public:
+
+ /* ---------------------------------------------------------------------------
+ *
+ * CONSTANTS
+ *
+ */
+
+ enum THalEmChaEvtType
+ {
+ EHalEMChaChargeStarted = 1,
+ EHalEmChaChargeStopped,
+ EHalEamChaChargeReady,
+ EHalEamChaChargeChargerType,
+ EHalEamChaChargeFull,
+ EHalEamChaChargeError
+ };
+
+ enum THalEmChaChargerType
+ {
+ EHalEmChaChargerNone = 1,
+ EHalEmChaChargerSpecial,
+ EHalEmChaChargerDynamo
+ };
+
+ enum THalEmChaSource
+ {
+ EHalEmChaSourceDynamo = 1,
+ EHalEmChaSourceUsb
+ };
+
+ enum THalEmIbatEvtType
+ {
+ EHalEmChaIbatStarted = 1,
+ EHalEmChaIbatStopped,
+ EHalEmChaIbatSampling,
+ EHalEmChaIbatError
+ };
+
+ enum THalEmVbatEvtType
+ {
+ EHalEmVbatTxOn = 1,
+ EHalEmVbatTxOff,
+ EHalEmVbatChOn,
+ EHalEmVbatChOff,
+ EHalEmVbatError
+ };
+
+ enum THalEmBsiEvtType
+ {
+ EHalEmBsiFloating = 1
+ };
+
+ enum THalEmDbiEvtType
+ {
+ EHalEmDbiAuthenticationOk = 1,
+ EHalEmDbiAuthenticationFailed,
+ EHalEmDbiReadReady,
+ EHalEmDbiReadError,
+ EHalEmDbiWriteReady,
+ EHalEmDbiWriteError
+ };
+
+ /*
+ * Constructor:
+ */
+
+ TEmHal();
+
+ /*
+ * Extension entrypoint
+ */
+
+ IMPORT_C static TEmHal* hal_em_entry_point();
+
+ /*
+ * INIT (setup):
+ */
+
+ virtual void hal_em_init(HAL_EM_CALLBACK cha_handler,
+ HAL_EM_CALLBACK ibat_handler, HAL_EM_CALLBACK vbat_handler,
+ HAL_EM_CALLBACK bsi_handler
+
+ );
+
+ /*
+ * CHARGING:
+ */
+ virtual TInt hal_em_cha_charge(TInt action);
+ virtual TInt hal_em_cha_charge_pause(TInt action);
+ virtual TInt hal_em_cha_set_target_voltage(TInt mV);
+ virtual TInt hal_em_cha_set_termination_current(TInt mA);
+ virtual TInt hal_em_cha_set_in_current(TInt mA);
+ virtual TInt hal_em_cha_set_out_current(TInt mA);
+ virtual TInt hal_em_cha_set_min_vbus_volt(TInt mv);
+ virtual TInt hal_em_cha_set_charging_source(THalEmChaSource source);
+
+ /*
+ * IBAT
+ */
+ virtual TInt hal_em_ibat_read();
+ virtual TUint hal_em_ibat_sample_time();
+ virtual TUint hal_em_ibat_avg_time_get();
+ virtual TInt hal_em_ibat_avg_time_set(TUint number);
+ virtual TInt hal_em_ibat_avg_get();
+ virtual TInt hal_em_ibat_avg_start();
+ virtual TInt hal_em_ibat_avg_stop();
+ virtual TInt hal_em_ibat_avg_state_get();
+
+ /*
+ * VBAT
+ */
+
+ virtual TInt hal_em_vbat_initial();
+ virtual TInt hal_em_vbat_read(TUint *value);
+ virtual TInt hal_em_vbat_sync(TInt action);
+
+ /*
+ * BTEMP
+ */
+ virtual TInt hal_em_btemp_read(TUint *value);
+
+ /*
+ * BSI
+ */
+ virtual TInt hal_em_bsi_read(TUint *value);
+
+ /* WATCHDOG */
+ virtual void hal_em_watchdog();
+
+ /* DBI */
+
+ virtual TInt hal_em_dbi_init(HAL_EM_CALLBACK dbi_handler);
+ virtual TInt hal_em_dbi_authenticate(TUint8 *challenge,
+ TUint8 challengelength, TUint8 *response, TUint8 responselength);
+ virtual TInt
+ hal_em_dbi_read(TUint address, TUint length, TUint8* readbuf);
+ virtual TInt hal_em_dbi_write(TUint address, TUint length,
+ TUint8* writebuf);
+ };
+
+#endif /* EM_CHIPSET_API_H */
+/* End of Include File */
--- a/devicesrv_plat/group/bld.inf Tue Oct 12 15:02:43 2010 +0300
+++ b/devicesrv_plat/group/bld.inf Thu Oct 14 12:47:54 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -72,3 +72,7 @@
#ifdef FF_AUTOMOTIVESTACK
#include "../autoaudio_plugin_api/group/bld.inf"
#endif
+#include "../light_chipset_api/group/bld.inf"
+#include "../thermal_shai_api/group/bld.inf"
+#include "../energymgmt_chipset_api/group/bld.inf"
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devicesrv_plat/light_chipset_api/group/bld.inf Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,26 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Light chipset API definition
+*
+*/
+
+
+#include <platform_paths.hrh>
+
+PRJ_PLATFORMS
+ARMV5 ARMV5SMP
+
+PRJ_EXPORTS
+
+../inc/light_chipset_api.h OS_LAYER_PLATFORM_EXPORT_PATH(light_chipset_api.h)
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devicesrv_plat/light_chipset_api/inc/light_chipset_api.h Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,130 @@
+/*
+ light_chipset_api.h
+
+ Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+ All rights reserved.
+
+ This program and the accompanying materials are made available
+ under the terms of the Eclipse Public License v1.0 which accompanies
+ this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Initial Contributors:
+ Nokia Corporation - initial contribution.
+
+ Contributors:
+*/
+
+/** @file
+@brief Light Chipset API H
+
+This is the header file for Light Chipset API that is used to access
+the light service provided by the third party chipset vendor.
+
+@publishedDeviceAbstraction
+*/
+
+#ifndef __LIGHT_CHIPSET_API_H__
+#define __LIGHT_CHIPSET_API_H__
+
+// Include files
+
+#include <kern_priv.h>
+
+
+// Constants
+
+
+// Macros
+
+
+// Data types
+
+/**
+* RGB values.
+*
+*/
+
+struct TLightColor
+{
+ TUint8 iRed;
+ TUint8 iGreen;
+ TUint8 iBlue;
+};
+
+// Function prototypes
+
+
+// Class declaration
+
+/**
+This class defines the Chipset API that is used to access
+the light service provided by the third party chipset vendor.
+*/
+class LightService
+ {
+ public:
+
+ /**
+ This method is used to do all the necessary initialization so
+ that the chipset is ready to provide the light service.
+
+ @return Symbian OS system wide error code, and the followings are required:
+ KErrNone – the operation is successfully executed
+ KErrGeneral – error condition
+ KErrAlreadyExists – if trying to initialize twice
+
+ @pre Pre-condition, it should be called first before the other methods of this class are used
+ */
+ IMPORT_C static TInt Init();
+
+ /**
+ This function is used to set the specified output to the desired intensity.
+
+ @param aOutputId The identity of the output line that shall be controlled
+ @param aIntensity The desired intensity of the light with range 0 – 10000 [1/100%]
+
+ @return Symbian OS system wide error code, and the followings are required:
+ KErrNone – the operation is successfully executed
+ KErrGeneral – error condition
+ KErrNotReady –if trying to access uninitialized device
+ KErrNotSupported – if the feature is not supported by the HW
+
+ @pre Pre-condition, the method Init() has been executed successfully
+ */
+ IMPORT_C static TInt SetIntensity(TUint aOutputId, TUint16 aIntensity);
+
+ /**
+ This function is used to set the specified output to the desired PWM frequency.
+
+ @param aOutputId The identity of the output line that shall be controlled
+ @param aFrequency The PWM frequency from 0 to the maximum frequency available from the chipset (range 0 to 65535Hz)
+
+ @return Symbian OS system wide error code, and the followings are required:
+ KErrNone – the operation is successfully executed
+ KErrGeneral – error condition
+ KErrNotReady – if trying to access uninitialized device
+ KErrNotSupported – if the feature is not supported by the HW
+
+ @pre Pre-condition, the method Init() has been executed successfully
+ */
+ IMPORT_C static TInt SetFrequency(TUint aOutputId, TUint16 aFrequency);
+ /**
+ This function is used to set the color of the LED target.
+
+ @param aOutputId The identity of the output line that shall be controlled
+ @param TLightColor The Light color structure to specify RGB values
+
+ @return Symbian OS system wide error code, and the followings are required:
+ KErrNone – the operation is successfully executed
+ KErrGeneral – error condition
+ KErrNotReady – if trying to access uninitialized device
+ KErrNotSupported – if the feature is not supported by the HW
+
+ @pre Pre-condition, the method Init() has been executed successfully
+ */
+ IMPORT_C static TInt SetColor(TUint aOutputId, TLightColor aRGB);
+
+ };
+
+#endif // __LIGHT_CHIPSET_API_H__
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devicesrv_plat/thermal_shai_api/group/bld.inf Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,27 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: File that exports the files belonging to
+* Thermalsensing chipset API
+*
+*/
+
+
+#include <platform_paths.hrh>
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+
+../inc/pm_thermalsensing_chipset_api.h OS_LAYER_PLATFORM_EXPORT_PATH(pm_thermalsensing_chipset_api.h)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/devicesrv_plat/thermal_shai_api/inc/pm_thermalsensing_chipset_api.h Thu Oct 14 12:47:54 2010 +0300
@@ -0,0 +1,333 @@
+/*
+Nokia
+CONFIDENTIAL
+Deliverable software
+
+ pm_thermalsensing_chipset_api.h
+ --------------------------------
+
+ SW Include Document - Symbian OS
+
+* ============================================================================
+* Name : pm_thermalsensing_chipset_api.h
+* Part of : TP/PP/CoreSW/SASW, System Infra
+* Origin : System Power Knowledge Center, Nokia Corporation
+* Created : Aditya Singh (16.05.2007)
+* Description:
+* This describes the class that determines the thermal sensor driver from a
+* hardware dependent way for battery temperature.
+*
+* Continuus version :
+* %version: 1 %,
+* %date_modified: Tue Oct 05 17:58:12 2010 %
+* by %derived_by: s95kumar %
+*
+* Copyright (c) Nokia. This material, including documentation and any related
+* computer programs, is protected by copyright controlled by Nokia. All rights
+* are reserved. Copying, including reproducing, storing, adapting or
+* translating, any or all of this material requires the prior written consent
+* of Nokia. This material also contains confidential information which may
+* not be disclosed to others without the prior written consent of Nokia.
+* ---------------------------------------------------------------------------
+* Version history:
+* Template version: 1.0, 05.10.2004 by pkahonen
+* <ccm_history>
+*
+* Version: 1
+* Ref: 417-41499
+* Initial Version of Thermal Sensing HW Adaptation Driver
+*
+* </ccm_history>
+* ============================================================================
+*/
+
+/** @file
+@brief Chipset API H Template
+
+This is a header template for Chipset API work. This template should not be
+used as a normal code template because the location of where the API is
+documented is different in normal coding style! Doxygen commenting style tries
+to be similar what Symbian is using for their kernel side development.
+
+You can define here also the scope of the whole API see below, or you can
+define the scope separately before the class or even before the function if
+that is needed.
+
+@publishedDeviceAbstraction
+ */
+
+#ifndef __PM_THERMALSENSING_CHIPSET_API_H__
+#define __PM_THERMALSENSING_CHIPSET_API_H__
+
+
+// Include files
+
+#include <kern_priv.h>
+
+/**
+Description of the function pointer
+
+@note Description Callback Function which is being executed from DFC
+
+@param TAny* Any type of parameter passed to the callback function
+ */
+typedef void (*TthermalSensorCbFn)(TAny* aParam);
+
+// Forward declarations
+
+class TthermalSensorCb;
+class ChipsetThermalSensorHWPool;
+class DThermalSensorHW;
+
+
+// Class declaration
+/**
+ *
+ * Thermal Sensor Callback function
+ *
+ */
+class TthermalSensorCb : public TDfc
+ {
+
+public :
+ /**
+ Description of TthermalSensorCb
+ This is the Thermal Sensor Callback Function
+ @param aFn Callback Function Pointer
+ @param aParam Any type of parameter passed to the callback function
+ @param aPriority Priority Assigned
+ @return KErrNone or a system wide error code to specify the effect of the method call.
+ @pre This can be called only after the ChipsetThermalSensorHWPool has been initialized
+ in the system. Preferable way to call this function is from a thread context with
+ interrupts enabled after all the kernel extensions have been initialized in the boot up.
+ */
+ IMPORT_C TthermalSensorCb(TthermalSensorCbFn aFn, TAny *aParam, TInt aPriority);
+ /**
+ Description of TthermalSensorCb
+ This is the Thermal Sensor Callback Function
+ @param aFn Callback Function Pointer
+ @param aParam Any type of parameter passed to the callback function
+ @param aPriority Priority Assigned
+ @param aQue Interrupt Handling DFC queue. The same queue is used by the HW specific interface
+ @return KErrNone or a system wide error code to specify the effect of the method call.
+ @pre This can be called only after the ChipsetThermalSensorHWPool has been initialized
+ in the system. Preferable way to call this function is from a thread context with
+ interrupts enabled after all the kernel extensions have been initialized in the boot up.
+ */
+ IMPORT_C TthermalSensorCb(TthermalSensorCbFn aFn, TAny *aParam, TInt aPriority, TDfcQue* aQue);
+
+private :
+
+ static void CallbackFunc( TAny *);
+
+private :
+ /*** Any type of parameter passed to the callback function */
+ TAny* iParam;
+
+ /*** Callback Function Pointer */
+ TthermalSensorCbFn iCallback;
+
+ };
+
+/**
+@brief Class acting as a container class for several sensor objects
+
+This class acts as a repository using which the references to the specific thermal sensor
+interface can be accessed. The recommendation is to implement this as a Singleton class.
+ */
+class ChipsetThermalSensorHWPool
+ {
+ // Methods
+public :
+ enum TthermalSensorID
+ {
+ /// Invalid Sensor ID to be used if system design does not have any thermal sensor.
+ EInvalidThermalSensor = 0x0,
+ /// Battery Specific Sensing
+ EBatteryThermalSensor,
+ /// DRAM Specific Sensing
+ EDRAMThermalSensor,
+ /// RF ASIC Specific Sensors
+ ERFThermalSensor,
+ /// Memory Card Specific Sensors
+ EMemoryCardThermalSensor,
+ /// SOC Specific Sensors
+ EAPEThermalSensor,
+ /// Camera Module Specific Sensors
+ ECameraThermalSensor,
+ /// GPS Module Specific Sensors
+ EGPSThermalSensor,
+ /// Display Module Specific Sensors
+ EDisplayThermalSensor,
+ /// Chipset Specific Sensors
+ EChipsetCustom1ThermalSensor,
+ EChipsetCustom2ThermalSensor,
+ EChipsetCustom3hermalSensor,
+ EChipsetCustom4ThermalSensor,
+ EChipsetCustom5ThermalSensor,
+ EChipsetCustom6ThermalSensor
+ };
+
+ /**
+ Description of GetThermalSensorHW
+ This is the method to get the pointer of the DThermalSensorHW object from the
+ ChipsetThermalSensorHWPool.
+ @param aId input parameter specifying the ID of the thermal sensor whose pointer we are
+ trying to reference.
+ @param aSensor output parameter giving the pointer of the thermal sensor object representing
+ the ID requested or NULL if the thermal sensor do not exist in the system.
+ @return KErrNone or a system wide error code to specify the effect of the method call.
+ @pre This can be called only after the ChipsetThermalSensorHWPool has been initialized
+ in the system. Preferable way to call this function is from a thread context with
+ interrupts enabled after all the kernel extensions have been initialized in the boot up.
+ */
+
+ IMPORT_C static TInt GetThermalSensorHW(TthermalSensorID aId, DThermalSensorHW** aSensor);
+
+ /**
+ Description of GetNumberOfSensors
+ This is the method to get the number of sensors supported by the chipset adaptation software.
+ In addition it should give the highest and lowest identifier for the sensors to optimize the search
+ possibilities for the client software.
+ @param aHighestID output parameter that gives the ID of the thermal sensor with the most positive value
+ or 0 if no sensor is present.
+ @param aLowestID output parameter that gives the ID of the thermal sensor with the least positive value
+ or 0 if no sensor is present.
+ @return number of sensors in the system (+ve value or 0) or
+ a system wide error code to specify the effect of the method call.
+ @pre This can be called only after the ChipsetThermalSensorHWPool has been initialized
+ in the system.
+ */
+ IMPORT_C static TInt GetNumberOfSensors(TthermalSensorID& aHighestID, TthermalSensorID& aLowestID);
+
+ };
+
+
+/**
+ *
+ * This class represents a generic thermal sensor that would be found in the HW.
+ * The pointer of the thermal sensor object would be passed to the client who can then call the virtual methods that are exposed by this interface.
+ *
+ */
+NONSHARABLE_CLASS( DThermalSensorHW ) : public DBase
+ {
+ public :
+ /**
+ Constructor
+ Defined as a private to prevent clients to create own instances
+ from this class
+ @since ver 1
+ @param none
+ @return none
+ @panic none
+ */
+ DThermalSensorHW();
+
+ /**
+ Virtual Destructor
+ @since ver 1
+ @param none
+ @return none
+ @panic none
+ */
+ virtual ~DThermalSensorHW();
+
+ /**
+ Description of InitHw
+ This is the method by which the HW is initialized in the system.
+ The implementation has to take care that the HW is initialized only once even though this method can be called multiple times.
+ The main motivation for this method is that the client becomes sure about the functional state of the HW after it calls this method.
+ There are several scenarios possible when the interface is called. For example,
+ • If the HW cannot be initialized then the implementation should return KErrNotReady or KErrNotSupported depending on the scenario.
+ • If the HW can be initialized then the call would do the necessary initializations and reply with KErrNone.
+ • If the HW is already initialized, then the call should return immediately without changing the HW state and return value should also be KErrNone.
+ @since ver 1
+ @param none
+ @return KErrNone if success
+ otherwise system wide error code to let the client know about the status of the HW
+ @panic none
+ @ pre This can be called at any time after the kernel extensions have been loaded.
+ The preferable way to call this function is from a thread context with interrupts enabled.
+ */
+ virtual TInt InitHw() = 0;
+
+ /**
+ Description of SetupAlert
+ This is the method to set up a callback mechanism when temperature moves outside the range
+ [alerts should occur when temperature is higher than high temperature limit (aTmpHigh) and lower than the low temperature limit (aTmpHigh – aTmpDiff)]
+ presented in the arguments of this method. Only one client is permitted to call this API because this controls the functional behavior of the thermal sensor.
+ If the boundary condition is already set and another client calls this method the call would not have any functional effect and the callback would not be registered.
+ @since ver 1
+ @param aTmpHigh The higher boundary of the temperature range in Kelvin.
+ The callback specified would be triggered if the temperature of the sensor becomes greater than this level
+ @param aTmpDiff difference between THIGH and TLOW
+ @param aCb this is the DFC that should be queued when the temperature of the sensor moves outside the range specified by the boundaries
+ @return KErrNone if success
+ KErrAlreadyExists if the boundary values are already specified
+ otherwise system wide error code
+ @panic none
+ @pre the preferable way to call this function is from a thread context with interrupts enabled after all the kernel extensions have been initialized in the boot up.
+ */
+ virtual TInt SetupAlert(TInt16 aTmpHigh, TInt16 aTmpDiff,TthermalSensorCb *aCb) = 0;
+
+ /**
+ Description of SetupCallBack
+ This is the method to register callbacks for the current prevailing boundary conditions for a particular sensor.
+ This function is needed because only the controlling client is allowed to call the SetupAlert API, hence this API needs to be used by all other observer clients
+ @since ver 1
+ @param aCb This is the DFC that should be queued when the temperature of the sensor moves outside the range specified by the boundaries set before in the SetAlert method.
+ @return KErrNone if success
+ otherwise system wide error code
+ @panic none
+ @pre The preferable way to call this function is from a thread context with interrupts enabled after all the kernel extensions have been initialized in the boot up.
+ */
+ virtual TInt SetupCallBack(TthermalSensorCb *aCb) = 0;
+
+ /**
+ Description of StopAlert
+ This is the method to cancel callbacks or the entire alert mechanism for a particular sensor.
+ @since ver 1
+ @param stopAll If this true then the Alert mechanism is stopped altogether and the sensing HW is disabled until the next InitHW is called.
+ It is recommended that only the client who has called SetupAlert successfully before calls this method.
+ In other cases only the callback function is removed. If the callback function was the one used in the SetupAlert call before
+ then the Alert mechanism is disabled also before the next SetupAlert is called.
+ @param aCb This is the DFC that should be removed from the list of callbacks.
+ @return KErrNone if success
+ otherwise system wide error code
+ @panic none
+ @pre This can only be called after SetupAlert API or SetupCallback API
+ The preferable way to call this function is from a thread context with interrupts enabled after all the kernel extensions have been initialized in the boot up.
+ */
+ virtual TInt StopAlert(TBool stopAll, TthermalSensorCb *aCb) = 0;
+
+
+ /**
+ Description of ReadTempData
+ This is the method to read temperature data from a particular sensor
+ @since ver 2
+ @param tmpData stores the current temperature reading
+ @param aNewRead checks whether a new read is required for temperature
+ @return KErrNone if success
+ otherwise system wide error code
+ @panic none
+ @pre The preferable way to call this function is from a thread context with interrupts enabled after all the kernel extensions have been initialized in the boot up.
+ */
+ virtual TInt ReadTempData(TInt16& tmpData, TBool aNewRead) = 0;
+
+ /**
+ Description of PeformHWSelfTest
+ This is the method to performing self test on the underlying thermal sensor HW. This method should be self contained meaning it should be able to save the context ,
+ perform the self test and then restore the context back exactly to the state before the self test.
+ @since ver 2
+ @param none
+ @return KErrNone if success
+ otherwise system wide error code
+ @panic none
+ @pre The preferable way to call this function is from a thread context with interrupts enabled after all the kernel extensions have been initialized in the boot up.
+ */
+ virtual TInt PerformHWSelfTest(void) = 0;
+ };
+
+#endif // __PM_THERMALSENSING_CHIPSET_API_H__
+
+// End Of File
--- a/devicesrv_pub/version_info_api/inc/versioninfo.h Tue Oct 12 15:02:43 2010 +0300
+++ b/devicesrv_pub/version_info_api/inc/versioninfo.h Thu Oct 14 12:47:54 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -83,7 +83,7 @@
/**
* Class TPlatformVersion stores platform version information.
- * The class is used as parameter in GetVersionInfo() methods.
+ * The class is used as parameter in GetVersion() methods.
* @since S60 3.2
*/
class TPlatformVersion : public TVersionBase
@@ -95,10 +95,10 @@
inline TPlatformVersion();
public:
- /** Contains the major version. For example 3 if S60 3.2 */
+ /** Contains the major version. For example 4 for Symbian^4 */
TUint16 iMajorVersion;
- /** Contains the minor version. For example 2 if S60 3.2 */
+ /** Contains the minor version. For example 0 for Symbian^4 */
TUint16 iMinorVersion;
};
--- a/devicesrv_pub/version_info_api/tsrc/bc/platformvertest/src/platformvertestcases.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/devicesrv_pub/version_info_api/tsrc/bc/platformvertest/src/platformvertestcases.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -1,5 +1,5 @@
/*
-* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
@@ -51,7 +51,7 @@
// ============================= LOCAL FUNCTIONS ===============================
-_LIT( KS60ProductIDFiles, "z:\\system\\install\\series60v*.sis" );
+_LIT( KS60ProductIDFiles, "z:\\system\\install\\Symbianv*.sis" );
// -----------------------------------------------------------------------------
--- a/hwrmhaptics/tsrc/haptics_stif/group/envrecall.cmd Tue Oct 12 15:02:43 2010 +0300
+++ b/hwrmhaptics/tsrc/haptics_stif/group/envrecall.cmd Thu Oct 14 12:47:54 2010 +0300
@@ -19,8 +19,7 @@
@echo Cleaning Haptics Test stubs...
pushd ..\..\hapticstestplugins\group\
-call sbs -c armv5.test reallyclean
-call sbs -c winscw.test reallyclean
+call sbs reallyclean
popd
@echo Cleaning Haptics Test stubs... Finished
--- a/hwrmhaptics/tsrc/haptics_stif/group/envsetup.cmd Tue Oct 12 15:02:43 2010 +0300
+++ b/hwrmhaptics/tsrc/haptics_stif/group/envsetup.cmd Thu Oct 14 12:47:54 2010 +0300
@@ -41,9 +41,7 @@
@echo Setting up Haptics Test stubs...
pushd ..\..\hapticstestplugins\group\
-call sbs -c armv5.test reallyclean
-call sbs -c winscw.test reallyclean
-call sbs -c armv5.test
-call sbs -c winscw.test
+call sbs reallyclean
+call sbs
popd
@echo Setting up Haptics Test stubs... Finished
--- a/package_definition.xml Tue Oct 12 15:02:43 2010 +0300
+++ b/package_definition.xml Thu Oct 14 12:47:54 2010 +0300
@@ -258,6 +258,15 @@
</meta>
<unit bldFile="devicesrv_plat/autoaudio_plugin_api/group"/>
</component>
+ <component id="light_chipset_api" name="Light Chipset API" class="api" filter="s60">
+ <unit bldFile="devicesrv_plat/light_chipset_api/group"/>
+ </component>
+ <component id="thermal_shai_api" name="Thermal Sensing Chipset API" class="api" filter="s60">
+ <unit bldFile="devicesrv_plat/thermal_shai_api/group"/>
+ </component>
+ <component id="energymgmt_chipset_api" name="Energy Management Chipset API" class="api" filter="s60">
+ <unit bldFile="devicesrv_plat/energymgmt_chipset_api/group"/>
+ </component>
</collection>
<collection id="accessoryservices" name="Accessory Services" level="framework">
<component id="accessorymonitor" filter="s60" name="Accessory Monitor">
@@ -278,9 +287,6 @@
<component id="tspclientmapper" filter="s60" name="TSP Client Mapper">
<unit bldFile="accessoryservices/tspclientmapper/group"/>
</component>
- <component id="remotecontrolfw" name="Remote Control Framework" introduced="9.1" purpose="optional">
- <unit bldFile="accessoryservices/remotecontrolfw/group" mrp="accessoryservices/remotecontrolfw/group/bluetooth_remotecontrol.mrp"/>
- </component>
<component id="gid_pc_tool" filter="s60" name="Generic ID PC Tool" target="desktop" class="tool">
<unit bldFile="accessoryservices/gid_pc_tool/group"/>
</component>
--- a/resourceinterfaces/fmtransmittercontrol/inc/HWRMFmTx.h Tue Oct 12 15:02:43 2010 +0300
+++ b/resourceinterfaces/fmtransmittercontrol/inc/HWRMFmTx.h Thu Oct 14 12:47:54 2010 +0300
@@ -179,7 +179,8 @@
* @exception KErrInUse if reserved by another client
* KErrNotSupported if RSSI scanning is unsupported
* KErrGeneral if there is a hardware error
- * KErrNotReady if FM Tx is not enabled
+ * KErrNotReady if there is a wired accessory conflict. Some
+ * accessories are mutually exclusive with FM Tx.
*/
virtual void GetNextClearFrequencyL(TInt& aClearFrequency) = 0;
@@ -198,7 +199,8 @@
* KErrArgument If aCount is out of range
* KErrNotSupported if RSSI scanning is unsupported
* KErrGeneral if there is a hardware error
- * KErrNotReady if FM Tx is not enabled
+ * KErrNotReady if there is a wired accessory conflict. Some
+ * accessories are mutually exclusive with FM Tx.
*/
virtual void GetNextClearFrequencyL(TClearFrequencyArray& aClearFrequencyArray, TUint& aCount) = 0;
@@ -247,7 +249,8 @@
* @exception KErrInUse if reserved by another client.
* KErrNotSupported if RSSI scanning is unsupported
* KErrGeneral if there is a hardware error.
- * KErrNotReady if FM Tx is not enabled
+ * KErrNotReady if there is a wired accessory conflict. Some
+ * accessories are mutually exclusive with FM Tx.
*/
virtual void SetNextClearFrequencyL(TInt& aClearFrequency) = 0;
--- a/resourcemgmt/hwresourcesmgr/server/inc/HWRMFmTxCommonData.h Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwresourcesmgr/server/inc/HWRMFmTxCommonData.h Thu Oct 14 12:47:54 2010 +0300
@@ -263,6 +263,14 @@
*/
void UpdateRdsLanguageId(const TRdsLanguageIdType aLanguageId);
+ /**
+ * Setter for indicating whether audio policy should be notified.
+ *
+ * @param aEnable Enable status
+ * @param aNotifyAudioPolicy ETrue if audio policy should be notified instantly.
+ */
+ void EnableAudioRouting(TBool aEnable, TBool aNotifyAudioPolicy = EFalse);
+
private:
/**
@@ -315,6 +323,7 @@
TFmTxRdsData iRdsData; // RDS settings
HWRMFmTxCommand::TRdsPs iRdsConvertedPs; // Text converted into 8bit RDS format
HWRMFmTxCommand::TRdsPtyn iRdsConvertedPtyn; // Text converted into 8bit RDS format
+ TBool iAudioRoutingEnabled;
public: // Friend classes
--- a/resourcemgmt/hwresourcesmgr/server/inc/HWRMFmTxService.h Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwresourcesmgr/server/inc/HWRMFmTxService.h Thu Oct 14 12:47:54 2010 +0300
@@ -87,6 +87,18 @@
*/
class CHWRMFmTxService : public CHWRMService
{
+ private: // Enumerations
+
+ /**
+ * Private enumeration to identify scan type
+ */
+ enum TFmTxScanType
+ {
+ EFmTxScanTypeNone = 0,
+ EFmTxScanTypeGet,
+ EFmTxScanTypeSet
+ };
+
public: // Constructors and Destructor
/**
@@ -311,6 +323,20 @@
*/
void CancelPluginCommandL(HWRMFmTxCommand::TFmTxCmd aCommandId);
+ /**
+ * Enables transmitter for being able to scan and set free frequencies
+ * without need to explicitly enable transmitter.
+ *
+ */
+ void EnsureTransmitterOnL( const RMessage2& aMessage );
+
+ /**
+ * Resets scan request state and audio policing.
+ *
+ * @param aNotifyAudioPolicy ETrue if audio policy should be notified instantly.
+ */
+ void ResetScanRequest( TBool aNotifyAudioPolicy = EFalse );
+
private: // data
CHWRMPluginHandler& iWatcherPluginHandler; // Reference to watcher plugin handler.
@@ -320,6 +346,8 @@
TBool iSuspended; // Flag to indicate if this session is suspended.
TBool iReserved; // Flag to indicate if this session is reserved.
+ TFmTxScanType iScanRequestType;
+ TUint iClearFreqsRequired;
};
#endif // HWRMFMTXSERVICE_H
--- a/resourcemgmt/hwresourcesmgr/server/src/HWRMFmTxCommonData.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwresourcesmgr/server/src/HWRMFmTxCommonData.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -278,13 +278,20 @@
THWRMFmTxAvailableFlag nowAvailable = FmTxAvailableState(newState);
THWRMFmTxAvailableFlag wasAvailable = FmTxAvailableState(iFmTxState);
+ COMPONENT_TRACE3( _L("HWRM Server - CHWRMFmTxCommonData::UpdateStatus - nowAvailable: %d, wasAvailable: %d"),
+ nowAvailable, wasAvailable );
if ( nowAvailable != wasAvailable )
{
- COMPONENT_TRACE2(_L("HWRM Server - CHWRMFmTxCommonData::UpdateStatus - Audio Policy notification: %d"), nowAvailable );
- TInt err = iFmTxIsAvailableProperty.Set(nowAvailable);
- if ( err != KErrNone )
+ COMPONENT_TRACE2( _L("HWRM Server - CHWRMFmTxCommonData::UpdateStatus - iAudioRoutingEnabled: %d"),
+ iAudioRoutingEnabled );
+ if ( iAudioRoutingEnabled )
{
- COMPONENT_TRACE2( _L("HWRM Server - CHWRMFmTxCommonData::UpdateStatus - Audio Policy notification failed: %d"), err );
+ COMPONENT_TRACE2(_L("HWRM Server - CHWRMFmTxCommonData::UpdateStatus - Audio Policy notification: %d"), nowAvailable );
+ TInt err = iFmTxIsAvailableProperty.Set(nowAvailable);
+ if ( err != KErrNone )
+ {
+ COMPONENT_TRACE2( _L("HWRM Server - CHWRMFmTxCommonData::UpdateStatus - Audio Policy notification failed: %d"), err );
+ }
}
// Update power save status if Fm Tx is available
@@ -534,6 +541,26 @@
}
// -----------------------------------------------------------------------------
+// CHWRMFmTxCommonData::EnableAudioRouting
+// Enables or disables audio routing
+// -----------------------------------------------------------------------------
+//
+void CHWRMFmTxCommonData::EnableAudioRouting(TBool aEnable, TBool aNotifyAudioPolicy)
+ {
+ COMPONENT_TRACE3( _L("HWRM Server - CHWRMFmTxCommonData::EnableAudioRouting %d, %d"),
+ aEnable, aNotifyAudioPolicy );
+ iAudioRoutingEnabled = aEnable;
+ if ( aNotifyAudioPolicy )
+ {
+ TInt err = iFmTxIsAvailableProperty.Set( aEnable );
+ if ( err != KErrNone )
+ {
+ COMPONENT_TRACE2( _L("HWRM Server - CHWRMFmTxCommonData::EnableAudioRouting - Audio Policy notification failed: %d"), err );
+ }
+ }
+ }
+
+// -----------------------------------------------------------------------------
// CHWRMFmTxCommonData::SetFrequencyRange
// Set the Central Repository data, frequency range and step size
// -----------------------------------------------------------------------------
--- a/resourcemgmt/hwresourcesmgr/server/src/HWRMFmTxService.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwresourcesmgr/server/src/HWRMFmTxService.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -41,7 +41,8 @@
CHWRMFmTxRdsTextConverter& aRdsTextConverter)
: iWatcherPluginHandler(aWatcherPluginHandler),
iFmTxCommonData(aFmTxCommonData),
- iRdsTextConverter(aRdsTextConverter)
+ iRdsTextConverter(aRdsTextConverter),
+ iScanRequestType(EFmTxScanTypeNone)
{
COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::CHWRMFmTxService()" ));
COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::CHWRMFmTxService - return" ));
@@ -234,6 +235,7 @@
{
COMPONENT_TRACE1( _L("HWRM Server - CHWRMFmTxService::ExecuteMessageL - EHWRMFmTxCancelGetNextClearFreq") );
+ ResetScanRequest();
CancelPluginCommandL( HWRMFmTxCommand::ETxScanRequestCmdId );
completeMessage = ETrue; // no responses from plugin cancel commands
}
@@ -252,6 +254,7 @@
{
COMPONENT_TRACE1( _L("HWRM Server - CHWRMFmTxService::ExecuteMessageL - EHWRMFmTxCancelSetNextClearFreq") );
+ ResetScanRequest();
// no hope of cancelling the ESetTxFrequencyCmdId part, so try the ETxScanRequestCmdId
CancelPluginCommandL( HWRMFmTxCommand::ETxScanRequestCmdId );
completeMessage = ETrue; // no responses from plugin cancel commands
@@ -379,6 +382,7 @@
COMPONENT_TRACE2( _L( "HWRM Server - CHWRMFmTxService::EnableL(0x%x)" ), aMessage.Int0() );
LeaveIfOtherReservationL();
+ ResetScanRequest( iFmTxCommonData.IsFmTxHardwareOn() );
// We cannot enable from "power save" state
if ( iFmTxCommonData.IsAccessoryPowerSaveOn() )
@@ -414,6 +418,7 @@
COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::DisableL" ) );
LeaveIfOtherReservationL();
+ ResetScanRequest();
// We don't need to disable HW from some states
if ( !iFmTxCommonData.IsFmTxHardwareOn() )
@@ -486,12 +491,18 @@
LeaveIfOtherReservationL();
- LeaveIfTransmitterOffL();
-
- // package up the request
- HWRMFmTxCommand::TScanRequestPackage pckg(aClearFreqsRequired);
-
- ExecutePluginCommandL(aMessage, HWRMFmTxCommand::ETxScanRequestCmdId, EFalse/*not split*/, pckg );
+ if ( !iFmTxCommonData.IsFmTxHardwareOn() )
+ {
+ EnsureTransmitterOnL( aMessage );
+ iScanRequestType = EFmTxScanTypeGet;
+ iClearFreqsRequired = aClearFreqsRequired;
+ }
+ else
+ {
+ // package up the request
+ HWRMFmTxCommand::TScanRequestPackage pckg( aClearFreqsRequired );
+ ExecutePluginCommandL(aMessage, HWRMFmTxCommand::ETxScanRequestCmdId, EFalse/*not split*/, pckg );
+ }
COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::GetClearFrequencyL - return" ) );
}
@@ -508,13 +519,19 @@
LeaveIfOtherReservationL();
- LeaveIfTransmitterOffL();
-
- // package up the request
- HWRMFmTxCommand::TScanRequestPackage pckg(aClearFreqsRequired);
-
- ExecutePluginCommandL(aMessage, HWRMFmTxCommand::ETxScanRequestCmdId, ETrue/*split*/, pckg );
- // wait until response before calling SetFrequencyL
+ if ( !iFmTxCommonData.IsFmTxHardwareOn() )
+ {
+ EnsureTransmitterOnL( aMessage );
+ iScanRequestType = EFmTxScanTypeSet;
+ iClearFreqsRequired = aClearFreqsRequired;
+ }
+ else
+ {
+ // package up the request
+ HWRMFmTxCommand::TScanRequestPackage pckg( aClearFreqsRequired );
+ ExecutePluginCommandL(aMessage, HWRMFmTxCommand::ETxScanRequestCmdId, ETrue/*split*/, pckg );
+ // wait until response before calling SetFrequencyL
+ }
COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::SetNextClearFrequencyL - return" ) );
}
@@ -792,10 +809,20 @@
EFalse ) );
if(data)
{
+ COMPONENT_TRACE2( _L( "HWRM Server - CHWRMFmTxService::ProcessResponseL, EStartObservingCmdId scan type = %d" ),
+ iScanRequestType );
+
+ TBool split( ( iScanRequestType != EFmTxScanTypeNone ) ? ETrue : EFalse );
TRAP( pluginErr, ExecutePluginCommandL( data->iRequestMessage,
HWRMFmTxCommand::ETxOnCmdId,
- EFalse/*not split*/,
+ split,
pckg ) );
+
+ if( !pluginErr && iScanRequestType != EFmTxScanTypeNone )
+ {
+ // Temporarily prevent audio routing.
+ iFmTxCommonData.EnableAudioRouting( EFalse );
+ }
}
else
{
@@ -813,16 +840,30 @@
errPckg.Copy(aData);
pluginErr = errPckg();
- COMPONENT_TRACE2( _L( "HWRM Server - CHWRMFmTxService::ProcessResponseL, ETxOnCmdId pluginErr = %d" ), pluginErr );
+ COMPONENT_TRACE3( _L( "HWRM Server - CHWRMFmTxService::ProcessResponseL, ETxOnCmdId pluginErr = %d, scan type = %d" ),
+ pluginErr, iScanRequestType );
if ( pluginErr == KErrNone || pluginErr == KErrInUse )
{
pluginErr = KErrNone; // If already enabled, complete client request with KErrNone
+
// Update common data power save
iFmTxCommonData.UpdatePowerSaveState(
CHWRMFmTxCommonData::EHWRMFmTxPowerSaveOff );
// Store the new status
iFmTxCommonData.UpdateStatus(CHWRMFmTxCommonData::EFmTxStateTransOn);
+
+ // Proceed with scan command if needed.
+ if( iScanRequestType != EFmTxScanTypeNone )
+ {
+ THWRMPluginRequestData* data = static_cast<THWRMPluginRequestData*>(iTransactionList->FindTransaction(aTransId, EFalse));
+ if( data )
+ {
+ HWRMFmTxCommand::TScanRequestPackage pckg( iClearFreqsRequired );
+ TBool split( ( iScanRequestType == EFmTxScanTypeSet ) ? ETrue : EFalse );
+ ExecutePluginCommandL( data->iRequestMessage, HWRMFmTxCommand::ETxScanRequestCmdId, split, pckg );
+ }
+ }
}
}
break;
@@ -926,7 +967,7 @@
scanPckg.Copy(aData);
HWRMFmTxCommand::TScanResponseData scanResp = scanPckg();
COMPONENT_TRACE3( _L( "HWRM Server - CHWRMFmTxService::ProcessResponseL, ETxScanRequestCmdId error = %d, found = %d" ), scanResp.iErrorCode, scanResp.iFrequenciesFound );
-
+
if ( scanResp.iErrorCode != KErrNone ||
scanResp.iFrequenciesFound == 0 ||
scanResp.iFrequenciesFound > KClearFrequencyArrayMax )
@@ -957,7 +998,20 @@
pluginErr = data->iRequestMessage.Write(0,clientClearFreqPckg);
}
- if ( pluginErr == KErrNone &&
+ // Disable transmitter if scan state is still get or set (i.e. transmitter not enabled
+ // or disabled explicitly during scan neither accessory connected during scan).
+ // If scan state is set, we can still just disable transmitter because frequency is
+ // being set upon next transmitter enabling.
+ if ( pluginErr == KErrNone && iScanRequestType != EFmTxScanTypeNone )
+ {
+ ExecutePluginCommand(HWRMFmTxCommand::ETxOffCmdId);
+ if ( iScanRequestType == EFmTxScanTypeSet )
+ {
+ // Store the new frequency, which is used when next time enabling transmitter
+ iFmTxCommonData.UpdateFrequency( firstClearFreq );
+ }
+ }
+ else if ( pluginErr == KErrNone &&
data->iRequestMessage.Function() == EHWRMFmTxSetNextClearFreq )
{
// Continue split command
@@ -1451,6 +1505,44 @@
COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::CancelPluginCommandL - return" ) );
}
+
+// -----------------------------------------------------------------------------
+// CHWRMFmTxService::EnsureTransmitterOnL
+// Enables transmitter for being able to scan and set free frequencies.
+// -----------------------------------------------------------------------------
+//
+void CHWRMFmTxService::EnsureTransmitterOnL( const RMessage2& aMessage )
+ {
+ COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::EnsureTransmitterOnL" ) );
+
+ // Enable transmitter if not in "power save" state
+ if ( iFmTxCommonData.IsAccessoryPowerSaveOn() )
+ {
+ // We cannot enable during "power save" due to mutually exclusive accessory connection.
+ COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::EnableL - not ready in \"power save\" state" ) );
+ User::Leave( KErrNotReady );
+ }
+ else
+ {
+ //start observing
+ ExecutePluginCommandL( aMessage, HWRMFmTxCommand::EStartObservingCmdId, EFalse/*not split*/ );
+ }
+
+ COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::EnsureTransmitterOnL - return" ) );
+ }
+
+// -----------------------------------------------------------------------------
+// CHWRMFmTxService::ResetScanRequest
+// Resets scan request and enables audio routing.
+// -----------------------------------------------------------------------------
+//
+void CHWRMFmTxService::ResetScanRequest( TBool aNotifyAudioPolicy )
+ {
+ COMPONENT_TRACE1( _L( "HWRM Server - CHWRMFmTxService::ResetScanRequest" ) );
+
+ iFmTxCommonData.EnableAudioRouting( ETrue, aNotifyAudioPolicy );
+ iScanRequestType = EFmTxScanTypeNone;
+ }
// ========================== OTHER EXPORTED FUNCTIONS =========================
--- a/resourcemgmt/hwresourcesmgr/server/src/HWRMFmTxStateUtility.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwresourcesmgr/server/src/HWRMFmTxStateUtility.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -258,6 +258,8 @@
// transition from EFmTxStatePowerSaveAccessory to EFmTxStateOff must occur.
iFmTxService->ExecutePluginCommand(HWRMFmTxCommand::ETxOffCmdId);
// Don't change iFmTxState until power down completes
+ // Enable audio routing (which may have been disabled by scan request)
+ iFmTxCommonData->EnableAudioRouting( ETrue );
}
break;
--- a/resourcemgmt/hwresourcesmgr/test/te_hwrm/hwrmtest.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwresourcesmgr/test/te_hwrm/hwrmtest.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -288,6 +288,8 @@
ADD_TEST_STEP_ISO_CPP(CHWRMTest, TestFmTxEnableDuringPowersaveL);
#endif // INSECURE_AUDIO_POLICY_KEYS
+ ADD_TEST_STEP_ISO_CPP(CHWRMTest, TestFmTxGetNextClearFrequencyWithoutEnableL);
+
END_SUITE;
}
@@ -4407,7 +4409,7 @@
INFO_PRINTF1(_L("Start test step: TestFmTxGetNextClearFrequencyArrayL"));
AddTestStateL(this, &CHWRMTest::FmTxOpenL, KTwoTimeUnits);
- AddTestStateL(this, &CHWRMTest::FmTxGetNextClearFrequencyArrayWhileDisabledL, KOneTimeUnit);
+ //AddTestStateL(this, &CHWRMTest::FmTxGetNextClearFrequencyArrayWhileDisabledL, KOneTimeUnit);
AddTestStateL(this, &CHWRMTest::FmTxEnableL, KTwoTimeUnits);
AddTestStateL(this, &CHWRMTest::FmTxGetNextClearFrequencyArrayErrArgumentMinL, KOneTimeUnit);
AddTestStateL(this, &CHWRMTest::FmTxGetNextClearFrequencyArrayErrArgumentMaxL, KOneTimeUnit);
@@ -4639,6 +4641,17 @@
#endif // INSECURE_AUDIO_POLICY_KEYS
+void CHWRMTest::TestFmTxGetNextClearFrequencyWithoutEnableL()
+ {
+ INFO_PRINTF1(_L("Start test step: TestFmTxGetNextClearFrequencyWithoutEnableL"));
+
+ AddTestStateL(this, &CHWRMTest::FmTxOpenL, KTwoTimeUnits);
+ AddTestStateL(this, &CHWRMTest::FmTxGetNextClearFrequencyWithoutEnableL, KTwoTimeUnits);
+
+ ExecuteTestL();
+ }
+
+
void CHWRMTest::InvalidSessionLightL()
{
INFO_PRINTF1(_L("Step state: InvalidSessionLightL"));
@@ -8697,6 +8710,28 @@
#endif // INSECURE_AUDIO_POLICY_KEYS
+
+void CHWRMTest::FmTxGetNextClearFrequencyWithoutEnableL()
+ {
+ INFO_PRINTF1(_L("Step state: FmTxGetNextClearFrequencyWithoutEnableL"));
+
+ CHWRMFmTx& fmTx = GetFmTxSessionWithCallbackRegisteredL();
+
+ ExpectFmTxStatusNotificationL(EFmTxStateOff, EFmTxStateInactive);
+ ExpectFmTxStatusNotificationL(EFmTxStateInactive, EFmTxStateOff);
+
+ TInt clearFrequency;
+ fmTx.GetNextClearFrequencyL(clearFrequency);
+
+ // the frequency that is returned is hard coded in the cmockfmtxengine
+ if (clearFrequency != 89000)
+ {
+ User::Leave(KErrGeneral);
+ }
+ }
+
+
+
//
// THE FOLLOWING STEPS AND STATES TEST LIGHT API DEPENDING ON
// PRODUCT-SPECIFIC PHYSICAL DEVICE CONFIGURATION (FLIP, SLIDER, ETC.
--- a/resourcemgmt/hwresourcesmgr/test/te_hwrm/hwrmtest.h Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwresourcesmgr/test/te_hwrm/hwrmtest.h Thu Oct 14 12:47:54 2010 +0300
@@ -262,6 +262,7 @@
void TestFmTxPowerSaveOnOffStateL();
void TestFmTxPowerSaveOffL();
#endif // INSECURE_AUDIO_POLICY_KEYS
+ void TestFmTxGetNextClearFrequencyWithoutEnableL();
private:
//
@@ -752,6 +753,8 @@
void SetWatcherPluginConnectedStatusL(TBool aStatus );
void SetAudioRoutedFlagL(TBool aFlag);
#endif // INSECURE_AUDIO_POLICY_KEYS
+
+ void FmTxGetNextClearFrequencyWithoutEnableL();
// Test case utilities
void IncrementFrequency(TInt &aFrequency);
--- a/resourcemgmt/hwresourcesmgr/test/te_hwrm/te_hwrm_fmtx.script Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwresourcesmgr/test/te_hwrm/te_hwrm_fmtx.script Thu Oct 14 12:47:54 2010 +0300
@@ -426,4 +426,15 @@
RUN_TEST_STEP 100 te_hwrm TEFUnit.CHWRMTest.TestFmTxEnableDuringPowersaveL
END_TESTCASE DEVSRVS-HWRM-F-0037
+START_TESTCASE DEVSRVS-HWRM-F-0038
+//!@SYMTestCaseID DEVSRVS-HWRM-F-0038
+//!@SYMComponent telephony_hwrm
+//!@SYMTestCaseDesc Test scan during fmtx off
+//!@SYMTestPriority High
+//!@SYMTestActions Open a FmTx session, scan with fmtxoff.
+//!@SYMTestExpectedResults Pass
+//!@SYMTestType CT
+RUN_TEST_STEP 100 te_hwrm TEFUnit.CHWRMTest.TestFmTxGetNextClearFrequencyWithoutEnableL
+END_TESTCASE DEVSRVS-HWRM-F-0038
+
PRINT Completed te_hwrm_fmtx tests
Binary file resourcemgmt/hwresourcesmgrconfig/conf/hwresourcesandenhancements.confml has changed
--- a/resourcemgmt/hwrmtargetmodifierplugin/tsrc/hwrmtargetmodifierplugintest/src/hwrmtargetmodifierplugintest.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/resourcemgmt/hwrmtargetmodifierplugin/tsrc/hwrmtargetmodifierplugintest/src/hwrmtargetmodifierplugintest.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -12,7 +12,7 @@
* Contributors:
*
* Description: ?Description
-* %version: bh1dsgas#3 %, % date_modified: % by %derived_by: ravindrr %
+* %version: bh1dsgas#4 %, % date_modified: % by %derived_by: sarakuma %
*
*/
@@ -101,11 +101,11 @@
{
// To add new test cases, add new items to this array
{ (TText*) L"HWRM Target Modifier Plugin [CreateAndDestroy]",
- GETPTR CHwrmTargetModifierPluginTests::CreateAndDestroy },
+ GETPTR &CHwrmTargetModifierPluginTests::CreateAndDestroy },
{ (TText*) L"HWRM Target Modifier Plugin [GetFullSystemTarget]",
- GETPTR CHwrmTargetModifierPluginTests::GetFullSystemTarget },
+ GETPTR &CHwrmTargetModifierPluginTests::GetFullSystemTarget },
{ (TText*) L"HWRM Target Modifier Plugin [ModifyTarget]",
- GETPTR CHwrmTargetModifierPluginTests::ModifyTarget }
+ GETPTR &CHwrmTargetModifierPluginTests::ModifyTarget }
};
// Verify that case number is valid
--- a/sysstatemgmt/ssmcmdlists/data/uiservicescmdlist.rss Tue Oct 12 15:02:43 2010 +0300
+++ b/sysstatemgmt/ssmcmdlists/data/uiservicescmdlist.rss Thu Oct 14 12:47:54 2010 +0300
@@ -94,8 +94,11 @@
r_cmd_devicedialog, //CR:KJLN-7WBEGU
// prio 0xFF77
r_cmd_apparc_init, // Init application framework
- // prio 0xFF75
r_cmd_rfspostui // Restore factory settings - after UI framework is up
+#ifdef SYMBIAN_INCLUDE_APP_CENTRIC
+ // prio 0xFF76
+ ,r_cmd_emcore //JHOI-889FRH
+#endif // SYMBIAN_INCLUDE_APP_CENTRIC
};
}
@@ -152,6 +155,22 @@
execution_behaviour = ESsmWaitForSignal;
}
+#ifdef SYMBIAN_INCLUDE_APP_CENTRIC
+// ---------------------------------------------------------------------------
+// r_cmd_emcore
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_PROCESS_INFO r_cmd_emcore
+ {
+ priority = 0xFF76;
+ severity = ECmdCriticalSeverity;
+ name = "Z:\\sys\\bin\\emcore.exe";
+ execution_behaviour = ESsmWaitForSignal;
+ retries = 5;
+ monitor_info = r_mon_3_restarts_reset;
+ }
+#endif // SYMBIAN_INCLUDE_APP_CENTRIC
+
// ---------------------------------------------------------------------------
// r_cmd_hbthemeserver
// ---------------------------------------------------------------------------
--- a/sysstatemgmt/systemstateplugins/gsapolicy/resource/gsastartupcmdlist1.rss Tue Oct 12 15:02:43 2010 +0300
+++ b/sysstatemgmt/systemstateplugins/gsapolicy/resource/gsastartupcmdlist1.rss Thu Oct 14 12:47:54 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies).
// All rights reserved.
// This component and the accompanying materials are made available
// under the terms of "Eclipse Public License v1.0"
@@ -59,6 +59,9 @@
, r_command_sysmon
, r_command_sysagt2svr
, r_command_ewsrv
+#ifdef SYMBIAN_INCLUDE_APP_CENTRIC
+ ,r_cmd_emcore //JHOI-889FRH
+#endif // SYMBIAN_INCLUDE_APP_CENTRIC
};
}
@@ -122,4 +125,21 @@
dsc_id = 0x2000836D; // removing this id will cause a rcomp failure unless dsc_id is #defined in ssmcmd.rh file.
}
+#ifdef SYMBIAN_INCLUDE_APP_CENTRIC
+RESOURCE SSM_START_PROCESS_INFO r_cmd_emcore
+ {
+ severity = ECmdCriticalSeverity;
+ name = "Z:\\sys\\bin\\emcore.exe";
+ execution_behaviour = ESsmWaitForSignal;
+ retries = 5;
+ monitor_info = r_mon_3_restarts_reset;
+ }
+RESOURCE SSM_MONITOR_INFO r_mon_3_restarts_reset
+ {
+ restart_policy = ESsmRestartOS;
+ restart_mode = 0;
+ retries = 3;
+ }
+
+#endif // SYMBIAN_INCLUDE_APP_CENTRIC
--- a/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_publishsimownedandchanged.cpp Tue Oct 12 15:02:43 2010 +0300
+++ b/sysstatemgmt/systemstatereferenceplugins/test/tunitcustcmd/src/tcmd_step_publishsimownedandchanged.cpp Thu Oct 14 12:47:54 2010 +0300
@@ -23,7 +23,7 @@
#include "ssmcustomcmdfactory.h"
// class under test
-#include "cmdpublishSimOwnedAndChanged.h"
+#include "cmdpublishsimownedandchanged.h"
// helper class
#include "activestopper.h"