summaryrefslogtreecommitdiff
path: root/libdrm/xf86drmMode.h
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2008-06-02 12:58:10 +1000
committerDave Airlie <airlied@redhat.com>2008-06-02 12:58:10 +1000
commiteba6cdc936cb33d929997ccb9bade6f75bb40670 (patch)
tree8fc95131e711155fe4e5613e5c0029cf71054e5e /libdrm/xf86drmMode.h
parentefb48c6cf7bbb57e7b2ea6ce7671905e84384963 (diff)
parent7fec6c0e2a2457925b88ed3bd70d9defde77b81b (diff)
Merge branch 'modesetting-101-encoders' into modesetting-101
Diffstat (limited to 'libdrm/xf86drmMode.h')
-rw-r--r--libdrm/xf86drmMode.h69
1 files changed, 41 insertions, 28 deletions
diff --git a/libdrm/xf86drmMode.h b/libdrm/xf86drmMode.h
index 5171b592..2f3a8f74 100644
--- a/libdrm/xf86drmMode.h
+++ b/libdrm/xf86drmMode.h
@@ -60,8 +60,11 @@ typedef struct _drmModeRes {
int count_crtcs;
uint32_t *crtcs;
- int count_outputs;
- uint32_t *outputs;
+ int count_connectors;
+ uint32_t *connectors;
+
+ int count_encoders;
+ uint32_t *encoders;
uint32_t min_width, max_width;
uint32_t min_height, max_height;
@@ -96,16 +99,24 @@ typedef struct _drmModeCrtc {
int mode_valid;
struct drm_mode_modeinfo mode;
- int count_outputs;
- uint32_t outputs; /**< Outputs that are connected */
+ int count_connectors;
+ uint32_t connectors; /**< Connectors that are connected */
int count_possibles;
- uint32_t possibles; /**< Outputs that can be connected */
+ uint32_t possibles; /**< Connectors that can be connected */
int gamma_size; /**< Number of gamma stops */
} drmModeCrtc, *drmModeCrtcPtr;
+typedef struct _drmModeEncoder {
+ unsigned int encoder_id;
+ unsigned int encoder_type;
+ uint32_t crtc;
+ uint32_t crtcs;
+ uint32_t clones;
+} drmModeEncoder, *drmModeEncoderPtr;
+
typedef enum {
DRM_MODE_CONNECTED = 1,
DRM_MODE_DISCONNECTED = 2,
@@ -121,22 +132,16 @@ typedef enum {
DRM_MODE_SUBPIXEL_NONE = 6
} drmModeSubPixel;
-typedef struct _drmModeOutput {
- unsigned int output_id;
+typedef struct _drmModeConnector {
+ unsigned int connector_id;
- unsigned int crtc; /**< Crtc currently connected to */
- unsigned int output_type;
- unsigned int output_type_id;
+ unsigned int encoder; /**< Crtc currently connected to */
+ unsigned int connector_type;
+ unsigned int connector_type_id;
drmModeConnection connection;
uint32_t mmWidth, mmHeight; /**< HxW in millimeters */
drmModeSubPixel subpixel;
- int count_crtcs;
- uint32_t crtcs; /**< Possible crtc to connect to */
-
- int count_clones;
- uint32_t clones; /**< Mask of clones */
-
int count_modes;
struct drm_mode_modeinfo *modes;
@@ -144,7 +149,9 @@ typedef struct _drmModeOutput {
uint32_t *props; /**< List of property ids */
uint64_t *prop_values; /**< List of property values */
-} drmModeOutput, *drmModeOutputPtr;
+ int count_encoders;
+ uint32_t *encoders; /**< List of encoder ids */
+} drmModeConnector, *drmModeConnectorPtr;
@@ -152,7 +159,8 @@ extern void drmModeFreeModeInfo( struct drm_mode_modeinfo *ptr );
extern void drmModeFreeResources( drmModeResPtr ptr );
extern void drmModeFreeFB( drmModeFBPtr ptr );
extern void drmModeFreeCrtc( drmModeCrtcPtr ptr );
-extern void drmModeFreeOutput( drmModeOutputPtr ptr );
+extern void drmModeFreeConnector( drmModeConnectorPtr ptr );
+extern void drmModeFreeEncoder( drmModeEncoderPtr ptr );
/**
* Retrives all of the resources associated with a card.
@@ -204,7 +212,7 @@ extern drmModeCrtcPtr drmModeGetCrtc(int fd, uint32_t crtcId);
* Set the mode on a crtc crtcId with the given mode modeId.
*/
int drmModeSetCrtc(int fd, uint32_t crtcId, uint32_t bufferId,
- uint32_t x, uint32_t y, uint32_t *outputs, int count,
+ uint32_t x, uint32_t y, uint32_t *connectors, int count,
struct drm_mode_modeinfo *mode);
/*
@@ -221,32 +229,37 @@ int drmModeSetCursor(int fd, uint32_t crtcId, uint32_t bo_handle, uint32_t width
*/
int drmModeMoveCursor(int fd, uint32_t crtcId, int x, int y);
+/**
+ * Encoder functions
+ */
+drmModeEncoderPtr drmModeGetEncoder(int fd, uint32_t encoder_id);
+
/*
- * Output manipulation
+ * Connector manipulation
*/
/**
- * Retrive information about the output outputId.
+ * Retrive information about the connector connectorId.
*/
-extern drmModeOutputPtr drmModeGetOutput(int fd,
- uint32_t outputId);
+extern drmModeConnectorPtr drmModeGetConnector(int fd,
+ uint32_t connectorId);
/**
- * Attaches the given mode to an output.
+ * Attaches the given mode to an connector.
*/
-extern int drmModeAttachMode(int fd, uint32_t outputId, struct drm_mode_modeinfo *mode_info);
+extern int drmModeAttachMode(int fd, uint32_t connectorId, struct drm_mode_modeinfo *mode_info);
/**
- * Detaches a mode from the output
+ * Detaches a mode from the connector
* must be unused, by the given mode.
*/
-extern int drmModeDetachMode(int fd, uint32_t outputId, struct drm_mode_modeinfo *mode_info);
+extern int drmModeDetachMode(int fd, uint32_t connectorId, struct drm_mode_modeinfo *mode_info);
extern drmModePropertyPtr drmModeGetProperty(int fd, uint32_t propertyId);
extern void drmModeFreeProperty(drmModePropertyPtr ptr);
extern drmModePropertyBlobPtr drmModeGetPropertyBlob(int fd, uint32_t blob_id);
extern void drmModeFreePropertyBlob(drmModePropertyBlobPtr ptr);
-extern int drmModeOutputSetProperty(int fd, uint32_t output_id, uint32_t property_id,
+extern int drmModeConnectorSetProperty(int fd, uint32_t connector_id, uint32_t property_id,
uint64_t value);
extern int drmCheckModesettingSupported(const char *busid);