24 Jun, 2011

3 commits

  • We don't need a veneer for cpu_suspend, it can be called directly from
    C code now. Move it into the PXA CPU suspend functions, along with
    the accumulator register saving/restoring.

    Signed-off-by: Russell King

    Russell King
     
  • cpu_suspend() has a weird calling method which makes it only possible to
    call from assembly code: it returns with a modified stack pointer to
    finish the suspend, but on resume, it 'returns' via a provided pointer.

    We can make cpu_suspend() appear to be a normal function merely by
    swapping the resume pointer argument and the link register.

    Do so, and update all callers to take account of this more traditional
    behaviour.

    Acked-by: Frank Hofmann
    Tested-by: Kevin Hilman
    Acked-by: Jean Pihet
    Signed-off-by: Russell King

    Russell King
     
  • In the previous commit, we introduced an official way to supply an
    argument to the suspend function. Convert the sa1100 suspend code
    to use this method.

    Signed-off-by: Russell King

    Russell King
     

23 Feb, 2011

1 commit


07 Jan, 2011

1 commit


03 Jan, 2011

1 commit

  • Before this patch, the following error would sometimes occur after a
    resume on pxa3xx:

    /path/to/mm/memory.c:144: bad pmd 8040542e.

    The problem was that a temporary page table mapping was being improperly
    restored.

    The PXA3xx resume code creates a temporary mapping of resume_turn_on_mmu
    to avoid a prefetch abort. The pxa3xx_resume_after_mmu code requires
    that the r1 register holding the address of this mapping not be
    modified, however, resume_turn_on_mmu does modify it. It is mostly
    correct in that r1 receives the base table address, but it may also
    get other bits in 13:0. This results in pxa3xx_resume_after_mmu
    restoring the original mapping to the wrong place, corrupting memory
    and leaving the temporary mapping in place.

    Signed-off-by: Matt Reimer
    Signed-off-by: Eric Miao

    Aric D. Blumer
     

16 Dec, 2010

1 commit

  • This is important because on PXA3xx, the physical mapping of SMEMC registers
    differs from the one on PXA2xx. In order to get PCMCIA working on both PXA2xx
    and PXA320, the PCMCIA driver was adjusted accordingly as well.

    Also, various places in the kernel had to be patched to use
    __raw_read/__raw_write.

    Signed-off-by: Marek Vasut
    Acked-by: Haojian Zhuang
    Signed-off-by: Eric Miao

    Marek Vasut
     

05 Aug, 2010

1 commit


09 Mar, 2009

1 commit

  • The remaining registers are separated into:

    -
    -
    -

    and then we can remove pxa-regs.h completely. Instead of #include this
    file, let's:

    1. include the specific with care (if that's absolutely
    necessary)

    2. define the registers in the driver, make cleanly defined API to expose
    the register access to external with sufficient reason

    Signed-off-by: Eric Miao

    Eric Miao
     

07 Aug, 2008

2 commits


04 Feb, 2008

1 commit


26 Jan, 2008

2 commits


20 Jan, 2008

1 commit


21 Jul, 2007

1 commit

  • 1. split pxa_cpu_suspend to pxa25x_cpu_suspend and pxa27x_cpu_suspend
    and make pxa25x_cpu_pm_enter() and pxa27x_cpu_pm_enter() to invoke
    the corresponding _suspend functions, thus remove all those ugly
    #ifdef .. #endif out of sleep.S

    2. move the declarations of those suspend functions to pm.h

    note: this is not a clean enough solution until all the pxa25x and
    pxa27x specific part is further removed out of sleep.S, sleep.S is
    supposed to contain generic code only

    Signed-off-by: eric miao
    Signed-off-by: Russell King

    Eric Miao
     

01 Jul, 2006

1 commit


25 Jun, 2006

1 commit


28 Oct, 2005

1 commit

  • Patch from Todd Poynor

    Add symbols for PXA2xx PWRMODE register M field that selects low-power
    mode, replace unadorned constants. Honor power mode parameter of
    pxa_cpu_suspend(mode), no longer force to 3 (sleep). Full Deep Sleep
    low-power mode support for PXA27x is pending generic PM interfaces to
    select more than 2 suspend-to-RAM-style power modes, but this is
    expected soon. This can be hardcoded in the meantime by replacing the
    pxa_cpu_suspend() parameter value. From David Burrage and Todd Poynor.
    Try #2 removes one of the register copies and moves the code to save the
    pxa_cpu_suspend parameter to immediately surround the call that requires
    the parameter value be preserved.

    Signed-off-by: Todd Poynor
    Signed-off-by: Nicolas Pitre
    Signed-off-by: Russell King

    Todd Poynor
     

26 Apr, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds