Commit Graph

401178 Commits

Author SHA1 Message Date
hwg
acbaa08812 gmac: move drive strength control from driver to dts 2014-08-12 10:49:04 +08:00
ljf
0b68f87101 vpu: fix large resolution jpeg encode fault 2014-08-11 17:50:08 +08:00
lintao
7ca21c3082 mmc: fix no-tuning io_e to default recommand value 2014-08-11 16:47:19 +08:00
lintao
276d773ca5 mmc: dump tuning result as BOOT info 2014-08-11 15:02:52 +08:00
xxm
3503e5c805 rk: fb: fix build error 2014-08-08 15:14:56 +08:00
ljf
3aa325ec14 rk3288: get compatible name of iommu using macro defintion 2014-08-08 14:59:23 +08:00
ljf
907683be66 rk3288: modified for new iommu interface 2014-08-08 13:55:51 +08:00
xxm
7c3d77c388 camsys_drv: update with iommu interface related changed 2014-08-08 11:36:52 +08:00
xxm
383202d8d4 rk: fb: 1.new intterupt set interface
2.use macro from rockchip-iovmm.h instead of string to refer mmu compatible name
2014-08-08 11:15:46 +08:00
xxm
137fa35772 rockchip: iommu: change compatible name for iommu in rk3288.dtsi 2014-08-08 11:02:50 +08:00
xxm
768c87ccb9 rk: ion: update iovmm_map to rockchip_iovmm_map 2014-08-08 11:00:38 +08:00
xxm
f1ac264d8f rockchip: iommu:
1.move out rockchip_get_sysmmu_device_by_compatible and platform_set_sysmmu
2.change compatible name in rk3288.dtsi,like "iommu,iep_mmu" to "rockchip,iep_mmu"
3.change iovmm_map etc to rockchip_iovmm_map
2014-08-08 10:50:28 +08:00
yxj
9dbc543181 rk fb:modify iommu interface to match upstream request 2014-08-08 09:41:08 +08:00
ljf
94f2de1db2 add iommu switch in dts for iep 2014-08-07 16:38:31 +08:00
ljf
71f451f796 add iommu switch in dts for vcodec driver. disable iommu_unmap. 2014-08-07 16:35:40 +08:00
黄涛
898d52d96c fiq_debugger: rockchip: enlarge kmsg buffer size 2014-08-07 16:08:09 +08:00
黄涛
12bd547263 ARM: rockchip: fiq-debugger: add UART_USR macro 2014-08-07 15:27:48 +08:00
黄涛
fcef60e36f Merge tag 'lsk-v3.10-android-14.07' into develop-3.10
LSK v3.10 Android 14.07 release

Conflicts:
	drivers/clocksource/arm_arch_timer.c
	lib/Makefile
2014-08-06 15:34:14 +08:00
陈亮
b52e0116d3 ddr_rk32.c: reinit reserve_t when chang freq success
Signed-off-by: 陈亮 <cl@rock-chips.com>
2014-08-04 18:09:33 -07:00
lyz
dff8dc932f usb: udc: receive 1 SETUP packet in BDMA mode 2014-08-05 09:06:59 +08:00
Minchan Kim
66db73c14b zram: don't grab mutex in zram_slot_free_noity
[1] introduced down_write in zram_slot_free_notify to prevent race
between zram_slot_free_notify and zram_bvec_[read|write]. The race
could happen if somebody who has right permission to open swap device
is reading swap device while it is used by swap in parallel.

However, zram_slot_free_notify is called with holding spin_lock of
swap layer so we shouldn't avoid holing mutex. Otherwise, lockdep
warns it.

This patch adds new list to handle free slot and workqueue
so zram_slot_free_notify just registers slot index to be freed and
registers the request to workqueue. If workqueue is expired,
it holds mutex_lock so there is no problem any more.

If any I/O is issued, zram handles pending slot-free request
caused by zram_slot_free_notify right before handling issued
request because workqueue wouldn't be expired yet so zram I/O
request handling function can miss it.

Lastly, when zram is reset, flush_work could handle all of pending
free request so we shouldn't have memory leak.

NOTE: If zram_slot_free_notify's kmalloc with GFP_ATOMIC would be
failed, the slot will be freed when next write I/O write the slot.

[1] [57ab0485, zram: use zram->lock to protect zram_free_page()
    in swap free notify path]

* from v2
  * refactoring

* from v1
  * totally redesign

