RDK Documentation (Open Sourced RDK Components)

Description

Data Structures

struct  _IARM_BUS_SYSMGR_GetXUPNPDeviceInfo_Param_t
 
struct  _IARM_BUS_SYSMGR_HDCPProfileInfo_Param_t
 
struct  _IARM_BUS_SYSMGR_KEYCodeLoggingInfo_Param_t
 
struct  _IARM_BUS_SYSMgr_EventData_t
 
union  _IARM_BUS_SYSMgr_EventData_t.data
 
struct  _USB_DETECT.data.usbData
 
struct  _USB_MOUNT.data.usbMountData
 
struct  _KEY_CODE_LOG.data.keyCodeLogData
 
struct  _EISS_APP_ID.data.eissAppIDList
 
struct  _EISS_STATUS.data.eissEventData
 
struct  _SystemStates.data.systemStates
 
struct  _HDCP_PROFILE.data.hdcpProfileData
 
struct  _XUPNP_DATA.data.xupnpData
 
struct  _IMAGE_FWDNLD_DATA.data.imageFWDNLD
 
struct  _CARD_FWDNLD_DATA.data.cardFWDNLD
 
struct  _propertyValue
 
struct  _IARM_Bus_SYSMgr_GetSystemStates_Param_t
 
struct  _IARM_Bus_SYSMgr_IntrusionData_t
 

Macros

#define IARM_BUS_SYSMGR_NAME   "SYSMgr"
 
#define IARM_BUS_SYSMGR_API_GetSystemStates   "GetSystemStates"
 
#define IARM_BUS_SYSMGR_API_SetHDCPProfile   "SetHDCPProfile"
 
#define IARM_BUS_SYSMGR_API_GetHDCPProfile   "GetHDCPProfile"
 
#define IARM_BUS_SYSMGR_API_GetKeyCodeLoggingPref   "GetKeyCodeLoggingPref"
 
#define IARM_BUS_SYSMGR_API_SetKeyCodeLoggingPref   "SetKeyCodeLoggingPref"
 
#define IARM_BUS_SYSMGR_Intrusion_MaxLen   1024
 
#define LOG(...)   printf(__VA_ARGS__)
 

Typedefs

typedef struct _IARM_BUS_SYSMGR_GetXUPNPDeviceInfo_Param_t IARM_Bus_SYSMGR_GetXUPNPDeviceInfo_Param_t
 
typedef struct _IARM_BUS_SYSMGR_HDCPProfileInfo_Param_t IARM_BUS_SYSMGR_HDCPProfileInfo_Param_t
 
typedef struct _IARM_BUS_SYSMGR_KEYCodeLoggingInfo_Param_t IARM_BUS_SYSMGR_KEYCodeLoggingInfo_Param_t
 
typedef enum _SYSMgr_EventId_t IARM_Bus_SYSMgr_EventId_t
 
typedef enum _SYSMgr_SystemState_t IARM_Bus_SYSMgr_SystemState_t
 
typedef enum _SYSMgr_CARD_FWDNLDState_t IARM_Bus_SYSMGR_FWDNLDState_t
 
typedef enum _SYSMgr_IMAGE_FWDNLDState_t IARM_Bus_SYSMGR_IMG_FWDNLDState_t
 
typedef enum _SYSMgr_FirmwareUpdateState_t IARM_Bus_SYSMGR_FirmwareUpdateState_t
 
typedef struct _IARM_BUS_SYSMgr_EventData_t IARM_Bus_SYSMgr_EventData_t
 
typedef struct _propertyValue state_property
 
typedef struct _IARM_Bus_SYSMgr_GetSystemStates_Param_t IARM_Bus_SYSMgr_GetSystemStates_Param_t
 
typedef struct _IARM_Bus_SYSMgr_IntrusionData_t IARM_Bus_SYSMgr_IntrusionData_t
 

Enumerations

enum  _SYSMgr_EventId_t
 
enum  _SYSMgr_SystemState_t
 
enum  _SYSMgr_CARD_FWDNLDState_t
 
enum  _SYSMgr_IMAGE_FWDNLDState_t
 
enum  _SYSMgr_FirmwareUpdateState_t
 

Functions

static void _sysEventHandler (const char *owner, IARM_EventId_t eventId, void *data, size_t len)
 
static IARM_Result_t _GetSystemStates (void *arg)
 This functions returns the SYstem STates. More...
 
static int CheckHdcpProfile (void)
 This functions sets/updates the HDCP Profile
More...
 
static void GetSerialNumber (void)
 This function executes a shell script and returns its value. More...
 
static IARM_Result_t _SetHDCPProfile (void *arg)
 
static IARM_Result_t _GetHDCPProfile (void *arg)
 This functions returns the HDCP Profile. More...
 
