[PATCH 07/10] uapi: linux: Xylon framebuffer driver header file

2015-03-11 Thread Davor Joja
Driver header file containing structures and IOCTLs for user space
applications to be able to use advanced logiCVC hw functionality.

Signed-off-by: Davor Joja 
---
 include/uapi/linux/xylonfb.h | 85 
 1 file changed, 85 insertions(+)
 create mode 100644 include/uapi/linux/xylonfb.h

diff --git a/include/uapi/linux/xylonfb.h b/include/uapi/linux/xylonfb.h
new file mode 100644
index 000..662c02f
--- /dev/null
+++ b/include/uapi/linux/xylonfb.h
@@ -0,0 +1,85 @@
+/*
+ * Xylon logiCVC frame buffer driver IOCTL parameters
+ *
+ * Copyright (C) 2015 Xylon d.o.o.
+ * Author: Davor Joja 
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+
+#ifndef __XYLONFB_H__
+#define __XYLONFB_H__
+
+#include 
+
+struct xylonfb_hw_access {
+   __u32 offset;
+   __u32 value;
+   bool set;
+};
+
+/* Used only with logiCVC 3.x */
+struct xylonfb_layer_buffer {
+   __u8 id;
+   bool set;
+};
+
+struct xylonfb_layer_color {
+   __u32 raw_rgb;
+   __u8 use_raw;
+   __u8 r;
+   __u8 g;
+   __u8 b;
+   bool set;
+};
+
+struct xylonfb_layer_geometry {
+   __u16 x;
+   __u16 y;
+   __u16 width;
+   __u16 height;
+   __u16 x_offset;
+   __u16 y_offset;
+   bool set;
+};
+
+struct xylonfb_layer_transparency {
+   __u8 alpha;
+   bool set;
+};
+
+/* Xylon FB IOCTL's */
+#define XYLONFB_IOW(num, dtype)_IOW('x', num, dtype)
+#define XYLONFB_IOR(num, dtype)_IOR('x', num, dtype)
+#define XYLONFB_IOWR(num, dtype)   _IOWR('x', num, dtype)
+#define XYLONFB_IO(num)_IO('x', num)
+
+#define XYLONFB_VSYNC_CTRL XYLONFB_IOR(30, bool)
+#define XYLONFB_LAYER_IDX  XYLONFB_IOR(31, unsigned int)
+#define XYLONFB_LAYER_ALPHA\
+   XYLONFB_IOR(32, struct xylonfb_layer_transparency)
+#define XYLONFB_LAYER_COLOR_TRANSP_CTRLXYLONFB_IOW(33, bool)
+#define XYLONFB_LAYER_COLOR_TRANSP \
+   XYLONFB_IOR(34, struct xylonfb_layer_color)
+#define XYLONFB_LAYER_GEOMETRY \
+   XYLONFB_IOR(35, struct xylonfb_layer_geometry)
+#define XYLONFB_LAYER_BUFFER \
+   XYLONFB_IOR(36, struct xylonfb_layer_buffer)
+#define XYLONFB_LAYER_BUFFER_OFFSETXYLONFB_IOR(37, unsigned int)
+#define XYLONFB_BACKGROUND_COLOR \
+   XYLONFB_IOR(38, struct xylonfb_layer_color)
+#define XYLONFB_LAYER_EXT_BUFF_SWITCH  XYLONFB_IOW(39, bool)
+#define XYLONFB_HW_ACCESS \
+   XYLONFB_IOR(40, struct xylonfb_hw_access)
+#define XYLONFB_IP_CORE_VERSIONXYLONFB_IOR(41, __u32)
+#define XYLONFB_WAIT_EDID  XYLONFB_IOW(42, unsigned int)
+#define XYLONFB_GET_EDID   XYLONFB_IOR(43, char)
+
+#endif /* __XYLONFB_H__ */
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH 07/10] uapi: linux: Xylon framebuffer driver header file

