mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v3 0/2] OMAP: omap_device: API to modify SYSCONFIG register
@ 2011-07-04 11:08 Kishon Vijay Abraham I
  2011-07-04 11:08 ` [PATCH v3 1/2] OMAP: omap_hwmod: API to modify AUTOIDLE and SMARTIDLE bits Kishon Vijay Abraham I
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Kishon Vijay Abraham I @ 2011-07-04 11:08 UTC (permalink / raw)
  To: linux-omap, linux-kernel
  Cc: paul, b-cousson, vishwanath.bs, p-basak2, peter.ujfalusi,
	jhnikula, kishon, charu

Certain peripherals require autoidle bits to be disabled before performing
some operations. This patch series provides APIs in omap_device layer and 
omap_hwmod layer to modify the SYSCONFIG register.

Since current implementation of PM run time framework does not support
changing sysconfig settings during middle of the on going operation,
these APIs will support the same.

For e.g McBSP 2 and 3 in OMAP3 has sidetone feature which requires
autoidle to be disabled before starting the sidetone.

McBSP also requires the SYSCONFIG to be in NOIDLE when ELEMENTSYNCH
mode is selected for DMA operation.

Created on top of linux OMAP master (linux-omap-2.6 :master)
commit-id: d9be6df1331f8078618745298d38ed619729ec91
Tested on OMAP4430 and OMAP3430 SDP boards. Verified that this patch
series does not break the OMAP1 build.

V3:
created one-one mapping between omap_device APIs and omap_hwmod APIs to
modify the sysconfig register.

V2:
Mutex is replaced with spinlock.

V1:
* Creates 3 separate API's to change the idle mode to NOIDLE, SMARTIDLE
 and FORCEIDLE and one more API to change the idlemode to default value
 based on the hwmod flag. This change is done to align with the discussion
 on [3]

* Added hwmod mutex in omap hwmod APIs that modifies SYSCONFIG register.

* omap_hwmod_set_slave_idlemode() is not modified to take true/false kind-of
argument since 3 states are associated with SIDLE bits (force, no and smart).

These changes were made to align with Benoit's and Paul's comments for a
similar patch written by Manjunath [1] for changing MSTANDBY bits.

The discussions that happened for the RFC patch can be found at [2]

[1]: http://www.mail-archive.com/linux-omap <at> vger.kernel.org/msg39647.html
[2]: https://patchwork.kernel.org/patch/134371/
[3]: http://www.mail-archive.com/linux-omap <at> vger.kernel.org/msg39615.html

Kishon Vijay Abraham I (2):
  OMAP: omap_hwmod: API to modify AUTOIDLE and SMARTIDLE bits
  OMAP: omap_device: API to modify AUTOIDLE and SMARTIDLE bits

 arch/arm/mach-omap2/omap_hwmod.c              |   93 ++++++++++++++
 arch/arm/plat-omap/include/plat/omap_device.h |    6 +
 arch/arm/plat-omap/include/plat/omap_hwmod.h  |   11 ++
 arch/arm/plat-omap/omap_device.c              |  165 +++++++++++++++++++++++++
 4 files changed, 275 insertions(+), 0 deletions(-)


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-07-08 13:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-04 11:08 [PATCH v3 0/2] OMAP: omap_device: API to modify SYSCONFIG register Kishon Vijay Abraham I
2011-07-04 11:08 ` [PATCH v3 1/2] OMAP: omap_hwmod: API to modify AUTOIDLE and SMARTIDLE bits Kishon Vijay Abraham I
2011-07-04 11:08 ` [PATCH v3 2/2] OMAP: omap_device: " Kishon Vijay Abraham I
2011-07-08 13:21 ` [PATCH v3 0/2] OMAP: omap_device: API to modify SYSCONFIG register ABRAHAM, KISHON VIJAY

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®