static int getKeyCodeLoggingPref (void)
 
static void setKeyCodeLoggingPref (int logStatus)
 
static IARM_Result_t _GetKeyCodeLoggingPref (void *arg)
 
static IARM_Result_t _SetKeyCodeLoggingPref (void *arg)
 
IARM_Result_t SYSMgr_Start ()
 
IARM_Result_t SYSMgr_Loop (void)
 Listens for component specific events from drivers. More...
 
IARM_Result_t SYSMgr_Stop (void)
 Terminates the Sys manager. More...
 
int main (int argc, char *argv[])
 

Variables

static pthread_mutex_t tMutexLock
 
static IARM_Bus_SYSMgr_GetSystemStates_Param_t systemStates
 
static volatile int initialized = 0
 
static char * ntp_filename ="/tmp/stt_received"
 
static char * profile_1_filename ="/opt/.hdcp_profile_1"
 
static int keyLogStatus = 1
 

Data Structure Documentation

◆ _IARM_BUS_SYSMGR_GetXUPNPDeviceInfo_Param_t

struct _IARM_BUS_SYSMGR_GetXUPNPDeviceInfo_Param_t

Definition at line 113 of file sysMgr.h.

Collaboration diagram for _IARM_BUS_SYSMGR_GetXUPNPDeviceInfo_Param_t:
Collaboration graph
Data Fields
char * pBuffer

Shared memory location having expected data

int bufLength

Length of buffer

◆ _IARM_BUS_SYSMGR_HDCPProfileInfo_Param_t

struct _IARM_BUS_SYSMGR_HDCPProfileInfo_Param_t

Definition at line 119 of file sysMgr.h.

Collaboration diagram for _IARM_BUS_SYSMGR_HDCPProfileInfo_Param_t:
Collaboration graph
Data Fields
int HdcpProfile

HDCP Profile Data

◆ _IARM_BUS_SYSMGR_KEYCodeLoggingInfo_Param_t

struct _IARM_BUS_SYSMGR_KEYCodeLoggingInfo_Param_t

Definition at line 123 of file sysMgr.h.

Collaboration diagram for _IARM_BUS_SYSMGR_KEYCodeLoggingInfo_Param_t:
Collaboration graph
Data Fields
int logStatus

HDCP Profile Data

◆ _IARM_BUS_SYSMgr_EventData_t

struct _IARM_BUS_SYSMgr_EventData_t

Event Data associated with Sys Managers

Definition at line 229 of file sysMgr.h.

Collaboration diagram for _IARM_BUS_SYSMgr_EventData_t:
Collaboration graph
Data Fields
union _IARM_BUS_SYSMgr_EventData_t data

◆ _IARM_BUS_SYSMgr_EventData_t.data

union _IARM_BUS_SYSMgr_EventData_t.data

Definition at line 230 of file sysMgr.h.

Collaboration diagram for _IARM_BUS_SYSMgr_EventData_t.data:
Collaboration graph
Data Fields
data cardFWDNLD
data imageFWDNLD
data xupnpData
data hdcpProfileData
data systemStates
data eissEventData
data eissAppIDList
data keyCodeLogData
data usbMountData
data usbData

◆ _IARM_BUS_SYSMgr_EventData_t::_USB_DETECT.data.usbData

struct _IARM_BUS_SYSMgr_EventData_t::_USB_DETECT.data.usbData

Definition at line 265 of file sysMgr.h.

Collaboration diagram for _USB_DETECT.data.usbData:
Collaboration graph
Data Fields
int inserted
char vendor[128]
char productid[256]
char devicename[256]

◆ _IARM_BUS_SYSMgr_EventData_t::_USB_MOUNT.data.usbMountData

struct _IARM_BUS_SYSMgr_EventData_t::_USB_MOUNT.data.usbMountData

Definition at line 260 of file sysMgr.h.

Collaboration diagram for _USB_MOUNT.data.usbMountData:
Collaboration graph
Data Fields
int mounted
char device[128]
char dir[256]

◆ _IARM_BUS_SYSMgr_EventData_t::_KEY_CODE_LOG.data.keyCodeLogData

struct _IARM_BUS_SYSMgr_EventData_t::_KEY_CODE_LOG.data.keyCodeLogData

Definition at line 257 of file sysMgr.h.

Collaboration diagram for _KEY_CODE_LOG.data.keyCodeLogData:
Collaboration graph
Data Fields
int logStatus

◆ _IARM_BUS_SYSMgr_EventData_t::_EISS_APP_ID.data.eissAppIDList

struct _IARM_BUS_SYSMgr_EventData_t::_EISS_APP_ID.data.eissAppIDList

Definition at line 253 of file sysMgr.h.

