All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Cousson, Benoit" <b-cousson@ti.com>
To: "G, Manjunath Kondaiah" <manjugk@ti.com>, Paul Walmsley <paul@pwsan.com>
Cc: "linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	Kevin Hilman <khilman@deeprootsystems.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v7] OMAP2+: PM: omap device: API's for handling mstandby mode
Date: Fri, 3 Dec 2010 09:38:35 +0100	[thread overview]
Message-ID: <4CF8AC8B.9040800@ti.com> (raw)
In-Reply-To: <1291298392-28729-1-git-send-email-manjugk@ti.com>

On 12/2/2010 2:59 PM, G, Manjunath Kondaiah wrote:
> Certain errata in OMAP2+ processors will require forcing
> master standby to "no standby" mode before completing on going
> operation. Without this, the results will be unpredictable.
>
> Since current implementation of PM run time framework does not support
> changing sysconfig settings during middle of the on going operation,
> these API's will support the same. One API will force the device's
> sysconfig mstandby mode settings to "no standby" and other API will
> release "no standby" mode and sets it to "smart standby" or "no
> standby? depending on HWMOD_SWSUP_MSTANDBY value.
>
> The hwmod API "omap_hwmod_set_master_standbymode" will use
> no_stdby_cnt(introduced in omap_hwmod structure) for controlling
> access to sysconfig register settings in case of overlapping
> request/release API's are called. It also disables interrupts during
> syconfig register access.
>
> These API's should be used by device drivers only incase of
> erratum applicable to their modules if there is no other methods
> to resolve.
>
> These API's are required for multiple DMA errata which require
> putting DMA controller in no mstandby mode before stopping dma.
>
> The applicable errata:
> 1. Erratum ID: i557(Applicable for omap36xx all ES versions)
> The channel hangs when the Pause bit (DMA4_CDPi [7] ) is cleared
> through config port while in Standby.
>
> 2. Erratum ID: i541
> sDMA FIFO draining does not finish. Applicable to all omap2+ except
> omap4.
>
> 3. Erratum ID:i88
> The sDMA to be put in no mstandby mode before disabling the channel
> after completing the data transfer operation.
> Applicable only for OMAP3430 ES1.0
>
> Also fixes typo HWMOD_SWSUP_MSTDBY to HWMOD_SWSUP_MSTANDBY in
> omap_hwmod.h
>
> Signed-off-by: G, Manjunath Kondaiah<manjugk@ti.com>
> Cc: Kevin Hilman<khilman@deeprootsystems.com>
> Cc: Paul Walmsley<paul@pwsan.com>
> Cc: linux-arm-kernel@lists.infradead.org

You have to CC lakml during send-email, but it should not be in the 
changelog.

On the other hand, it is a good practice to add all the authors of the 
file you change in CC.

> ---
> v3: Review comments incorporated for:
> https://patchwork.kernel.org/patch/282212/
>
> v4: added mutex changes
> https://patchwork.kernel.org/patch/338611/
>
> v5: typo fixes for errata and erratum
> https://patchwork.kernel.org/patch/352481/
>
> v6: fixed oh increment bug and also mutex(missing in v5)
> https://patchwork.kernel.org/patch/372231/
>
> v7: replaced mutex lock with spin lock. Added use count for controlling
> access to sysconfig registers in case if overlapping request/release API's
> are used.

I'm not sure it should be done here. I'd rather keep that code in the 
DMA, since this is the only user of that feature.
These hwmod APIs are rather low level and should never be used except 
for workaround. So I'd prefer keeping this API simple and not sexy at 
all in order to prevent people to abuse it.

Regards,
Benoit

WARNING: multiple messages have this Message-ID (diff)
From: b-cousson@ti.com (Cousson, Benoit)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v7] OMAP2+: PM: omap device: API's for handling mstandby mode
Date: Fri, 3 Dec 2010 09:38:35 +0100	[thread overview]
Message-ID: <4CF8AC8B.9040800@ti.com> (raw)
In-Reply-To: <1291298392-28729-1-git-send-email-manjugk@ti.com>

