Re: [PATCH v3 1/3] dt-binding: gce: add gce header file for mt8192

2021-02-05 Thread Chun-Kuang Hu
Hi, Hsin-Yi:

Hsin-Yi Wang  於 2021年2月5日 週五 下午3:19寫道:
>
> From: Yongqiang Niu 
>
> Add documentation for the mt8192 gce.
>
> Add gce header file defined the gce hardware event,
> subsys number and constant for mt8192.
>
> Signed-off-by: Yongqiang Niu 
> Reviewed-by: Rob Herring 
> Signed-off-by: Hsin-Yi Wang 
> ---
>  .../devicetree/bindings/mailbox/mtk-gce.txt   |   7 +-
>  include/dt-bindings/gce/mt8192-gce.h  | 419 ++
>  2 files changed, 423 insertions(+), 3 deletions(-)
>  create mode 100644 include/dt-bindings/gce/mt8192-gce.h
>
> diff --git a/Documentation/devicetree/bindings/mailbox/mtk-gce.txt 
> b/Documentation/devicetree/bindings/mailbox/mtk-gce.txt
> index 7771ecaac5868..ac4245050d17d 100644
> --- a/Documentation/devicetree/bindings/mailbox/mtk-gce.txt
> +++ b/Documentation/devicetree/bindings/mailbox/mtk-gce.txt
> @@ -9,8 +9,8 @@ CMDQ driver uses mailbox framework for communication. Please 
> refer to
>  mailbox.txt for generic information about mailbox device-tree bindings.
>
>  Required properties:
> -- compatible: can be "mediatek,mt8173-gce", "mediatek,mt8183-gce" or
> -  "mediatek,mt6779-gce".
> +- compatible: can be "mediatek,mt8173-gce", "mediatek,mt8183-gce",
> +  "mediatek,mt8192-gce" or "mediatek,mt6779-gce".
>  - reg: Address range of the GCE unit
>  - interrupts: The interrupt signal from the GCE block
>  - clock: Clocks according to the common clock binding
> @@ -36,7 +36,8 @@ Optional properties for a client device:
>size: the total size of register address that GCE can access.
>
>  Some vaules of properties are defined in 'dt-bindings/gce/mt8173-gce.h',
> -'dt-binding/gce/mt8183-gce.h' or 'dt-bindings/gce/mt6779-gce.h'. Such as
> +'dt-binding/gce/mt8183-gce.h', 'dt-binding/gce/mt8192-gce.h' or
> +'dt-bindings/gce/mt6779-gce.h'. Such as
>  sub-system ids, thread priority, event ids.
>
>  Example:
> diff --git a/include/dt-bindings/gce/mt8192-gce.h 
> b/include/dt-bindings/gce/mt8192-gce.h
> new file mode 100644
> index 0..062754416bfda
> --- /dev/null
> +++ b/include/dt-bindings/gce/mt8192-gce.h
> @@ -0,0 +1,419 @@
> +/* SPDX-License-Identifier: GPL-2.0 */
> +/*
> + * Copyright (c) 2020 MediaTek Inc.
> + * Author: Yongqiang Niu 
> + */
> +
> +#ifndef _DT_BINDINGS_GCE_MT8192_H
> +#define _DT_BINDINGS_GCE_MT8192_H
> +
> +/* assign timeout 0 also means default */
> +#define CMDQ_NO_TIMEOUT0x
> +#define CMDQ_TIMEOUT_DEFAULT   1000
> +
> +/* GCE thread priority */
> +#define CMDQ_THR_PRIO_LOWEST   0
> +#define CMDQ_THR_PRIO_11
> +#define CMDQ_THR_PRIO_22
> +#define CMDQ_THR_PRIO_33
> +#define CMDQ_THR_PRIO_44
> +#define CMDQ_THR_PRIO_55
> +#define CMDQ_THR_PRIO_66
> +#define CMDQ_THR_PRIO_HIGHEST  7
> +
> +/* CPR count in 32bit register */
> +#define GCE_CPR_COUNT  1312
> +
> +/* GCE subsys table */
> +#define SUBSYS_13000
> +#define SUBSYS_14001
> +#define SUBSYS_14012
> +#define SUBSYS_14023
> +#define SUBSYS_15024
> +#define SUBSYS_18805
> +#define SUBSYS_18816
> +#define SUBSYS_18827
> +#define SUBSYS_18838
> +#define SUBSYS_18849
> +#define SUBSYS_100010
> +#define SUBSYS_100111
> +#define SUBSYS_100212
> +#define SUBSYS_100313
> +#define SUBSYS_100414
> +#define SUBSYS_100515
> +#define SUBSYS_102016
> +#define SUBSYS_102817
> +#define SUBSYS_170018
> +#define SUBSYS_170119
> +#define SUBSYS_170220
> +#define SUBSYS_170321
> +#define SUBSYS_180022
> +#define SUBSYS_180123
> +#define SUBSYS_180224
> +#define SUBSYS_180425
> +#define SUBSYS_180526
> +#define SUBSYS_180827
> +#define SUBSYS_180a28
> +#define SUBSYS_180b29
> +#define SUBSYS_NO_SUPPORT  99

Why define no support?

> +
> +/* GCE General Purpose Register (GPR) support
> + * Leave note for scenario usage here
> + */
> +/* GCE: write mask */
> +#define GCE_GPR_R000x00
> +#define GCE_GPR_R010x01
> +/* MDP: P1: JPEG dest */
> +#define GCE_GPR_R020x02
> +#define GCE_GPR_R030x03
> +/* MDP: PQ color */
> +#define GCE_GPR_R040x04
> +/* MDP: 2D sharpness */
> +#define GCE_GPR_R050x05
> +/* DISP: poll esd */
> +#define GCE_GPR_R060x06
> +#define GCE_GPR_R070x07
> +/* MDP: P4: 2D sharpness dst */
> +#define GCE_GPR_R080x08
> +#define GCE_GPR_R090x09
> +/* 

[PATCH v3 1/3] dt-binding: gce: add gce header file for mt8192

2021-02-04 Thread Hsin-Yi Wang
From: Yongqiang Niu 

Add documentation for the mt8192 gce.

Add gce header file defined the gce hardware event,
subsys number and constant for mt8192.

Signed-off-by: Yongqiang Niu 
Reviewed-by: Rob Herring 
Signed-off-by: Hsin-Yi Wang 
---
 .../devicetree/bindings/mailbox/mtk-gce.txt   |   7 +-
 include/dt-bindings/gce/mt8192-gce.h  | 419 ++
 2 files changed, 423 insertions(+), 3 deletions(-)
 create mode 100644 include/dt-bindings/gce/mt8192-gce.h

diff --git a/Documentation/devicetree/bindings/mailbox/mtk-gce.txt 
b/Documentation/devicetree/bindings/mailbox/mtk-gce.txt
index 7771ecaac5868..ac4245050d17d 100644
--- a/Documentation/devicetree/bindings/mailbox/mtk-gce.txt
+++ b/Documentation/devicetree/bindings/mailbox/mtk-gce.txt
@@ -9,8 +9,8 @@ CMDQ driver uses mailbox framework for communication. Please 
refer to
 mailbox.txt for generic information about mailbox device-tree bindings.
 
 Required properties:
-- compatible: can be "mediatek,mt8173-gce", "mediatek,mt8183-gce" or
-  "mediatek,mt6779-gce".
+- compatible: can be "mediatek,mt8173-gce", "mediatek,mt8183-gce",
+  "mediatek,mt8192-gce" or "mediatek,mt6779-gce".
 - reg: Address range of the GCE unit
 - interrupts: The interrupt signal from the GCE block
 - clock: Clocks according to the common clock binding
@@ -36,7 +36,8 @@ Optional properties for a client device:
   size: the total size of register address that GCE can access.
 
 Some vaules of properties are defined in 'dt-bindings/gce/mt8173-gce.h',
-'dt-binding/gce/mt8183-gce.h' or 'dt-bindings/gce/mt6779-gce.h'. Such as
+'dt-binding/gce/mt8183-gce.h', 'dt-binding/gce/mt8192-gce.h' or
+'dt-bindings/gce/mt6779-gce.h'. Such as
 sub-system ids, thread priority, event ids.
 
 Example:
diff --git a/include/dt-bindings/gce/mt8192-gce.h 
b/include/dt-bindings/gce/mt8192-gce.h
new file mode 100644
index 0..062754416bfda
--- /dev/null
+++ b/include/dt-bindings/gce/mt8192-gce.h
@@ -0,0 +1,419 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Copyright (c) 2020 MediaTek Inc.
+ * Author: Yongqiang Niu 
+ */
+
+#ifndef _DT_BINDINGS_GCE_MT8192_H
+#define _DT_BINDINGS_GCE_MT8192_H
+
+/* assign timeout 0 also means default */
+#define CMDQ_NO_TIMEOUT0x
+#define CMDQ_TIMEOUT_DEFAULT   1000
+
+/* GCE thread priority */
+#define CMDQ_THR_PRIO_LOWEST   0
+#define CMDQ_THR_PRIO_11
+#define CMDQ_THR_PRIO_22
+#define CMDQ_THR_PRIO_33
+#define CMDQ_THR_PRIO_44
+#define CMDQ_THR_PRIO_55
+#define CMDQ_THR_PRIO_66
+#define CMDQ_THR_PRIO_HIGHEST  7
+
+/* CPR count in 32bit register */
+#define GCE_CPR_COUNT  1312
+
+/* GCE subsys table */
+#define SUBSYS_13000
+#define SUBSYS_14001
+#define SUBSYS_14012
+#define SUBSYS_14023
+#define SUBSYS_15024
+#define SUBSYS_18805
+#define SUBSYS_18816
+#define SUBSYS_18827
+#define SUBSYS_18838
+#define SUBSYS_18849
+#define SUBSYS_100010
+#define SUBSYS_100111
+#define SUBSYS_100212
+#define SUBSYS_100313
+#define SUBSYS_100414
+#define SUBSYS_100515
+#define SUBSYS_102016
+#define SUBSYS_102817
+#define SUBSYS_170018
+#define SUBSYS_170119
+#define SUBSYS_170220
+#define SUBSYS_170321
+#define SUBSYS_180022
+#define SUBSYS_180123
+#define SUBSYS_180224
+#define SUBSYS_180425
+#define SUBSYS_180526
+#define SUBSYS_180827
+#define SUBSYS_180a28
+#define SUBSYS_180b29
+#define SUBSYS_NO_SUPPORT  99
+
+/* GCE General Purpose Register (GPR) support
+ * Leave note for scenario usage here
+ */
+/* GCE: write mask */
+#define GCE_GPR_R000x00
+#define GCE_GPR_R010x01
+/* MDP: P1: JPEG dest */
+#define GCE_GPR_R020x02
+#define GCE_GPR_R030x03
+/* MDP: PQ color */
+#define GCE_GPR_R040x04
+/* MDP: 2D sharpness */
+#define GCE_GPR_R050x05
+/* DISP: poll esd */
+#define GCE_GPR_R060x06
+#define GCE_GPR_R070x07
+/* MDP: P4: 2D sharpness dst */
+#define GCE_GPR_R080x08
+#define GCE_GPR_R090x09
+/* VCU: poll with timeout for GPR timer */
+#define GCE_GPR_R100x0A
+#define GCE_GPR_R110x0B
+/* CMDQ: debug */
+#define GCE_GPR_R120x0C
+#define GCE_GPR_R130x0D
+/* CMDQ: P7: debug */
+#define GCE_GPR_R140x0E
+#define GCE_GPR_R150x0F
+
+#define