41 typedef unsigned long VL_MFR_DEVICE_HANDLE_t;
43 typedef enum _VL_MFR_API_RESULT
45 VL_MFR_API_RESULT_SUCCESS = 0,
46 VL_MFR_API_RESULT_FAILED = 1,
47 VL_MFR_API_RESULT_NOT_EXISTING = 6,
48 VL_MFR_API_RESULT_NULL_PARAM = 7,
49 VL_MFR_API_RESULT_OUT_OF_RANGE = 9,
50 VL_MFR_API_RESULT_OPEN_FAILED = 10,
51 VL_MFR_API_RESULT_READ_FAILED = 11,
52 VL_MFR_API_RESULT_WRITE_FAILED = 12,
53 VL_MFR_API_RESULT_MALLOC_FAILED = 13,
54 VL_MFR_API_RESULT_DECRYPTION_FAILED = 15,
55 VL_MFR_API_RESULT_NULL_KEY = 16,
56 VL_MFR_API_RESULT_INVALID_KEY_LENGTH = 17,
57 VL_MFR_API_RESULT_INVALID_BUFFER_LENGTH = 18,
58 VL_MFR_API_RESULT_SIZE_MISMATCH = 19,
63 typedef enum _VL_PLATFORM_VERSION_TYPE
65 VL_PLATFORM_VERSION_TYPE_BOARD_VERSION = 0,
66 VL_PLATFORM_VERSION_TYPE_BOARD_SERIAL_NO = 1,
67 VL_PLATFORM_VERSION_TYPE_CM_CHIP_VERSION = 2,
68 VL_PLATFORM_VERSION_TYPE_DECODER_SW_VERSION = 7,
69 VL_PLATFORM_VERSION_TYPE_OS_KERNEL_VERSION = 8,
70 VL_PLATFORM_VERSION_TYPE_MFR_LIB_VERSION = 11,
71 VL_PLATFORM_VERSION_TYPE_FRONT_PANEL_VERSION = 12,
72 VL_PLATFORM_VERSION_TYPE_SOFTWARE_IMAGE_VERSION = 14,
73 VL_PLATFORM_VERSION_TYPE_OCHD_VERSION = 16,
74 VL_PLATFORM_VERSION_TYPE_OCAP_VERSION = 18,
75 VL_PLATFORM_VERSION_TYPE_BOOT_ROM_VERSION = 20,
76 VL_PLATFORM_VERSION_TYPE_MODEL_NUMBER = 22,
77 VL_PLATFORM_VERSION_TYPE_MODEL_SERIAL_NO = 23,
78 VL_PLATFORM_VERSION_TYPE_VENDOR_NAME = 24,
79 VL_PLATFORM_VERSION_TYPE_VENDOR_SERIAL_NO = 25,
80 VL_PLATFORM_VERSION_TYPE_MANUFACTURE_DATE = 26,
81 } VL_PLATFORM_VERSION_TYPE;
84 typedef enum _VL_NORMAL_NVRAM_DATA_TYPE
87 VL_NORMAL_NVRAM_DATA_BOOT_IMAGE_NAME = 0x70000001,
88 VL_NORMAL_NVRAM_DATA_BOOT_FIRMWARE_IMAGE_NAME = 0x70000010,
89 VL_NORMAL_NVRAM_DATA_BOOT_APPLICATION_IMAGE_NAME = 0x70000011,
90 VL_NORMAL_NVRAM_DATA_BOOT_DATA_IMAGE_NAME = 0x70000012,
92 VL_NORMAL_NVRAM_DATA_CACP_AuthStatus = 0x70000100,
93 VL_NORMAL_NVRAM_DATA_CACP_HostId = 0x70000101,
94 VL_NORMAL_NVRAM_DATA_COM_DWNLD_CO_SIGN_NAME = 0x70000211,
95 VL_NORMAL_NVRAM_DATA_COM_DWNL_VEN_ID = 0x70000212,
96 VL_NORMAL_NVRAM_DATA_COM_DWNL_HW_ID = 0x70000213,
98 VL_NORMAL_NVRAM_DATA_COM_DWNL_MFR_CODE_ACC_STR_TIME = 0x70000215,
99 VL_NORMAL_NVRAM_DATA_COM_DWNL_CO_SIGN_CODE_ACC_STR_TIME = 0x70000216,
100 VL_NORMAL_NVRAM_DATA_COM_DWNL_MFR_CVC_ACC_STR_TIME = 0x70000217,
101 VL_NORMAL_NVRAM_DATA_COM_DWNL_CO_SIGN_CVC_ACC_STR_TIME = 0x70000218,
102 VL_NORMAL_NVRAM_DATA_COM_DWNLD_MGR_STATUS = 0x70000219,
103 VL_NORMAL_NVRAM_DATA_CDL_MFR_CODE_ACC_UPG_STR_TIME = 0x7000021C,
104 VL_NORMAL_NVRAM_DATA_CDL_CO_SIGN_CODE_ACC_UPG_STR_TIME = 0x7000021D,
106 VL_NORMAL_NVRAM_DATA_CDL_FW_MFR_CODE_ACC_UPG_STR_TIME = 0x70000300,
107 VL_NORMAL_NVRAM_DATA_CDL_FW_CO_SIGN_CODE_ACC_UPG_STR_TIME = 0x70000301,
108 VL_NORMAL_NVRAM_DATA_CDL_APP_MFR_CODE_ACC_UPG_STR_TIME = 0x70000302,
109 VL_NORMAL_NVRAM_DATA_CDL_APP_CO_SIGN_CODE_ACC_UPG_STR_TIME = 0x70000303,
110 VL_NORMAL_NVRAM_DATA_CDL_DATA_MFR_CODE_ACC_UPG_STR_TIME = 0x70000304,
111 VL_NORMAL_NVRAM_DATA_CDL_DATA_CO_SIGN_CODE_ACC_UPG_STR_TIME = 0x70000305,
113 VL_NORMAL_NVRAM_DATA_CDL_FW_MFR_CODE_ACC_BOOT_STR_TIME = 0x70000320,
114 VL_NORMAL_NVRAM_DATA_CDL_FW_CO_SIGN_CODE_ACC_BOOT_STR_TIME = 0x70000321,
115 VL_NORMAL_NVRAM_DATA_CDL_APP_MFR_CODE_ACC_BOOT_STR_TIME = 0x70000322,
116 VL_NORMAL_NVRAM_DATA_CDL_APP_CO_SIGN_CODE_ACC_BOOT_STR_TIME = 0x70000323,
117 VL_NORMAL_NVRAM_DATA_CDL_DATA_MFR_CODE_ACC_BOOT_STR_TIME = 0x70000324,
118 VL_NORMAL_NVRAM_DATA_CDL_DATA_CO_SIGN_CODE_ACC_BOOT_STR_TIME= 0x70000325,
120 VL_NORMAL_NVRAM_DATA_IEEE1394_DTCP_KEY_TYPE = 0x70000500,
121 VL_NORMAL_NVRAM_DATA_IEEE1394_DTCP_KEY_STATUS = 0x70000501,
123 }VL_NORMAL_NVRAM_DATA_TYPE;
127 typedef enum _VL_SECURE_NVRAM_DATA_TYPE
130 VL_SECURE_NVRAM_DATA_CACP_HOST_ROOT_CERT = 0x100,
131 VL_SECURE_NVRAM_DATA_CACP_HOST_MFR_CA_CERT = 0x101,
132 VL_SECURE_NVRAM_DATA_CACP_HOST_DEV_CERT = 0x102,
133 VL_SECURE_NVRAM_DATA_CACP_HOST_DEV_PRIVATE_KEY = 0x103,
134 VL_SECURE_NVRAM_DATA_CACP_DH_B_G1 = 0x104,
135 VL_SECURE_NVRAM_DATA_CACP_DH_P_N1 = 0x105,
136 VL_SECURE_NVRAM_DATA_CACP_DHKey = 0x106,
137 VL_SECURE_NVRAM_DATA_CACP_AuthKeyH = 0x107,
139 VL_SECURE_NVRAM_DATA_COM_DWNLD_CL_CODE_VER_ROOT_CA = 0x200,
140 VL_SECURE_NVRAM_DATA_COM_DWNLD_CL_CVC_CA = 0x201,
141 VL_SECURE_NVRAM_DATA_COM_DWNLD_MFR_CVC = 0x202,
144 VL_SECURE_NVRAM_DATA_COM_DWNLD_CVC_CA_PUB_KEY = 0x219,
148 VL_SECURE_NVRAM_DATA_APP_CL_APP_CVC_CA = 0x301,
149 VL_SECURE_NVRAM_DATA_APP_MAN_CVC = 0x302,
151 VL_SECURE_NVRAM_DATA_SERIAL_NUMBER = 0x400,
154 VL_SECURE_NVRAM_DATA_IEEE1394_DTCP_CERT_KEYS = 0x500,
155 VL_SECURE_NVRAM_DATA_IEEE1394_DTCP_SRM = 0x501,
156 VL_SECURE_NVRAM_DATA_IEEE1394_DTCP_SEED = 0x502,
159 VL_SECURE_NVRAM_DATA_VL_CERT_KEYS = 0x600,
161 }VL_SECURE_NVRAM_DATA_TYPE;
164 typedef enum _VL_STACK_2_MFR_EVENT_TYPE
167 VL_STACK_2_MFR_EVENT_SET_UPGRADE_TO_IMAGE = 0x20000100,
168 VL_STACK_2_MFR_EVENT_SET_REBOOT_WITH_UPGRADED_IMAGE = 0x20000101,
169 VL_STACK_2_MFR_EVENT_SET_UPGRADE_IMAGE_NAME = 0x20000102,
170 VL_STACK_2_MFR_EVENT_SET_UPGRADE_SUCCEEDED = 0x20000103,
171 VL_STACK_2_MFR_EVENT_SET_UPGRADE_FAILED = 0x20000104,
173 VL_STACK_2_MFR_EVENT_get_CONFIG_PATH = 0x20000200,
174 VL_STACK_2_MFR_EVENT_get_SNMP_ENTERPRISE_ID = 0x20000201,
176 VL_STACK_2_MFR_EVENT_get_CALL_DFAST2 = 0x20000301,
178 VL_STACK_2_MFR_EVENT_get_PREVIOUS_BOOT_IMAGE_NAME = 0x20000400,
179 VL_STACK_2_MFR_EVENT_get_CURRENT_BOOT_IMAGE_NAME = 0x20000401,
180 VL_STACK_2_MFR_EVENT_get_UPGRADE_IMAGE_NAME = 0x20000402,
181 VL_STACK_2_MFR_EVENT_get_UPGRADE_STATUS = 0x20000403,
183 VL_STACK_2_MFR_EVENT_SET_CARD_TYPE = 0x20000700,
184 VL_STACK_2_MFR_EVENT_SET_FIRMWARE_VERSION_INFO = 0x20000701,
186 } VL_STACK_2_MFR_EVENT_TYPE;
195 unsigned long nActualBytes;
197 unsigned char * pData;
201 int MFR_Shutdown (
void);
204 VL_MFR_API_RESULT HAL_MFR_get_version ( VL_MFR_DEVICE_HANDLE_t hMFRHandle, VL_PLATFORM_VERSION_TYPE eVersionType,
char ** ppString);
206 VL_MFR_API_RESULT HAL_MFR_read_normal_nvram ( VL_MFR_DEVICE_HANDLE_t hMFRHandle, VL_NORMAL_NVRAM_DATA_TYPE eType,
VL_NVRAM_DATA * pNvRamData);
207 VL_MFR_API_RESULT HAL_MFR_write_normal_nvram( VL_MFR_DEVICE_HANDLE_t hMFRHandle, VL_NORMAL_NVRAM_DATA_TYPE eType,
const VL_NVRAM_DATA * pNvRamData);
209 VL_MFR_API_RESULT HAL_MFR_read_secure_nvram ( VL_MFR_DEVICE_HANDLE_t hMFRHandle, VL_SECURE_NVRAM_DATA_TYPE eType,
VL_NVRAM_DATA * pNvRamData);
210 VL_MFR_API_RESULT HAL_MFR_write_secure_nvram( VL_MFR_DEVICE_HANDLE_t hMFRHandle, VL_SECURE_NVRAM_DATA_TYPE eType,
const VL_NVRAM_DATA * pNvRamData);
212 VL_MFR_API_RESULT HAL_MFR_set_mfr_data( VL_MFR_DEVICE_HANDLE_t hMFRHandle, VL_STACK_2_MFR_EVENT_TYPE eEvent,
void * _pvData);
213 VL_MFR_API_RESULT HAL_MFR_get_mfr_data( VL_MFR_DEVICE_HANDLE_t hMFRHandle, VL_STACK_2_MFR_EVENT_TYPE eEvent,
void * _pvData);
219 #endif //__MFR_API_H__