1. 22 5月, 2014 5 次提交
  2. 16 5月, 2014 1 次提交
  3. 11 5月, 2014 1 次提交
  4. 05 5月, 2014 1 次提交
  5. 02 5月, 2014 1 次提交
  6. 29 4月, 2014 2 次提交
    • T
      ARM: common: edma: Fix xbar mapping · cf7eb979
      Thomas Gleixner 提交于
      This is another great example of trainwreck engineering:
      
      commit 2646a0e529 (ARM: edma: Add EDMA crossbar event mux support)
      added support for using EDMA on peripherals which have no direct EDMA
      event mapping.
      
      The code compiles and does not explode in your face, but that's it.
      
      1) Reading an u16 array from an u32 device tree array simply does not
         work. Even if the function is named "edma_of_read_u32_to_s16_array".
      
         It merily calls of_property_read_u16_array. So the resulting 16bit
         array will have every other entry = 0.
      
      2) The DT entry for the xbar registers related to xbar has length 0x10
         instead of the real length: 0xfd0 - 0xf90 = 0x40.
      
         Not a real problem as it does not cross a page boundary, but
         wrong nevertheless.
      
      3) But none of this matters as the mapping never happens:
      
         After reading nonsense edma_of_read_u32_to_s16_array() invalidates
         the first array entry pair, so nobody can ever notice the
         braindamage by immediate explosion.
      
      Seems the QA criteria for this code was solely not to explode when
      someone adds edma-xbar-event-map entries to the DT. Goal achieved,
      congratulations!
      
      Not really helpful if someone wants to use edma on a device which
      requires a xbar mapping.
      
      Fix the issues by:
      
      - annotating the device tree entry with "/bits/ 16" as documented in
        the of_property_read_u16_array kernel doc
      
      - make the size of the xbar register mapping correct
      
      - invalidating the end of the array and not the start
      
      This convoluted mess wants to be completely rewritten as there is no
      point to keep the xbar_chan array memory and the iomapping of the xbar
      regs around forever. Marking the xbar mapped channels as used should
      be done right there.
      
      But that's a different issue and this patch is small enough to make it
      work and allows a simple backport for stable.
      
      Cc: stable@vger.kernel.org # v3.12+
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NSekhar Nori <nsekhar@ti.com>
      cf7eb979
    • M
      ARM: sun7i: Fix i2c4 base address · a3867045
      Maxime Ripard 提交于
      For some reason, the base address of the fifth I2C adapter in the A20 was
      incorrect. Change this to the actual base address.
      Reported-by: NMarcus Cooper <codekipper@gmail.com>
      Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com>
      Acked-by: NHans de Goede <hdegoede@redhat.com>
      a3867045
  7. 28 4月, 2014 2 次提交
    • M
      arm: KVM: fix possible misalignment of PGDs and bounce page · 5d4e08c4
      Mark Salter 提交于
      The kvm/mmu code shared by arm and arm64 uses kalloc() to allocate
      a bounce page (if hypervisor init code crosses page boundary) and
      hypervisor PGDs. The problem is that kalloc() does not guarantee
      the proper alignment. In the case of the bounce page, the page sized
      buffer allocated may also cross a page boundary negating the purpose
      and leading to a hang during kvm initialization. Likewise the PGDs
      allocated may not meet the minimum alignment requirements of the
      underlying MMU. This patch uses __get_free_page() to guarantee the
      worst case alignment needs of the bounce page and PGDs on both arm
      and arm64.
      
      Cc: <stable@vger.kernel.org> # 3.10+
      Signed-off-by: NMark Salter <msalter@redhat.com>
      Acked-by: NMarc Zyngier <marc.zyngier@arm.com>
      Signed-off-by: NChristoffer Dall <christoffer.dall@linaro.org>
      5d4e08c4
    • J
      arm/xen: Remove definiition of virt_to_pfn in asm/xen/page.h · 063aa8e6
      Julien Grall 提交于
      virt_to_pfn has been defined in asm/memory.h by the commit e26a9e00 "ARM: Better
      virt_to_page() handling"
      
      This will result of a compilation warning when CONFIG_XEN is enabled.
      
      arch/arm/include/asm/xen/page.h:80:0: warning: "virt_to_pfn" redefined [enabled by default]
       #define virt_to_pfn(v)          (PFN_DOWN(__pa(v)))
       ^
      In file included from arch/arm/include/asm/page.h:163:0,
                       from arch/arm/include/asm/xen/page.h:4,
                       from include/xen/page.h:4,
                       from arch/arm/xen/grant-table.c:33:
      
      The definition in memory.h is nearly the same (it directly expand PFN_DOWN),
      so we can safely drop virt_to_pfn in xen include.
      Signed-off-by: NJulien Grall <julien.grall@linaro.org>
      Signed-off-by: NDavid Vrabel <david.vrabel@citrix.com>
      063aa8e6
  8. 26 4月, 2014 16 次提交
  9. 25 4月, 2014 6 次提交
  10. 24 4月, 2014 5 次提交