07 Nov, 2011

1 commit

  • * 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)
    Revert "tracing: Include module.h in define_trace.h"
    irq: don't put module.h into irq.h for tracking irqgen modules.
    bluetooth: macroize two small inlines to avoid module.h
    ip_vs.h: fix implicit use of module_get/module_put from module.h
    nf_conntrack.h: fix up fallout from implicit moduleparam.h presence
    include: replace linux/module.h with "struct module" wherever possible
    include: convert various register fcns to macros to avoid include chaining
    crypto.h: remove unused crypto_tfm_alg_modname() inline
    uwb.h: fix implicit use of asm/page.h for PAGE_SIZE
    pm_runtime.h: explicitly requires notifier.h
    linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h
    miscdevice.h: fix up implicit use of lists and types
    stop_machine.h: fix implicit use of smp.h for smp_processor_id
    of: fix implicit use of errno.h in include/linux/of.h
    of_platform.h: delete needless include
    acpi: remove module.h include from platform/aclinux.h
    miscdevice.h: delete unnecessary inclusion of module.h
    device_cgroup.h: delete needless include
    net: sch_generic remove redundant use of
    net: inet_timewait_sock doesnt need
    ...

    Fix up trivial conflicts (other header files, and removal of the ab3550 mfd driver) in
    - drivers/media/dvb/frontends/dibx000_common.c
    - drivers/media/video/{mt9m111.c,ov6650.c}
    - drivers/mfd/ab3550-core.c
    - include/linux/dmaengine.h

    Linus Torvalds
     

01 Nov, 2011

1 commit

  • To fix things like this:

    arch/arm/mach-omap2/usb-tusb6010.c:58: error: implicit declaration of function 'memset'
    arch/arm/kernel/leds.c:40: error: implicit declaration of function 'strcspn'
    arch/arm/kernel/leds.c:40: warning: incompatible implicit declaration of built-in function 'strcspn'
    arch/arm/kernel/leds.c:45: error: implicit declaration of function 'strncmp'
    arch/arm/kernel/leds.c:55: error: implicit declaration of function 'strlen'
    arch/arm/kernel/leds.c:55: warning: incompatible implicit declaration of built-in function 'strlen'
    arch/arm/mach-omap2/clockdomain.c:52: error: implicit declaration of function 'strcmp'

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

15 Sep, 2011

2 commits

  • At Tony's request, remove the omap_chip bitmasks from the clockdomain
    and clockdomain dependency definitions. Instead, initialize
    clockdomains based on one or more lists that are applicable to a
    particular SoC family, variant, and silicon revision.

    Tony Lindgren found a bug in a previous version of this
    patch - thanks Tony.

    Signed-off-by: Paul Walmsley
    Cc: Tony Lindgren

    Paul Walmsley
     
  • In preparation for OMAP_CHIP() removal, split clkdm_init() into four
    functions. This allows some of them to be called multiple times: for
    example, clkdm_register_clkdms() can be called once to register
    clockdomains that are common to a group of SoCs, and once to register
    clockdomains that are specific to a single SoC.

    The appropriate order to call these functions - which is enforced
    by the code - is:

    1. clkdm_register_platform_funcs()
    2. clkdm_register_clkdms() (can be called multiple times)
    3. clkdm_register_autodeps() (optional; deprecated)
    4. clkdm_complete_init()

    Convert the OMAP2, 3, and 4 clockdomain init code to use these new
    functions.

    While here, improve documentation, and increase CodingStyle
    conformance by shortening some local variable names.

    Signed-off-by: Paul Walmsley

    Paul Walmsley
     

20 Aug, 2011

1 commit

  • While using clockdomain force wakeup method, not waiting for powerdomain
    to be effectively ON may end up locking the clockdomain FSM until a
    next wakeup event occurs.

    One such issue was seen on OMAP4430, where L4_PER was periodically
    getting stuck in in-transition state when transitioning from from OSWR to ON.

    This issue was reported and investigated by Patrick Titiano

    Signed-off-by: Santosh Shilimkar
    Signed-off-by: Rajendra Nayak
    Reported-by: Patrick Titiano
    Cc: Kevin Hilman
    Cc: Benoit Cousson
    Cc: Paul Walmsley
    [paul@pwsan.com: updated to apply; added transition wait on clkdm_deny_idle();
    remove two superfluous pwrdm_wait_transition() calls]
    Signed-off-by: Paul Walmsley

    Santosh Shilimkar
     

