16 Nov, 2012

1 commit

  • …scm/linux/kernel/git/tmlind/linux-omap into next/cleanup

    From Tony Lindgren <tony@atomide.com>:

    More PRCM cleanups via Paul Walmsley <paul@pwsan.com>:

    Second set of OMAP PRCM cleanups for 3.8.

    These patches remove the use of omap_prcm_get_reset_sources() from the
    OMAP watchdog driver, and remove mach-omap2/prcm.c and
    plat-omap/include/plat/prcm.h.

    Basic test logs for this branch on top of Tony's cleanup-prcm branch
    at commit 7fc54fd3084457c7f11b9e2e1e3fcd19a3badc33 are here:

    http://www.pwsan.com/omap/testlogs/prcm_cleanup_b_3.8/20121108151646/

    However, cleanup-prcm at 7fc54fd3 does not include some fixes
    that are needed for a successful test. With several reverts,
    fixes, and workarounds applied, the following test logs were
    obtained:

    http://www.pwsan.com/omap/testlogs/TEST_prcm_cleanup_b_3.8/20121108151930/

    which indicate that the series tests cleanly.

    This second pull request updates one of the patches which broke
    with rmk's allnoconfigs, and also updates the tag description to
    indicate that 7fc54fd3 is building cleanly here.

    * tag 'omap-for-v3.8/cleanup-prcm-part2-signed' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: (27 commits)
    ARM: OMAP2: Fix compillation error in cm_common
    ARM: OMAP2+: PRCM: remove obsolete prcm.[ch]
    ARM: OMAP2+: hwmod: call to _omap4_disable_module() should use the SoC-specific call
    ARM: OMAP2+: PRCM: consolidate PRCM-related timeout macros
    ARM: OMAP2+: PRCM: split and relocate the PRM/CM globals setup
    ARM: OMAP2+: PRCM: remove omap2_cm_wait_idlest()
    ARM: OMAP2+: CM/clock: convert _omap2_module_wait_ready() to use SoC-independent CM functions
    ARM: OMAP2xxx: APLL/CM: convert to use omap2_cm_wait_module_ready()
    ARM: OMAP2+: board files: use SoC-specific system restart functions
    ARM: OMAP2+: PRCM: create SoC-specific chip restart functions
    ARM: OMAP2xxx: clock: move virt_prcm_set code into clkt2xxx_virt_prcm_set.c
    ARM: OMAP2xxx: clock: remove global 'dclk' variable
    ARM: OMAP2/3: PRM: add SoC reset functions (using the CORE DPLL method)
    ARM: OMAP2+: common: remove mach-omap2/common.c globals and map_common_io code
    ARM: OMAP2+: PRCM: remove omap_prcm_get_reset_sources()
    watchdog: OMAP: use standard GETBOOTSTATUS interface; use platform_data fn ptr
    ARM: OMAP2+: WDT: move init; add read_reset_sources pdata function pointer
    ARM: OMAP1: CGRM: fix omap1_get_reset_sources() return type
    ARM: OMAP2+: PRM: create PRM reset source API for the watchdog timer driver
    ARM: OMAP1: create read_reset_sources() function (for initial use by watchdog)
    ...

    Conflicts:
    arch/arm/mach-omap2/cm33xx.c
    arch/arm/mach-omap2/io.c
    arch/arm/mach-omap2/prm_common.c

    Signed-off-by: Arnd Bergmann <arnd@arndb.de>

    Arnd Bergmann
     

09 Nov, 2012

1 commit


01 Nov, 2012

