All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>
To: Sinan Kaya <okaya-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
Cc: dmaengine-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	timur-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org,
	cov-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org,
	jcm-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>,
	Ian Campbell
	<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
	Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
	Vinod Koul <vinod.koul-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	Dan Williams
	<dan.j.williams-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 1/2] dma: add Qualcomm Technologies HIDMA management driver
Date: Fri, 30 Oct 2015 15:00:25 +0000	[thread overview]
Message-ID: <20151030150025.GF31073@leverpostej> (raw)
In-Reply-To: <1446174501-8870-1-git-send-email-okaya-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>

On Thu, Oct 29, 2015 at 11:08:12PM -0400, Sinan Kaya wrote:
> The Qualcomm Technologies HIDMA device has been designed
> to support virtualization technology. The driver has been
> divided into two to follow the hardware design. The management
> driver is executed in hypervisor context and is the main
> managment for all channels provided by the device. The
> channel driver is exected in the guest OS context.
> 
> Signed-off-by: Sinan Kaya <okaya-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
> ---
>  .../devicetree/bindings/dma/qcom_hidma_mgmt.txt    |  42 +
>  drivers/dma/Kconfig                                |  11 +
>  drivers/dma/Makefile                               |   1 +
>  drivers/dma/qcom_hidma_mgmt.c                      | 868 +++++++++++++++++++++
>  4 files changed, 922 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt
>  create mode 100644 drivers/dma/qcom_hidma_mgmt.c
> 
> diff --git a/Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt b/Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt
> new file mode 100644
> index 0000000..81674ab
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt
> @@ -0,0 +1,42 @@
> +Qualcomm Technologies HIDMA Management interface
> +
> +Required properties:
> +- compatible: must contain "qcom,hidma_mgmt"

s/_/-/ in property names and compatible strings.

Per your rationale for splitting the device nodes, surely the
relationship between the two needs to be described?

The GIC has a similar split, yet we use a single node, with the
hypervisor portions being optional.

What if there were multiple instances?

> +- reg: Address range for DMA device
> +- interrupts: Should contain the one interrupt shared by all channels
> +- nr-channels: Number of channels supported by this DMA controller.
> +- max-write: Maximum write burst in bytes. A memcpy requested is
> +  fragmented to multiples of this amount.
> +- max-read: Maximum read burst in bytes. A memcpy request is
> +  fragmented to multiples of this amount.

Thse would be better named as max-read-burst-bytes and
min-read-burst-bytes.

> +- max-wxactions: Maximum write transactions to perform in a burst
> +- max-rdactions: Maximum read transactions to perform in a burst

max-{write,read}-transactions

> +- max-memset-limit: Maximum memset limit

I have no idea what this is meant to mean.

> +- ch-priority-#n: Priority of the channel
> +- ch-weight-#n: Round robin weight of the channel

These need better descriptions. They sound like configuration options.

[...]

> +#if IS_ENABLED(CONFIG_ACPI)
> +static const struct acpi_device_id qcom_hidma_mgmt_acpi_ids[] = {
> +	{"QCOM8060"},
> +	{},
> +};
> +#endif

How do DMA engines work with ACPI?

How are client relationships defined?

THanks,
Mark.
--
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

WARNING: multiple messages have this Message-ID (diff)
From: Mark Rutland <mark.rutland@arm.com>
To: Sinan Kaya <okaya@codeaurora.org>
Cc: dmaengine@vger.kernel.org, timur@codeaurora.org,
	cov@codeaurora.org, jcm@redhat.com,
	Rob Herring <robh+dt@kernel.org>, Pawel Moll <pawel.moll@arm.com>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	Kumar Gala <galak@codeaurora.org>,
	Vinod Koul <vinod.koul@intel.com>,
	Dan Williams <dan.j.williams@intel.com>,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/2] dma: add Qualcomm Technologies HIDMA management driver
Date: Fri, 30 Oct 2015 15:00:25 +0000	[thread overview]
Message-ID: <20151030150025.GF31073@leverpostej> (raw)
In-Reply-To: <1446174501-8870-1-git-send-email-okaya@codeaurora.org>