10 Jul, 2011

4 commits

  • Since the clkdm state programming is now done from within the hwmod
    framework (which uses a per-hwmod lock) instead of the being done
    from the clock framework (which used a global lock), there is now a
    need to have per-clkdm locking to prevent races between different
    hwmods/modules belonging to the same clock domain concurrently
    programming the clkdm state.

    Signed-off-by: Rajendra Nayak
    Signed-off-by: Benoit Cousson
    Cc: Paul Walmsley
    Signed-off-by: Paul Walmsley

    Rajendra Nayak
     
  • Add a new function, clkdm_in_hwsup(), that returns true if a clockdomain
    is configured for hardware-supervised idle. It does not actually read the
    hardware; rather, it checks an internal flag in the struct clockdomain, which
    is changed when the clockdomain is switched in and out of hardware-supervised
    idle. This should be safe, since all changes to the idle mode should
    pass through the clockdomain code.

    Based on a set of patches by Rajendra Nayak which do
    the same thing by checking the hardware bits. This approach should be
    faster and more compact.

    Signed-off-by: Paul Walmsley
    Cc: Rajendra Nayak
    Cc: Todd Poynor
    Cc: Benoît Cousson

    Paul Walmsley
     
  • Duplicate the existing API for clockdomain enable from clock to enable
    a clock domain from hwmod framework.
    This will be needed when the hwmod framework will move from the current
    clock centric approach to the module based approach.

    These APIs are returning 0 for the moment for OMAP2 and OMAP3 until
    their hwmods are updated with the clksm attribute.

    Signed-off-by: Benoit Cousson
    Cc: Kevin Hilman
    Cc: Paul Walmsley
    Cc: Rajendra Nayak
    Signed-off-by: Paul Walmsley

    Benoit Cousson
     
  • The call to pwrdm_wait_transition() in clkdm_clk_enable()
    is redundant since the function pwrdm_clkdm_state_switch()
    which is called next also does the same thing.

    Signed-off-by: Vaibhav Bedia
    Signed-off-by: Paul Walmsley

    Vaibhav Bedia
     

31 Mar, 2011

1 commit


11 Mar, 2011

1 commit

  • …dm_add_can_lose_context_fns_2.6.39', 'remotes/origin/omap_device_a_2.6.39', 'remotes/origin/mmc_a_2.6.39', 'remotes/origin/hwmod_b_2.6.39', 'remotes/origin/dmtimer_a_2.6.39', 'remotes/origin/pwrdm_clkdm_a_2.6.39', 'remotes/origin/clkdm_statdep_omap4_2.6.39', 'remotes/origin/clk_a_2.6.39', 'remotes/origin/clk_autoidle_a_2.6.39', 'remotes/origin/clk_autoidle_b_2.6.39', 'remotes/origin/clk_b_2.6.39', 'remotes/origin/clk_clkdm_a_2.6.39', 'remotes/origin/misc_a_2.6.39', 'remotes/origin/for_2.6.39/omap3_hwmod_data' and 'remotes/origin/wdtimer_a_2.6.39' into tmp-integration-2.6.39-20110310-024

    Paul Walmsley
     

10 Mar, 2011

1 commit

  • Add a new clockdomain flag, CLKDM_NO_AUTODEPS, which, when marked on a
    clockdomain, will prevent "autodeps" from being associated with the
    clockdomain. ("Autodeps" are sleep dependencies and wakeup
    dependencies from/to processor modules that are automatically added to
    a clockdomain when it is in hardware-supervised idle mode. They are
    deprecated -- a relic from the old CDP trees -- but are still in use
    for OMAP3.)

    Also, prevent the hwmod code from adding or removing initiator
    dependencies for clockdomains with this flag set.

    This patch should allow others to test which clockdomains actually
    still need autodeps.

    Thanks to Kevin Hilman for noting that the original
    version should also modify the hwmod code.

    Signed-off-by: Paul Walmsley
    Cc: Kevin Hilman

    Paul Walmsley
     

26 Feb, 2011

