Re: [PATCH v5 00/15] OMAP2+: Serial: Runtime adaptation + cleanup

2011-09-29 Thread Govindraj
On Wed, Sep 21, 2011 at 5:41 PM, Govindraj.R govindraj.r...@ti.com wrote:
 Converting uart driver to adapt to pm runtime API's.
 Code re-org + cleanup.
 Moving some functionality from serial.c to omap-serial.c

 Changes involves:
 
 1.) Cleaning up certain uart calls from sram_idle func.
 2.) Removed all types of uart clock handling code from serial.c
 3.) Using hwmod_mux API enable wakeup capability for uart pad during
   hwmod_idle state i.e., when uart clocks are disabled we can enable
   io-pad wakeup capability for uart if mux_data is available for
   given uart. Also during during resume from idle call to uart we need
   to enable clocks back conditionally and this can be done only when io-pad
   wakeup event bit is set for uart_rx pad. So we need a hwmod API
   which can probe the uart pad and let us know whether a uart wakeup
   happened. So omap_hmwod_pad_wakeup_status API is added to meet this
   requirement.
 3.) Adapted omap-serial driver to use runtime API's.
 4.) Modify serial_init calls to accept uart parameters from board file.
    Like dma_usage, rx_timeout, dma_rx_pollrate, auto_suspend_timeout etc.
 5.) Use the omap_prm driver with irq_chaining to wake up uart after clocks are
    cut.

 Patch series is based on 3.1.0-rc4 + omap_device fixes.
 From Kevin's tree.
 git://gitorious.org/khilman/linux-omap-pm.git for_3.2/omap_device

 Also the patch series depends on Tero's Irq_chaining patches.
 Dependent irq_chaining patches are as below.

 3d5b543 omap3: pm: use prcm chain handler
 c00b340 OMAP2+: mux: add support for PAD wakeup interrupts
 db6397c power: omap-prm: added chain interrupt handler
 b3f8628 TEMP: OMAP4xxx: hwmod data: add PRM hwmod
 61ec0fc TEMP: OMAP3xxx: hwmod data: add PRM hwmod
 a1ecf8c power: add omap prm driver skeleton

 Same combination is hosted at:
 git://gitorious.org/runtime_3-0/runtime_3-0.git v5_uart_irqchn


Update:
---

This patch series was tested against Tero's Irq chaining v9 [1]
tmp patches where dropped from tero's series and applied
on top v5 uart_runtime patches.

same combination is hosted here [2]

--
Thanks,
Govindraj.R

[1]:

43c5073 omap3+: add omap prm driver initialization
dad7fc5 OMAP3: pm: do not enable PRCM MPU interrupts manually
c205290 omap3: pm: use prcm chain handler
453656e OMAP2+: mux: add support for PAD wakeup interrupts
563bed3 mfd: omap-prm: added suspend prepare and complete callbacks
ff8770a mfd: omap-prm: added chain interrupt handler
46386a9 mfd: omap-prm: add driver skeleton
bdc8ddf TEMP: OMAP4xxx: hwmod data: add PRM hwmod
8cc0382 TEMP: OMAP3xxx: hwmod data: add PRM hwmod

[2]: git://gitorious.org/runtime_3-0/runtime_3-0.git v5_uart_runtime


 Ensure CONFIG_OMAP_PRM is set while testing irq_chaining with uart.

 Changes from v4:
 ---

 1.) Fixing v4 comments from Kevin.
    Spilt into smaller logical patches.
 2.) Using Irq_chaining OMAP_PRM driver for waking up uart.

 Testing updates:
 
 3430SDP:
 retention, off_mode, system_wide suspend is tested.
 (earlyprintk  no_console_suspend checked)

 OMAP3630 - Zoom3:
 pm-retention checked with quart/omap-uart3
 [Also tested with uart3 as console uart and pm-ret checked]

 OMAP4430-SDP: Boot tested.
 OMAP2420/2430SDP: Boot tested.

 Deepak K (1):
  OMAP2+: UART: Allow UART parameters to be configured from board file.

 Govindraj.R (13):
  OMAP2+: hwmod: Add API to enable IO ring wakeup.
  OMAP2+: hwmod: Add API to check IO PAD wakeup status
  OMAP2+: UART: cleanup + remove uart pm specific API
  OMAP2+: UART: cleanup 8250 console driver support
  OMAP2+: UART: Cleanup part of clock gating mechanism for uart
  OMAP2+: UART: Remove certain feilds from omap_uart_state struct
  OMAP2+: UART: Add default mux for all uarts.
  OMAP2+: UART: Store certain reg values to port structure
  OMAP2+: UART: Add runtime pm support for omap-serial driver
  OMAP2+: UART: Move errata handling from serial.c to omap-serial
  OMAP2+: UART: Take console_lock in suspend path if not taken
  OMAP2+: UART: Enable back uart clocks with runtime API for early
    console
  OMAP2+: UART: Do not gate uart clocks if used for debug_prints

 Jon Hunter (1):
  OMAP2+: UART: Make the RX_TIMEOUT for DMA configurable for each UART

  arch/arm/mach-omap2/board-3430sdp.c           |  100 +---
  arch/arm/mach-omap2/board-4430sdp.c           |    8 +-
  arch/arm/mach-omap2/board-n8x0.c              |    6 +-
  arch/arm/mach-omap2/board-omap4panda.c        |    8 +-
  arch/arm/mach-omap2/mux.c                     |   30 +
  arch/arm/mach-omap2/mux.h                     |   13 +
  arch/arm/mach-omap2/omap_hwmod.c              |   66 ++
  arch/arm/mach-omap2/pm24xx.c                  |   19 -
  arch/arm/mach-omap2/pm34xx.c                  |   24 -
  arch/arm/mach-omap2/serial.c                  |  933 
 +++--
  arch/arm/plat-omap/include/plat/omap-serial.h |   30 +-
  arch/arm/plat-omap/include/plat/omap_hwmod.h  |    1 +
  

