Module Name: src
Committed By: macallan
Date: Wed Jun 29 03:06:16 UTC 2011
Modified Files:
src/sys/dev/wscons: wsconsio.h
Log Message:
add two new ioctl()s:
WSDISPLAYIO_GET_EDID to retrieve EDID data from display drivers
WSDISPLAYIO_SET_POLLING to control polling with VCONS_DRAW_INTR
To generate a diff of this commit:
cvs rdiff -u -r1.96 -r1.97 src/sys/dev/wscons/wsconsio.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/wscons/wsconsio.h
diff -u src/sys/dev/wscons/wsconsio.h:1.96 src/sys/dev/wscons/wsconsio.h:1.97
--- src/sys/dev/wscons/wsconsio.h:1.96 Wed Jun 8 10:25:21 2011
+++ src/sys/dev/wscons/wsconsio.h Wed Jun 29 03:06:16 2011
@@ -1,4 +1,4 @@
-/* $NetBSD: wsconsio.h,v 1.96 2011/06/08 10:25:21 drochner Exp $ */
+/* $NetBSD: wsconsio.h,v 1.97 2011/06/29 03:06:16 macallan Exp $ */
/*
* Copyright (c) 1996, 1997 Christopher G. Demetriou. All rights reserved.
@@ -565,4 +565,32 @@
#define WSDISPLAYIO_GET_BUSID _IOR('W', 101, struct wsdisplayio_bus_id)
+/*
+ * retrieving EDID data from a wsdisplay driver
+ * The EDID block will be written into a buffer pointed at by edid_data,
+ * the caller must fill in buffer_size and edid_data, the driver will set
+ * data_size to the number of bytes actually written.
+ * If the buffer is too small the call will fail with EAGAIN and the driver
+ * will set data_size without writing anything into the buffer.
+ */
+
+struct wsdisplayio_edid_info {
+ int buffer_size;
+ int data_size;
+ uint8_t *edid_data;
+};
+#define WSDISPLAYIO_GET_EDID _IOWR('W', 102, struct wsdisplayio_edid_info)
+
+/*
+ * this is for enabling and disabling interrupt-driven drawing
+ * pass 1 to enable polling, 0 to go back to normal
+ * the kernel itself will call this on the console device when entering or
+ * leaving ddb and on panic
+ * may have side effects like hard switching to the virtual console which
+ * shows kernel output, resetting the video hardware etc. - not really for
+ * userland to mess with
+ */
+#define WSDISPLAYIO_SET_POLLING _IOW('W', 103, int)
+#define WSDISPLAYIOMGWEHITANDKILLEDASKUNK WSDISPLAYIO_SET_POLLING
+
#endif /* _DEV_WSCONS_WSCONSIO_H_ */