Collaboration diagram for _EISS_APP_ID.data.eissAppIDList:
Collaboration graph
Data Fields
unsigned char idList[4][6]
int count

◆ _IARM_BUS_SYSMgr_EventData_t::_EISS_STATUS.data.eissEventData

struct _IARM_BUS_SYSMgr_EventData_t::_EISS_STATUS.data.eissEventData

Definition at line 250 of file sysMgr.h.

Collaboration diagram for _EISS_STATUS.data.eissEventData:
Collaboration graph
Data Fields
int filterStatus

◆ _IARM_BUS_SYSMgr_EventData_t::_SystemStates.data.systemStates

struct _IARM_BUS_SYSMgr_EventData_t::_SystemStates.data.systemStates

Definition at line 244 of file sysMgr.h.

Collaboration diagram for _SystemStates.data.systemStates:
Collaboration graph
Data Fields
IARM_Bus_SYSMgr_SystemState_t stateId
int state
int error
char payload[128]

◆ _IARM_BUS_SYSMgr_EventData_t::_HDCP_PROFILE.data.hdcpProfileData

struct _IARM_BUS_SYSMgr_EventData_t::_HDCP_PROFILE.data.hdcpProfileData

Definition at line 241 of file sysMgr.h.

Collaboration diagram for _HDCP_PROFILE.data.hdcpProfileData:
Collaboration graph
Data Fields
unsigned int hdcpProfile

◆ _IARM_BUS_SYSMgr_EventData_t::_XUPNP_DATA.data.xupnpData

struct _IARM_BUS_SYSMgr_EventData_t::_XUPNP_DATA.data.xupnpData

Definition at line 238 of file sysMgr.h.

Collaboration diagram for _XUPNP_DATA.data.xupnpData:
Collaboration graph
Data Fields
unsigned long deviceInfoLength

◆ _IARM_BUS_SYSMgr_EventData_t::_IMAGE_FWDNLD_DATA.data.imageFWDNLD

struct _IARM_BUS_SYSMgr_EventData_t::_IMAGE_FWDNLD_DATA.data.imageFWDNLD

Definition at line 235 of file sysMgr.h.

Collaboration diagram for _IMAGE_FWDNLD_DATA.data.imageFWDNLD:
Collaboration graph
Data Fields
char status

◆ _IARM_BUS_SYSMgr_EventData_t::_CARD_FWDNLD_DATA.data.cardFWDNLD

struct _IARM_BUS_SYSMgr_EventData_t::_CARD_FWDNLD_DATA.data.cardFWDNLD

Definition at line 231 of file sysMgr.h.

Collaboration diagram for _CARD_FWDNLD_DATA.data.cardFWDNLD:
Collaboration graph
Data Fields
char eventType
char status

◆ _propertyValue

struct _propertyValue

Definition at line 275 of file sysMgr.h.

Collaboration diagram for _propertyValue:
Collaboration graph
Data Fields
int state
int error
char payload[128]

◆ _IARM_Bus_SYSMgr_GetSystemStates_Param_t

struct _IARM_Bus_SYSMgr_GetSystemStates_Param_t

Parameter for Setpowerstate call

Definition at line 299 of file sysMgr.h.

Collaboration diagram for _IARM_Bus_SYSMgr_GetSystemStates_Param_t:
Collaboration graph
Data Fields
state_property channel_map

[in] New powerstate to be set

state_property disconnect_mgr_state
state_property TuneReadyStatus
state_property exit_ok_key_sequence
state_property cmac
state_property card_moto_entitlements
state_property card_moto_hrv_rx
state_property dac_init_timestamp
state_property card_cisco_status
state_property video_presenting
state_property hdmi_out
state_property hdcp_enabled
state_property hdmi_edid_read
state_property firmware_download
state_property time_source
state_property time_zone_available
state_property ca_system
state_property estb_ip
state_property ecm_ip
state_property lan_ip
state_property moca
state_property docsis
state_property dsg_broadcast_tunnel
state_property dsg_ca_tunnel
state_property cable_card
state_property cable_card_download
state_property cvr_subsystem
state_property download
state_property vod_ad
state_property card_serial_no
state_property ecm_mac
state_property dac_id
state_property plant_id
state_property stb_serial_no
state_property bootup
state_property dst_offset
state_property rf_connected
state_property ip_mode
state_property qam_ready_status
state_property firmware_update_state

◆ _IARM_Bus_SYSMgr_IntrusionData_t

struct _IARM_Bus_SYSMgr_IntrusionData_t

Parameter for intrusion detect call

Definition at line 345 of file sysMgr.h.

Collaboration diagram for _IARM_Bus_SYSMgr_IntrusionData_t:
Collaboration graph
Data Fields
char intrusionData[1024+1]

