startup/stem_noncriticalcmdlist.rss
changeset 13 4f959124999b
child 30 292fee808849
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/startup/stem_noncriticalcmdlist.rss	Sun Oct 10 16:22:15 2010 +0100
@@ -0,0 +1,488 @@
+/*
+* Copyright (c) 2009-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:
+* Command list for the Non-critical startup state in minimal startup mode.
+*
+*/
+
+#include <ssm/conditionresourcetypes.rh>
+#include <ssm/ssmcmd.rh>
+#include <ssm/startupreason.h>
+#include <ssm/clayerswp.hrh>
+
+#include "ssmswp.hrh"
+#include "ssmsubstateext.hrh"
+#include "ssmdlldatadefs.rh"
+
+// Identify command list type
+UID2 KUidSsmCommandListResourceFile
+
+// ---------------------------------------------------------------------------
+// r_entry_point
+// This must be the first resource
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_COMMAND_LIST_ROOT r_entry_point
+    {
+    command_list_mapping = r_map;
+    }
+
+// ---------------------------------------------------------------------------
+// r_map
+// Mapping of command list ids to resource ids.
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_COMMAND_LIST_MAPPING r_map
+    {
+    mappings =
+        {
+        SSM_COMMANDLISTID_TO_RESOURCEID
+            {
+            command_list_id = ESsmStateNonCritical;
+            resource_id = r_cmds;
+            }
+        };
+    }
+
+// ===========================================================================
+// Command lists in alphabetical order
+// ===========================================================================
+//
+
+// ---------------------------------------------------------------------------
+// r_cmds
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_COMMAND_LIST r_cmds
+    {
+    commands =
+        {
+        r_cmd_sastate,          // This needs to be the first command in state, prio 0xFFF2
+        r_cmd_publishstate,     // prio 0xFFF1
+        r_cmd_psstate,          // prio 0xFFF0
+        // prio 0xFFE7
+        r_cmd_simcheck,
+        r_cmd_clearstartupreason,
+        r_cmd_createswp_uiphase,
+        r_cmd_createswp_rfstatus,
+        r_cmd_waitforofflinequery,
+        r_cmd_setswp_uistart,   // After offline query has been made // prio 0xFFD7 
+        r_cmd_bsengine,					// prio 0xFFD3      
+        // prio 0xFFC7
+        r_cmd_setswp_rfon,
+        r_cmd_setswp_rfoff,
+        r_cmd_startupready      // Last command, prio 0x0000
+        };
+    }
+
+// ===========================================================================
+// Command items in alphabetical order
+// ===========================================================================
+//
+// ---------------------------------------------------------------------------
+// r_cmd_bsengine
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_PROCESS_INFO r_cmd_bsengine
+    {
+    priority = 0xFFD3;
+    name = "z:\\sys\\bin\\bsengine.exe";
+    execution_behaviour = ESsmWaitForSignal;
+    timeout = 10000;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_createswp_rfstatus
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CREATE_SYSTEM_WIDE_PROPERTY r_cmd_createswp_rfstatus
+    {
+    priority = 0xFFE7;
+    severity = ECmdCriticalSeverity;
+    key = SWP_UID_SSM_RF_STATUS;
+    filename = "rfstatusswppolicy.dll";
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_createswp_uiphase
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CREATE_SYSTEM_WIDE_PROPERTY r_cmd_createswp_uiphase
+    {
+    priority = 0xFFE7;
+    severity = ECmdCriticalSeverity;
+    key = SWP_UID_SSM_UI_PHASE;
+    filename = "ssmuiswppolicy.dll";
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_psstate
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate
+    {
+    priority = 0xFFF0;
+    severity = ECmdCriticalSeverity;
+    category = 0x101F8766; // KPSUidStartup
+    key      = 0x00000041; // KPSGlobalSystemState
+    value    = 104;        // ESwStateCriticalPhaseOK
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_publishstate
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_PUBLISH_SYSTEM_STATE r_cmd_publishstate
+    {
+    priority = 0xFFF1;
+    severity = ECmdCriticalSeverity;
+    retries = 2;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_sastate
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate
+    {
+    priority = 0xFFF2;
+    severity = ECmdCriticalSeverity;
+    dllname = "customcmds.dll";
+    ordinal = 8;
+    unload_on_finish = ENeverUnload;
+    retries = 2;
+    dll_data = r_dlldata_sastate;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_setswp_rfoff
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_REQUEST_SYSTEM_WIDE_PROPERTY r_cmd_setswp_rfoff
+    {
+    priority = 0xFFC7;
+    severity = ECmdCriticalSeverity;
+    key = SWP_UID_SSM_RF_STATUS;
+    value = ESsmRfOff;
+    conditional_information = r_cond_simnotusable_or_bootoffline;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_setswp_rfon
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_REQUEST_SYSTEM_WIDE_PROPERTY r_cmd_setswp_rfon
+    {
+    priority = 0xFFC7;
+    severity = ECmdCriticalSeverity;
+    key = SWP_UID_SSM_RF_STATUS;
+    value = ESsmRfOn;
+    conditional_information = r_cond_simusable_and_bootonline;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_setswp_uistart
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_REQUEST_SYSTEM_WIDE_PROPERTY r_cmd_setswp_uistart
+    {
+    priority = 0xFFD7;
+    severity = ECmdCriticalSeverity;
+    key = SWP_UID_SSM_UI_PHASE;
+    value = ESsmUiPhaseStarted;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_simcheck
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_simcheck
+    {
+    priority = 0xFFE7;
+    severity = ECmdCriticalSeverity;
+    dllname = "customcmds.dll";
+    ordinal = 10;
+    unload_on_finish = ENeverUnload;
+    conditional_information = r_cond_ps_simusable;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_startupready
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_startupready
+    {
+    priority = 0x0000;
+    severity = ECmdMediumSeverity;
+    category = 0x100059C9;
+    key = 2;
+    value = 1;
+    }
+
+// ---------------------------------------------------------------------------
+ 
+// ---------------------------------------------------------------------------
+// r_cmd_waitforofflinequery
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_waitforofflinequery
+    {
+    priority = 0xFFE7;
+    severity = ECmdCriticalSeverity;
+    dllname = "ssmsystemcmds.dll";
+    ordinal = 6; // WaitPsKeyRange
+    dll_data = r_dlldata_waitofflinequery;
+    unload_on_finish = ENeverUnload;
+    retries = 2;
+    execution_behaviour = ESsmWaitForSignal;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cmd_clearstartupreason
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_clearstartupreason
+    {
+    priority = 0xFFE7;
+    severity = ECmdCriticalSeverity;
+    dllname = "customcmds.dll";
+    ordinal = 16; // Clearstartupreason
+    retries = 2;
+    execution_behaviour = ESsmWaitForSignal;
+    }
+
+// ===========================================================================
+// DLL data items in alphabetical order
+// ===========================================================================
+//
+
+// ---------------------------------------------------------------------------
+// r_dlldata_activitymonitor_timeout
+// ---------------------------------------------------------------------------
+//
+RESOURCE CMD_PARAM_TIMEOUT r_dlldata_activitymonitor_timeout
+    {
+    timeout = 2;
+    }
+
+// ---------------------------------------------------------------------------
+// r_dlldata_sastate
+// ---------------------------------------------------------------------------
+//
+RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate
+    {
+    mainstate = 0; // ESsmStartup
+    substate = ESsmStateNonCritical;
+    }
+
+// ---------------------------------------------------------------------------
+// r_dlldata_waitcleanbootinfo
+// ---------------------------------------------------------------------------
+//
+RESOURCE CMD_PARAM_WAIT_PS_2 r_dlldata_waitcleanbootinfo
+    {
+    category = 0x101F8766;  // KPSUidStartup
+    key = 0x00000012;       // KStartupCleanBoot
+    target1 = 101;          // EStartupNormalBoot
+    target2 = 102;          // EStartupCleanBoot
+    }
+
+// ---------------------------------------------------------------------------
+// r_dlldata_waitofflinequery
+// ---------------------------------------------------------------------------
+//
+RESOURCE CMD_PARAM_WAIT_PS_2 r_dlldata_waitofflinequery
+    {
+    category = 0x101F8766;  // KPSUidStartup
+    key = 0x00000011;       // KStartupBootIntoOffline
+    target1 = 101;          // EBootIntoOnlineMode
+    target2 = 102;          // EBootIntoOfflineMode
+    }
+
+// ===========================================================================
+// Conditional blocks in alphabetical order
+// ===========================================================================
+//
+
+// ---------------------------------------------------------------------------
+// r_cond_ps_firstboot
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_firstboot
+    {
+    category		  = 0x101F8766; // KPSUidStartup
+    key           = 0x00000013; // KPSStartupFirstBoot
+    value         = 101;        // EPSStartupFirstBoot
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_feat_pnp_mobile_services
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_pnp_mobile_services
+    {
+    feature_id = KFeatureIdPlugAndPlayMobileServices;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_feat_sdnd
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_sdnd
+    {
+    feature_id = KFeatureIdSdnd;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_feat_sind
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_sind
+    {
+    feature_id = KFeatureIdSind;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_feat_syncml_dm
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_syncml_dm
+    {
+    feature_id = KFeatureIdSyncMlDm;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_feat_syncml_dm_fota
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_FEATURE_VALUE r_cond_feat_syncml_dm_fota
+    {
+    feature_id = KFeatureIdSyncMlDmFota;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_no_sdnd
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_LOGICAL_NOT r_cond_no_sdnd
+    {
+    sub_condition = r_cond_feat_sdnd;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_ps_bootoffline
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_bootoffline
+    {
+    category = 0x101F8766; // KPSUidStartup
+    key = 0x00000011;      // KStartupBootIntoOffline
+    value = 102;           // EBootIntoOfflineMode
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_ps_bootonline
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_bootonline
+    {
+    category = 0x101F8766; // KPSUidStartup
+    key = 0x00000011;      // KStartupBootIntoOffline
+    value = 101;           // EBootIntoOnlineMode
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_ps_fotareset
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_fotareset
+    {
+    category = 0x101F8766; // KPSUidStartup
+    key = 0x00000045;      // KPSStartupReason
+    value = EFirmwareUpdate;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_ps_simusable
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_ps_simusable
+    {
+    category = 0x101F8766; // KPSUidStartup
+    key = 0x00000031;      // KPSSimStatus
+    value = 101;           // ESimUsable
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_simnotusable
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_LOGICAL_NOT r_cond_simnotusable
+    {
+    sub_condition = r_cond_ps_simusable;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_simnotusable_or_bootoffline
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_LOGICAL_OR r_cond_simnotusable_or_bootoffline
+    {
+    lhs = r_cond_simnotusable;
+    rhs = r_cond_ps_bootoffline;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_simusable_and_bootonline
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_LOGICAL_AND r_cond_simusable_and_bootonline
+    {
+    lhs = r_cond_ps_simusable;
+    rhs = r_cond_ps_bootonline;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_sind_and_no_sdnd
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_LOGICAL_AND r_cond_sind_and_no_sdnd
+    {
+    lhs = r_cond_feat_sind;
+    rhs = r_cond_no_sdnd;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_syncml_dm_fota_and_fotareset
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_LOGICAL_AND r_cond_syncml_dm_fota_and_fotareset
+    {
+    lhs = r_cond_feat_syncml_dm_fota;
+    rhs = r_cond_ps_fotareset;
+    }
+
+// ---------------------------------------------------------------------------
+// r_cond_syncml_dm_or_pnp_mobile_services
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_CND_LOGICAL_OR r_cond_syncml_dm_or_pnp_mobile_services
+    {
+    lhs = r_cond_feat_syncml_dm;
+    rhs = r_cond_feat_pnp_mobile_services;
+    }
+
+// monitoring.rss contains resource definitions, so it may not be included
+// before entry point.
+#include "stem_monitoring.rss"