54 lines
1.2 KiB
C
54 lines
1.2 KiB
C
/* Copyright 2014 The Chromium OS Authors. All rights reserved.
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*
|
|
* Megachips DisplayPort to HDMI protocol converter / level shifter driver.
|
|
*/
|
|
|
|
#ifndef __CROS_EC_MCDP28X0_H
|
|
#define __CROS_EC_MCDP28X0_H
|
|
|
|
#define MCDP_OUTBUF_MAX 16
|
|
#define MCDP_INBUF_MAX 16
|
|
|
|
#define MCDP_CMD_GETINFO 0x40
|
|
#define MCDP_CMD_GETDEVID 0x30
|
|
#define MCDP_CMD_APPSTEST 0x12
|
|
#define MCDP_CMD_APPSTESTPARAM 0x11
|
|
#define MCDP_CMD_ACK 0x0c
|
|
|
|
/* packet header (2 bytes: length + cmd) + data + footer (1byte: checksum) */
|
|
#define MCDP_RSP_LEN(len) (len + 3)
|
|
#define MCDP_LEN_GETINFO 12
|
|
|
|
/* List of common error codes that can be returned */
|
|
enum mcdp_error_list {
|
|
MCDP_SUCCESS = 0,
|
|
MCDP_ERROR_TX_CNT,
|
|
MCDP_ERROR_TX_BODY,
|
|
MCDP_ERROR_TX_CHKSUM,
|
|
MCDP_ERROR_CHKSUM,
|
|
MCDP_ERROR_RX_BYTES,
|
|
MCDP_ERROR_RX_ACK,
|
|
};
|
|
|
|
/**
|
|
* Enable mcdp driver.
|
|
*/
|
|
void mcdp_enable(void);
|
|
|
|
/**
|
|
* Disable mcdp driver.
|
|
*/
|
|
void mcdp_disable(void);
|
|
|
|
/**
|
|
* get get information command from mcdp.
|
|
*
|
|
* @info pointer to mcdp_info structure
|
|
* @return zero if success, error code otherwise.
|
|
*/
|
|
int mcdp_get_info(struct mcdp_info *info);
|
|
|
|
#endif
|