From: Matt Porter <mporter@ti.com>
To: Sekhar Nori <nsekhar@ti.com>
Cc: Linux DaVinci Kernel List
<davinci-linux-open-source@linux.davincidsp.com>,
Paul Walmsley <paul@pwsan.com>,
Russell King <linux@arm.linux.org.uk>,
Benoit Cousson <b-cousson@ti.com>,
Tony Lindgren <tony@atomide.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
"Hans J. Koch" <hjk@hansjkoch.de>,
Linux OMAP List <linux-omap@vger.kernel.org>,
Linux ARM Kernel List <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v2 4/7] ARM: davinci: Add support for an L3RAM gen_pool
Date: Mon, 1 Oct 2012 09:56:03 -0400 [thread overview]
Message-ID: <20121001135603.GM5641@beef> (raw)
In-Reply-To: <20121001123242.GJ5641@beef>
On Mon, Oct 01, 2012 at 08:32:42AM -0400, Matt Porter wrote:
> On Mon, Oct 01, 2012 at 05:34:02PM +0530, Sekhar Nori wrote:
> > Hi Matt,
> >
> > On 9/29/2012 1:07 AM, Matt Porter wrote:
> > > L3RAM (shared SRAM) is needed for use by several drivers.
> > > This creates a genalloc pool and a hook for the platform code
> > > to provide the struct gen_pool * in platform data.
> > >
> > > Signed-off-by: Matt Porter <mporter@ti.com>
> >
> > I am not sure if any of the DaVinci devices have a need to allocate from
> > *both* ARM RAM and shared RAM. Shared RAM is not present on all DaVinci
> > devices AFAIR, and on DA850, there is just 8KB ARM RAM so I am not sure
> > if there is much point in trying to allocate from there.
> >
> > Can you instead see if Ben's earlier patch[1] to use shared RAM for SRAM
> > allocation on DA850 makes sense for your case? If yes, can you repost
> > with Ben's patch included in your series instead of this patch? I would
> > prefer that over creating a new pool for shared RAM.
>
> Hrm, I did look at Ben's earlier patch. The reason I added a separate
> pool mostly was so I didn't have to touch the PM code at all. That can
> continue using the private SRAM API with the ARM RAM as it is now. The
> idea here was to allow that to be separate since no other bus masters
> can access the ARM RAM anyway and do something that didn't require
> regression testing PM. Also, I figured there's really no reason to use
> even a tiny bit of the shared SRAM on PM if we have that ARM RAM there
> and working fine for that use case.
>
> The other thing is that Ben's patch needs to be rewritten to at least
> have the hook I added so we can provide the gen_pool in platform data.
> If you prefer this path still, I can add the needed hook on top of his
> original patch. Ultimately, I only *need* genalloc support for the
> shared sram so I can remove the private SRAM API from uio_pruss...so I'm
> happy with any way to get at it.
>
> Oh, and to be honest...it's not just for uio_pruss, but also to cleanly
> remove the private SRAM API usage from the davinci ASoC driver too.
[and replying to myself :)]
Looking at the older parts (DM355/365/DM64xx) in more detail now, I see
that to get rid of SRAM API in davinci ASoC, we'll have a similar hook
to get the local ARM RAM gen_pool pointer necessary to support ping-pong
to that pool since that's able to be accessed from EDMA on those parts.
Ultimately, the approach is the same, it's just a matter of if we want
to fully leverage both SRAM pools on DA850 and friends.
-Matt
WARNING: multiple messages have this Message-ID (diff)
From: mporter@ti.com (Matt Porter)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 4/7] ARM: davinci: Add support for an L3RAM gen_pool
Date: Mon, 1 Oct 2012 09:56:03 -0400 [thread overview]
Message-ID: <20121001135603.GM5641@beef> (raw)
In-Reply-To: <20121001123242.GJ5641@beef>
On Mon, Oct 01, 2012 at 08:32:42AM -0400, Matt Porter wrote:
> On Mon, Oct 01, 2012 at 05:34:02PM +0530, Sekhar Nori wrote:
> > Hi Matt,
> >
> > On 9/29/2012 1:07 AM, Matt Porter wrote:
> > > L3RAM (shared SRAM) is needed for use by several drivers.
> > > This creates a genalloc pool and a hook for the platform code
> > > to provide the struct gen_pool * in platform data.
> > >
> > > Signed-off-by: Matt Porter <mporter@ti.com>
> >
> > I am not sure if any of the DaVinci devices have a need to allocate from
> > *both* ARM RAM and shared RAM. Shared RAM is not present on all DaVinci
> > devices AFAIR, and on DA850, there is just 8KB ARM RAM so I am not sure
> > if there is much point in trying to allocate from there.
> >
> > Can you instead see if Ben's earlier patch[1] to use shared RAM for SRAM
> > allocation on DA850 makes sense for your case? If yes, can you repost
> > with Ben's patch included in your series instead of this patch? I would
> > prefer that over creating a new pool for shared RAM.
>
> Hrm, I did look at Ben's earlier patch. The reason I added a separate
> pool mostly was so I didn't have to touch the PM code at all. That can
> continue using the private SRAM API with the ARM RAM as it is now. The
> idea here was to allow that to be separate since no other bus masters
> can access the ARM RAM anyway and do something that didn't require
> regression testing PM. Also, I figured there's really no reason to use
> even a tiny bit of the shared SRAM on PM if we have that ARM RAM there
> and working fine for that use case.
>
> The other thing is that Ben's patch needs to be rewritten to at least
> have the hook I added so we can provide the gen_pool in platform data.
> If you prefer this path still, I can add the needed hook on top of his
> original patch. Ultimately, I only *need* genalloc support for the
> shared sram so I can remove the private SRAM API from uio_pruss...so I'm
> happy with any way to get at it.
>
> Oh, and to be honest...it's not just for uio_pruss, but also to cleanly
> remove the private SRAM API usage from the davinci ASoC driver too.
[and replying to myself :)]
Looking at the older parts (DM355/365/DM64xx) in more detail now, I see
that to get rid of SRAM API in davinci ASoC, we'll have a similar hook
to get the local ARM RAM gen_pool pointer necessary to support ping-pong
to that pool since that's able to be accessed from EDMA on those parts.
Ultimately, the approach is the same, it's just a matter of if we want
to fully leverage both SRAM pools on DA850 and friends.
-Matt
next prev parent reply other threads:[~2012-10-01 13:56 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-28 19:37 [PATCH v2 0/7] uio_pruss cleanup and platform support Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-28 19:37 ` [PATCH v2 1/7] uio: uio_pruss: replace private SRAM API with genalloc Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-28 19:37 ` [PATCH v2 2/7] uio: uio_pruss: add support for am33xx Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-28 19:37 ` [PATCH v2 3/7] uio: dt: add TI PRUSS binding Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-28 19:37 ` [PATCH v2 4/7] ARM: davinci: Add support for an L3RAM gen_pool Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-10-01 12:04 ` Sekhar Nori
2012-10-01 12:04 ` Sekhar Nori
2012-10-01 12:32 ` Matt Porter
2012-10-01 12:32 ` Matt Porter
2012-10-01 13:50 ` Ben Gardiner
2012-10-01 13:50 ` Ben Gardiner
2012-10-02 11:13 ` Sekhar Nori
2012-10-02 11:13 ` Sekhar Nori
2012-10-02 15:51 ` Ben Gardiner
2012-10-02 15:51 ` Ben Gardiner
2012-10-02 16:20 ` Matt Porter
2012-10-02 16:20 ` Matt Porter
2012-10-01 13:56 ` Matt Porter [this message]
2012-10-01 13:56 ` Matt Porter
2012-10-02 10:02 ` Sekhar Nori
2012-10-02 10:02 ` Sekhar Nori
2012-10-02 16:14 ` Matt Porter
2012-10-02 16:14 ` Matt Porter
2012-09-28 19:37 ` [PATCH v2 5/7] ARM: davinci: Add support for PRUSS on DA850 Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-28 19:37 ` [PATCH v2 6/7] ARM: omap: add DT support for deasserting hardware reset lines Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-28 19:37 ` [PATCH v2 7/7] ARM: dts: AM33xx PRUSS support Matt Porter
2012-09-28 19:37 ` Matt Porter
2012-09-29 18:34 ` [PATCH v2 0/7] uio_pruss cleanup and platform support Paul Walmsley
2012-09-29 18:34 ` Paul Walmsley
2012-10-01 12:54 ` Matt Porter
2012-10-01 12:54 ` Matt Porter
2012-10-03 15:00 ` Matt Porter
2012-10-03 15:00 ` Matt Porter
2012-10-05 4:43 ` Hebbar, Gururaja
2012-10-05 4:43 ` Hebbar, Gururaja
2012-10-05 4:43 ` Hebbar, Gururaja
2012-10-05 21:28 ` Matt Porter
2012-10-05 21:28 ` Matt Porter
2012-10-08 5:13 ` Hebbar, Gururaja
2012-10-08 5:13 ` Hebbar, Gururaja
2015-08-02 18:42 ` Matwey V. Kornilov
2015-08-02 18:42 ` Matwey V. Kornilov
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=20121001135603.GM5641@beef \
--to=mporter@ti.com \
--cc=b-cousson@ti.com \
--cc=davinci-linux-open-source@linux.davincidsp.com \
--cc=gregkh@linuxfoundation.org \
--cc=hjk@hansjkoch.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=nsekhar@ti.com \
--cc=paul@pwsan.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.