All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jarkko Nikula <jarkko.nikula@bitmer.com>
To: Peter Ujfalusi <peter.ujfalusi@ti.com>
Cc: alsa-devel@alsa-project.org, Benoit Cousson <b-cousson@ti.com>,
	Tony Lindgren <tony@atomide.com>,
	devicetree-discuss@lists.ozlabs.org,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	linux-omap@vger.kernel.org, Liam Girdwood <lrg@ti.com>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 08/11] ARM: OMAP3: Remove callback for McBSP sidetone ICLK workaround
Date: Fri, 10 Aug 2012 16:00:04 +0300	[thread overview]
Message-ID: <502505D4.2030308@bitmer.com> (raw)
In-Reply-To: <50227104.3040506@ti.com>

Hi Peter

On 08/08/2012 05:00 PM, Peter Ujfalusi wrote:
>> Are you sure it works without any changes to sidetone audio quality or
>> current consumption? What I remember idlemode was broken at least on
>> 3430 and caused bad sidetone audio if autoidle was set and a little bit
>> higher current consumption (something like 2-3 mA higher where reference
>> consumption was around 10 mA) when McBSP was set to no-idle.
> 
> Yes, the idelmode settings are still broken in the sidetone block. However we
> are toggling the SIDLEMODE of the corresponding McBSP instance where the ST
> block is attached.
> This should have the same effect as doing the same down in PRCM level since
> the McBSP SIDLEMODE does work correctly preventing ICLK to be gated when it is
> set to no-idle.
> 
> Unfortunately I can not get my BeagleBoard to start gating iclk even if I
> remove the ICLK gating prevention (on top of 3.6-rc1). So I can not really say
> for 100% this is equivalent to the the PRCM level workaround.
> However I have also spend long time hacking around in McBSP, and I know that
> the SIDLEMODE in McBSP is working correctly.
> Do you know how can I get OMAP3 to start gating the clocks (to idle)?
> 
I got some odd current consumption results from Beagle to really compare
different kernel versions but I was able get sensible results from N900.

I tested your set on top of 196973c of sound.git.

First consumption when using threshold based transfer has remained the
same between 2.6.38-3.6.0-rc1 (wau!). Active sidetone under "arecord -f
dat >/dev/null |aplay -f dat /dev/zero" test increases consumption from
plain playback about 17 mA in 3.4 and 3.6.0-rc1.

With your set applied consumption increases 28 mA when the sidetone is
active (i.e. +11 mA higher than on top of 196973c). Plain threshold
based playback remains still the same.

