1e27ed1bdSKONRAD Frederic /* 2e27ed1bdSKONRAD Frederic * dpcd.h 3e27ed1bdSKONRAD Frederic * 4e27ed1bdSKONRAD Frederic * Copyright (C)2015 : GreenSocs Ltd 5e27ed1bdSKONRAD Frederic * http://www.greensocs.com/ , email: info@greensocs.com 6e27ed1bdSKONRAD Frederic * 7e27ed1bdSKONRAD Frederic * Developed by : 8e27ed1bdSKONRAD Frederic * Frederic Konrad <fred.konrad@greensocs.com> 9e27ed1bdSKONRAD Frederic * 10e27ed1bdSKONRAD Frederic * This program is free software; you can redistribute it and/or modify 11e27ed1bdSKONRAD Frederic * it under the terms of the GNU General Public License as published by 12e27ed1bdSKONRAD Frederic * the Free Software Foundation, either version 2 of the License, or 13e27ed1bdSKONRAD Frederic * (at your option)any later version. 14e27ed1bdSKONRAD Frederic * 15e27ed1bdSKONRAD Frederic * This program is distributed in the hope that it will be useful, 16e27ed1bdSKONRAD Frederic * but WITHOUT ANY WARRANTY; without even the implied warranty of 17e27ed1bdSKONRAD Frederic * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18e27ed1bdSKONRAD Frederic * GNU General Public License for more details. 19e27ed1bdSKONRAD Frederic * 20e27ed1bdSKONRAD Frederic * You should have received a copy of the GNU General Public License along 21e27ed1bdSKONRAD Frederic * with this program; if not, see <http://www.gnu.org/licenses/>. 22e27ed1bdSKONRAD Frederic * 23e27ed1bdSKONRAD Frederic */ 24e27ed1bdSKONRAD Frederic 25e27ed1bdSKONRAD Frederic #ifndef DPCD_H 26e27ed1bdSKONRAD Frederic #define DPCD_H 27*db1015e9SEduardo Habkost #include "qom/object.h" 28e27ed1bdSKONRAD Frederic 29e27ed1bdSKONRAD Frederic typedef struct DPCDState DPCDState; 30e27ed1bdSKONRAD Frederic 31e27ed1bdSKONRAD Frederic #define TYPE_DPCD "dpcd" 32e27ed1bdSKONRAD Frederic #define DPCD(obj) OBJECT_CHECK(DPCDState, (obj), TYPE_DPCD) 33e27ed1bdSKONRAD Frederic 34e27ed1bdSKONRAD Frederic /* DCPD Revision. */ 35e27ed1bdSKONRAD Frederic #define DPCD_REVISION 0x00 36e27ed1bdSKONRAD Frederic #define DPCD_REV_1_0 0x10 37e27ed1bdSKONRAD Frederic #define DPCD_REV_1_1 0x11 38e27ed1bdSKONRAD Frederic 39e27ed1bdSKONRAD Frederic /* DCPD Max Link Rate. */ 40e27ed1bdSKONRAD Frederic #define DPCD_MAX_LINK_RATE 0x01 41e27ed1bdSKONRAD Frederic #define DPCD_1_62GBPS 0x06 42e27ed1bdSKONRAD Frederic #define DPCD_2_7GBPS 0x0A 43e27ed1bdSKONRAD Frederic #define DPCD_5_4GBPS 0x14 44e27ed1bdSKONRAD Frederic 45e27ed1bdSKONRAD Frederic #define DPCD_MAX_LANE_COUNT 0x02 46e27ed1bdSKONRAD Frederic #define DPCD_ONE_LANE 0x01 47e27ed1bdSKONRAD Frederic #define DPCD_TWO_LANES 0x02 48e27ed1bdSKONRAD Frederic #define DPCD_FOUR_LANES 0x04 49e27ed1bdSKONRAD Frederic 50e27ed1bdSKONRAD Frederic /* DCPD Max down spread. */ 51e27ed1bdSKONRAD Frederic #define DPCD_UP_TO_0_5 0x01 52e27ed1bdSKONRAD Frederic #define DPCD_NO_AUX_HANDSHAKE_LINK_TRAINING 0x40 53e27ed1bdSKONRAD Frederic 54e27ed1bdSKONRAD Frederic /* DCPD Downstream port type. */ 55e27ed1bdSKONRAD Frederic #define DPCD_DISPLAY_PORT 0x00 56e27ed1bdSKONRAD Frederic #define DPCD_ANALOG 0x02 57e27ed1bdSKONRAD Frederic #define DPCD_DVI_HDMI 0x04 58e27ed1bdSKONRAD Frederic #define DPCD_OTHER 0x06 59e27ed1bdSKONRAD Frederic 60e27ed1bdSKONRAD Frederic /* DPCD Format conversion. */ 61e27ed1bdSKONRAD Frederic #define DPCD_FORMAT_CONVERSION 0x08 62e27ed1bdSKONRAD Frederic 63e27ed1bdSKONRAD Frederic /* Main link channel coding. */ 64e27ed1bdSKONRAD Frederic #define DPCD_ANSI_8B_10B 0x01 65e27ed1bdSKONRAD Frederic 66e27ed1bdSKONRAD Frederic /* Down stream port count. */ 67e27ed1bdSKONRAD Frederic #define DPCD_OUI_SUPPORTED 0x80 68e27ed1bdSKONRAD Frederic 69e27ed1bdSKONRAD Frederic /* Receiver port capability. */ 70e27ed1bdSKONRAD Frederic #define DPCD_RECEIVE_PORT0_CAP_0 0x08 71e27ed1bdSKONRAD Frederic #define DPCD_RECEIVE_PORT0_CAP_1 0x09 72e27ed1bdSKONRAD Frederic #define DPCD_EDID_PRESENT 0x02 73e27ed1bdSKONRAD Frederic #define DPCD_ASSOCIATED_TO_PRECEDING_PORT 0x04 74e27ed1bdSKONRAD Frederic 75e27ed1bdSKONRAD Frederic /* Down stream port capability. */ 76e27ed1bdSKONRAD Frederic #define DPCD_CAP_DISPLAY_PORT 0x000 77e27ed1bdSKONRAD Frederic #define DPCD_CAP_ANALOG_VGA 0x001 78e27ed1bdSKONRAD Frederic #define DPCD_CAP_DVI 0x002 79e27ed1bdSKONRAD Frederic #define DPCD_CAP_HDMI 0x003 80e27ed1bdSKONRAD Frederic #define DPCD_CAP_OTHER 0x100 81e27ed1bdSKONRAD Frederic 82e27ed1bdSKONRAD Frederic #define DPCD_LANE0_1_STATUS 0x202 83e27ed1bdSKONRAD Frederic #define DPCD_LANE0_CR_DONE (1 << 0) 84e27ed1bdSKONRAD Frederic #define DPCD_LANE0_CHANNEL_EQ_DONE (1 << 1) 85e27ed1bdSKONRAD Frederic #define DPCD_LANE0_SYMBOL_LOCKED (1 << 2) 86e27ed1bdSKONRAD Frederic #define DPCD_LANE1_CR_DONE (1 << 4) 87e27ed1bdSKONRAD Frederic #define DPCD_LANE1_CHANNEL_EQ_DONE (1 << 5) 88e27ed1bdSKONRAD Frederic #define DPCD_LANE1_SYMBOL_LOCKED (1 << 6) 89e27ed1bdSKONRAD Frederic 90e27ed1bdSKONRAD Frederic #define DPCD_LANE2_3_STATUS 0x203 91e27ed1bdSKONRAD Frederic #define DPCD_LANE2_CR_DONE (1 << 0) 92e27ed1bdSKONRAD Frederic #define DPCD_LANE2_CHANNEL_EQ_DONE (1 << 1) 93e27ed1bdSKONRAD Frederic #define DPCD_LANE2_SYMBOL_LOCKED (1 << 2) 94e27ed1bdSKONRAD Frederic #define DPCD_LANE3_CR_DONE (1 << 4) 95e27ed1bdSKONRAD Frederic #define DPCD_LANE3_CHANNEL_EQ_DONE (1 << 5) 96e27ed1bdSKONRAD Frederic #define DPCD_LANE3_SYMBOL_LOCKED (1 << 6) 97e27ed1bdSKONRAD Frederic 98e27ed1bdSKONRAD Frederic #define DPCD_LANE_ALIGN_STATUS_UPDATED 0x204 99e27ed1bdSKONRAD Frederic #define DPCD_INTERLANE_ALIGN_DONE 0x01 100e27ed1bdSKONRAD Frederic #define DPCD_DOWNSTREAM_PORT_STATUS_CHANGED 0x40 101e27ed1bdSKONRAD Frederic #define DPCD_LINK_STATUS_UPDATED 0x80 102e27ed1bdSKONRAD Frederic 103e27ed1bdSKONRAD Frederic #define DPCD_SINK_STATUS 0x205 104e27ed1bdSKONRAD Frederic #define DPCD_RECEIVE_PORT_0_STATUS 0x01 105e27ed1bdSKONRAD Frederic 106175de524SMarkus Armbruster #endif /* DPCD_H */ 107