On 12/2/2010 2:59 PM, G, Manjunath Kondaiah wrote:
> Certain errata in OMAP2+ processors will require forcing
> master standby to "no standby" mode before completing on going
> operation. Without this, the results will be unpredictable.
>
> Since current implementation of PM run time framework does not support
> changing sysconfig settings during middle of the on going operation,
> these API's will support the same. One API will force the device's
> sysconfig mstandby mode settings to "no standby" and other API will
> release "no standby" mode and sets it to "smart standby" or "no
> standby? depending on HWMOD_SWSUP_MSTANDBY value.
>
> The hwmod API "omap_hwmod_set_master_standbymode" will use
> no_stdby_cnt(introduced in omap_hwmod structure) for controlling
> access to sysconfig register settings in case of overlapping
> request/release API's are called. It also disables interrupts during
> syconfig register access.
>
> These API's should be used by device drivers only incase of
> erratum applicable to their modules if there is no other methods
> to resolve.
>
> These API's are required for multiple DMA errata which require
> putting DMA controller in no mstandby mode before stopping dma.
>
> The applicable errata:
> 1. Erratum ID: i557(Applicable for omap36xx all ES versions)
> The channel hangs when the Pause bit (DMA4_CDPi [7] ) is cleared
> through config port while in Standby.
>
> 2. Erratum ID: i541
> sDMA FIFO draining does not finish. Applicable to all omap2+ except
> omap4.
>
> 3. Erratum ID:i88
> The sDMA to be put in no mstandby mode before disabling the channel
> after completing the data transfer operation.
> Applicable only for OMAP3430 ES1.0
>
> Also fixes typo HWMOD_SWSUP_MSTDBY to HWMOD_SWSUP_MSTANDBY in
> omap_hwmod.h
>
> Signed-off-by: G, Manjunath Kondaiah<manjugk@ti.com>
> Cc: Kevin Hilman<khilman@deeprootsystems.com>
> Cc: Paul Walmsley<paul@pwsan.com>
> Cc: linux-arm-kernel at lists.infradead.org

You have to CC lakml during send-email, but it should not be in the 
changelog.

On the other hand, it is a good practice to add all the authors of the 
file you change in CC.

> ---
> v3: Review comments incorporated for:
> https://patchwork.kernel.org/patch/282212/
>
> v4: added mutex changes
> https://patchwork.kernel.org/patch/338611/
>
> v5: typo fixes for errata and erratum
> https://patchwork.kernel.org/patch/352481/
>
> v6: fixed oh increment bug and also mutex(missing in v5)
> https://patchwork.kernel.org/patch/372231/
>
> v7: replaced mutex lock with spin lock. Added use count for controlling
> access to sysconfig registers in case if overlapping request/release API's
> are used.

I'm not sure it should be done here. I'd rather keep that code in the 
DMA, since this is the only user of that feature.
These hwmod APIs are rather low level and should never be used except 
for workaround. So I'd prefer keeping this API simple and not sexy at 
all in order to prevent people to abuse it.

Regards,
Benoit

  parent reply	other threads:[~2010-12-03  8:38 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-02 13:59 [PATCH v7] OMAP2+: PM: omap device: API's for handling mstandby mode G, Manjunath Kondaiah
2010-12-02 14:23 ` G, Manjunath Kondaiah
2010-12-02 14:23   ` G, Manjunath Kondaiah
2010-12-03  8:38 ` Cousson, Benoit [this message]
2010-12-03  8:38   ` Cousson, Benoit
2010-12-03  9:47   ` G, Manjunath Kondaiah
2010-12-03  9:47     ` G, Manjunath Kondaiah
2010-12-03 12:19     ` Cousson, Benoit
2010-12-03 12:19       ` Cousson, Benoit
2010-12-14  1:48       ` G, Manjunath Kondaiah
2010-12-14  1:48         ` G, Manjunath Kondaiah
2011-01-24  9:33         ` G, Manjunath Kondaiah
2011-01-24  9:33           ` G, Manjunath Kondaiah
2011-01-26  0:41           ` G, Manjunath Kondaiah
2011-01-26  0:41             ` G, Manjunath Kondaiah
2011-01-26 19:05             ` Paul Walmsley
2011-01-26 19:05               ` Paul Walmsley

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=4CF8AC8B.9040800@ti.com \
    --to=b-cousson@ti.com \
    --cc=khilman@deeprootsystems.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=manjugk@ti.com \
    --cc=paul@pwsan.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.