All of lore.kernel.org
 help / color / mirror / Atom feed
From: Suman Anna <s-anna@ti.com>
To: Ohad Ben-Cohen <ohad@wizery.com>, Tony Lindgren <tony@atomide.com>
Cc: Kevin Hilman <khilman@linaro.org>,
	Dave Gerlach <d-gerlach@ti.com>, Robert Tivy <rtivy@ti.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	linux-arm <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v3 2/2] remoteproc: add support to handle internal memories
Date: Thu, 12 Feb 2015 14:54:55 -0600	[thread overview]
Message-ID: <54DD131F.8040704@ti.com> (raw)
In-Reply-To: <CAK=WgbbFxNfn5tUeJn-8NehFXAD+=7UW-WtBf3ZFm1xyomFAfA@mail.gmail.com>

Hi Ohad,

On 02/12/2015 03:09 AM, Ohad Ben-Cohen wrote:
> On Wed, Feb 11, 2015 at 10:57 PM, Tony Lindgren <tony@atomide.com> wrote:
>>>> +static int rproc_handle_intmem(struct rproc *rproc, struct fw_rsc_intmem *rsc,
>>>> +                              int offset, int avail)
>>>> +{
>>> ...
>>>> +       va = (__force void *)ioremap_nocache(rsc->pa, rsc->len);
>>>
>>> Back in the days when we developed remoteproc there was a tremendous
>>> effort to move away from ioremap when not strictly needed.
>>
>> The use of ioremap in general is just fine for drivers as long
>> as they access a dedicated area to the specific device. Accessing
>> random registers and memory in the SoC is what I'm worried about.
> 
> Yes, the proposed interface essentially allows exactly this random
> access, since the parameters to ioremap would be provided from the
> user space (specifically from the resource table contained within the
> firmware of the remote processor).

My original motivation was that it would only need to be added on
firmwares requiring support for loading into internal memories,
otherwise, these are something left to be managed by the software
running on the remote processor completely, and MPU will not even touch
them.

So, let me know if this is a NAK. If so, we have two options - one to go
the sram node model where each of them have to be defined separately,
and have a specific property in the rproc nodes to be able to get the
gen_pool handles. The other one is simply to define these as <reg> and
use devm_ioremap_resource() (so use DT for defining the regions instead
of a resource table entry).

regards
Suman

WARNING: multiple messages have this Message-ID (diff)
From: s-anna@ti.com (Suman Anna)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 2/2] remoteproc: add support to handle internal memories
Date: Thu, 12 Feb 2015 14:54:55 -0600	[thread overview]
Message-ID: <54DD131F.8040704@ti.com> (raw)
In-Reply-To: <CAK=WgbbFxNfn5tUeJn-8NehFXAD+=7UW-WtBf3ZFm1xyomFAfA@mail.gmail.com>

Hi Ohad,

On 02/12/2015 03:09 AM, Ohad Ben-Cohen wrote:
> On Wed, Feb 11, 2015 at 10:57 PM, Tony Lindgren <tony@atomide.com> wrote:
>>>> +static int rproc_handle_intmem(struct rproc *rproc, struct fw_rsc_intmem *rsc,
>>>> +                              int offset, int avail)
>>>> +{
>>> ...
>>>> +       va = (__force void *)ioremap_nocache(rsc->pa, rsc->len);
>>>
>>> Back in the days when we developed remoteproc there was a tremendous
>>> effort to move away from ioremap when not strictly needed.
>>
>> The use of ioremap in general is just fine for drivers as long
>> as they access a dedicated area to the specific device. Accessing
>> random registers and memory in the SoC is what I'm worried about.
> 
> Yes, the proposed interface essentially allows exactly this random
> access, since the parameters to ioremap would be provided from the
> user space (specifically from the resource table contained within the
> firmware of the remote processor).

My original motivation was that it would only need to be added on
firmwares requiring support for loading into internal memories,
otherwise, these are something left to be managed by the software
running on the remote processor completely, and MPU will not even touch
them.

So, let me know if this is a NAK. If so, we have two options - one to go
the sram node model where each of them have to be defined separately,
and have a specific property in the rproc nodes to be able to get the
gen_pool handles. The other one is simply to define these as <reg> and
use devm_ioremap_resource() (so use DT for defining the regions instead
of a resource table entry).

regards
Suman

  reply	other threads:[~2015-02-12 20:55 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-09 21:21 [PATCH v3 0/2] couple of generic remoteproc enhancements Suman Anna
2015-01-09 21:21 ` Suman Anna
2015-01-09 21:21 ` Suman Anna
2015-01-09 21:21 ` [PATCH v3 1/2] remoteproc: use a flag to detect the presence of IOMMU Suman Anna
2015-01-09 21:21   ` Suman Anna
2015-01-09 21:21   ` Suman Anna
2015-03-12  9:04   ` Ohad Ben-Cohen
2015-03-12  9:04     ` Ohad Ben-Cohen
2015-03-13 23:35     ` Suman Anna
2015-03-13 23:35       ` Suman Anna
2015-01-09 21:21 ` [PATCH v3 2/2] remoteproc: add support to handle internal memories Suman Anna
2015-01-09 21:21   ` Suman Anna
2015-01-09 21:21   ` Suman Anna
2015-02-10 10:10   ` Ohad Ben-Cohen
2015-02-10 10:10     ` Ohad Ben-Cohen
2015-02-11 20:57     ` Tony Lindgren
2015-02-11 20:57       ` Tony Lindgren
2015-02-11 20:57       ` Tony Lindgren
2015-02-11 22:28       ` Suman Anna
2015-02-11 22:28         ` Suman Anna
2015-02-11 22:48         ` Tony Lindgren
2015-02-11 22:48           ` Tony Lindgren
2015-02-12  0:01           ` Suman Anna
2015-02-12  0:01             ` Suman Anna
2015-02-12  0:18             ` Tony Lindgren
2015-02-12  0:18               ` Tony Lindgren
2015-02-12  1:07               ` Suman Anna
2015-02-12  1:07                 ` Suman Anna
2015-02-12  9:09       ` Ohad Ben-Cohen
2015-02-12  9:09         ` Ohad Ben-Cohen
2015-02-12 20:54         ` Suman Anna [this message]
2015-02-12 20:54           ` Suman Anna
2015-02-13  5:20           ` Ohad Ben-Cohen
2015-02-13  5:20             ` Ohad Ben-Cohen
2015-02-13 16:13             ` Suman Anna
2015-02-13 16:13               ` Suman Anna
2015-02-13 18:35               ` Tony Lindgren
2015-02-13 18:35                 ` Tony Lindgren
2015-01-22 21:52 ` [PATCH v3 0/2] couple of generic remoteproc enhancements Suman Anna
2015-01-22 21:52   ` Suman Anna
2015-01-22 21:52   ` Suman Anna
2015-02-03 20:55   ` Suman Anna
2015-02-03 20:55     ` Suman Anna
2015-02-03 20:55     ` Suman Anna
2015-02-05 15:11     ` Ohad Ben-Cohen
2015-02-05 15:11       ` Ohad Ben-Cohen

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=54DD131F.8040704@ti.com \
    --to=s-anna@ti.com \
    --cc=d-gerlach@ti.com \
    --cc=khilman@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=ohad@wizery.com \
    --cc=rtivy@ti.com \
    --cc=tony@atomide.com \
    /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.