Cc: Nitin Gupta <ngupta@vflare.org>
Cc: Jiang Liu <jiang.liu@huawei.com>
Cc: stable@vger.kernel.org
Signed-off-by: Minchan Kim <minchan@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit a0c516cbfc)

Conflicts:
	drivers/staging/zram/zram_drv.c
2014-08-04 16:34:53 +08:00
luowei
9d90fdd84e spi:fix the bug while read one byte 2014-08-04 13:47:27 +08:00
郭毅
671282cef0 inv_mpu: only setup timer once. 2014-08-04 09:06:22 +08:00
zyc
f1634b7e9e camsys_drv : v0.0x12.0 ,camsys_head : v0.0x8.0 2014-07-31 18:01:30 +08:00
CMY
8b08536e09 Revert "rk: cma: attempt to allocate same range memory while cma allocation failure"
This reverts commit 17beed5e65.
2014-07-31 17:54:27 +08:00
xxm
7f0ffc5dbc rockchip:iommu:fix build error when iommu disabled 2014-07-31 16:16:47 +08:00
郭毅
b3b1d3fa61 rk3288: Adjust the temp-limit to 100 degrees Celsius 2014-07-31 15:49:24 +08:00
xxm
6da6bf7d78 rockchip:iommu:define function use inline instead of #define when iommu disabled 2014-07-31 11:32:35 +08:00
xxm
3bc178e8bc rockchip:iommu:fix build error when iommu disabled 2014-07-30 17:28:33 +08:00
xxm
6a805bcf2b rockchip:midgard:1,update gpu version to r4p1-00rel0 2,add input handler when runtime on/off 3,version to 0x09 2014-07-29 14:19:17 +08:00
wlf
0a9753f2db USB: Fix usb debug log 2014-07-29 10:32:44 +08:00
zyc
a6a2a7c6a9 camsys_drv : v0.0x11.0 2014-07-29 09:38:12 +08:00
陈亮
1304b6022d rockchip: kernel add efuse support
Signed-off-by: 陈亮 <cl@rock-chips.com>
2014-07-28 04:51:31 -07:00
CMY
d38e801e1d rk: ion: iommu: fix build error 2014-07-28 16:26:04 +08:00
Mark Brown
1df5f2728e Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-07-25 12:59:39 +01:00
Mark Brown
4a9948e492 Merge remote-tracking branch 'lsk/v3.10/topic/arm64-misc' into linux-linaro-lsk 2014-07-25 12:59:32 +01:00
Steve Capper
a95eca36ff arm64: mm: Make icache synchronisation logic huge page aware
The __sync_icache_dcache routine will only flush the dcache for the
first page of a compound page, potentially leading to stale icache
data residing further on in a hugetlb page.

This patch addresses this issue by taking into consideration the
order of the page when flushing the dcache.

Reported-by: Mark Brown <broonie@linaro.org>
Tested-by: Mark Brown <broonie@linaro.org>
Signed-off-by: Steve Capper <steve.capper@linaro.org>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: <stable@vger.kernel.org> # v3.11+
(cherry picked from commit 923b8f5044)
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-25 12:59:06 +01:00
Mark Brown
0858f0fb26 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-07-25 12:52:58 +01:00
Mark Brown
108212d338 Merge remote-tracking branch 'lsk/v3.10/topic/arm64-misc' into linux-linaro-lsk
Conflicts:
	arch/arm64/mm/tlb.S
2014-07-25 12:50:12 +01:00
Catalin Marinas
6dca4f12e8 arm64: Fix barriers used for page table modifications
The architecture specification states that both DSB and ISB are required
between page table modifications and subsequent memory accesses using the
corresponding virtual address. When TLB invalidation takes place, the
tlb_flush_* functions already have the necessary barriers. However, there are
other functions like create_mapping() for which this is not the case.

The patch adds the DSB+ISB instructions in the set_pte() function for
valid kernel mappings. The invalid pte case is handled by tlb_flush_*
and the user mappings in general have a corresponding update_mmu_cache()
call containing a DSB. Even when update_mmu_cache() isn't called, the
kernel can still cope with an unlikely spurious page fault by
re-executing the instruction.

