summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/dt-bindings/clock/mdss-pll-clk.h42
-rw-r--r--include/dt-bindings/clock/msm-clocks-hwio-8998.h1
-rw-r--r--include/linux/clk-provider.h1
-rw-r--r--include/uapi/linux/msm_kgsl.h32
4 files changed, 76 insertions, 0 deletions
diff --git a/include/dt-bindings/clock/mdss-pll-clk.h b/include/dt-bindings/clock/mdss-pll-clk.h
new file mode 100644
index 000000000000..8cd0b2a9bc98
--- /dev/null
+++ b/include/dt-bindings/clock/mdss-pll-clk.h
@@ -0,0 +1,42 @@
+/* Copyright (c) 2016, The Linux Foundation. All rights reserved.
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 and
+ * only version 2 as published by the Free Software Foundation.
+ *
+ * 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 __MDSS_PLL_CLK_H
+#define __MDSS_PLL_CLK_H
+
+/* DSI PLL clocks */
+#define BYTE0_MUX_CLK 0
+#define BYTE0_SRC_CLK 1
+#define PIX0_MUX_CLK 2
+#define PIX0_SRC_CLK 3
+#define N2_DIV_0_CLK 4
+#define POST_N1_DIV_0_CLK 5
+#define VCO_CLK_0_CLK 6
+#define SHADOW_BYTE0_SRC_CLK 7
+#define SHADOW_PIX0_SRC_CLK 8
+#define SHADOW_N2_DIV_0_CLK 9
+#define SHADOW_POST_N1_DIV_0_CLK 10
+#define SHADOW_VCO_CLK_0_CLK 11
+#define BYTE1_MUX_CLK 12
+#define BYTE1_SRC_CLK 13
+#define PIX1_MUX_CLK 14
+#define PIX1_SRC_CLK 15
+#define N2_DIV_1_CLK 16
+#define POST_N1_DIV_1_CLK 17
+#define VCO_CLK_1_CLK 18
+#define SHADOW_BYTE1_SRC_CLK 19
+#define SHADOW_PIX1_SRC_CLK 20
+#define SHADOW_N2_DIV_1_CLK 21
+#define SHADOW_POST_N1_DIV_1_CLK 22
+#define SHADOW_VCO_CLK_1_CLK 23
+
+#endif
diff --git a/include/dt-bindings/clock/msm-clocks-hwio-8998.h b/include/dt-bindings/clock/msm-clocks-hwio-8998.h
index f10afffc74b2..8dfa36362e8c 100644
--- a/include/dt-bindings/clock/msm-clocks-hwio-8998.h
+++ b/include/dt-bindings/clock/msm-clocks-hwio-8998.h
@@ -242,6 +242,7 @@
#define GPUCC_RBCPR_CBCR 0x01054
#define GPU_GX_BCR 0x01090
#define GPUCC_GX_DOMAIN_MISC 0x00130
+#define GPUCC_GPU_DD_WRAP_CTRL 0x00430
#define GPUCC_DEBUG_CLK_CTL 0x00120
#define MMSS_PLL_VOTE_APCS 0x001E0
diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h
index 5cd588fa9f6a..744167a9ca8b 100644
--- a/include/linux/clk-provider.h
+++ b/include/linux/clk-provider.h
@@ -33,6 +33,7 @@
#define CLK_GET_ACCURACY_NOCACHE BIT(8) /* do not use the cached clk accuracy */
#define CLK_RECALC_NEW_RATES BIT(9) /* recalc rates after notifications */
#define CLK_IS_CRITICAL BIT(11) /* do not gate, ever */
+#define CLK_IS_MEASURE BIT(14) /* measure clock */
struct clk;
struct clk_hw;
diff --git a/include/uapi/linux/msm_kgsl.h b/include/uapi/linux/msm_kgsl.h
index aac11dbe5984..71fdf6d6e9e5 100644
--- a/include/uapi/linux/msm_kgsl.h
+++ b/include/uapi/linux/msm_kgsl.h
@@ -50,6 +50,7 @@
#define KGSL_CONTEXT_IFH_NOP 0x00010000
#define KGSL_CONTEXT_SECURE 0x00020000
#define KGSL_CONTEXT_NO_SNAPSHOT 0x00040000
+#define KGSL_CONTEXT_SPARSE 0x00080000
#define KGSL_CONTEXT_PREEMPT_STYLE_MASK 0x0E000000
#define KGSL_CONTEXT_PREEMPT_STYLE_SHIFT 25
@@ -89,6 +90,7 @@
#define KGSL_CMDBATCH_END_OF_FRAME KGSL_CONTEXT_END_OF_FRAME /* 0x100 */
#define KGSL_CMDBATCH_SYNC KGSL_CONTEXT_SYNC /* 0x400 */
#define KGSL_CMDBATCH_PWR_CONSTRAINT KGSL_CONTEXT_PWR_CONSTRAINT /* 0x800 */
+#define KGSL_CMDBATCH_SPARSE 0x1000 /* 0x1000 */
/*
* Reserve bits [16:19] and bits [28:31] for possible bits shared between
@@ -1556,4 +1558,34 @@ struct kgsl_sparse_bind {
#define IOCTL_KGSL_SPARSE_BIND \
_IOW(KGSL_IOC_TYPE, 0x54, struct kgsl_sparse_bind)
+/**
+ * struct kgsl_gpu_sparse_command - Argument for
+ * IOCTL_KGSL_GPU_SPARSE_COMMAND
+ * @flags: Current flags for the object
+ * @sparselist: List of kgsl_sparse_binding_object to bind/unbind
+ * @synclist: List of kgsl_command_syncpoints
+ * @sparsesize: Size of kgsl_sparse_binding_object
+ * @numsparse: Number of elements in list
+ * @sync_size: Size of kgsl_command_syncpoint structure
+ * @numsyncs: Number of kgsl_command_syncpoints in syncpoint list
+ * @context_id: Context ID submitting the kgsl_gpu_command
+ * @timestamp: Timestamp for the submitted commands
+ * @id: Virtual ID to bind/unbind
+ */
+struct kgsl_gpu_sparse_command {
+ uint64_t flags;
+ uint64_t __user sparselist;
+ uint64_t __user synclist;
+ unsigned int sparsesize;
+ unsigned int numsparse;
+ unsigned int syncsize;
+ unsigned int numsyncs;
+ unsigned int context_id;
+ unsigned int timestamp;
+ unsigned int id;
+};
+
+#define IOCTL_KGSL_GPU_SPARSE_COMMAND \
+ _IOWR(KGSL_IOC_TYPE, 0x55, struct kgsl_gpu_sparse_command)
+
#endif /* _UAPI_MSM_KGSL_H */