1 commit

  • Most of the defines are specific to omap1 and omap2+,
    and should be in the local headers. Only minimal function
    prototypes need to be shared.

    As discussed on linux-arm-kernel, we want to avoid
    relative includes for the arch/arm/*omap* shared code:

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

    So this patch re-adds a minimal plat/sram.h.

    The new plat/sram.h must not be included from drivers,
    that will break build for omap2+ CONFIG_MULTIPLATFORM.

    Note that this patch temporarily adds two more
    relative includes; Those will be removed in the
    following patch.

    Signed-off-by: Tony Lindgren

    Tony Lindgren
     

19 Oct, 2012

1 commit

  • Remove arch/arm/plat-omap/include/plat/clock.h by merging it into
    arch/arm/mach-omap1/clock.h and arch/arm/mach-omap2/clock.h.
    The goal here is to facilitate ARM single image kernels by removing
    includes via the "plat/" symlink.

    Signed-off-by: Paul Walmsley
    [tony@atomide.com: fixed to remove duplicate clock.h includes]
    Signed-off-by: Tony Lindgren

    Paul Walmsley
     

18 Oct, 2012

2 commits


17 Oct, 2012

1 commit


18 Nov, 2011

1 commit

  • As suggested by Russell King - ARM Linux ,
    there's no need to keep local prototypes in non-local headers.

    Add mach-omap1/common.h and mach-omap2/common.h and move the
    local prototypes there from plat/common.h and mach/omap4-common.h.

    Signed-off-by: Tony Lindgren
    Signed-off-by: Russell King

    Tony Lindgren
     

20 Oct, 2011

1 commit


22 Dec, 2010

1 commit

  • 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 Feb, 2010

1 commit

  • This is a clean-up patch towards dynamic allocation of IO space
    instead of using harcoded macros to calculate virtual addresses.

    Also update the sdrc, prcm and control module to allocate
    iospace dynamically

    Signed-off-by: Santosh Shilimkar
    Reviewed-by: Kevin Hilman
    Reviewed-by: Paul Walmsley
    Signed-off-by: Tony Lindgren

    Santosh Shilimkar
     

09 Dec, 2009

1 commit


12 Nov, 2009

1 commit


21 Oct, 2009

1 commit

  • Move the remaining headers under plat-omap/include/mach
    to plat-omap/include/plat. Also search and replace the
    files using these headers to include using the right path.

    This was done with:

    #!/bin/bash
    mach_dir_old="arch/arm/plat-omap/include/mach"
    plat_dir_new="arch/arm/plat-omap/include/plat"
    headers=$(cd $mach_dir_old && ls *.h)
    omap_dirs="arch/arm/*omap*/ \
    drivers/video/omap \
    sound/soc/omap"
    other_files="drivers/leds/leds-ams-delta.c \
    drivers/mfd/menelaus.c \
    drivers/mfd/twl4030-core.c \
    drivers/mtd/nand/ams-delta.c"

    for header in $headers; do
    old="#include

    Tony Lindgren
     

25 Jul, 2009

2 commits

  • Stop setting SDRC_POWER.PWDENA on boot. There is a nasty erratum
    (34xx erratum 1.150) that can cause memory corruption if PWDENA is
    enabled.

    Based originally on a patch from Samu P. Onkalo .

    Tested on BeagleBoard rev C2.

    Signed-off-by: Paul Walmsley
    Cc: Samu P. Onkalo

    Paul Walmsley
     
  • Some OMAP3 boards (Beagle Cx, Overo, RX51, Pandora) have 2
    SDRAM parts connected to the SDRC.

    This patch adds the following:
    - add a new argument of type omap_sdrc_params struct*
    to omap2_init_common_hw and omap2_sdrc_init for the 2nd CS params
    - adapted the OMAP boards files to the new prototype of
    omap2_init_common_hw
    - add the SDRC 2nd CS registers offsets defines
    - adapt the sram sleep code to configure the SDRC for the 2nd CS

    Note: If the 2nd param to omap2_init_common_hw is NULL, then the
    parameters are not programmed into the SDRC CS1 registers

    Tested on 3430 SDP and Beagleboard rev C2 and B5, with
    suspend/resume and frequency changes (cpufreq).

    Signed-off-by: Jean Pihet
    Signed-off-by: Paul Walmsley

    Jean Pihet
     

29 May, 2009

1 commit

  • This patch is to sync the core linux-omap PM code with mainline. This
    code has evolved and been used for a while the linux-omap tree, but
    the attempt here is to finally get this into mainline.

    Following this will be a series of patches from the 'PM branch' of the
    linux-omap tree to add full PM hardware support from the linux-omap
    tree.

    Much of this PM core code was written by Jouni Hogander with
    significant contributions from Paul Walmsley as well as many others
    from Nokia, Texas Instruments and linux-omap community.

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

    Kevin Hilman
     

13 May, 2009

1 commit


09 Feb, 2009

2 commits

  • For a given SDRAM clock rate, SDRAM chips require memory controllers
    to use a specific set of timing minimums and maximums to transfer data
    reliably. These parameters can be different for different memory chips
    and can also potentially vary by board.

    This patch adds the infrastructure for board-*.c files to pass this
    timing data to the SDRAM controller init function. The timing data is
    specified in an 'omap_sdrc_params' structure, in terms of SDRC
    controller register values. An array of these structs, one per SDRC
    target clock rate, is passed by the board-*.c file to
    omap2_init_common_hw().

    This patch does not define the values for different memory chips, nor
    does it use the values for anything; those will come in subsequent patches.

    linux-omap source commit is bc84ecfc795c2d1c5cda8da4127cf972f488a696.

    Signed-off-by: Paul Walmsley
    Signed-off-by: Tony Lindgren
    Signed-off-by: Russell King

    Paul Walmsley
     
  • Separate SDRC code common to OMAP2/3 from mach-omap2/sdrc2xxx.c to
    mach-omap2/sdrc.c. Rename the OMAP2xxx-specific functions to use an
    'omap2xxx' prefix rather than an 'omap2' prefix, and use "sdrc" in the
    function names rather than "memory." Mark several functions
    as static that should not be used outside the sdrc2xxx.c file.

    linux-omap source commit is bf1612b9d8d29379558500cd5de9ae0367c41fc4.

    Signed-off-by: Paul Walmsley
    Signed-off-by: Tony Lindgren
    Signed-off-by: Russell King

    Paul Walmsley