1. 28 5月, 2014 6 次提交
  2. 02 5月, 2014 6 次提交
    • P
      MIPS: CPC: provide locking functions · 76ae6584
      Paul Burton 提交于
      This patch provides functions to lock & unlock access to the
      "core-other" register region of the CPC. Without performing appropriate
      locking it is possible for code using this region to be preempted or to
      race with code on another VPE within the same core, with one changing
      the core which the "core-other" region is acting upon at an inopportune
      time for the other.
      Signed-off-by: NPaul Burton <paul.burton@imgtec.com>
      76ae6584
    • P
      MIPS: CPC: provide functions to retrieve register addresses · 2ba60250
      Paul Burton 提交于
      This patch introduces addr_ functions in addition to the existing read_
      & write_ functions. The new functions simply return the address of the
      appropriate CPC register rather than performing a memory access. This
      will be used in a subsequent patch.
      Signed-off-by: NPaul Burton <paul.burton@imgtec.com>
      2ba60250
    • P
      MIPS: introduce cpu_coherent_mask · 76306f42
      Paul Burton 提交于
      Add a mask of CPUs which are currently known to be operating coherently.
      This is setup initially to be all present CPUs, but in a subsequent
      patch CPUs in a MIPS Coherent Processing System will be cleared in this
      mask as they enter non-coherent idle states. This will be used in order
      to determine when a CPU within a CPS system may need to be powered back
      up, but may also be used in future to optimise away wakeups for cache
      operations or TLB invalidations.
      Signed-off-by: NPaul Burton <paul.burton@imgtec.com>
      76306f42
    • P
      MIPS: allow GIC clockevent device config from other CPUs · 414408d0
      Paul Burton 提交于
      This patch allows the GIC clockevent device for a CPU to be configured
      by another CPU. This makes GIC clockevent devices suitable for use as
      the tick broadcast device, where formerly the GIC timer local to the
      configuring CPU would have been configured incorrectly.
      Signed-off-by: NPaul Burton <paul.burton@imgtec.com>
      414408d0
    • J
      MIPS: PM: Implement PM helper macros · 74e91335
      James Hogan 提交于
      Implement assembler helper macros in asm/pm.h for platform code to use
      for saving context across low power states - for example suspend to RAM
      or powered down cpuidle states. Macros are provided for saving and
      restoring the main CPU context used by C code and doing important
      configuration which must be done very early during resume. Notably EVA
      needs segmentation control registers to be restored before the stack or
      dynamically allocated memory is accessed, so that state is saved in
      global data.
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      Signed-off-by: NPaul Burton <paul.burton@imgtec.com>
      74e91335
    • J
      MIPS: traps: Add CPU PM callback for trap configuration · ae4ce454
      James Hogan 提交于
      Implement a CPU power management callback for restoring trap related CPU
      configuration after CPU power up from a low power state. The following
      state is restored:
      
      - Status register
      - HWREna register
      - Exception vector configuration registers
      - Context/XContext register
      Signed-off-by: NJames Hogan <james.hogan@imgtec.com>
      Signed-off-by: NPaul Burton <paul.burton@imgtec.com>
      ae4ce454
  3. 01 4月, 2014 18 次提交
  4. 31 3月, 2014 1 次提交
    • M
      MIPS: Alchemy: remove duplicate UART register offset definitions · 61d3edb8
      Manuel Lauss 提交于
      The UART register names are identical to the ones in uapi/linux/serial_reg.h,
      which causes build failures in various drivers when they indirectly pull in
      the au1000.h header, for example via gpio.h:
      
      In file included from arch/mips/include/asm/mach-au1x00/gpio.h:13:0,
                       from arch/mips/include/asm/gpio.h:4,
                       from include/linux/gpio.h:48,
                       from include/linux/ssb/ssb.h:9,
                       from drivers/ssb/driver_mipscore.c:11:
      arch/mips/include/asm/mach-au1x00/au1000.h:1171:0: note: this is the location of the previous definition
       #define UART_LSR 0x1C /* Line Status Register */
      
      Get rid of the altogether, nothing in the core Alchemy code depends
      on them any more.
      Signed-off-by: NManuel Lauss <manuel.lauss@gmail.com>
      Cc: Linux-MIPS <linux-mips@linux-mips.org>
      Patchwork: https://patchwork.linux-mips.org/patch/6664/Signed-off-by: NRalf Baechle <ralf@linux-mips.org>
      61d3edb8
  5. 27 3月, 2014 9 次提交