From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S934525AbdBWB77 (ORCPT ); Wed, 22 Feb 2017 20:59:59 -0500 Received: from mail-pf0-f178.google.com ([209.85.192.178]:36634 "EHLO mail-pf0-f178.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S934010AbdBWB7q (ORCPT ); Wed, 22 Feb 2017 20:59:46 -0500 From: Leo Yan To: Rob Herring , Mark Rutland , Mathieu Poirier , Leo Yan , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, mike.leach@linaro.org Subject: [PATCH v1 1/2] coresight: bindings for debug module Date: Thu, 23 Feb 2017 09:57:46 +0800 Message-Id: <1487815067-27511-2-git-send-email-leo.yan@linaro.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1487815067-27511-1-git-send-email-leo.yan@linaro.org> References: <1487815067-27511-1-git-send-email-leo.yan@linaro.org> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org According to ARMv8 architecture reference manual (ARM DDI 0487A.k) Chapter 'Part H: External debug', the CPU can integrate debug module and it can support self-hosted debug and external debug. Especially for supporting self-hosted debug, this means the program can access the debug module from mmio region; and usually the mmio region is integrated with coresight. So add document for binding debug component, includes binding to two clocks, one is apb clock for bus and another is debug clock for debug module self; and also need specify the CPU node which the debug module is dedicated to specific CPU. Signed-off-by: Leo Yan --- .../devicetree/bindings/arm/coresight-debug.txt | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/coresight-debug.txt diff --git a/Documentation/devicetree/bindings/arm/coresight-debug.txt b/Documentation/devicetree/bindings/arm/coresight-debug.txt new file mode 100644 index 0000000..6e03e9b --- /dev/null +++ b/Documentation/devicetree/bindings/arm/coresight-debug.txt @@ -0,0 +1,39 @@ +* CoreSight Debug Component: + +CoreSight debug component are compliant with the ARMv8 architecture reference +manual (ARM DDI 0487A.k) Chapter 'Part H: External debug'. The external debug +module is mainly used for two modes: self-hosted debug and external debug, and +it can be accessed from mmio region from Coresight and eventually the debug +module connects with CPU for debugging. And the debug module provides +sample-based profiling extension, which can be used to sample CPU program +counter, secure state and exception level, etc; usually every CPU has one +dedicated debug module to be connected. + +Required properties: + +- compatible : should be + * "arm,coresight-debug", "arm,primecell"; supplemented with + "arm,primecell" as driver is using the AMBA bus interface. + +- reg : physical base address and length of the register set. + +- clocks : the clocks associated to this component. + +- clock-names : the name of the clocks referenced by the code. Since we are + using the AMBA framework, the name of the clock providing + the interconnect should be "apb_pclk", and the debug module + has an additional clock "dbg_clk", which is used to provide + clock for debug module itself. Both clocks are mandatory. + +- cpu : the cpu phandle the debug module is affined to. When omitted + the source is considered to belong to CPU0. + +Example: + + debug@f6590000 { + compatible = "arm,coresight-debug","arm,primecell"; + reg = <0 0xf6590000 0 0x1000>; + clocks = <&sys_ctrl HI6220_CS_ATB>, <&acpu_ctrl HI6220_ACPU_DBG_CLK0>; + clock-names = "apb_pclk", "dbg_clk"; + cpu = <&cpu0>; + }; -- 2.7.4 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Leo Yan Subject: [PATCH v1 1/2] coresight: bindings for debug module Date: Thu, 23 Feb 2017 09:57:46 +0800 Message-ID: <1487815067-27511-2-git-send-email-leo.yan@linaro.org> References: <1487815067-27511-1-git-send-email-leo.yan@linaro.org> Return-path: In-Reply-To: <1487815067-27511-1-git-send-email-leo.yan-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org> Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Rob Herring , Mark Rutland , Mathieu Poirier , Leo Yan , devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, mike.leach-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org List-Id: devicetree@vger.kernel.org According to ARMv8 architecture reference manual (ARM DDI 0487A.k) Chapter 'Part H: External debug', the CPU can integrate debug module and it can support self-hosted debug and external debug. Especially for supporting self-hosted debug, this means the program can access the debug module from mmio region; and usually the mmio region is integrated with coresight. So add document for binding debug component, includes binding to two clocks, one is apb clock for bus and another is debug clock for debug module self; and also need specify the CPU node which the debug module is dedicated to specific CPU. Signed-off-by: Leo Yan --- .../devicetree/bindings/arm/coresight-debug.txt | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/coresight-debug.txt diff --git a/Documentation/devicetree/bindings/arm/coresight-debug.txt b/Documentation/devicetree/bindings/arm/coresight-debug.txt new file mode 100644 index 0000000..6e03e9b --- /dev/null +++ b/Documentation/devicetree/bindings/arm/coresight-debug.txt @@ -0,0 +1,39 @@ +* CoreSight Debug Component: + +CoreSight debug component are compliant with the ARMv8 architecture reference +manual (ARM DDI 0487A.k) Chapter 'Part H: External debug'. The external debug +module is mainly used for two modes: self-hosted debug and external debug, and +it can be accessed from mmio region from Coresight and eventually the debug +module connects with CPU for debugging. And the debug module provides +sample-based profiling extension, which can be used to sample CPU program +counter, secure state and exception level, etc; usually every CPU has one +dedicated debug module to be connected. + +Required properties: + +- compatible : should be + * "arm,coresight-debug", "arm,primecell"; supplemented with + "arm,primecell" as driver is using the AMBA bus interface. + +- reg : physical base address and length of the register set. + +- clocks : the clocks associated to this component. + +- clock-names : the name of the clocks referenced by the code. Since we are + using the AMBA framework, the name of the clock providing + the interconnect should be "apb_pclk", and the debug module + has an additional clock "dbg_clk", which is used to provide + clock for debug module itself. Both clocks are mandatory. + +- cpu : the cpu phandle the debug module is affined to. When omitted + the source is considered to belong to CPU0. + +Example: + + debug@f6590000 { + compatible = "arm,coresight-debug","arm,primecell"; + reg = <0 0xf6590000 0 0x1000>; + clocks = <&sys_ctrl HI6220_CS_ATB>, <&acpu_ctrl HI6220_ACPU_DBG_CLK0>; + clock-names = "apb_pclk", "dbg_clk"; + cpu = <&cpu0>; + }; -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html From mboxrd@z Thu Jan 1 00:00:00 1970 From: leo.yan@linaro.org (Leo Yan) Date: Thu, 23 Feb 2017 09:57:46 +0800 Subject: [PATCH v1 1/2] coresight: bindings for debug module In-Reply-To: <1487815067-27511-1-git-send-email-leo.yan@linaro.org> References: <1487815067-27511-1-git-send-email-leo.yan@linaro.org> Message-ID: <1487815067-27511-2-git-send-email-leo.yan@linaro.org> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org According to ARMv8 architecture reference manual (ARM DDI 0487A.k) Chapter 'Part H: External debug', the CPU can integrate debug module and it can support self-hosted debug and external debug. Especially for supporting self-hosted debug, this means the program can access the debug module from mmio region; and usually the mmio region is integrated with coresight. So add document for binding debug component, includes binding to two clocks, one is apb clock for bus and another is debug clock for debug module self; and also need specify the CPU node which the debug module is dedicated to specific CPU. Signed-off-by: Leo Yan --- .../devicetree/bindings/arm/coresight-debug.txt | 39 ++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 Documentation/devicetree/bindings/arm/coresight-debug.txt diff --git a/Documentation/devicetree/bindings/arm/coresight-debug.txt b/Documentation/devicetree/bindings/arm/coresight-debug.txt new file mode 100644 index 0000000..6e03e9b --- /dev/null +++ b/Documentation/devicetree/bindings/arm/coresight-debug.txt @@ -0,0 +1,39 @@ +* CoreSight Debug Component: + +CoreSight debug component are compliant with the ARMv8 architecture reference +manual (ARM DDI 0487A.k) Chapter 'Part H: External debug'. The external debug +module is mainly used for two modes: self-hosted debug and external debug, and +it can be accessed from mmio region from Coresight and eventually the debug +module connects with CPU for debugging. And the debug module provides +sample-based profiling extension, which can be used to sample CPU program +counter, secure state and exception level, etc; usually every CPU has one +dedicated debug module to be connected. + +Required properties: + +- compatible : should be + * "arm,coresight-debug", "arm,primecell"; supplemented with + "arm,primecell" as driver is using the AMBA bus interface. + +- reg : physical base address and length of the register set. + +- clocks : the clocks associated to this component. + +- clock-names : the name of the clocks referenced by the code. Since we are + using the AMBA framework, the name of the clock providing + the interconnect should be "apb_pclk", and the debug module + has an additional clock "dbg_clk", which is used to provide + clock for debug module itself. Both clocks are mandatory. + +- cpu : the cpu phandle the debug module is affined to. When omitted + the source is considered to belong to CPU0. + +Example: + + debug at f6590000 { + compatible = "arm,coresight-debug","arm,primecell"; + reg = <0 0xf6590000 0 0x1000>; + clocks = <&sys_ctrl HI6220_CS_ATB>, <&acpu_ctrl HI6220_ACPU_DBG_CLK0>; + clock-names = "apb_pclk", "dbg_clk"; + cpu = <&cpu0>; + }; -- 2.7.4