10 Jan, 2012

2 commits

  • power management changes for omap and imx

    A significant part of the changes for these two platforms went into
    power management, so they are split out into a separate branch.

    * tag 'pm' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (65 commits)
    ARM: imx6: remove __CPUINIT annotation from v7_invalidate_l1
    ARM: imx6: fix v7_invalidate_l1 by adding I-Cache invalidation
    ARM: imx6q: resume PL310 only when CACHE_L2X0 defined
    ARM: imx6q: build pm code only when CONFIG_PM selected
    ARM: mx5: use generic irq chip pm interface for pm functions on
    ARM: omap: pass minimal SoC/board data for UART from dt
    arm/dts: Add minimal device tree support for omap2420 and omap2430
    omap-serial: Add minimal device tree support
    omap-serial: Use default clock speed (48Mhz) if not specified
    omap-serial: Get rid of all pdev->id usage
    ARM: OMAP2+: hwmod: Add a new flag to handle hwmods left enabled at init
    ARM: OMAP4: PRM: use PRCM interrupt handler
    ARM: OMAP3: pm: use prcm chain handler
    ARM: OMAP: hwmod: add support for selecting mpu_irq for each wakeup pad
    ARM: OMAP2+: mux: add support for PAD wakeup interrupts
    ARM: OMAP: PRCM: add suspend prepare / finish support
    ARM: OMAP: PRCM: add support for chain interrupt handler
    ARM: OMAP3/4: PRM: add functions to read pending IRQs, PRM barrier
    ARM: OMAP2+: hwmod: Add API to enable IO ring wakeup
    ARM: OMAP2+: mux: add wakeup-capable hwmod mux entries to dynamic list
    ...

    Linus Torvalds
     
  • Conflicts:
    arch/arm/mach-imx/mach-imx6q.c
    arch/arm/mach-omap2/board-ti8168evm.c
    arch/arm/mach-s3c64xx/Kconfig
    arch/arm/mach-tegra/Makefile
    arch/arm/mach-tegra/board-dt-tegra20.c
    arch/arm/mach-tegra/common.c

    Lots of relatively simple conflicts between the board
    changes and stuff from the arm tree. This pulls in
    the resolution from the samsung/cleanup tree, so we
    don't get conflicting merges.

    Signed-off-by: Arnd Bergmann

    Arnd Bergmann
     

05 Jan, 2012

6 commits


04 Jan, 2012

3 commits


03 Jan, 2012

1 commit


26 Dec, 2011

1 commit


25 Dec, 2011

1 commit

  • Two problems exist in the current i.MX5 pm suspend/resume and idle
    functions. The first is the current i.MX5 suspend routine will call
    tzic_enable_wake(1) to set wake source, this will set all enabled
    irq as wake source rather than those wake capable. The second
    is i.MX5 idle will call mx5_cpu_lp_set() to prepare enter low power
    mode, but it forgets to call wfi instruction to enter this mode.

    To fix these two problems, using generic irq chip pm interface and
    modify function imx5_idle().

    [Tested by Shawn Guo on imx51 babbage board.
    Tested by Hui Wang on imx51 pdk board.]

    Signed-off-by: Hui Wang
    Signed-off-by: Shawn Guo

    Hui Wang
     

20 Dec, 2011

1 commit


19 Dec, 2011