[PATCH v5 00/15] OMAP2+: Serial: Runtime adaptation + cleanup

2011-09-21 Thread Govindraj.R
Converting uart driver to adapt to pm runtime API's.
Code re-org + cleanup.
Moving some functionality from serial.c to omap-serial.c

Changes involves:

1.) Cleaning up certain uart calls from sram_idle func.
2.) Removed all types of uart clock handling code from serial.c
3.) Using hwmod_mux API enable wakeup capability for uart pad during
   hwmod_idle state i.e., when uart clocks are disabled we can enable
   io-pad wakeup capability for uart if mux_data is available for
   given uart. Also during during resume from idle call to uart we need
   to enable clocks back conditionally and this can be done only when io-pad
   wakeup event bit is set for uart_rx pad. So we need a hwmod API
   which can probe the uart pad and let us know whether a uart wakeup
   happened. So omap_hmwod_pad_wakeup_status API is added to meet this
   requirement.
3.) Adapted omap-serial driver to use runtime API's.
4.) Modify serial_init calls to accept uart parameters from board file.
Like dma_usage, rx_timeout, dma_rx_pollrate, auto_suspend_timeout etc.
5.) Use the omap_prm driver with irq_chaining to wake up uart after clocks are
cut.

Patch series is based on 3.1.0-rc4 + omap_device fixes.
From Kevin's tree.
git://gitorious.org/khilman/linux-omap-pm.git for_3.2/omap_device

Also the patch series depends on Tero's Irq_chaining patches.
Dependent irq_chaining patches are as below.

3d5b543 omap3: pm: use prcm chain handler
c00b340 OMAP2+: mux: add support for PAD wakeup interrupts
db6397c power: omap-prm: added chain interrupt handler
b3f8628 TEMP: OMAP4xxx: hwmod data: add PRM hwmod
61ec0fc TEMP: OMAP3xxx: hwmod data: add PRM hwmod
a1ecf8c power: add omap prm driver skeleton

Same combination is hosted at:
git://gitorious.org/runtime_3-0/runtime_3-0.git v5_uart_irqchn

Ensure CONFIG_OMAP_PRM is set while testing irq_chaining with uart.

Changes from v4:
---

1.) Fixing v4 comments from Kevin.
Spilt into smaller logical patches.
2.) Using Irq_chaining OMAP_PRM driver for waking up uart.

Testing updates:

3430SDP:
retention, off_mode, system_wide suspend is tested.
(earlyprintk  no_console_suspend checked)

OMAP3630 - Zoom3:
pm-retention checked with quart/omap-uart3
[Also tested with uart3 as console uart and pm-ret checked]

OMAP4430-SDP: Boot tested.
OMAP2420/2430SDP: Boot tested.

Deepak K (1):
  OMAP2+: UART: Allow UART parameters to be configured from board file.

Govindraj.R (13):
  OMAP2+: hwmod: Add API to enable IO ring wakeup.
  OMAP2+: hwmod: Add API to check IO PAD wakeup status
  OMAP2+: UART: cleanup + remove uart pm specific API
  OMAP2+: UART: cleanup 8250 console driver support
  OMAP2+: UART: Cleanup part of clock gating mechanism for uart
  OMAP2+: UART: Remove certain feilds from omap_uart_state struct
  OMAP2+: UART: Add default mux for all uarts.
  OMAP2+: UART: Store certain reg values to port structure
  OMAP2+: UART: Add runtime pm support for omap-serial driver
  OMAP2+: UART: Move errata handling from serial.c to omap-serial
  OMAP2+: UART: Take console_lock in suspend path if not taken
  OMAP2+: UART: Enable back uart clocks with runtime API for early
console
  OMAP2+: UART: Do not gate uart clocks if used for debug_prints

Jon Hunter (1):
  OMAP2+: UART: Make the RX_TIMEOUT for DMA configurable for each UART

 arch/arm/mach-omap2/board-3430sdp.c   |  100 +---
 arch/arm/mach-omap2/board-4430sdp.c   |8 +-
 arch/arm/mach-omap2/board-n8x0.c  |6 +-
 arch/arm/mach-omap2/board-omap4panda.c|8 +-
 arch/arm/mach-omap2/mux.c |   30 +
 arch/arm/mach-omap2/mux.h |   13 +
 arch/arm/mach-omap2/omap_hwmod.c  |   66 ++
 arch/arm/mach-omap2/pm24xx.c  |   19 -
 arch/arm/mach-omap2/pm34xx.c  |   24 -
 arch/arm/mach-omap2/serial.c  |  933 +++--
 arch/arm/plat-omap/include/plat/omap-serial.h |   30 +-
 arch/arm/plat-omap/include/plat/omap_hwmod.h  |1 +
 arch/arm/plat-omap/include/plat/serial.h  |   11 +-
 drivers/tty/serial/omap-serial.c  |  305 +++--
 14 files changed, 654 insertions(+), 900 deletions(-)

-- 
1.7.4.1

--
To unsubscribe from this list: send the line unsubscribe linux-omap in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html