105e767638571bc50d7a26471fbe07005f3c875faJungtae Kim/* 205e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * Copyright (C) 2012 Samsung Electronics Co., LTD 305e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * 405e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * Licensed under the Apache License, Version 2.0 (the "License"); 505e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * you may not use this file except in compliance with the License. 605e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * You may obtain a copy of the License at 705e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * 805e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * http://www.apache.org/licenses/LICENSE-2.0 905e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * 1005e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * Unless required by applicable law or agreed to in writing, software 1105e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * distributed under the License is distributed on an "AS IS" BASIS, 1205e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1305e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * See the License for the specific language governing permissions and 1405e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * limitations under the License. 1505e767638571bc50d7a26471fbe07005f3c875faJungtae Kim */ 1605e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 1705e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#ifndef TLWVDRM_API_H_ 1805e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#define TLWVDRM_API_H_ 1905e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 2005e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#include "tci.h" 2105e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 2205e767638571bc50d7a26471fbe07005f3c875faJungtae Kim/** 2305e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * Command ID's for communication Trustlet Connector -> Trustlet. 2405e767638571bc50d7a26471fbe07005f3c875faJungtae Kim */ 2505e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#define CMD_WV_DRM_ENABLE_PATH_PROTECTION 0x00010000 2605e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#define CMD_WV_DRM_DISABLE_PATH_PROTECTION 0x00010001 2705e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 2805e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 2905e767638571bc50d7a26471fbe07005f3c875faJungtae Kim/** 3005e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * Return codes 3105e767638571bc50d7a26471fbe07005f3c875faJungtae Kim */ 3205e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#define RET_TL_WV_DRM_OK 0x00000000 3305e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 3405e767638571bc50d7a26471fbe07005f3c875faJungtae Kim/** 3505e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * Error codes 3605e767638571bc50d7a26471fbe07005f3c875faJungtae Kim */ 3705e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#define RET_ERR_WV_DRM_PROTECT_CONTENT_PATH_INIT 0x00001000 3805e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#define RET_ERR_WV_DRM_PROTECT_CONTENT_PATH_TERM 0x00001001 3905e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 4005e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 4105e767638571bc50d7a26471fbe07005f3c875faJungtae Kim/** 4205e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * Maximum data length. 4305e767638571bc50d7a26471fbe07005f3c875faJungtae Kim */ 4405e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#define MAX_DATA_LEN 512 4505e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 4605e767638571bc50d7a26471fbe07005f3c875faJungtae Kim/** 4705e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * TCI message data. 4805e767638571bc50d7a26471fbe07005f3c875faJungtae Kim */ 4905e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 5005e767638571bc50d7a26471fbe07005f3c875faJungtae Kimtypedef struct { 5105e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint32_t id; 5205e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint32_t data_len; 5305e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint8_t *data_ptr; 5405e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint8_t data[MAX_DATA_LEN]; 5505e767638571bc50d7a26471fbe07005f3c875faJungtae Kim} tci_cmd_t; 5605e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 5705e767638571bc50d7a26471fbe07005f3c875faJungtae Kimtypedef struct { 5805e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint32_t id; 5905e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint32_t return_code; 6005e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint32_t data_len; 6105e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint8_t *data_ptr; 6205e767638571bc50d7a26471fbe07005f3c875faJungtae Kim uint8_t data[MAX_DATA_LEN]; 6305e767638571bc50d7a26471fbe07005f3c875faJungtae Kim} tci_resp_t; 6405e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 6505e767638571bc50d7a26471fbe07005f3c875faJungtae Kimtypedef struct { 6605e767638571bc50d7a26471fbe07005f3c875faJungtae Kim union { 6705e767638571bc50d7a26471fbe07005f3c875faJungtae Kim tci_cmd_t cmd; /**< Command message structure */ 6805e767638571bc50d7a26471fbe07005f3c875faJungtae Kim tci_resp_t resp; /**< Response message structure */ 6905e767638571bc50d7a26471fbe07005f3c875faJungtae Kim }; 7005e767638571bc50d7a26471fbe07005f3c875faJungtae Kim} tciMessage_t; 7105e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 7205e767638571bc50d7a26471fbe07005f3c875faJungtae Kim/** 7305e767638571bc50d7a26471fbe07005f3c875faJungtae Kim * Trustlet UUID. 7405e767638571bc50d7a26471fbe07005f3c875faJungtae Kim */ 7505e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#define TL_WV_DRM_UUID { { 0, 6, 3, 8, 6, 5, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0 } } 7605e767638571bc50d7a26471fbe07005f3c875faJungtae Kim 7705e767638571bc50d7a26471fbe07005f3c875faJungtae Kim#endif /* TLWVDRM_API_H_ */ 78