5 commits

  • Making CACHE_L2X0 depend on (huge list of MACH_ and ARCH_ configs)
    is bothersome to maintain and likely to lead to merge conflicts.

    This patch moves the knowledge of which platforms have a L2x0 or
    PL310 cache controller to the individual machines. To enable this,
    a new MIGHT_HAVE_CACHE_L2X0 config option is introduced to allow
    machines to indicate that they may have such a cache controller
    independently of each other.

    Boards/SoCs which cannot reliably operate without the L2 cache
    controller support will need to select CACHE_L2X0 directly from
    their own Kconfigs instead. This applies to some TrustZone-enabled
    boards where Linux runs in the Normal World, for example.

    Signed-off-by: Dave Martin
    Acked-by: Anton Vorontsov
    (for cns3xxx)
    Acked-by: Tony Lindgren
    (for omap)
    Acked-by: Shawn Guo
    (for imx)
    Acked-by: Kukjin Kim
    (for exynos)
    Acked-by: Sascha Hauer
    (for imx)
    Acked-by: Olof Johansson
    (for tegra)

    Dave Martin
     
  • Signed-off-by: Eric Bénard
    Cc: Sascha Hauer
    Signed-off-by: Sascha Hauer

    Eric Bénard
     
  • WARNING: arch/arm/plat-mxc/built-in.o(.data+0x488): Section mismatch in reference from the variable mxc_driver to the function .init.text:mxc_cpufreq_init()
    The variable mxc_driver references
    the function __init mxc_cpufreq_init()
    If the reference is valid then annotate the
    variable with __init* or __refdata (see linux/init.h) or name the variable:
    *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console

    Signed-off-by: Richard Zhao
    Signed-off-by: Sascha Hauer

    Richard Zhao
     
  • According to imx pwm RM, the real period value should be
    PERIOD value in PWMPR plus 2.

    PWMO (Hz) = PCLK(Hz) / (period +2)

    Signed-off-by: Jason Chen
    Signed-off-by: Sascha Hauer
    Cc: stable@kernel.org

    Jason Chen
     
  • sched_clock() is yet another blocker on the road to the single
    image. This patch implements an idea by Russell King:

    http://www.spinics.net/lists/linux-omap/msg49561.html

    Instead of asking the platform to implement both sched_clock()
    itself and the rollover callback, simply register a read()
    function, and let the ARM code care about sched_clock() itself,
    the conversion to ns and the rollover. sched_clock() uses
    this read() function as an indirection to the platform code.
    If the platform doesn't provide a read(), the code falls back
    to the jiffy counter (just like the default sched_clock).

    This allow some simplifications and possibly some footprint gain
    when multiple platforms are compiled in. Among the drawbacks,
    the removal of the *_fixed_sched_clock optimization which could
    negatively impact some platforms (sa1100, tegra, versatile
    and omap).

    Tested on 11MPCore, OMAP4 and Tegra.

    Cc: Imre Kaloz
    Cc: Eric Miao
    Cc: Colin Cross
    Cc: Erik Gilling
    Cc: Olof Johansson
    Cc: Sascha Hauer
    Cc: Alessandro Rubini
    Cc: STEricsson
    Cc: Lennert Buytenhek
    Cc: Ben Dooks
    Tested-by: Jamie Iles
    Tested-by: Tony Lindgren
    Tested-by: Kyungmin Park
    Acked-by: Linus Walleij
    Acked-by: Nicolas Pitre
    Acked-by: Krzysztof Halasa
    Acked-by: Kukjin Kim
    Signed-off-by: Marc Zyngier
    Signed-off-by: Russell King

    Marc Zyngier
     

09 Dec, 2011

2 commits

  • CC arch/arm/plat-mxc/cpufreq.o
    arch/arm/plat-mxc/cpufreq.c:203: error: expected declaration specifiers or '...' before string constant
    arch/arm/plat-mxc/cpufreq.c:203: warning: data definition has no type or storage class
    arch/arm/plat-mxc/cpufreq.c:203: warning: type defaults to 'int' in declaration of 'MODULE_AUTHOR'
    arch/arm/plat-mxc/cpufreq.c:203: warning: function declaration isn't a prototype
    arch/arm/plat-mxc/cpufreq.c:204: error: expected declaration specifiers or '...' before string constant
    arch/arm/plat-mxc/cpufreq.c:204: warning: data definition has no type or storage class
    arch/arm/plat-mxc/cpufreq.c:204: warning: type defaults to 'int' in declaration of 'MODULE_DESCRIPTION'
    arch/arm/plat-mxc/cpufreq.c:204: warning: function declaration isn't a prototype
    arch/arm/plat-mxc/cpufreq.c:205: error: expected declaration specifiers or '...' before string constant
    arch/arm/plat-mxc/cpufreq.c:205: warning: data definition has no type or storage class
    arch/arm/plat-mxc/cpufreq.c:205: warning: type defaults to 'int' in declaration of 'MODULE_LICENSE'
    arch/arm/plat-mxc/cpufreq.c:205: warning: function declaration isn't a prototype
    make[1]: *** [arch/arm/plat-mxc/cpufreq.o] Error 1
    make: *** [arch/arm/plat-mxc] Error 2

    Signed-off-by: Richard Zhao
    Signed-off-by: Richard Zhao
    Signed-off-by: Sascha Hauer

    Richard Zhao
     
  • Signed-off-by: Jason Chen
    Signed-off-by: Sascha Hauer
    Cc: stable@kernel.org

    Jason Chen
     