In addition, the set_pmd, set_pud() functions gain an ISB for
architecture compliance when block mappings are created.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Reported-by: Leif Lindholm <leif.lindholm@linaro.org>
Acked-by: Steve Capper <steve.capper@linaro.org>
Cc: Will Deacon <will.deacon@arm.com>
(cherry picked from commit 54d6ba0ede61f12b2a03d74bdbf004719a9cfefc)
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-25 12:47:54 +01:00
Steve Capper
47672573e0 arm64: mm: Optimise tlb flush logic where we have >4K granule
The tlb maintainence functions: __cpu_flush_user_tlb_range and
__cpu_flush_kern_tlb_range do not take into consideration the page
granule when looping through the address range, and repeatedly flush
tlb entries for the same page when operating with 64K pages.

This patch re-works the logic s.t. we instead advance the loop by
 1 << (PAGE_SHIFT - 12), so avoid repeating ourselves.

Also the routines have been converted from assembler to static inline
functions to aid with legibility and potential compiler optimisations.

The isb() has been removed from flush_tlb_kernel_range(.) as it is
only needed when changing the execute permission of a mapping. If one
needs to set an area of the kernel as execute/non-execute an isb()
must be inserted after the call to flush_tlb_kernel_range.

Cc: Laura Abbott <lauraa@codeaurora.org>
Signed-off-by: Steve Capper <steve.capper@linaro.org>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
(cherry picked from commit fa48e6f780)
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-25 12:47:01 +01:00
Matthew Leach
e69503831c arm64: use correct register width when retrieving ASID
The ASID is represented as an unsigned int in mm_context_t and we
currently use the mmid assembler macro to access this element of the
struct. This should be accessed with a register of 32-bit width. If
the incorrect register width is used the ASID will be returned in
bits[32:63] of the register when running under big-endian.

Fix a use of the mmid macro in tlb.S to use a 32-bit access.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Matthew Leach <matthew.leach@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
(cherry picked from commit fc18047c73)
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-25 12:46:53 +01:00
dkl
550553622a rockchip: rockchip_defconfig select rk818 2014-07-25 17:51:54 +08:00
dkl
e41271d341 pmic: rk818: modify shutdown function and fix compile errors
1. Modify the rk818 shutdown function refering to rk808.
2. Fix some compile errors.
2014-07-25 16:23:54 +08:00
Mark Brown
be5e8e20e9 Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android 2014-07-24 23:07:25 +01:00
Mark Brown
c69294e957 Merge remote-tracking branch 'lsk/v3.10/topic/arm64-efi' into linux-linaro-lsk
Conflicts:
	arch/arm64/kernel/Makefile
	arch/arm64/kernel/head.S
2014-07-24 23:03:21 +01:00
Mark Brown
c98536343e Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android
Conflicts:
	drivers/of/fdt.c
2014-07-24 23:01:03 +01:00
Leif Lindholm
2edcb9f57b arm64: efi: only attempt efi map setup if booting via EFI
Booting a kernel with CONFIG_EFI enabled on a non-EFI system caused
an oops with the current UEFI support code.
Add the required test to prevent this.

Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
(cherry picked from commit 74bcc24992)
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-24 22:58:43 +01:00
Mark Salter
9d805241d7 arm64: add EFI runtime services
This patch adds EFI runtime support for arm64. This runtime support allows
the kernel to access various EFI runtime services provided by EFI firmware.
Things like reboot, real time clock, EFI boot variables, and others.

This functionality is supported for little endian kernels only. The UEFI
firmware standard specifies that the firmware be little endian. A future
patch is expected to add support for big endian kernels running with
little endian firmware.

Signed-off-by: Mark Salter <msalter@redhat.com>
[ Remove unnecessary cache/tlb maintenance. ]
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Leif Lindholm <leif.lindholm@linaro.org>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>

(cherry picked from commit f84d02755f)
Signed-off-by: Mark Brown <broonie@linaro.org>

Conflicts:
	arch/arm64/Kconfig
	arch/arm64/kernel/Makefile
2014-07-24 22:58:43 +01:00
Catalin Marinas
e955cb1692 efi: fdt: Do not report an error during boot if UEFI is not available
Currently, fdt_find_uefi_params() reports an error if no EFI parameters
are found in the DT. This is however a valid case for non-UEFI kernel
booting. This patch checks changes the error reporting to a
pr_info("UEFI not found") when no EFI parameters are found in the DT.

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Leif Lindholm <leif.lindholm@linaro.org>
Tested-by: Leif Lindholm <leif.lindholm@linaro.org>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
(cherry picked from commit 29e2435fd6)
Signed-off-by: Mark Brown <broonie@linaro.org>
2014-07-24 22:58:43 +01:00