On Thu, Oct 29, 2015 at 11:08:12PM -0400, Sinan Kaya wrote:
> The Qualcomm Technologies HIDMA device has been designed
> to support virtualization technology. The driver has been
> divided into two to follow the hardware design. The management
> driver is executed in hypervisor context and is the main
> managment for all channels provided by the device. The
> channel driver is exected in the guest OS context.
> 
> Signed-off-by: Sinan Kaya <okaya@codeaurora.org>
> ---
>  .../devicetree/bindings/dma/qcom_hidma_mgmt.txt    |  42 +
>  drivers/dma/Kconfig                                |  11 +
>  drivers/dma/Makefile                               |   1 +
>  drivers/dma/qcom_hidma_mgmt.c                      | 868 +++++++++++++++++++++
>  4 files changed, 922 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt
>  create mode 100644 drivers/dma/qcom_hidma_mgmt.c
> 
> diff --git a/Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt b/Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt
> new file mode 100644
> index 0000000..81674ab
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt
> @@ -0,0 +1,42 @@
> +Qualcomm Technologies HIDMA Management interface
> +
> +Required properties:
> +- compatible: must contain "qcom,hidma_mgmt"

s/_/-/ in property names and compatible strings.

Per your rationale for splitting the device nodes, surely the
relationship between the two needs to be described?

The GIC has a similar split, yet we use a single node, with the
hypervisor portions being optional.

What if there were multiple instances?

> +- reg: Address range for DMA device
> +- interrupts: Should contain the one interrupt shared by all channels
> +- nr-channels: Number of channels supported by this DMA controller.
> +- max-write: Maximum write burst in bytes. A memcpy requested is
> +  fragmented to multiples of this amount.
> +- max-read: Maximum read burst in bytes. A memcpy request is
> +  fragmented to multiples of this amount.

Thse would be better named as max-read-burst-bytes and
min-read-burst-bytes.

> +- max-wxactions: Maximum write transactions to perform in a burst
> +- max-rdactions: Maximum read transactions to perform in a burst

max-{write,read}-transactions

> +- max-memset-limit: Maximum memset limit

I have no idea what this is meant to mean.

> +- ch-priority-#n: Priority of the channel
> +- ch-weight-#n: Round robin weight of the channel

These need better descriptions. They sound like configuration options.

[...]

> +#if IS_ENABLED(CONFIG_ACPI)
> +static const struct acpi_device_id qcom_hidma_mgmt_acpi_ids[] = {
> +	{"QCOM8060"},
> +	{},
> +};
> +#endif

How do DMA engines work with ACPI?

How are client relationships defined?

THanks,
Mark.

  parent reply	other threads:[~2015-10-30 15:00 UTC|newest]

Thread overview: 80+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-30  3:08 [PATCH 1/2] dma: add Qualcomm Technologies HIDMA management driver Sinan Kaya
2015-10-30  3:08 ` Sinan Kaya
2015-10-30  3:08 ` [PATCH 2/2] dma: add Qualcomm Technologies HIDMA channel driver Sinan Kaya
2015-10-30  8:01   ` kbuild test robot
2015-10-30  8:01     ` kbuild test robot
2015-10-30 10:24   ` Arnd Bergmann
2015-10-30 21:42     ` Sinan Kaya
2015-10-30 21:42       ` Sinan Kaya
     [not found]       ` <5633E442.3010003-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-10-30 21:55         ` Timur Tabi
2015-10-30 21:55           ` Timur Tabi
     [not found]           ` <5633E744.6040202-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-10-30 22:47             ` Arnd Bergmann
2015-10-30 22:47               ` Arnd Bergmann
2015-10-30 22:28       ` Arnd Bergmann
2015-10-30 22:36         ` Timur Tabi
2015-10-30 22:50           ` Arnd Bergmann
2015-10-31  1:53         ` Sinan Kaya
2015-11-01 18:50         ` Sinan Kaya
2015-11-01 18:50           ` Sinan Kaya
     [not found]           ` <56365F0D.6010508-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-11-01 20:21             ` Timur Tabi
2015-11-01 20:21               ` Timur Tabi
     [not found]               ` <56367433.60806-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-11-01 20:27                 ` Sinan Kaya
2015-11-01 20:27                   ` Sinan Kaya
2015-11-02 16:33             ` Arnd Bergmann
2015-11-02 16:33               ` Arnd Bergmann
2015-11-02 19:21               ` Sinan Kaya
     [not found]                 ` <5637B7C1.2070200-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-11-02 20:55                   ` Arnd Bergmann