2014-10-17 Thread Davor Joja
Driver header file containing structures and IOCTLs for user space
apps to be able to use complete logiCVC hw functionality.

Signed-off-by: Davor Joja 
---
 include/uapi/linux/xylonfb.h | 85 
 1 file changed, 85 insertions(+)
 create mode 100644 include/uapi/linux/xylonfb.h

diff --git a/include/uapi/linux/xylonfb.h b/include/uapi/linux/xylonfb.h
new file mode 100644
index 000..5db8344
--- /dev/null
+++ b/include/uapi/linux/xylonfb.h
@@ -0,0 +1,85 @@
+/*
+ * Xylon logiCVC frame buffer driver IOCTL parameters
+ *
+ * Copyright (C) 2014 Xylon d.o.o.
+ * Author: Davor Joja 
+ *
+ * This software is licensed under the terms of the GNU General Public
+ * License version 2, as published by the Free Software Foundation, and
+ * may be copied, distributed, and modified under those terms.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ */
+
+#ifndef __XYLONFB_H__
+#define __XYLONFB_H__
+
+#include 
+
+struct xylonfb_hw_access {
+   __u32 offset;
+   __u32 value;
+   bool set;
+};
+
+/* Used only with logiCVC 3.x */
+struct xylonfb_layer_buffer {
+   __u8 id;
+   bool set;
+};
+
+struct xylonfb_layer_color {
+   __u32 raw_rgb;
+   __u8 use_raw;
+   __u8 r;
+   __u8 g;
+   __u8 b;
+   bool set;
+};
+
+struct xylonfb_layer_geometry {
+   __u16 x;
+   __u16 y;
+   __u16 width;
+   __u16 height;
+   __u16 x_offset;
+   __u16 y_offset;
+   bool set;
+};
+
+struct xylonfb_layer_transparency {
+   __u8 alpha;
+   bool set;
+};
+
+/* Xylon FB IOCTL's */
+#define XYLONFB_IOW(num, dtype)_IOW('x', num, dtype)
+#define XYLONFB_IOR(num, dtype)_IOR('x', num, dtype)
+#define XYLONFB_IOWR(num, dtype)   _IOWR('x', num, dtype)
+#define XYLONFB_IO(num)_IO('x', num)
+
+#define XYLONFB_VSYNC_CTRL XYLONFB_IOR(30, bool)
+#define XYLONFB_LAYER_IDX  XYLONFB_IOR(31, unsigned int)
+#define XYLONFB_LAYER_ALPHA\
+   XYLONFB_IOR(32, struct xylonfb_layer_transparency)
+#define XYLONFB_LAYER_COLOR_TRANSP_CTRLXYLONFB_IOW(33, bool)
+#define XYLONFB_LAYER_COLOR_TRANSP \
+   XYLONFB_IOR(34, struct xylonfb_layer_color)
+#define XYLONFB_LAYER_GEOMETRY \
+   XYLONFB_IOR(35, struct xylonfb_layer_geometry)
+#define XYLONFB_LAYER_BUFFER \
+   XYLONFB_IOR(36, struct xylonfb_layer_buffer)
+#define XYLONFB_LAYER_BUFFER_OFFSETXYLONFB_IOR(37, unsigned int)
+#define XYLONFB_BACKGROUND_COLOR \
+   XYLONFB_IOR(38, struct xylonfb_layer_color)
+#define XYLONFB_LAYER_EXT_BUFF_SWITCH  XYLONFB_IOW(39, bool)
+#define XYLONFB_HW_ACCESS \
+   XYLONFB_IOR(40, struct xylonfb_hw_access)
+#define XYLONFB_IP_CORE_VERSIONXYLONFB_IOR(41, __u32)
+#define XYLONFB_WAIT_EDID  XYLONFB_IOW(42, unsigned int)
+#define XYLONFB_GET_EDID   XYLONFB_IOR(43, char)
+
+#endif /* __XYLONFB_H__ */
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/