sysstatemgmt/systemstateplugins/gsapolicy/resource/gsanormalcmdlist.rss
author hgs
Thu, 14 Oct 2010 12:47:54 +0300
changeset 78 3f0699f2e14c
parent 70 653a8b91b95e
permissions -rw-r--r--
201041

// 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"
// 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:
// Contains Generic Startup Architecture Normal State command lists
// 
//

#include <ssm/ssmcmd.rh>
#include <ssm/ssmsubstates.hrh>
#include <ssm/clayerdlldatadefs.rh>
#include <ssm/conditionresourcetypes.rh>

UID2 KUidSsmCommandListResourceFile

// SSM_COMMAND_LIST_ROOT must be the first resource in a command list resource file.
// The SSM relies on this having a resource ID of 1.
RESOURCE SSM_COMMAND_LIST_ROOT
	{
	command_list_mapping = r_command_list_mapping;
	}

RESOURCE SSM_COMMAND_LIST_MAPPING r_command_list_mapping
	{
	mappings =
		{
		SSM_COMMANDLISTID_TO_RESOURCEID
			{
			command_list_id = ESsmNormalSubState;
			resource_id = r_normal_command;
			},
		//Below substates are valid only for RM-RIM410-1620 requirement. This has been introduced to enable the graceful offline
		//notification feature. This feature will be used only when patchable constant KSsmGracefulOffline is enabled
		// Substate for RF ON
		SSM_COMMANDLISTID_TO_RESOURCEID
            {
            command_list_id = ESsmNormalRfOnSubState;
            resource_id = r_normal_rf_on_command;
            },
        // Substate for RF OFF
		SSM_COMMANDLISTID_TO_RESOURCEID
            {
            command_list_id = ESsmNormalRfOffSubState;
            resource_id = r_normal_rf_off_command;
            }		
		};
	}

RESOURCE SSM_COMMAND_LIST r_normal_command
   	{
	commands =
		{
		r_rendezvous_with_estart
		, r_command_publish_state
		};
	}

RESOURCE SSM_PUBLISH_SYSTEM_STATE r_command_publish_state
	{
	severity = ECmdCriticalSeverity;
	}

RESOURCE SSM_START_CUSTOM_COMMAND r_rendezvous_with_estart
	{
	severity = ECmdCriticalSeverity;
	dllname = "cmncustomcmds.dll";
	ordinal = 2; // Rendezvous with estart custom command is at ordinal 2
	}

RESOURCE SSM_COMMAND_LIST r_normal_rf_on_command
    {
    commands =
        {        
        r_cmd_sastate_rfon
        , r_cmd_psstate_rfon
        , r_command_publish_state
        };
    }

RESOURCE SSM_COMMAND_LIST r_normal_rf_off_command
    {
    commands =
        {
        r_command_publish_state_rfoff
        ,r_cmd_sastate_rfoff
        , r_cmd_psstate_rfoff
        };
    }

// ---------------------------------------------------------------------------
// r_cmd_sastate_rfon
// ---------------------------------------------------------------------------
//
RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_rfon
    {
    conditional_information = r_cond_state_not_rfon;
    severity = ECmdCriticalSeverity;
    dllname = "customcmds.dll";
    ordinal = 8;
    unload_on_finish = ENeverUnload;
    retries = 2;
    dll_data = r_dlldata_sastate_rfon;
    }

// ---------------------------------------------------------------------------
// r_cond_publish_rfon
// ---------------------------------------------------------------------------
//
RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_publish_rfon
    {
    category = 0x101F8766; // KPSUidStartup
    key      = 0x00000041; // KPSGlobalSystemState
    value    = 109;        // ESwStateNormalRfOn
    }

// ---------------------------------------------------------------------------
// r_cond_state_not_rfon
// ---------------------------------------------------------------------------
//
RESOURCE SSM_CND_LOGICAL_NOT r_cond_state_not_rfon
    {
    sub_condition = r_cond_publish_rfon;
    }

// ---------------------------------------------------------------------------
// r_dlldata_sastate_rfon
// ---------------------------------------------------------------------------
//
RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_rfon
    {
    mainstate = 1;    // ESsmNormal
    substate = 0x19;  // Substate transition to ESwStateNormalRfOn
    }

// ---------------------------------------------------------------------------
// r_cmd_psstate_rfon
// ---------------------------------------------------------------------------
//
RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_rfon
    {
    conditional_information = r_cond_state_not_rfon;
    severity = ECmdCriticalSeverity;
    category = 0x101F8766; // KPSUidStartup
    key      = 0x00000041; // KPSGlobalSystemState
    value    = 109;        // ESwStateNormalRfOn
    }

// ---------------------------------------------------------------------------
// r_cmd_sastate_rfoff
// ---------------------------------------------------------------------------
//
RESOURCE SSM_START_CUSTOM_COMMAND r_cmd_sastate_rfoff
    {
    conditional_information = r_cond_state_not_rfoff;
    severity = ECmdCriticalSeverity;
    dllname = "customcmds.dll";
    ordinal = 8;
    unload_on_finish = ENeverUnload;
    retries = 2;
    dll_data = r_dlldata_sastate_rfoff;
    }

// ---------------------------------------------------------------------------
// r_cond_publish_rfoff
// ---------------------------------------------------------------------------
//
RESOURCE SSM_CND_PUB_SUB_VALUE r_cond_publish_rfoff
    {    
    category = 0x101F8766; // KPSUidStartup
    key      = 0x00000041; // KPSGlobalSystemState
    value    = 110;        // ESwStateNormalRfOff
    }

// ---------------------------------------------------------------------------
// r_cond_state_not_rfoff
// ---------------------------------------------------------------------------
//
RESOURCE SSM_CND_LOGICAL_NOT r_cond_state_not_rfoff
    {
    sub_condition = r_cond_publish_rfoff;
    }

// ---------------------------------------------------------------------------
// r_dlldata_sastate_rfoff
// ---------------------------------------------------------------------------
//
RESOURCE CMD_PARAM_STATE_CHANGE r_dlldata_sastate_rfoff
    {
    mainstate = 1;      // ESsmNormal
    substate = 0x1A;    //substate transition to ESwStateNormalRfOff
    }

// ---------------------------------------------------------------------------
// r_cmd_psstate_rfoff
// ---------------------------------------------------------------------------
//
RESOURCE SSM_SET_PUBLISH_AND_SUBSCRIBE r_cmd_psstate_rfoff
    {
    conditional_information = r_cond_state_not_rfoff;
    severity = ECmdCriticalSeverity;
    category = 0x101F8766; // KPSUidStartup
    key      = 0x00000041; // KPSGlobalSystemState
    value    = 110;        // ESwStateNormalRfOff
    }

// ---------------------------------------------------------------------------
// r_command_publish_state_rfoff
// ---------------------------------------------------------------------------
//
RESOURCE SSM_PUBLISH_SYSTEM_STATE r_command_publish_state_rfoff
    {
    severity = ECmdCriticalSeverity; 
    direction = 1;  // ETraverseChildrenFirst, Transition children first for offline.
    }