1. 19 6月, 2012 3 次提交
    • V
      ARM: OMAP AM33xx: powerdomains: add AM335x support · 3f0ea764
      Vaibhav Hiremath 提交于
      Add offset & mask fields to struct powerdomain
      
      In case of AM33xx family of devices, there is no consistency between
      PWRSTCTRL & PWRSTST register offsers in PRM space, for example -
      
      PRM_XXX           PWRSTCTRL     PWRSTST
      =======================================
      PRM_PER_MOD:      0x0C,         0x08
      PRM_WKUP_MOD:     0x04,         0x08
      PRM_MPU_MOD:      0x00,         0x04
      PRM_DEVICE_MOD:   NA,           NA
      
      And also, there is no consistency between bit-offsets inside
      PWRSTCTRL & PWRSTST register, for example -
      
      PRM_XXX           LOGICRET  MEMON  MEMRET
      =======================================
      GFX_PWRCTRL:      2,        17,    6
      PER_PWRCTRL:      3,        25,    29
      MPU_PWRCTRL:      2,        18,    22
      WKUP_PWRCTRL:     3,        NA,    NA
      
      This means, we need to maintain and pass on all this information
      in powerdomain handle; so adding fields for,
         - PWRSTCTRL/ST register offset
         - Logic retention state mask
         - mem_on/ret/pwrst/retst mask
      
      Currently, this fields is only applicable and used for AM33XX devices.
      Signed-off-by: NVaibhav Hiremath <hvaibhav@ti.com>
      Cc: Benoit Cousson <b-cousson@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Kevin Hilman <khilman@ti.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Cc: Rajendra Nayak <rnayak@ti.com>
      [paul@pwsan.com: this patch is a combination of "Add offset & mask fields to
       struct powerdomain" and the powerdomain portions of "ARM: OMAP3+: am33xx:
       Add powerdomain & PRM support"; updated for 3.5]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      3f0ea764
    • V
      ARM: OMAP AM33xx: CM: Introduce AM33xx CM APIs and register level details · f969a6dc
      Vaibhav Hiremath 提交于
      As far as PRM/CM/PRCM modules are concerned, AM33XX device is
      different than OMAP3 and OMAP4 architectures; so similar to
      PRM implementation, handle AM33XX CM separately.
      
      This patch introduces AM33XX CM module low-level api's, used and
      required by omap clockdomain and hwmod framework.
      
      Please note that cm-regbits-33xx.h (register bit field offset)
      and cm33xx.h (register addr offset) files are mostly auto generated.
      Signed-off-by: NVaibhav Hiremath <hvaibhav@ti.com>
      Signed-off-by: NAfzal Mohammed <afzal@ti.com>
      Signed-off-by: NVaibhav Bedia <vaibhav.bedia@ti.com>
      Cc: Kevin Hilman <khilman@ti.com>
      Cc: Rajendra Nayak <rnayak@ti.com>
      CC: Tony Lindgren <tony@atomide.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Cc: Benoit Cousson <b-cousson@ti.com>
      [paul@pwsan.com: split the hwmod code changes in this patch into a separate
       patch; updated for 3.5]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      f969a6dc
    • V
      ARM: OMAP AM33xx: PRM: add PRM support · ddd04b98
      Vaibhav Hiremath 提交于
      As far as PRM/CM/PRCM modules are concerned, AM33XX device is
      different than OMAP3 and OMAP4 architectures; so we need to handle it
      separately.  This patch adds support for the PRM APIs required for
      AM33XX device.
      Signed-off-by: NVaibhav Hiremath <hvaibhav@ti.com>
      Signed-off-by: NAfzal Mohammed <afzal@ti.com>
      Cc: Benoit Cousson <b-cousson@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Kevin Hilman <khilman@ti.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Cc: Rajendra Nayak <rnayak@ti.com>
      [paul@pwsan.com: separated the PRM parts of "ARM: OMAP3+: am33xx: Add
       powerdomain & PRM support" into this patch; fixed Makefile prm33xx.o
       location; cleaned up some checkpatch violations; updated for 3.5]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      ddd04b98
  2. 18 6月, 2012 1 次提交
  3. 09 5月, 2012 2 次提交
  4. 08 5月, 2012 2 次提交
  5. 20 4月, 2012 1 次提交
  6. 13 3月, 2012 1 次提交
  7. 12 3月, 2012 1 次提交
  8. 06 3月, 2012 2 次提交
  9. 24 2月, 2012 1 次提交
  10. 08 2月, 2012 1 次提交
    • S
      ARM: OMAP2: Fix the OMAP2 only build break seen with 2011+ ARM tool-chains · fef67c51
      Santosh Shilimkar 提交于
      With the latest Sourcery G++ Lite 2011.03-41 and latest linaro
      tool-chains OMAP2 only build breaks with below error.
      
      arch/arm/mach-omap2/omap-smc.S: Assembler messages:
      arch/arm/mach-omap2/omap-smc.S:30: Error: selected processor does not support ARM mode `smc #0'
      arch/arm/mach-omap2/omap-smc.S:53: Error: selected processor does not support ARM mode `smc #0'
      arch/arm/mach-omap2/omap-smc.S:61: Error: selected processor does not support ARM mode `smc #0'
      arch/arm/mach-omap2/omap-smc.S:69: Error: selected processor does not support ARM mode `smc #0'
      arch/arm/mach-omap2/omap-smc.S:77: Error: selected processor does not support ARM mode `smc #0'
      make[1]: *** [arch/arm/mach-omap2/omap-smc.o] Error 1
      
      OMAP2 devices doesn't have the security support but the security support
      was getting built because of OMAP2PLUS. Don't build security code for
      OMAP2 devices.
      
      While at it, fix the secure-common line in the Makefile to use tabs
      instead of spaces.
      Reported-by: NKevin Hilman <khilman@ti.com>
      Signed-off-by: NSantosh Shilimkar <santosh.shilimkar@ti.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      fef67c51
  11. 17 12月, 2011 1 次提交
    • T
      ARM: OMAP: PRCM: add support for chain interrupt handler · 0a84a91c
      Tero Kristo 提交于
      Introduce a chained interrupt handler mechanism for the PRCM
      interrupt, so that individual PRCM event can cleanly be handled by
      handlers in separate drivers. We do this by introducing PRCM event
      names, which are then matched to the particular PRCM interrupt bit
      depending on the specific OMAP SoC being used.
      
      PRCM interrupts have two priority levels, high or normal. High priority
      is needed for IO event handling, so that we can be sure that IO events
      are processed before other events. This reduces latency for IO event
      customers and also prevents incorrect ack sequence on OMAP3.
      Signed-off-by: NTero Kristo <t-kristo@ti.com>
      Cc: Paul Walmsley <paul@pwsan.com>
      Cc: Kevin Hilman <khilman@ti.com>
      Cc: Avinash.H.M <avinashhm@ti.com>
      Cc: Benoit Cousson <b-cousson@ti.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Govindraj.R <govindraj.raja@ti.com>
      Tested-by: NKevin Hilman <khilman@ti.com>
      Reviewed-by: NKevin Hilman <khilman@ti.com>
      [paul@pwsan.com: drop some dead code; use SoC-specific pending IRQ
       detection; move code to prm_common.c; add lots of documentation;
       remove saved_mask; add OCP barrier on ISR exit; improved error
       handling; split out per-SoC initialization to a separate patch]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      0a84a91c
  12. 14 12月, 2011 1 次提交
  13. 09 12月, 2011 4 次提交
  14. 08 11月, 2011 1 次提交
    • T
      ARM: OMAP: HWMOD: Unify DSS resets for OMAPs · 13662dc5
      Tomi Valkeinen 提交于
      This patch adds a custom DSS reset function used on OMAPs from OMAP2
      forward.
      
      The function doesn't actually do a reset, it only waits for the reset to
      complete. The reason for this is that on OMAP4 there is no possibility
      to do a SW reset, and on OMAP2/3 doing a SW reset for dss_core resets
      all the other DSS modules also, thus breaking the HWMOD model where
      every DSS module is handled independently.
      
      This fixes the problem with DSS reset on OMAP4, caused by the fact that
      because there's no SW reset for dss_core on OMAP4, the HWMOD framework
      doesn't try to reset dss_core and thus the DSS clocks were never enabled
      at the same time. This causes causes the HWMOD reset to fail for
      dss_dispc and dss_rfbi.
      
      The common reset function will also allow us to fix another problem in
      the future: before doing a reset we need to disable DSS outputs, which
      are in some cases enabled by the bootloader, as otherwise DSS HW seems
      to get more or less stuck, requiring a power reset to recover.
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      [paul@pwsan.com: modified to build arch/arm/mach-omap2/display.o
       unconditionally to avoid an error when !CONFIG_OMAP2_DSS]
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      13662dc5
  15. 22 9月, 2011 1 次提交
  16. 16 9月, 2011 3 次提交
  17. 15 9月, 2011 1 次提交
  18. 09 9月, 2011 1 次提交
    • F
      usb: musb: fix build breakage · b3c3dc22
      Felipe Balbi 提交于
      This patch fixes the compilation brekage which
      commits 208466dc ("usb: otg:OMAP4430: Powerdown
      the internal PHY when USB is disabled") and
      fb91cde4 ("usb: musb: OMAP4430: Power down
      the PHY during board init") introduced when
      building a OMAP2-only kernel.
      
        LD      .tmp_vmlinux1
      arch/arm/mach-omap2/built-in.o:(.data+0x7ce0): undefined reference to
      +`omap4430_phy_init'
      arch/arm/mach-omap2/built-in.o:(.data+0x7ce4): undefined reference to
      +`omap4430_phy_exit'
      arch/arm/mach-omap2/built-in.o:(.data+0x7ce8): undefined reference to
      +`omap4430_phy_power'
      arch/arm/mach-omap2/built-in.o:(.data+0x7cec): undefined reference to
      +`omap4430_phy_set_clk'
      arch/arm/mach-omap2/built-in.o:(.data+0x7cf0): undefined reference to
      +`omap4430_phy_suspend'
      make: *** [.tmp_vmlinux1] Error 1
      Reported-by: NPaul Walmsley <paul@pwsan.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      b3c3dc22
  19. 23 8月, 2011 1 次提交
  20. 10 7月, 2011 2 次提交
  21. 04 7月, 2011 1 次提交
  22. 28 6月, 2011 1 次提交
    • T
      omap2+: Rename timer-gp.c into timer.c to combine timer init functions · 0f622e8c
      Tony Lindgren 提交于
      We can keep everything sys_timer and gptimer.c related code in
      timer.c as the code will be very minimal.
      
      Later on we can also remove timer-mpu.c, as it can be called from
      omap4_timer_init function.
      
      This allows us to get rid of confusing existing files. We currently
      have timer-gp.c, timer-mpu.c, and patches have been posted to add
      dmtimer.c. There's no need to have these multiple files, we can
      put everything into timer.c.
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      0f622e8c
  23. 17 5月, 2011 1 次提交
  24. 03 5月, 2011 1 次提交
  25. 29 4月, 2011 1 次提交
  26. 26 4月, 2011 1 次提交
  27. 11 3月, 2011 1 次提交
    • P
      OMAP2+: voltage: reorganize, split code from data · c0718df4
      Paul Walmsley 提交于
      This is a first pass at reorganizing mach-omap2/voltage.c:
      
      - Separate almost all of the data from the code of mach-omap2/voltage.c.
        The code remains in mach-omap2/voltage.c.  The data goes into one
        of several places, depending on what type of data it is:
      
        - Silicon process/validation data: mach-omap2/opp*_data.c
        - VC (Voltage Controller) data: mach-omap2/vc*_data.c
        - VP (Voltage Processor) data: mach-omap2/vp*_data.c
        - Voltage domain data: mach-omap2/voltagedomains*_data.c
      
        The ultimate goal is for all this data to be autogenerated, the same
        way we autogenerate the rest of our data.
      
      - Separate VC and VP common data from VDD-specific VC and VP data.
      
      - Separate common voltage.c code from SoC-specific code; reuse common code.
      
      - Reorganize structures to avoid unnecessary memory loss due to unpacked
        fields.
      
      There is much left to be done.  VC code and VP code should be separated out
      into vc*.c and vp*.c files.  Many fields in the existing structures are
      superfluous, and should be removed.  Some code in voltage.c seems to be
      duplicated; that code should be moved into functions of its own.  Proper
      voltage domain code should be created, as was done with the powerdomain
      and clockdomains, and powerdomains should reference voltagedomains.
      
      Thanks to Shweta Gulati <shweta.gulati@ti.com> for comments.  Thanks
      to Rajendra Nayak <rnayak@ti.com> for finding and fixing some bugs
      that prevented OMAP4 from booting:
      
         https://patchwork.kernel.org/patch/587311/
      
      His patch has been folded into this one to avoid breaking OMAP4
      between patches.  Thanks also to Kevin Hilman <khilman@ti.com> for
      finding and fixing a compile problem when !CONFIG_PM:
      
         http://www.spinics.net/lists/arm-kernel/msg118067.html
      
      His patch has also been folded into this one to avoid breaking
      !CONFIG_PM builds.
      Signed-off-by: NPaul Walmsley <paul@pwsan.com>
      Cc: Shweta Gulati <shweta.gulati@ti.com>
      Cc: Rajendra Nayak <rnayak@ti.com>
      Cc: Kevin Hilman <khilman@ti.com>
      c0718df4
  28. 09 3月, 2011 2 次提交