> I'm doing the same test on BeagleBoard, but this thing does not want to hit
> retention despite all the effort :(
> 
Could it be display subsystem which keeps it active? At least on N900 I
need to get DSS drivers activated in order to be able to blank the
display after bootloader and thus be able to reach the retention idle.

-- 
Jarkko

WARNING: multiple messages have this Message-ID (diff)
From: jarkko.nikula@bitmer.com (Jarkko Nikula)
To: linux-arm-kernel@lists.infradead.org
Subject: [alsa-devel] [PATCH 08/11] ARM: OMAP3: Remove callback for McBSP sidetone ICLK workaround
Date: Fri, 10 Aug 2012 16:00:04 +0300	[thread overview]
Message-ID: <502505D4.2030308@bitmer.com> (raw)
In-Reply-To: <50227104.3040506@ti.com>

Hi Peter

On 08/08/2012 05:00 PM, Peter Ujfalusi wrote:
>> Are you sure it works without any changes to sidetone audio quality or
>> current consumption? What I remember idlemode was broken at least on
>> 3430 and caused bad sidetone audio if autoidle was set and a little bit
>> higher current consumption (something like 2-3 mA higher where reference
>> consumption was around 10 mA) when McBSP was set to no-idle.
> 
> Yes, the idelmode settings are still broken in the sidetone block. However we
> are toggling the SIDLEMODE of the corresponding McBSP instance where the ST
> block is attached.
> This should have the same effect as doing the same down in PRCM level since
> the McBSP SIDLEMODE does work correctly preventing ICLK to be gated when it is
> set to no-idle.
> 
> Unfortunately I can not get my BeagleBoard to start gating iclk even if I
> remove the ICLK gating prevention (on top of 3.6-rc1). So I can not really say
> for 100% this is equivalent to the the PRCM level workaround.
> However I have also spend long time hacking around in McBSP, and I know that
> the SIDLEMODE in McBSP is working correctly.
> Do you know how can I get OMAP3 to start gating the clocks (to idle)?
> 
I got some odd current consumption results from Beagle to really compare
different kernel versions but I was able get sensible results from N900.

I tested your set on top of 196973c of sound.git.

First consumption when using threshold based transfer has remained the
same between 2.6.38-3.6.0-rc1 (wau!). Active sidetone under "arecord -f
dat >/dev/null |aplay -f dat /dev/zero" test increases consumption from
plain playback about 17 mA in 3.4 and 3.6.0-rc1.

With your set applied consumption increases 28 mA when the sidetone is
active (i.e. +11 mA higher than on top of 196973c). Plain threshold
based playback remains still the same.

> I'm doing the same test on BeagleBoard, but this thing does not want to hit
> retention despite all the effort :(
> 
Could it be display subsystem which keeps it active? At least on N900 I
need to get DSS drivers activated in order to be able to blank the
display after bootloader and thus be able to reach the retention idle.

-- 
Jarkko

  reply	other threads:[~2012-08-10 12:30 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-08-08  9:11 [PATCH 00/11] ARM/ASoC: OMAP McBSP device tree support Peter Ujfalusi
2012-08-08  9:11 ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 01/11] ARM/ASoC: omap-mcbsp: Move OMAP2+ clock parenting code to ASoC driver Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 02/11] ARM: OMAP2+: McBSP: Do not create legacy devices when booting with DT data Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 03/11] ARM: OMAP: mcbsp: Enable FIFO use for OMAP2430 Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 04/11] ARM: OMAP: board-am3517evm: Configure McBSP1 CLKR/FSR signal source Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 05/11] ASoC: am3517evm: Do not configure McBSP1 CLKR/FSR signal muxing Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 06/11] ARM/ASoC: omap-mcbsp: Remove CLKR/FSR mux configuration code Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 07/11] ASoC: omap-mcbsp: Sidetone: Use SIDLE bits in SYSCONFIG register to select noidle mode Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08 22:12   ` Ricardo Neri
2012-08-08 22:12     ` [alsa-devel] " Ricardo Neri
2012-08-09  7:05     ` Peter Ujfalusi
2012-08-09  7:05       ` Peter Ujfalusi
2012-08-09 15:15       ` Ricardo Neri
2012-08-09 15:15         ` [alsa-devel] " Ricardo Neri
2012-08-08  9:11 ` [PATCH 08/11] ARM: OMAP3: Remove callback for McBSP sidetone ICLK workaround Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08 13:25   ` Jarkko Nikula
2012-08-08 13:25     ` Jarkko Nikula
2012-08-08 14:00     ` Peter Ujfalusi
2012-08-08 14:00       ` [alsa-devel] " Peter Ujfalusi
2012-08-10 13:00       ` Jarkko Nikula [this message]
2012-08-10 13:00         ` Jarkko Nikula
2012-08-10 15:39         ` Peter Ujfalusi
2012-08-10 15:39           ` [alsa-devel] " Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 09/11] ASoC: omap-mcbsp: Remove unused defines Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 10/11] ASoC: omap-mcbsp: Remove cpu_is_omap* checks from the code Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08  9:11 ` [PATCH 11/11] ASoC: omap-mcbsp: Add device tree bindings Peter Ujfalusi
2012-08-08  9:11   ` Peter Ujfalusi
2012-08-08 11:21 ` [PATCH 00/11] ARM/ASoC: OMAP McBSP device tree support Mark Brown
2012-08-08 11:21   ` Mark Brown
2012-08-10 13:15   ` Jarkko Nikula
2012-08-10 13:15     ` Jarkko Nikula

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=502505D4.2030308@bitmer.com \
    --to=jarkko.nikula@bitmer.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=b-cousson@ti.com \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=lrg@ti.com \
    --cc=peter.ujfalusi@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.