linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture
@ 2015-02-11  4:31 mathieu.poirier
  2015-02-11  4:31 ` [PATCH v3 2/2] coresight: fixing compilation warnings picked up by 64bit compiler mathieu.poirier
  2015-02-11 11:36 ` [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture Catalin Marinas
  0 siblings, 2 replies; 6+ messages in thread
From: mathieu.poirier @ 2015-02-11  4:31 UTC (permalink / raw)
  To: will.deacon; +Cc: linux, Catalin.Marinas, linux-arm-kernel, linux-kernel

From: Mathieu Poirier <mathieu.poirier@linaro.org>

Most CoreSight blocks are 64-bit ready.  As such move configuration
entries from "arch/arm/Kconfig.config" to the driver's subdirectory
and source the newly created Kconfig from architecture specific
Kconfig.debug files.

Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
Change for v3:
  - Separating Kconfig work from compilation warnings fixes.
---
 arch/arm/Kconfig.debug    | 55 +-----------------------------------------
 arch/arm64/Kconfig.debug  |  2 ++
 drivers/coresight/Kconfig | 61 +++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 64 insertions(+), 54 deletions(-)
 create mode 100644 drivers/coresight/Kconfig

diff --git a/arch/arm/Kconfig.debug b/arch/arm/Kconfig.debug
index 5ddd4906f7a7..4fdbb0c012e6 100644
--- a/arch/arm/Kconfig.debug
+++ b/arch/arm/Kconfig.debug
@@ -1478,59 +1478,6 @@ config DEBUG_SET_MODULE_RONX
 	  against certain classes of kernel exploits.
 	  If in doubt, say "N".
 
-menuconfig CORESIGHT
-	bool "CoreSight Tracing Support"
-	select ARM_AMBA
-	help
-	  This framework provides a kernel interface for the CoreSight debug
-	  and trace drivers to register themselves with. It's intended to build
-	  a topological view of the CoreSight components based on a DT
-	  specification and configure the right serie of components when a
-	  trace source gets enabled.
-
-if CORESIGHT
-config CORESIGHT_LINKS_AND_SINKS
-	bool "CoreSight Link and Sink drivers"
-	help
-	  This enables support for CoreSight link and sink drivers that are
-	  responsible for transporting and collecting the trace data
-	  respectively.  Link and sinks are dynamically aggregated with a trace
-	  entity at run time to form a complete trace path.
-
-config CORESIGHT_LINK_AND_SINK_TMC
-	bool "Coresight generic TMC driver"
-	depends on CORESIGHT_LINKS_AND_SINKS
-	help
-	  This enables support for the Trace Memory Controller driver.  Depending
-	  on its configuration the device can act as a link (embedded trace router
-	  - ETR) or sink (embedded trace FIFO).  The driver complies with the
-	  generic implementation of the component without special enhancement or
-	  added features.
-
-config CORESIGHT_SINK_TPIU
-	bool "Coresight generic TPIU driver"
-	depends on CORESIGHT_LINKS_AND_SINKS
-	help
-	  This enables support for the Trace Port Interface Unit driver, responsible
-	  for bridging the gap between the on-chip coresight components and a trace
-	  port collection engine, typically connected to an external host for use
-	  case capturing more traces than the on-board coresight memory can handle.
-
-config CORESIGHT_SINK_ETBV10
-	bool "Coresight ETBv1.0 driver"
-	depends on CORESIGHT_LINKS_AND_SINKS
-	help
-	  This enables support for the Embedded Trace Buffer version 1.0 driver
-	  that complies with the generic implementation of the component without
-	  special enhancement or added features.
+source "drivers/coresight/Kconfig"
 
-config CORESIGHT_SOURCE_ETM3X
-	bool "CoreSight Embedded Trace Macrocell 3.x driver"
-	select CORESIGHT_LINKS_AND_SINKS
-	help
-	  This driver provides support for processor ETM3.x and PTM1.x modules,
-	  which allows tracing the instructions that a processor is executing
-	  This is primarily useful for instruction level tracing.  Depending
-	  the ETM version data tracing may also be available.
-endif
 endmenu
diff --git a/arch/arm64/Kconfig.debug b/arch/arm64/Kconfig.debug
index 5fdd6dce8061..650e46056c55 100644
--- a/arch/arm64/Kconfig.debug
+++ b/arch/arm64/Kconfig.debug
@@ -66,4 +66,6 @@ config DEBUG_SET_MODULE_RONX
           against certain classes of kernel exploits.
           If in doubt, say "N".
 
+source "drivers/coresight/Kconfig"
+
 endmenu
diff --git a/drivers/coresight/Kconfig b/drivers/coresight/Kconfig
new file mode 100644
index 000000000000..fc1f1ae7a49d
--- /dev/null
+++ b/drivers/coresight/Kconfig
@@ -0,0 +1,61 @@
+#
+# Coresight configuration
+#
+menuconfig CORESIGHT
+	bool "CoreSight Tracing Support"
+	select ARM_AMBA
+	help
+	  This framework provides a kernel interface for the CoreSight debug
+	  and trace drivers to register themselves with. It's intended to build
+	  a topological view of the CoreSight components based on a DT
+	  specification and configure the right serie of components when a
+	  trace source gets enabled.
+
+if CORESIGHT
+config CORESIGHT_LINKS_AND_SINKS
+	bool "CoreSight Link and Sink drivers"
+	help
+	  This enables support for CoreSight link and sink drivers that are
+	  responsible for transporting and collecting the trace data
+	  respectively.  Link and sinks are dynamically aggregated with a trace
+	  entity at run time to form a complete trace path.
+
+config CORESIGHT_LINK_AND_SINK_TMC
+	bool "Coresight generic TMC driver"
+	depends on CORESIGHT_LINKS_AND_SINKS
+	help
+	  This enables support for the Trace Memory Controller driver.
+	  Depending on its configuration the device can act as a link (embedded
+	  trace router - ETR) or sink (embedded trace FIFO).  The driver
+	  complies with the generic implementation of the component without
+	  special enhancement or added features.
+
+config CORESIGHT_SINK_TPIU
+	bool "Coresight generic TPIU driver"
+	depends on CORESIGHT_LINKS_AND_SINKS
+	help
+	  This enables support for the Trace Port Interface Unit driver,
+	  responsible for bridging the gap between the on-chip coresight
+	  components and a trace for bridging the gap between the on-chip
+	  coresight components and a trace port collection engine, typically
+	  connected to an external host for use case capturing more traces than
+	  the on-board coresight memory can handle.
+
+config CORESIGHT_SINK_ETBV10
+	bool "Coresight ETBv1.0 driver"
+	depends on CORESIGHT_LINKS_AND_SINKS
+	help
+	  This enables support for the Embedded Trace Buffer version 1.0 driver
+	  that complies with the generic implementation of the component without
+	  special enhancement or added features.
+
+config CORESIGHT_SOURCE_ETM3X
+	bool "CoreSight Embedded Trace Macrocell 3.x driver"
+	depends on !ARM64
+	select CORESIGHT_LINKS_AND_SINKS
+	help
+	  This driver provides support for processor ETM3.x and PTM1.x modules,
+	  which allows tracing the instructions that a processor is executing
+	  This is primarily useful for instruction level tracing.  Depending
+	  the ETM version data tracing may also be available.
+endif
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v3 2/2] coresight: fixing compilation warnings picked up by 64bit compiler
  2015-02-11  4:31 [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture mathieu.poirier
@ 2015-02-11  4:31 ` mathieu.poirier
  2015-02-11 11:36 ` [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture Catalin Marinas
  1 sibling, 0 replies; 6+ messages in thread
From: mathieu.poirier @ 2015-02-11  4:31 UTC (permalink / raw)
  To: will.deacon; +Cc: linux, Catalin.Marinas, linux-arm-kernel, linux-kernel

From: Mathieu Poirier <mathieu.poirier@linaro.org>

Compiling coresight drivers with a 64-bit compiler highlights a couple
of formatting issues, which are fixed by this patch.

Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
Changes for v3:
  - Splitting Kconfig work from compilation warnings fixes.
---
 drivers/coresight/coresight-etb10.c | 4 ++--
 drivers/coresight/coresight-tmc.c   | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/coresight/coresight-etb10.c b/drivers/coresight/coresight-etb10.c
index c9acd406f0d0..40049869aecd 100644
--- a/drivers/coresight/coresight-etb10.c
+++ b/drivers/coresight/coresight-etb10.c
@@ -313,8 +313,8 @@ static ssize_t etb_read(struct file *file, char __user *data,
 
 	*ppos += len;
 
-	dev_dbg(drvdata->dev, "%s: %d bytes copied, %d bytes left\n",
-		__func__, len, (int) (depth * 4 - *ppos));
+	dev_dbg(drvdata->dev, "%s: %zu bytes copied, %d bytes left\n",
+		__func__, len, (int)(depth * 4 - *ppos));
 	return len;
 }
 
diff --git a/drivers/coresight/coresight-tmc.c b/drivers/coresight/coresight-tmc.c
index 3ff232f9ddf7..030e097c4fb2 100644
--- a/drivers/coresight/coresight-tmc.c
+++ b/drivers/coresight/coresight-tmc.c
@@ -533,8 +533,8 @@ static ssize_t tmc_read(struct file *file, char __user *data, size_t len,
 
 	*ppos += len;
 
-	dev_dbg(drvdata->dev, "%s: %d bytes copied, %d bytes left\n",
-		__func__, len, (int) (drvdata->size - *ppos));
+	dev_dbg(drvdata->dev, "%s: %zu bytes copied, %d bytes left\n",
+		__func__, len, (int)(drvdata->size - *ppos));
 	return len;
 }
 
-- 
1.9.1


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture
  2015-02-11  4:31 [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture mathieu.poirier
  2015-02-11  4:31 ` [PATCH v3 2/2] coresight: fixing compilation warnings picked up by 64bit compiler mathieu.poirier
@ 2015-02-11 11:36 ` Catalin Marinas
  2015-02-12  2:54   ` Mathieu Poirier
  1 sibling, 1 reply; 6+ messages in thread
From: Catalin Marinas @ 2015-02-11 11:36 UTC (permalink / raw)
  To: mathieu.poirier; +Cc: will.deacon, linux, linux-kernel, linux-arm-kernel

On Tue, Feb 10, 2015 at 09:31:24PM -0700, mathieu.poirier@linaro.org wrote:
> From: Mathieu Poirier <mathieu.poirier@linaro.org>
> 
> Most CoreSight blocks are 64-bit ready.  As such move configuration
> entries from "arch/arm/Kconfig.config" to the driver's subdirectory
> and source the newly created Kconfig from architecture specific
> Kconfig.debug files.
> 
> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
> ---
> Change for v3:
>   - Separating Kconfig work from compilation warnings fixes.

Nitpick: merge the compilation warnings fix first so that we don't get
them once the Kconfig patch is merged for arm64.

Acked-by: Catalin Marinas <catalin.marinas@arm.com>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture
  2015-02-11 11:36 ` [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture Catalin Marinas
@ 2015-02-12  2:54   ` Mathieu Poirier
  2015-02-12  9:49     ` Catalin Marinas
  0 siblings, 1 reply; 6+ messages in thread
From: Mathieu Poirier @ 2015-02-12  2:54 UTC (permalink / raw)
  To: Catalin Marinas
  Cc: Will Deacon, Russell King - ARM Linux, linux-kernel, linux-arm-kernel

On 11 February 2015 at 04:36, Catalin Marinas <catalin.marinas@arm.com> wrote:
> On Tue, Feb 10, 2015 at 09:31:24PM -0700, mathieu.poirier@linaro.org wrote:
>> From: Mathieu Poirier <mathieu.poirier@linaro.org>
>>
>> Most CoreSight blocks are 64-bit ready.  As such move configuration
>> entries from "arch/arm/Kconfig.config" to the driver's subdirectory
>> and source the newly created Kconfig from architecture specific
>> Kconfig.debug files.
>>
>> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
>> ---
>> Change for v3:
>>   - Separating Kconfig work from compilation warnings fixes.
>
> Nitpick: merge the compilation warnings fix first so that we don't get
> them once the Kconfig patch is merged for arm64.
>
> Acked-by: Catalin Marinas <catalin.marinas@arm.com>

I intended to merge both patches via my tree and as such ensuring the
Kconfig changes and compilation warnings fix go in at the same time.
Is this fine with you?

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture
  2015-02-12  2:54   ` Mathieu Poirier
@ 2015-02-12  9:49     ` Catalin Marinas
  2015-02-13  1:46       ` Mathieu Poirier
  0 siblings, 1 reply; 6+ messages in thread
From: Catalin Marinas @ 2015-02-12  9:49 UTC (permalink / raw)
  To: Mathieu Poirier
  Cc: Russell King - ARM Linux, Will Deacon, linux-kernel, linux-arm-kernel

On Wed, Feb 11, 2015 at 07:54:04PM -0700, Mathieu Poirier wrote:
> On 11 February 2015 at 04:36, Catalin Marinas <catalin.marinas@arm.com> wrote:
> > On Tue, Feb 10, 2015 at 09:31:24PM -0700, mathieu.poirier@linaro.org wrote:
> >> From: Mathieu Poirier <mathieu.poirier@linaro.org>
> >>
> >> Most CoreSight blocks are 64-bit ready.  As such move configuration
> >> entries from "arch/arm/Kconfig.config" to the driver's subdirectory
> >> and source the newly created Kconfig from architecture specific
> >> Kconfig.debug files.
> >>
> >> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
> >> ---
> >> Change for v3:
> >>   - Separating Kconfig work from compilation warnings fixes.
> >
> > Nitpick: merge the compilation warnings fix first so that we don't get
> > them once the Kconfig patch is merged for arm64.
> >
> > Acked-by: Catalin Marinas <catalin.marinas@arm.com>
> 
> I intended to merge both patches via my tree and as such ensuring the
> Kconfig changes and compilation warnings fix go in at the same time.
> Is this fine with you?

It was more about bisectability. If reordering is problematic (already
published branch etc.), leave them as they are.

-- 
Catalin

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture
  2015-02-12  9:49     ` Catalin Marinas
@ 2015-02-13  1:46       ` Mathieu Poirier
  0 siblings, 0 replies; 6+ messages in thread
From: Mathieu Poirier @ 2015-02-13  1:46 UTC (permalink / raw)
  To: Catalin Marinas
  Cc: Russell King - ARM Linux, Will Deacon, linux-kernel, linux-arm-kernel

On 12 February 2015 at 02:49, Catalin Marinas <catalin.marinas@arm.com> wrote:
> On Wed, Feb 11, 2015 at 07:54:04PM -0700, Mathieu Poirier wrote:
>> On 11 February 2015 at 04:36, Catalin Marinas <catalin.marinas@arm.com> wrote:
>> > On Tue, Feb 10, 2015 at 09:31:24PM -0700, mathieu.poirier@linaro.org wrote:
>> >> From: Mathieu Poirier <mathieu.poirier@linaro.org>
>> >>
>> >> Most CoreSight blocks are 64-bit ready.  As such move configuration
>> >> entries from "arch/arm/Kconfig.config" to the driver's subdirectory
>> >> and source the newly created Kconfig from architecture specific
>> >> Kconfig.debug files.
>> >>
>> >> Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
>> >> ---
>> >> Change for v3:
>> >>   - Separating Kconfig work from compilation warnings fixes.
>> >
>> > Nitpick: merge the compilation warnings fix first so that we don't get
>> > them once the Kconfig patch is merged for arm64.
>> >
>> > Acked-by: Catalin Marinas <catalin.marinas@arm.com>
>>
>> I intended to merge both patches via my tree and as such ensuring the
>> Kconfig changes and compilation warnings fix go in at the same time.
>> Is this fine with you?
>
> It was more about bisectability. If reordering is problematic (already
> published branch etc.), leave them as they are.

Other than on this mailing list the code hasn't been published.  I
will re-order the patches.

Thanks for the reviews,
Mathieu

>
> --
> Catalin

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-02-13  1:46 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-02-11  4:31 [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture mathieu.poirier
2015-02-11  4:31 ` [PATCH v3 2/2] coresight: fixing compilation warnings picked up by 64bit compiler mathieu.poirier
2015-02-11 11:36 ` [PATCH v3 1/2] coresight: Adding coresight support for arm64 architecture Catalin Marinas
2015-02-12  2:54   ` Mathieu Poirier
2015-02-12  9:49     ` Catalin Marinas
2015-02-13  1:46       ` Mathieu Poirier

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).