6 commits

  • Now that wkup and sleep dependencies are supported (in the
    form of static deps) for OMAP4, remove all instances of
    pr_errs' stating dependencies are still unsupported
    on OMAP4.

    Signed-off-by: Rajendra Nayak
    Signed-off-by: Paul Walmsley

    Rajendra Nayak
     
  • Define the following architecture specific funtions for omap2/3/4
    .clkdm_clk_enable
    .clkdm_clk_disable

    Convert the platform-independent framework to call these functions.
    Also rename the api's by removing the omap2_ preamble.
    Hence call omap2_clkdm_k_enable as clkdm_clk_enable and
    omap2_clkdm_clk_disable as clkdm_clk_disable.a

    Remove unused functions (_enable/_disable_hwsup) and unsed
    headers from clockdomain.c file.

    Signed-off-by: Rajendra Nayak
    Signed-off-by: Paul Walmsley

    Rajendra Nayak
     
  • Define the following architecture specific funtions for omap2/3/4
    .clkdm_allow_idle
    .clkdm_deny_idle

    Convert the platform-independent framework to call these functions.
    Also rename the api's by removing the omap2_ preamble.
    Hence call omap2_clkdm_allow_idle as clkdm_allow_idle and
    omap2_clkdm_deny_idle as clkdm_deny_idle.

    Make the _clkdm_add_autodeps and _clkdm_del_autodeps as non-static
    so they can be accessed from OMAP2/3 platform specific code.

    Signed-off-by: Rajendra Nayak
    Signed-off-by: Paul Walmsley

    Rajendra Nayak
     
  • Define the following architecture specific funtions for omap2/3/4
    .clkdm_sleep
    .clkdm_wakeup

    Convert the platform-independent framework to call these functions.
    Also rename the api's by removing the omap2_ preamble.
    Hence call omap2_clkdm_wakeup as clkdm_wakeup and
    omap2_clkdm_sleep as clkdm_sleep.

    Signed-off-by: Rajendra Nayak
    [paul@pwsan.com: fixed omap3_clkdm_clear_all_sleepdeps() and
    omap2_clkdm_clear_all_wkdeps() to test against the correct
    loop termination condition; thanks to Kevin Hilman for finding and
    helping fix]
    Cc: Kevin Hilman
    Signed-off-by: Paul Walmsley

    Rajendra Nayak
     
  • Define the following architecture specific funtions for omap2/3
    .clkdm_add_wkdep
    .clkdm_del_wkdep
    .clkdm_read_wkdep
    .clkdm_clear_all_wkdeps
    .clkdm_add_sleepdep
    .clkdm_del_sleepdep
    .clkdm_read_sleepdep
    .clkdm_clear_all_sleepdeps

    Convert the platform-independent framework to call these functions.
    With this also move the clkdm lookups for all wkdep_srcs and
    sleepdep_srcs at clkdm_init.

    Signed-off-by: Rajendra Nayak
    [paul@pwsan.com: fixed loop termination conditions in omap*_clkdm_clear_all_*();
    thanks to Kevin Hilman for finding and helping fix those bugs; also
    avoid re-resolving clockdomains during init; abstracted out clkdm_dep walk]
    Cc: Kevin Hilman
    Signed-off-by: Paul Walmsley

    Rajendra Nayak
     
  • Put infrastructure in place, so arch specific func pointers
    can be hooked up to the platform-independent part of the
    framework.
    This is in preparation of splitting the clockdomain framework into
    platform-independent part (for all omaps) and platform-specific
    parts.

    Signed-off-by: Rajendra Nayak
    Signed-off-by: Paul Walmsley

    Rajendra Nayak
     

19 Jan, 2011