2015-11-02 20:55                     ` Arnd Bergmann
2015-11-03  5:29                     ` Sinan Kaya
2015-11-03 10:43                       ` Arnd Bergmann
2015-11-03 21:07                         ` Sinan Kaya
2015-11-03 21:07                           ` Sinan Kaya
2015-11-03 21:10                           ` Arnd Bergmann
     [not found]   ` <1446174501-8870-2-git-send-email-okaya-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-10-30  8:07     ` kbuild test robot
2015-10-30  8:07       ` kbuild test robot
2015-10-30 14:50     ` Mark Rutland
2015-10-30 14:50       ` Mark Rutland
2015-10-31  4:27       ` Sinan Kaya
2015-10-30  4:34 ` [PATCH 1/2] dma: add Qualcomm Technologies HIDMA management driver kbuild test robot
2015-10-30  4:34   ` kbuild test robot
     [not found]   ` <1446174501-8870-1-git-send-email-okaya-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-10-30  4:34     ` [PATCH] dma: fix platform_no_drv_owner.cocci warnings kbuild test robot
2015-10-30  4:34       ` kbuild test robot
2015-10-30 15:00     ` Mark Rutland [this message]
2015-10-30 15:00       ` [PATCH 1/2] dma: add Qualcomm Technologies HIDMA management driver Mark Rutland
2015-10-30 17:59       ` Andy Shevchenko
2015-10-30 17:59         ` Andy Shevchenko
     [not found]         ` <CAHp75VdHxGC841cFY3M+ujZKSX04nT4+7gc3iKsgwzLRC4AYWQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-30 18:08           ` Sinan Kaya
2015-10-30 18:08             ` Sinan Kaya
2015-10-30 18:18             ` Mark Rutland
     [not found]             ` <5633B207.5030505-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-10-30 18:18               ` Andy Shevchenko
2015-10-30 18:18                 ` Andy Shevchenko
2015-10-30 18:25                 ` Mark Rutland
2015-10-30 18:25                   ` Mark Rutland
2015-10-30 18:40                   ` Andy Shevchenko
2015-10-30 18:40                     ` Andy Shevchenko
     [not found]                     ` <CAHp75Vd-z22XJboxQ=CMxDQ9UaTatbCmpAPLO0jPM0FwJadBOg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-30 18:48                       ` Sinan Kaya
2015-10-30 18:48                         ` Sinan Kaya
     [not found]                         ` <5633BB66.3070505-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2015-10-30 19:01                           ` Mark Rutland
2015-10-30 19:01                             ` Mark Rutland
2015-10-30 20:08                             ` Al Stone
     [not found]                               ` <5633CE23.7060303-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2015-10-30 20:15                                 ` Andy Shevchenko
2015-10-30 20:15                                   ` Andy Shevchenko
2015-10-30 20:18                                   ` Mark Rutland
     [not found]                                   ` <CAHp75VcQ6r2FGqsP2mtnv95etCGJmeQ=T7aKSB5H3cvwhdSbDw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-31  3:33                                     ` Jon Masters
2015-10-31  3:33                                       ` Jon Masters
2015-10-31 17:34                                       ` Sinan Kaya
2015-10-30 19:36                   ` Sinan Kaya
2015-10-31 17:11       ` Sinan Kaya
2015-10-30  9:34 ` Arnd Bergmann
2015-10-31  6:51   ` Sinan Kaya
2015-10-31  6:51     ` Sinan Kaya
2015-10-31 12:53     ` Timur Tabi
2015-10-31 12:53     ` Timur Tabi
2015-11-02 21:30     ` Arnd Bergmann
2015-11-03  4:45       ` Sinan Kaya
2015-11-03  4:45         ` Sinan Kaya
2015-11-03 12:42         ` Arnd Bergmann
2015-11-03 14:26           ` Timur Tabi
2015-11-03 14:26             ` Timur Tabi
2015-11-04  1:04           ` Sinan Kaya
2015-11-04  1:04             ` Sinan Kaya

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20151030150025.GF31073@leverpostej \
    --to=mark.rutland-5wv7dgnigg8@public.gmane.org \
    --cc=cov-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=dan.j.williams-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=dmaengine-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
    --cc=jcm-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=okaya-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=pawel.moll-5wv7dgnIgG8@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=timur-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=vinod.koul-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.