--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/startup/stem_shutdowncmdlists.rss Sun Oct 10 16:22:15 2010 +0100
@@ -0,0 +1,261 @@
+/*
+* 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 Selftest OK startup state.
+*
+*/
+
+#include <ssm/conditionresourcetypes.rh>
+#include <ssm/ssmcmd.rh>
+
+#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 = ESsmErrorShutdown;
+ resource_id = r_initialcmds;
+ },
+ SSM_COMMANDLISTID_TO_RESOURCEID
+ {
+ command_list_id = ESsmNormalShutdown;
+ resource_id = r_initialcmds;
+ },
+ SSM_COMMANDLISTID_TO_RESOURCEID
+ {
+ command_list_id = ESsmShutdownSubStateCritical;
+ resource_id = r_criticalcmds;
+ },
+ SSM_COMMANDLISTID_TO_RESOURCEID
+ {
+ command_list_id = ESsmShutdownSubStateNonCritical;
+ resource_id = r_noncriticalcmds;
+ },
+ SSM_COMMANDLISTID_TO_RESOURCEID
+ {
+ command_list_id = ESsmShutdownSubStatePowerOff;
+ resource_id = r_poweroffcmds;
+ }
+ };
+ }
+
+// ===========================================================================
+// Command lists in alphabetical order
+// ===========================================================================
+//
+
+// ---------------------------------------------------------------------------
+// r_criticalcmds
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_COMMAND_LIST r_criticalcmds
+ {
+ 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
+ r_cmd_cancelmonitoring, // prio 0xFFE8
+ r_cmd_shutdownapps // prio 0xFFE7
+ };
+ }
+
+// ---------------------------------------------------------------------------
+// r_initialcmds
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_COMMAND_LIST r_initialcmds
+ {
+ commands =
+ {
+ r_cmd_publishstate // prio 0xFFF1
+ };
+ }
+
+// ---------------------------------------------------------------------------
+// r_noncriticalcmds
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_COMMAND_LIST r_noncriticalcmds
+ {
+ commands =
+ {
+ r_cmd_publishstate, // prio 0xFFF1
+ // prio 0xFFE7
+ r_cmd_killsplash,
+ r_cmd_finalisedrives,
+ r_cmd_sashutdown
+ };
+ }
+
+// ---------------------------------------------------------------------------
+// r_poweroffcmds
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_COMMAND_LIST r_poweroffcmds
+ {
+ commands =
+ {
+ r_cmd_publishstate, // prio 0xFFF1
+ r_cmd_poweroff // This is always the last command
+ };
+ }
+
+// ===========================================================================
+// Command items in alphabetical order
+// ===========================================================================
+//
+// ---------------------------------------------------------------------------
+// r_cmd_cancelmonitoring
+// This command should be executed before shutdown apps
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_cancelmonitoring
+ {
+ priority = 0xFFE8;
+ severity = ECmdCriticalSeverity;
+ dllname = "cmncustomcmds.dll";
+ ordinal = 3; // Request to the sysmon server to cancel all the outstanding monitors
+ retries = 2;
+ }
+
+// ---------------------------------------------------------------------------
+// r_cmd_shutdownapps
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_shutdownapps
+ {
+ priority = 0xFFE7;
+ dllname = "akncustcmds.dll";
+ ordinal = 3; // AknShutdownApps
+ }
+
+// ---------------------------------------------------------------------------
+// r_cmd_finalisedrives
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_FINALISE_DRIVES r_cmd_finalisedrives
+ {
+// priority = 0xFFE7;
+ }
+
+// ---------------------------------------------------------------------------
+// r_cmd_killsplash
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_killsplash
+ {
+ priority = 0xFFE7;
+ category = 0x101F8766; // KPSUidStartup
+ key = 0x00000301; // KPSSplashShutdown
+ value = 101; // ESplashShutdown
+ }
+
+// ---------------------------------------------------------------------------
+// r_cmd_poweroff
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_POWER_OFF r_cmd_poweroff
+ {
+ power_state = 1; // EPwStandby
+ }
+
+// ---------------------------------------------------------------------------
+// r_cmd_psstate
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate
+ {
+ priority = 0xFFF0;
+ severity = ECmdCriticalSeverity;
+ category = 0x101F8766; // KPSUidStartup
+ key = 0x00000041; // KPSGlobalSystemState
+ value = 117; // ESwStateShuttingDown
+ }
+
+// ---------------------------------------------------------------------------
+// r_cmd_publishstate
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_PUBLISH_SYSTEM_STATE r_cmd_publishstate
+ {
+ priority = 0xFFF1;
+ severity = ECmdCriticalSeverity;
+ direction = 1; // ETraverseChildrenFirst, Transition children first for graceful shutdown.
+ retries = 2;
+ }
+
+// ---------------------------------------------------------------------------
+// r_cmd_sashutdown
+// ---------------------------------------------------------------------------
+//
+RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sashutdown
+ {
+ priority = 0xFFE7;
+ dllname = "ssmsystemcmds.dll";
+ ordinal = 7; // SaShutdown
+ 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;
+ }
+
+// ===========================================================================
+// DLL data items in alphabetical order
+// ===========================================================================
+//
+
+// ---------------------------------------------------------------------------
+// r_dlldata_sastate
+// ---------------------------------------------------------------------------
+//
+RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate
+ {
+ mainstate = 2; // ESsmShutdown
+ substate = 0xFFFF; // KSsmAnySubState, saastateadapataion expects this
+ }