Macro Definition Documentation

◆ IARM_BUS_SYSMGR_NAME

#define IARM_BUS_SYSMGR_NAME   "SYSMgr"

IARM BUS name for Sys manager

Definition at line 110 of file sysMgr.h.

◆ IARM_BUS_SYSMGR_API_GetSystemStates

#define IARM_BUS_SYSMGR_API_GetSystemStates   "GetSystemStates"

Gets the states of the system

Definition at line 284 of file sysMgr.h.

Typedef Documentation

◆ IARM_Bus_SYSMgr_EventId_t

Published Events from sys manager

◆ IARM_Bus_SYSMGR_FWDNLDState_t

Possible Firmware Download state

◆ IARM_Bus_SYSMGR_IMG_FWDNLDState_t

Possible Image Download state

◆ IARM_Bus_SYSMGR_FirmwareUpdateState_t

Possible Firmware Update States (as per RDK-14100, RDK-19928)

◆ IARM_Bus_SYSMgr_EventData_t

Event Data associated with Sys Managers

◆ IARM_Bus_SYSMgr_GetSystemStates_Param_t

◆ IARM_Bus_SYSMgr_IntrusionData_t

Parameter for intrusion detect call

Enumeration Type Documentation

◆ _SYSMgr_EventId_t

Published Events from sys manager

Enumerator
IARM_BUS_SYSMGR_EVENT_XUPNP_DATA_REQUEST 

Xupnp data request frm Receiver to UPNP

IARM_BUS_SYSMGR_EVENT_XUPNP_DATA_UPDATE 

Xupnp data frm UPNP to Receiver

IARM_BUS_SYSMGR_EVENT_CARD_FWDNLD 

CARD FW download event to Receiver - Valid on Cisco CA

IARM_BUS_SYSMGR_EVENT_HDCP_PROFILE_UPDATE 

HDCP Profile Update

IARM_BUS_SYSMGR_EVENT_INTRUSION 

Intrusion Detection

IARM_BUS_SYSMGR_EVENT_EISS_FILTER_STATUS 

EISS Filter status event

IARM_BUS_SYSMGR_EVENT_EISS_APP_ID_UPDATE 

EISS App ID update

IARM_BUS_SYSMGR_EVENT_KEYCODE_LOGGING_CHANGED 

Key Code logging status update

IARM_BUS_SYSMGR_EVENT_USB_MOUNT_CHANGED 

Fires when USB mounts change

IARM_BUS_SYSMGR_EVENT_APP_RELEASE_FOCUS 

Application fires event to release focus

IARM_BUS_SYSMGR_EVENT_MAX 

Max Event Id

Definition at line 128 of file sysMgr.h.

◆ _SYSMgr_CARD_FWDNLDState_t

Possible Firmware Download state

Definition at line 196 of file sysMgr.h.

◆ _SYSMgr_IMAGE_FWDNLDState_t

Possible Image Download state

Definition at line 203 of file sysMgr.h.

◆ _SYSMgr_FirmwareUpdateState_t

Possible Firmware Update States (as per RDK-14100, RDK-19928)

Definition at line 215 of file sysMgr.h.

Function Documentation

◆ _GetSystemStates()

static IARM_Result_t _GetSystemStates ( void *  arg)
static

This functions returns the SYstem STates.

Parameters
Datato return
Returns
None

Definition at line 283 of file sysMgr.c.

◆ CheckHdcpProfile()

static int CheckHdcpProfile ( void  )
static

This functions sets/updates the HDCP Profile

Parameters
callCtxContext to the caller function
methodIDMethod to be invoke
argSpecifies the timeout to be set
serialHandshake code to share with
Returns
None

Definition at line 213 of file sysMgr.c.

◆ GetSerialNumber()

void GetSerialNumber ( void  )
static

This function executes a shell script and returns its value.

Parameters
script_name[in] Null terminated path name to the script.
return_value[in] value returned by the system command executing the script.
Returns
None

Definition at line 575 of file sysMgr.c.

◆ _GetHDCPProfile()

static IARM_Result_t _GetHDCPProfile ( void *  arg)
static

This functions returns the HDCP Profile.

Parameters
Getcurrent Profile state
Returns
None

Definition at line 264 of file sysMgr.c.

◆ SYSMgr_Loop()

IARM_Result_t SYSMgr_Loop ( void  )

Listens for component specific events from drivers.

Returns
Error code if fails.

Definition at line 174 of file sysMgr.c.

◆ SYSMgr_Stop()

IARM_Result_t SYSMgr_Stop ( void  )

Terminates the Sys manager.

This function disconnects Sys Manager from the iarm bus and terminates it.

Returns
Error code if stop fails.

Definition at line 187 of file sysMgr.c.