06 Dec, 2011

2 commits


27 Nov, 2011

1 commit


24 Nov, 2011

1 commit


22 Nov, 2011

3 commits

  • Conflicts:
    arch/arm/mach-imx/mm-imx3.c

    Signed-off-by: Sascha Hauer

    Sascha Hauer
     
  • The arch_ioremap function on i.MX is now an indirect function pointer.
    In order to use it from any loadable module, the pointer itself
    has to be exported.

    ERROR: "imx_ioremap" [drivers/video/tmiofb.ko] undefined!
    ERROR: "imx_ioremap" [drivers/usb/host/sl811-hcd.ko] undefined!
    ERROR: "imx_ioremap" [drivers/usb/host/r8a66597-hcd.ko] undefined!
    ERROR: "imx_ioremap" [drivers/usb/host/oxu210hp-hcd.ko] undefined!
    ERROR: "imx_ioremap" [drivers/usb/gadget/r8a66597-udc.ko] undefined!

    Signed-off-by: Arnd Bergmann
    Acked-by: Shawn Guo
    Signed-off-by: Sascha Hauer

    Arnd Bergmann
     
  • …l/git/maz/arm-platforms into devel-stable

    Conflicts:
    arch/arm/mach-omap2/board-4430sdp.c
    arch/arm/mach-omap2/board-omap4panda.c
    arch/arm/mach-omap2/include/mach/omap4-common.h
    arch/arm/plat-omap/include/plat/irqs.h

    The changes to omap4-common.h were moved to arch/arm/mach-omap2/common.h
    and the other trivial conflicts resolved. The now empty ifdef in irqs.h
    was also eliminated.

    Russell King
     

21 Nov, 2011

1 commit

  • We only need to set the system up for a soft-restart if we're going to
    be doing a soft-restart. Provide a new function (soft_restart()) which
    does the setup and final call for this, and make platforms use it.
    Eliminate the call to setup_restart() from the default handler.

    This means that platforms arch_reset() function is no longer called with
    the page tables prepared for a soft-restart, and caches will still be
    enabled.

    Acked-by: Nicolas Pitre
    Acked-by: Will Deacon
    Acked-by: H Hartley Sweeten
    Acked-by: Kukjin Kim
    Acked-by: Sascha Hauer
    Acked-by: Viresh Kumar
    Acked-by: Krzysztof Ha■asa
    Acked-by: Paul Mundt
    Acked-by: Richard Purdie
    Acked-by: Wan ZongShun
    Acked-by: Eric Miao
    Signed-off-by: Russell King

    Russell King
     

17 Nov, 2011

1 commit


16 Nov, 2011

3 commits


12 Nov, 2011

1 commit


11 Nov, 2011

3 commits

  • The AUTO_ZRELADDR selection for ARCH_IMX_V4_V5 and ARCH_MX5 should
    really be mutually exclusive to ZBOOT_ROM just like what ARCH_IMX_V6_V7
    does.

    Signed-off-by: Shawn Guo
    Cc: Sascha Hauer
    Signed-off-by: Sascha Hauer

    Shawn Guo
     
  • The patch removes imx_idle hook and use pm_idle instead to get imx
    arch_idle prepared for the cleanup. It's suggested by Russel King
    as below.

    > The final removal of mach/system.h depends on getting rid of the arch_idle
    > thing. While going through these headers, I was dismayed to find these:
    >
    > arch/arm/mach-s3c2410/include/mach/system.h:void (*s3c24xx_idle)(void);
    > arch/arm/plat-mxc/include/mach/system.h:extern void (*imx_idle)(void);
    >
    > when we have a perfectly good pm_idle hook already in place - so there's
    > no excuse for these especially when other platforms are already using
    > pm_idle to hook their platform specific idle function into. This is
    > something that better be gone at the next merge window!

    Suggested-by: Russell King
    Signed-off-by: Shawn Guo
    Acked-by: Russell King
    Signed-off-by: Sascha Hauer

    Shawn Guo
     
  • Since commit (167a19d2: ARM: imx: Introduce generic function for displaying silicon revision)
    we no longer need the chip revision strings, so remove them.

    Signed-off-by: Fabio Estevam
    Signed-off-by: Sascha Hauer

    Fabio Estevam
     

04 Nov, 2011

2 commits