1 commit

  • Commit 56a6a19dffda6b75cef8d4183c7c6ff650025cbd ("omap2plus: prm:
    Trvial build break fix for undefined reference to
    'omap2_prm_read_mod_reg'") generates a lot of warnings on boot since
    clockdomain functions that manipulate wake-up dependencies are not
    implemented yet on OMAP4 for 2.6.38. This patch bypasses the OMAP2/3
    functions on OMAP4, which in turn avoids the warnings when the
    functions would attempt to call the underlying OMAP2/3 PRCM functions.
    A one-line warning is still logged from the clockdomain code that the
    OMAP4 wake-up dependency code is not yet implemented.

    A clockdomain wake-up and sleep dependency implementation for OMAP4
    from Rajendra should be possible to merge during the 2.6.39 merge
    window:

    http://www.mail-archive.com/linux-omap@vger.kernel.org/msg41748.html

    http://www.mail-archive.com/linux-omap@vger.kernel.org/msg42222.html

    Reported-by: Russell King
    Cc: Rajendra Nayak
    Cc: Benoît Cousson
    Cc: Santosh Shilimkar
    Acked-by: Santosh Shilimkar
    Signed-off-by: Paul Walmsley

    Paul Walmsley
     

22 Dec, 2010

7 commits

  • The OMAP powerdomain code and data is all OMAP2+-specific. This seems
    unlikely to change any time soon. Move plat-omap/include/plat/powerdomain.h
    to mach-omap2/powerdomain.h. The primary point of doing this is to remove
    the temptation for unrelated upper-layer code to access powerdomain code
    and data directly.

    As part of this process, remove the references to powerdomain data
    from the GPIO "driver" and the OMAP PM no-op layer, both in plat-omap.
    Change the DSPBridge code to point to the new location for the
    powerdomain headers. The DSPBridge code should not be including the
    powerdomain headers; these should be removed.

    Signed-off-by: Paul Walmsley
    Cc: Kevin Hilman
    Cc: Omar Ramirez Luna
    Cc: Felipe Contreras
    Cc: Greg Kroah-Hartman

    Paul Walmsley
     
  • The OMAP clockdomain code and data is all OMAP2+-specific. This seems
    unlikely to change any time soon. Move plat-omap/include/plat/clockdomain.h
    to mach-omap2/clockdomain.h. The primary point of doing this is to remove
    the temptation for unrelated upper-layer code to access clockdomain code
    and data directly.

    DSPBridge also uses the clockdomain headers for some reason, so,
    modify it also. The DSPBridge code should not be including the
    clockdomain headers; these should be removed.

    Signed-off-by: Paul Walmsley
    Cc: Kevin Hilman
    Cc: Omar Ramirez Luna
    Cc: Felipe Contreras
    Cc: Greg Kroah-Hartman
    Tested-by: Rajendra Nayak
    Tested-by: Santosh Shilimkar

    Paul Walmsley
     
  • Reverse some of the effects of commit
    84c0c39aec31a09571fc08a752a2f4da0fe9fcf2 ("ARM: OMAP4: PM: Make OMAP3
    Clock-domain framework compatible for OMAP4"). On OMAP2/3, the
    CM_CLKSTCTRL register is at a constant offset from the powerdomain's
    CM instance.

    Also, remove some of the direct CM register access from the
    clockdomain code, moving it to the OMAP2/3 CM code instead. The
    intention here is to simplify the clockdomain code. (The long-term
    goal is to move all direct CM register access across the OMAP core
    code to the appropriate cm*.c file.)

    Signed-off-by: Paul Walmsley
    Tested-by: Rajendra Nayak
    Tested-by: Santosh Shilimkar

    Paul Walmsley
     
  • Add PRCM partition, CM instance register address offset, and clockdomain
    register address offset to each OMAP4 struct clockdomain record. Add OMAP4
    clockdomain code to use this new data to access registers properly.

    While here, clean up some nearby clockdomain code to allocate auto variables
    in my recollection of Linus's preferred style.

    The autogeneration scripts have been updated.

    Signed-off-by: Paul Walmsley
    Cc: Rajendra Nayak
    Cc: Santosh Shilimkar
    Cc: Benoît Cousson
    Tested-by: Rajendra Nayak
    Tested-by: Santosh Shilimkar

    Paul Walmsley
     
  • Split _omap2_clkdm_set_hwsup() into _disable_hwsup() and _enable_hwsup().

    While here, also document that the autodeps are deprecated and that they
    should be removed at the earliest opportunity.

    The documentation has been fixed for _{enable,disable}_hwsup(), thanks
    to Kevin Hilman for pointing out that those
    functions still had placeholder documentation in an earlier patch revision.

    Signed-off-by: Paul Walmsley
    Cc: Kevin Hilman
    Tested-by: Santosh Shilimkar
    Tested-by: Rajendra Nayak

    Paul Walmsley
     
  • Now that OMAP4-specific PRCM functions have been added, distinguish the
    existing OMAP2/3-specific PRCM functions by prefixing them with "omap2_".

    This patch should not result in any functional change.

    Signed-off-by: Paul Walmsley
    Cc: Kevin Hilman
    Cc: Jarkko Nikula
    Cc: Peter Ujfalusi
    Cc: Liam Girdwood
    Cc: Mark Brown
    Tested-by: Santosh Shilimkar
    Tested-by: Rajendra Nayak

    Paul Walmsley
     
  • In preparation for adding OMAP4-specific PRCM accessor/mutator
    functions, split the existing OMAP2/3 PRCM code into OMAP2/3-specific
    files. Most of what was in mach-omap2/{cm,prm}.{c,h} has now been
    moved into mach-omap2/{cm,prm}2xxx_3xxx.{c,h}, since it was
    OMAP2xxx/3xxx-specific.

    This process also requires the #includes in each of these files to be
    changed to reference the new file name. As part of doing so, add some
    comments into plat-omap/sram.c and plat-omap/mcbsp.c, which use
    "sideways includes", to indicate that these users of the PRM/CM includes
    should not be doing so.

    Thanks to Felipe Contreras for comments on this
    patch.

    Signed-off-by: Paul Walmsley
    Cc: Jarkko Nikula
    Cc: Peter Ujfalusi
    Cc: Liam Girdwood
    Cc: Omar Ramirez Luna
    Acked-by: Omar Ramirez Luna
    Cc: Felipe Contreras
    Acked-by: Felipe Contreras
    Cc: Greg Kroah-Hartman
    Acked-by: Mark Brown
    Reviewed-by: Kevin Hilman
    Tested-by: Kevin Hilman
    Tested-by: Rajendra Nayak
    Tested-by: Santosh Shilimkar

    Paul Walmsley
     

24 Sep, 2010

1 commit

  • When the clockdomain layer initializes, place all clockdomains into
    software-supervised mode, and clear all wakeup and sleep dependencies
    immediately, rather than waiting for the PM code to do this later.
    This fixes a major bug where critical sleep dependencies added by the
    hwmod code are cleared during late PM init.

    As a side benefit, the _init_{wk,sleep}dep_usecount() functions are no
    longer needed, so remove them.

    Kevin Hilman did all the really hard work on
    this, identifying the problem and finding the bug.

    Signed-off-by: Paul Walmsley
    Signed-off-by: Kevin Hilman

    Paul Walmsley
     

21 May, 2010

1 commit

  • Fix all of the remaining OMAP2 PRCM register shift/bitmask macros that
    did not use the _SHIFT/_MASK suffixes to use them. This makes the use
    of these macros consistent. It is intended to reduce error, as code
    can be inspected visually by reviewers to ensure that bitshifts and
    bitmasks are used in the appropriate places.

    Signed-off-by: Paul Walmsley
    Cc: Kevin Hilman

    Paul Walmsley
     

31 Mar, 2010

1 commit


25 Feb, 2010

3 commits

  • Simplify the code in the omap2_clk_disable() and omap2_clk_enable()
    functions, reducing levels of indentation. This makes the code easier
    to read. Add some additional debugging pr_debug()s here also to help
    others understand what is going on.

    Revise the omap2_clk_disable() logic so that it now attempts to
    disable the clock's clockdomain before recursing up the clock tree.
    Simultaneously, ensure that omap2_clk_enable() is called on parent
    clocks first, before enabling the clockdomain. This ensures that a
    parent clock's clockdomain is enabled before the child clock's
    clockdomain. These sequences should be the inverse of each other.

    Revise the omap2_clk_enable() logic so that it now cleans up after
    itself upon encountering an error. Previously, an error enabling a
    parent clock could have resulted in inconsistent usecounts on the
    enclosing clockdomain.

    Remove the trivial _omap2_clk_disable() and _omap2_clk_enable() static
    functions, and replace it with the clkops calls that they were
    executing.

    For all this to work, the clockdomain omap2_clkdm_clk_enable() and
    omap2_clkdm_clk_disable() code must not return an error on clockdomains
    without CLKSTCTRL registers; so modify those functions to simply return 0
    in that case.

    While here, add some basic kerneldoc documentation on both functions,
    and get rid of some old non-CodingStyle-compliant comments that have
    existed since the dawn of time (at least, the OMAP clock framework's
    time).

    Signed-off-by: Paul Walmsley
    Cc: Richard Woodruff
    Cc: Rajendra Nayak

    Paul Walmsley
     
  • _clkdm_add_autodeps() and _clkdm_del_autodeps() will attempt to dereference
    a NULL pointer if no autodeps were supplied to clkdm_init().

    Based on a patch from Roel Kluin - thanks Roel.

    Signed-off-by: Paul Walmsley
    Cc: Roel Kluin

    Paul Walmsley
     
  • A check is added for avoiding the sleep/wakeup dependency updates
    for OMAP4 as the structures for the dependencies are currently absent.

    Signed-off-by: Abhijit Pagare
    [paul@pwsan.com: added warnings, explanatory comment, copyright update]
    Signed-off-by: Paul Walmsley

    Abhijit Pagare
     

27 Jan, 2010

8 commits

  • This patch only affects documentation; no functional changes are
    included.

    Clean up comments in the current clockdomain, powerdomain code and
    header files. This mostly involves conversion to kerneldoc format,
    although some clarifications are also included.

    Signed-off-by: Paul Walmsley

    Paul Walmsley
     
  • Add usecounting for wakeup and sleep dependencies. In the current
    situation, if several functions add dependencies on the same
    clockdomains, when the first dependency removal function is called,
    the dependency will be incorrectly removed from the hardware.

    Add clkdm_clear_all_wkdeps() and clkdm_clear_all_sleepdeps(), which
    provide a fast and usecounting-consistent way to clear all hardware
    clockdomain dependencies, since accesses to these registers can be
    quite slow. pm{2,3}4xx.c has been updated to use these new functions.
    The original version of this patch did not touch these files, which
    previously wrote directly to the wkdep registers, and thus confused
    the usecounting code. This problem was found by Kevin Hilman
    .

    N.B.: This patch introduces one significant functional difference over
    the previous pm34xx.c code: sleepdeps are now cleared during
    clockdomain initialization, whereas previously they were left
    untouched. This has been tested by Kevin and confirmed to work.

    The original version of this patch also did not take into
    consideration that some clockdomains do not have sleep or wakeup
    dependency sources, which caused NULL pointer dereferences. This
    problem was debugged and fixed by Kevin Hilman
    .

    Signed-off-by: Paul Walmsley
    Signed-off-by: Kevin Hilman
    Cc: Jouni Högander

    Paul Walmsley
     
  • OMAP clockdomains and powerdomains are currently defined statically,
    only registered at boot, and never unregistered, so we can remove the
    unregister function and the locking. A variant of this was originally
    suggested a while ago by Dmitry Baryshkov .
    This version of this patch contains an additional fix from Kevin Hilman
    to address one of the pwrdm_for_each_nolock()
    users in mach-omap2/pm-debug.c. Thanks Kevin.

    Signed-off-by: Paul Walmsley
    Cc: Dmitry Baryshkov
    Cc: Kevin Hilman

    Paul Walmsley
     
  • Move clockdomain wakeup dependency and sleep dependency data
    structures from the powerdomain layer to the clockdomain layer, where
    they belong. These dependencies were originally placed in the
    powerdomain layer due to unclear documentation; however, it is clear
    now that these dependencies are between clockdomains. For OMAP2/3,
    this is not such a big problem, but for OMAP4 this needs to be fixed.

    Thanks to Benoît Cousson for his advice on this
    patch.

    Signed-off-by: Paul Walmsley
    Cc: Benoît Cousson

    Paul Walmsley
     
  • Port the APIs to support the OMAP4 clockdomain framework.
    Also take care of the compiling requirements for the same.

    Signed-off-by: Abhijit Pagare
    Signed-off-by: Paul Walmsley
    Cc: Benoit Cousson
    Cc: Rajendra Nayak

    Abhijit Pagare
     
  • Here the APIs are modified to use absolute addresses instead of module offsets.

    Signed-off-by: Abhijit Pagare
    Signed-off-by: Paul Walmsley
    Cc: Benoit Cousson
    Cc: Rajendra Nayak

    Abhijit Pagare
     
  • Here the ".clkstctrl_reg" field is added to the clockdomain stucture
    as the module offsets for OMAP4 do not map one to one for powerdomains
    and clockdomains as it used to for OMAP3. Hence we need to use absolute
    addresses to access the control registers. Some of the clock domains have
    modules falling in the address space of PRM partition. Hence necessitating
    the use of absolute adresses.

    Signed-off-by: Abhijit Pagare
    Signed-off-by: Paul Walmsley
    Cc: Benoit Cousson
    Cc: Rajendra Nayak

    Abhijit Pagare
     
  • Module offsets were same for OMAP2 and OMAP3 while they differ for OMAP4.
    Hence we need different macros for identifying platform specific offsets.

    Signed-off-by: Abhijit Pagare
    Signed-off-by: Paul Walmsley
    Cc: Benoit Cousson
    Cc: Rajendra Nayak

    Abhijit Pagare