firefly-linux-kernel-4.4.55.git
9 years agommc: sdhci-of-arasan: Use signed formatting in error messages
Mike Looijmans [Thu, 23 Oct 2014 11:31:00 +0000 (13:31 +0200)]
mmc: sdhci-of-arasan: Use signed formatting in error messages

"ret" is a signed int, so use "%d" in format strings instead of "%u".
This prevents cryptic codes in error messages like this:
sdhci-arasan e0101000.sdhci: platform register failed (4294966779)

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Reviewed-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
9 years agommc: sdhci-of-arasan: Call OF parsing for MMC
Michal Simek [Tue, 7 Apr 2015 05:57:32 +0000 (07:57 +0200)]
mmc: sdhci-of-arasan: Call OF parsing for MMC

Also check MMC OF properties. The controller supports MMC too.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
9 years agommc: arasan: Add driver for Arasan SDHCI
Soren Brinkmann [Mon, 2 Dec 2013 18:02:36 +0000 (10:02 -0800)]
mmc: arasan: Add driver for Arasan SDHCI

Add a driver for Arasan's SDHCI controller core.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
Acked-by: Rob Herring <rob.herring@calxeda.com> [binding]
Acked-by: Michal Simek <monstr@monstr.eu>
Signed-off-by: Chris Ball <chris@printf.net>
Conflicts:
MAINTAINERS

9 years agoMIPI: Provide a function,get screen type,for frequency conversion.
xubilv [Thu, 30 Apr 2015 06:48:03 +0000 (14:48 +0800)]
MIPI: Provide a function,get screen type,for frequency conversion.

Signed-off-by: xubilv <xbl@rock-chips.com>
9 years agocpufreq: rockchip_big_little: update current policy cpu before cpufreq_cpu_get
Xiao Feng [Thu, 30 Apr 2015 03:39:52 +0000 (11:39 +0800)]
cpufreq: rockchip_big_little: update current policy cpu before cpufreq_cpu_get

Signed-off-by: Xiao Feng <xf@rock-chips.com>
9 years agoRK3368 GPU version: Rogue L 0.15
zxl [Thu, 30 Apr 2015 02:32:32 +0000 (10:32 +0800)]
RK3368 GPU version: Rogue L 0.15
1. Fix lock bug in hrtimer.
2. Add USE_KTHREAD to simulate timer.Now open USE_HRTIMER instead of USE_KTHREAD by default.

Signed-off-by: zxl <zhuangxl@rock-chips.com>
9 years agork fb: kfree envp[1], if we not do real switch screen
hjc [Wed, 29 Apr 2015 06:39:18 +0000 (14:39 +0800)]
rk fb: kfree envp[1], if we not do real switch screen

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork fb: fix iommu page fault when in video test
hjc [Wed, 29 Apr 2015 05:54:42 +0000 (13:54 +0800)]
rk fb: fix iommu page fault when in video test

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork3368 lcdc: update win state
hjc [Wed, 29 Apr 2015 05:53:58 +0000 (13:53 +0800)]
rk3368 lcdc: update win state

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agocpufreq: rockchip_big_little: check cpufreq_cpu_get return value
Huang, Tao [Wed, 29 Apr 2015 01:05:09 +0000 (09:05 +0800)]
cpufreq: rockchip_big_little: check cpufreq_cpu_get return value

fix panic when cpu up/down

Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
9 years agoHDMI: rk3368: add function for HDCP2.2.
Zheng Yang [Tue, 28 Apr 2015 11:17:27 +0000 (19:17 +0800)]
HDMI: rk3368: add function for HDCP2.2.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agorockchip: video: fix logo display when switch screen
Mark Yao [Tue, 28 Apr 2015 06:52:23 +0000 (14:52 +0800)]
rockchip: video: fix logo display when switch screen

Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
9 years agoRevert "video: rockchip: logo: copy loader to framebuffer"
Mark Yao [Tue, 28 Apr 2015 03:18:43 +0000 (11:18 +0800)]
Revert "video: rockchip: logo: copy loader to framebuffer"

This reverts commit a9085919caeb58941c216e63a2bdef458d549f4d.

9 years agoRevert "video: dts: add disp fullscreen for box logo"
Mark Yao [Tue, 28 Apr 2015 03:18:39 +0000 (11:18 +0800)]
Revert "video: dts: add disp fullscreen for box logo"

This reverts commit b8667979fa6e142bae9d1731039a250525b7a05a.

9 years agork3368: add the hdmi nlpcm and hbr mode for direct output
smj [Sat, 25 Apr 2015 02:11:44 +0000 (10:11 +0800)]
rk3368: add the hdmi nlpcm and hbr mode for direct output

Signed-off-by: smj <smj@rock-chips.com>
9 years agodts: delete node rockchips,hdmi_audio_source.
Zheng Yang [Mon, 27 Apr 2015 09:01:48 +0000 (17:01 +0800)]
dts: delete node rockchips,hdmi_audio_source.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agovideo: rockchip: update display buffer dump
Mark Yao [Wed, 1 Apr 2015 01:54:02 +0000 (09:54 +0800)]
video: rockchip: update display buffer dump

Create a new sys node "/sys/class/graphics/fb0/dump_buf" to dump
display buffer.

Now can support trace multi frames and kernel logo dump.
More info see by "cat /sys/class/graphics/fb0/dump_buf"

Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Conflicts:
include/linux/rk_fb.h

9 years agodelete unused file drivers/video/rockchip/rk_fb.c.rej
hjc [Sun, 26 Apr 2015 08:45:14 +0000 (16:45 +0800)]
delete unused file drivers/video/rockchip/rk_fb.c.rej

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agosofia3gr: ion: fix this issue, the reason is ion_import_dma_buf may be invoked concur...
Sugar Zhang [Tue, 31 Mar 2015 07:19:59 +0000 (15:19 +0800)]
sofia3gr: ion: fix this issue, the reason is ion_import_dma_buf may be invoked concurrently.

<4>[ 3123.242655] WARNING: CPU: 2 PID: 2648 at drivers/staging/android/ion/ion.c:512 ion_handle_add+0xb4/0xc0()
<7>[ 3123.252189] ion_handle_add: buffer already found.
<7>[ 3123.256694] Modules linked in: iwlmvm iwlwifi mac80211 cfg80211 compat
<7>[ 3123.263195] CPU: 2 PID: 2648 Comm: TimedEventQueue Tainted: G        W    3.14.0 #7
<7>[ 3123.270868]  00000000 00000000 9a3efd2c 80faf273 9a3efd6c 9a3efd5c 80935dc9 811d7fd3
<7>[ 3123.278405]  9a3efd88 00000a58 812208a0 00000200 80e128d4 80e128d4 8d4ae00c a8cd8600
<7>[ 3123.286065]  a8cd8094 9a3efd74 80935e0e 00000009 9a3efd6c 811d7fd3 9a3efd88 9a3efd9c
<7>[ 3123.293867] Call Trace:
<7>[ 3123.296159]  [<80faf273>] dump_stack+0x48/0x69
<7>[ 3123.300537]  [<80935dc9>] warn_slowpath_common+0x79/0x90
<7>[ 3123.305913]  [<80e128d4>] ? ion_handle_add+0xb4/0xc0
<7>[ 3123.310694]  [<80e128d4>] ? ion_handle_add+0xb4/0xc0
<7>[ 3123.315703]  [<80935e0e>] warn_slowpath_fmt+0x2e/0x30
<7>[ 3123.320586]  [<80e128d4>] ion_handle_add+0xb4/0xc0
<7>[ 3123.325450]  [<80e144cc>] ion_import_dma_buf+0x8c/0x110
<7>[ 3123.330490]  [<80c517c4>] reg_init+0x364/0x7d0
<7>[ 3123.334975]  [<80993363>] ? futex_wait+0x123/0x210
<7>[ 3123.339607]  [<80992e0e>] ? get_futex_key+0x16e/0x1e0
<7>[ 3123.344692]  [<8099308f>] ? futex_wake+0x5f/0x120
<7>[ 3123.349245]  [<80c51e19>] vpu_service_ioctl+0x1e9/0x500
<7>[ 3123.354508]  [<80994aec>] ? do_futex+0xec/0x8e0
<7>[ 3123.358885]  [<80971080>] ? prepare_to_wait_event+0xc0/0xc0
<7>[ 3123.364503]  [<80c51c30>] ? reg_init+0x7d0/0x7d0
<7>[ 3123.368955]  [<80a22562>] do_vfs_ioctl+0x2d2/0x4c0
<7>[ 3123.373816]  [<80b198ad>] ? inode_has_perm.isra.41+0x2d/0x40
<7>[ 3123.379278]  [<80b199cf>] ? file_has_perm+0x7f/0x90
<7>[ 3123.384217]  [<80b1a5f7>] ? selinux_file_ioctl+0x47/0xf0
<7>[ 3123.389351]  [<80a227a8>] SyS_ioctl+0x58/0x80
<7>[ 3123.393754]  [<80fb45e8>] syscall_call+0x7/0x7
<7>[ 3123.398043]  [<80fb0000>] ? mmc_do_calc_max_discard+0xab/0xe4
<4>[ 3123.404220] ---[ end trace bd195cf65df321ce ]---

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Signed-off-by: CMY <cmy@rock-chips.com>
9 years agoTP: gt9xx: support early suspend&resume
guoyi [Thu, 23 Apr 2015 09:20:10 +0000 (17:20 +0800)]
TP: gt9xx: support early suspend&resume

9 years agodts: rk3368 box r88 add power led
huang zhibao [Thu, 23 Apr 2015 02:45:37 +0000 (10:45 +0800)]
dts: rk3368 box r88 add power led

9 years agork3368: i2c: add i2c sleep pinctrl
David Wu [Tue, 21 Apr 2015 18:21:04 +0000 (02:21 +0800)]
rk3368: i2c: add i2c sleep pinctrl

Signed-off-by: David Wu <wdc@rock-chips.com>
9 years ago NAND : update dts config for nand.
Zhaoyifeng [Tue, 21 Apr 2015 05:03:24 +0000 (13:03 +0800)]
   NAND : update dts config for nand.
   nandc0reg are unused now,rknand_base.c will check boot media,if
boot form emmc,nand porbe will not enable clock.

9 years ago NAND : add boot media check
Zhaoyifeng [Tue, 21 Apr 2015 04:57:56 +0000 (12:57 +0800)]
NAND  : add boot media check
    Add boot media check , if boot from EMMC,no need to enable nand clock.

9 years agoRK3368 GPU version: Rogue L 0.14 Remove 'Instead kmalloc to kzalloc'
zxl [Tue, 21 Apr 2015 03:01:13 +0000 (11:01 +0800)]
RK3368 GPU version: Rogue L 0.14 Remove 'Instead kmalloc to kzalloc'

Signed-off-by: zxl <zhuangxl@rock-chips.com>
9 years agoes8316: fix spk no sound.
Sugar Zhang [Tue, 21 Apr 2015 02:12:24 +0000 (10:12 +0800)]
es8316: fix spk no sound.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years ago NAND : Fix 3368 dts nand clock config
Zhaoyifeng [Tue, 21 Apr 2015 01:50:33 +0000 (09:50 +0800)]
NAND : Fix 3368 dts nand clock config
    hclk_emem_peri need config for nand.

9 years agork3368 lcdc: add support serial RGB888 and RGB888 DUMY output
hjc [Mon, 20 Apr 2015 12:54:07 +0000 (20:54 +0800)]
rk3368 lcdc: add support serial RGB888 and RGB888 DUMY output

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agovideo: dts: add disp fullscreen for box logo
Mark Yao [Mon, 20 Apr 2015 09:55:06 +0000 (17:55 +0800)]
video: dts: add disp fullscreen for box logo

9 years agovideo: rockchip: logo: copy loader to framebuffer
Mark Yao [Mon, 20 Apr 2015 08:46:05 +0000 (16:46 +0800)]
video: rockchip: logo: copy loader to framebuffer

Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
9 years agovideo: rga: rga use fs_initcall to init early
Mark Yao [Mon, 20 Apr 2015 08:42:38 +0000 (16:42 +0800)]
video: rga: rga use fs_initcall to init early

We want to use rga for loader logo copy, need rga driver init before
lcdc init.

Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
9 years agork3368 lcdc: enable dither up default
hjc [Mon, 20 Apr 2015 08:26:15 +0000 (16:26 +0800)]
rk3368 lcdc: enable dither up default

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork fb: extend output mutex lock in win config
hjc [Sat, 18 Apr 2015 06:01:06 +0000 (14:01 +0800)]
rk fb: extend output mutex lock in win config

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork3368 lcdc: fix some hidden trouble maybe lead to abnormal when shutdown
hjc [Sat, 18 Apr 2015 05:46:43 +0000 (13:46 +0800)]
rk3368 lcdc: fix some hidden trouble maybe lead to abnormal when shutdown

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agowifi: support random mac address and save to file, solve compile warning
hwg [Mon, 20 Apr 2015 08:17:57 +0000 (16:17 +0800)]
wifi: support random mac address and save to file, solve compile warning

9 years agowifi: support random mac address and save to file
hwg [Mon, 20 Apr 2015 08:09:08 +0000 (16:09 +0800)]
wifi: support random mac address and save to file

9 years agowifi driver: rtl8723bs, rtl8723bs-vq0, rtl8723bu, rtl8812au, modify custom mac addr...
hwg [Mon, 20 Apr 2015 08:07:18 +0000 (16:07 +0800)]
wifi driver: rtl8723bs, rtl8723bs-vq0, rtl8723bu, rtl8812au, modify custom mac addr error problem

9 years agork1000: rk1000 Standby power consumption processing
huang zhibao [Sat, 18 Apr 2015 07:08:06 +0000 (15:08 +0800)]
rk1000: rk1000 Standby power consumption processing

9 years agoVCODEC: Disable switch ip when construct iommu table.
Alpha Lin [Fri, 17 Apr 2015 06:16:33 +0000 (14:16 +0800)]
VCODEC: Disable switch ip when construct iommu table.

Depend on iommu do not operate hardware on create iommu table.
VCODEC disable hardware ip switch.

Switch hardware when create iommu table will break the running
schedule of vpu task queue, and cause the hardware stuck.

Signed-off-by: Alpha Lin <alpha.lin@rock-chips.com>
9 years agork3368: iommu: expose iommu tlb invalidate operation to owner
Simon [Tue, 7 Apr 2015 09:50:00 +0000 (17:50 +0800)]
rk3368: iommu: expose iommu tlb invalidate operation to owner

Signed-off-by: Simon <xxm@rock-chips.com>
9 years agork3368: iommu: delete vop/hevc attach/detach log
Simon [Fri, 3 Apr 2015 07:31:08 +0000 (15:31 +0800)]
rk3368: iommu: delete vop/hevc attach/detach log

Signed-off-by: Simon <xxm@rock-chips.com>
9 years agork3368: iommu: workaround for switch between vpu and hevc
Simon [Thu, 2 Apr 2015 09:51:53 +0000 (17:51 +0800)]
rk3368: iommu: workaround for switch between vpu and hevc

vpu/hevc share the same ahb, when switch vpu and hevc,may cause
iommu error,to avoid this error,skip invalidate iommu tlb when iovmm_map

Signed-off-by: Simon <xxm@rock-chips.com>
9 years agodst: rk3368-box.dts amend pwm regulator
huang zhibao [Fri, 17 Apr 2015 02:12:52 +0000 (10:12 +0800)]
dst: rk3368-box.dts amend pwm regulator

9 years agodts: 1.add box rk3368 r88 dts; 2.amend 3368 box pwm regulator
huang zhibao [Fri, 17 Apr 2015 02:09:29 +0000 (10:09 +0800)]
dts: 1.add box rk3368 r88 dts; 2.amend 3368 box pwm regulator

9 years agork3368 lcdc: revert lcdc reset when switch hdmi
hjc [Thu, 16 Apr 2015 12:16:30 +0000 (20:16 +0800)]
rk3368 lcdc: revert lcdc reset when switch hdmi

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork3368 lcdc: add gather config for bandwidth
hjc [Thu, 16 Apr 2015 03:51:47 +0000 (11:51 +0800)]
rk3368 lcdc: add gather config for bandwidth

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork fb: if lcdc is suspend ignore set par and display
hjc [Thu, 16 Apr 2015 01:56:32 +0000 (09:56 +0800)]
rk fb: if lcdc is suspend ignore set par and display

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork3368-box.dts: modify fb display policy to DISPLAY_POLICY_BOX_TEMP.
Zheng Yang [Thu, 16 Apr 2015 01:35:50 +0000 (09:35 +0800)]
rk3368-box.dts: modify fb display policy to DISPLAY_POLICY_BOX_TEMP.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agork fb: add fb disp policy for excessive stage
hjc [Wed, 15 Apr 2015 11:28:05 +0000 (19:28 +0800)]
rk fb: add fb disp policy for excessive stage

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork fb: add mutex lock for switch screen to prevent
hjc [Wed, 15 Apr 2015 09:56:02 +0000 (17:56 +0800)]
rk fb: add mutex lock for switch screen to prevent
       hdmi and cvbs call this function at the same
       time.

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agochange rga.h define to match rk_fb config
zsq [Wed, 15 Apr 2015 07:53:39 +0000 (15:53 +0800)]
change rga.h define to match rk_fb config

9 years agoRK3368 GPU version: Rogue L 0.13
zxl [Wed, 15 Apr 2015 01:53:37 +0000 (09:53 +0800)]
RK3368 GPU version: Rogue L 0.13
Remove 'Clear cleanup_sync'

Signed-off-by: zxl <zhuangxl@rock-chips.com>
9 years agork1000: Fix picture error when suspend and switch mode.
Zheng Yang [Tue, 14 Apr 2015 14:05:41 +0000 (22:05 +0800)]
rk1000: Fix picture error when suspend and switch mode.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agodisplay-sysfs:
Zheng Yang [Tue, 14 Apr 2015 13:16:19 +0000 (21:16 +0800)]
display-sysfs:
Do not disable HDMI in function rk_display_device_enable.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agork: ion: Add trace emit function for ion debug
CMY [Tue, 14 Apr 2015 11:57:37 +0000 (19:57 +0800)]
rk: ion: Add trace emit function for ion debug

Signed-off-by: CMY <cmy@rock-chips.com>
9 years agoHDMI: rk_fb_disp_scale is disabled.
Zheng Yang [Tue, 14 Apr 2015 11:35:22 +0000 (19:35 +0800)]
HDMI: rk_fb_disp_scale is disabled.
Overscan function is achieved by fb driver, so HDMI
driver do not call this function.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years ago NAND DRIVER: rk3368 support nand.
Zhaoyifeng [Tue, 14 Apr 2015 09:29:24 +0000 (17:29 +0800)]
NAND DRIVER: rk3368 support nand.
    using __dma_map_area and virt_to_phys instead of rknand_dma_map_single
 and rknand_dma_unmap_single.
    dma_map_single need dev config dma ops struct and config dma_mask.
NAND flash driver has not this config and got the incorrect phy addr return by
dma_map_single.

9 years agork fb: add switch enable status when send uevent
hjc [Tue, 14 Apr 2015 07:42:26 +0000 (15:42 +0800)]
rk fb: add switch enable status when send uevent

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agoarm64: kuser32-bit helpers: do not include unistd32.h explicitly
Amit Pundir [Thu, 19 Feb 2015 07:51:00 +0000 (13:21 +0530)]
arm64: kuser32-bit helpers: do not include unistd32.h explicitly

We get following warnings while building for arm64 arch:
----->8-----
In file included from arch/arm64/kernel/kuser32.S:32:0:
/linaro/android/kernel/pundir/arch/arm64/include/asm/unistd32.h:24:0: warning: "__NR_restart_syscall" redefined
 #define __NR_restart_syscall 0
 ^
In file included from include/asm-generic/unistd.h:1:0,
                 from /linaro/android/kernel/pundir/arch/arm64/include/uapi/asm/unistd.h:16,
                 from /linaro/android/kernel/pundir/arch/arm64/include/asm/unistd.h:50,
                 from arch/arm64/kernel/kuser32.S:31:
include/uapi/asm-generic/unistd.h:390:0: note: this is the location of the previous definition
 #define __NR_restart_syscall 128
 ^
In file included from arch/arm64/kernel/kuser32.S:32:0:
/linaro/android/kernel/pundir/arch/arm64/include/asm/unistd32.h:26:0: warning: "__NR_exit" redefined
 #define __NR_exit 1
 ^
In file included from include/asm-generic/unistd.h:1:0,
                 from /linaro/android/kernel/pundir/arch/arm64/include/uapi/asm/unistd.h:16,
                 from /linaro/android/kernel/pundir/arch/arm64/include/asm/unistd.h:50,
                 from arch/arm64/kernel/kuser32.S:31:
include/uapi/asm-generic/unistd.h:292:0: note: this is the location of the previous definition
 #define __NR_exit 93
 ^
-----8<-----

This patch removes unitstd32.h include to avoid duplication of
"__NR_" syscall definitions.

This patch is based on AOSP commit: cfc7e99e9e3900056028a7d90072e9ea0d886f8d,
"arm64: Add __NR_* definitions for compat syscalls", which adds
__NR_* definitions to asm/unistd32.h, moves the __NR_compat_*
definitions to asm/unistd.h and removes all the explicit unistd32.h
includes apart from the one building the compat syscall table.
The aim is to have the compat __NR_* definitions available but
without colliding with the native syscall definitions (required
by lib/compat_audit.c to avoid duplicating the audit header files
between native and compat).

Signed-off-by: Amit Pundir <amit.pundir@linaro.org>
Signed-off-by: Jon Medhurst <tixy@linaro.org>
9 years agork fb: update message info when page fault
hjc [Mon, 13 Apr 2015 07:54:02 +0000 (15:54 +0800)]
rk fb: update message info when page fault

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork fb: send uevent when change video mode
hjc [Mon, 13 Apr 2015 03:54:36 +0000 (11:54 +0800)]
rk fb: send uevent when change video mode

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agommc: core: fix race condition in mmc_wait_data_done
Jialing Fu [Mon, 13 Apr 2015 06:35:27 +0000 (14:35 +0800)]
mmc: core: fix race condition in mmc_wait_data_done

The following panic is captured in ker3.14, but the issue still exists
in latest kernel.
---------------------------------------------------------------------
[   20.738217] c0 3136 (Compiler) Unable to handle kernel NULL pointer dereference
at virtual address 00000578
......
[   20.738499] c0 3136 (Compiler) PC is at _raw_spin_lock_irqsave+0x24/0x60
[   20.738527] c0 3136 (Compiler) LR is at _raw_spin_lock_irqsave+0x20/0x60
[   20.740134] c0 3136 (Compiler) Call trace:
[   20.740165] c0 3136 (Compiler) [<ffffffc0008ee900>] _raw_spin_lock_irqsave+0x24/0x60
[   20.740200] c0 3136 (Compiler) [<ffffffc0000dd024>] __wake_up+0x1c/0x54
[   20.740230] c0 3136 (Compiler) [<ffffffc000639414>] mmc_wait_data_done+0x28/0x34
[   20.740262] c0 3136 (Compiler) [<ffffffc0006391a0>] mmc_request_done+0xa4/0x220
[   20.740314] c0 3136 (Compiler) [<ffffffc000656894>] sdhci_tasklet_finish+0xac/0x264
[   20.740352] c0 3136 (Compiler) [<ffffffc0000a2b58>] tasklet_action+0xa0/0x158
[   20.740382] c0 3136 (Compiler) [<ffffffc0000a2078>] __do_softirq+0x10c/0x2e4
[   20.740411] c0 3136 (Compiler) [<ffffffc0000a24bc>] irq_exit+0x8c/0xc0
[   20.740439] c0 3136 (Compiler) [<ffffffc00008489c>] handle_IRQ+0x48/0xac
[   20.740469] c0 3136 (Compiler) [<ffffffc000081428>] gic_handle_irq+0x38/0x7c
----------------------------------------------------------------------

Because in SMP, "mrq" has race condition between below two paths:
path1: CPU0: <tasklet context>
  static void mmc_wait_data_done(struct mmc_request *mrq)
  {
    mrq->host->context_info.is_done_rcv = true;
    //
    // If CPU0 has just finished "is_done_rcv = true" in path1, and at
    // this moment, IRQ or ICache line missing happens in CPU0.
    // What happens in CPU1 (path2)?
    //
    // If the mmcqd thread in CPU1(path2) hasn't entered to sleep mode:
    // path2 would have chance to break from wait_event_interruptible
    // in mmc_wait_for_data_req_done and continue to run for next
    // mmc_request (mmc_blk_rw_rq_prep).
    //
    // Within mmc_blk_rq_prep, mrq is cleared to 0.
    // If below line still gets host from "mrq" as the result of
    // compiler, the panic happens as we traced.
    wake_up_interruptible(&mrq->host->context_info.wait);
  }

path2: CPU1: <The mmcqd thread runs mmc_queue_thread>
 static int mmc_wait_for_data_req_done(...
 {
    ...
    while (1) {
          wait_event_interruptible(context_info->wait,
                  (context_info->is_done_rcv ||
                   context_info->is_new_req));

  static void mmc_blk_rw_rq_prep(...
  {
    ...
    memset(brq, 0, sizeof(struct mmc_blk_request));

This issue happens very coincidentally; however adding mdelay(1) in
mmc_wait_data_done as below could duplicate it easily.
  static void mmc_wait_data_done(struct mmc_request *mrq)
  {
    mrq->host->context_info.is_done_rcv = true;
    mdelay(1);
    wake_up_interruptible(&mrq->host->context_info.wait);
  }
At runtime, IRQ or ICache line missing may just happen at the same place
of the mdelay(1).

This patch gets the mmc_context_info at the beginning of function, it can
avoid this race condition.

Signed-off-by: Jialing Fu <jlfu@marvell.com>
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: lintao <lintao@rock-chips.com>
9 years agork3368: clk: powerdomain: enable powerdomain func.
zhangqing [Mon, 13 Apr 2015 11:27:48 +0000 (04:27 -0700)]
rk3368: clk: powerdomain: enable powerdomain func.

test:Passed the special test.Test machine 15 for P9 and test 12H.
Have the test report form Quality department.

Signed-off-by: zhangqing <zhangqing@rock-chips.com>
9 years agork fb: do something when user set invalid config
hjc [Mon, 13 Apr 2015 03:13:32 +0000 (11:13 +0800)]
rk fb: do something when user set invalid config

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork: iommu: enable iommu by default on rk33xx platform
CMY [Mon, 13 Apr 2015 01:26:48 +0000 (09:26 +0800)]
rk: iommu: enable iommu by default on rk33xx platform

Signed-off-by: CMY <cmy@rock-chips.com>
9 years agodts: rk3368: add mcu jtag pcl sd1 inactive state
lintao [Mon, 13 Apr 2015 01:19:29 +0000 (09:19 +0800)]
dts: rk3368: add mcu jtag pcl sd1 inactive state

Signed-off-by: lintao <lintao@rock-chips.com>
9 years agork fb: set retire fence fd to -1 when ignore this frame
hjc [Mon, 13 Apr 2015 01:39:50 +0000 (09:39 +0800)]
rk fb: set retire fence fd to -1 when ignore this frame

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agoHDMI: calling rk_fb_switch_screen() to close vop related to HDMI
Zheng Yang [Sat, 11 Apr 2015 09:14:07 +0000 (17:14 +0800)]
HDMI: calling rk_fb_switch_screen() to close vop related to HDMI
      before calling switch_set_state() when HDMI is removed.
      For android hwcompser need to make sure vop is disabled when
      received hdmi removing event.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agousb: ftp: fix the bug of ftp ioctrl args problem with 32bit userspace on 64bit platforms
Aiyoujun [Sat, 11 Apr 2015 08:04:31 +0000 (16:04 +0800)]
usb: ftp: fix the bug of ftp ioctrl args problem with 32bit userspace on 64bit platforms

Signed-off-by: Aiyoujun <ayj@rock-chips.com>
9 years agork3368-p9: dts: enabled change ddr-freq
guoyi [Sat, 11 Apr 2015 08:40:46 +0000 (16:40 +0800)]
rk3368-p9: dts: enabled  change ddr-freq

9 years agousb: dwc_otg: fix bugs
lyz [Fri, 10 Apr 2015 07:58:49 +0000 (15:58 +0800)]
usb: dwc_otg: fix bugs

1.Cancel usb vbus detect work in driver shutdown rountine
2.Check empty list
3.Disable usb interrupt before usb mode change

TEST:

1.reboot test
2.while true; do
    echo 1 > force_usb_mode;busybox sleep 5;
    echo 2 > force_usb_mode;busybox sleep 5;
  done

Signed-off-by: lyz <lyz@rock-chips.com>
9 years agoIEP: Support processing part of input image
Alpha Lin [Fri, 10 Apr 2015 05:53:02 +0000 (13:53 +0800)]
IEP: Support processing part of input image

Enable virtual size and actual size and start offset, to support
processing part of input image.

Signed-off-by: Alpha Lin <alpha.lin@rock-chips.com>
9 years agoHDMI: call function hdmi->ops->disable() if it is disabled.
Zheng Yang [Thu, 9 Apr 2015 10:01:51 +0000 (18:01 +0800)]
HDMI: call function hdmi->ops->disable() if it is disabled.
      For system can not be wakeup under following case:
      step1. Disable HDMI.
      step2. set system to deep sleep mode.
      step3. remove HDMI connection.
      step4. wake up system.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agork fb: when unplug hdmi,post fb to display
hjc [Thu, 9 Apr 2015 10:06:02 +0000 (18:06 +0800)]
rk fb: when unplug hdmi,post fb to display

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork fb: hdmi 24hz frame time need 41ms
hjc [Thu, 9 Apr 2015 09:37:15 +0000 (17:37 +0800)]
rk fb: hdmi 24hz frame time need 41ms

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork fb: recovery need two framebuffer
hjc [Thu, 9 Apr 2015 08:26:57 +0000 (16:26 +0800)]
rk fb: recovery need two framebuffer

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agoRK3368 DDR: add support 3368 ddr change freq function
Tang Yun ping [Thu, 9 Apr 2015 03:36:59 +0000 (11:36 +0800)]
RK3368 DDR: add support 3368 ddr change freq function

note:need using new trustimage and uboot for support ddr change freq

Signed-off-by: Tang Yun ping <typ@rock-chips.com>
9 years agoi2s:fix the hdmi no sound sometimes
smj [Thu, 9 Apr 2015 03:22:23 +0000 (11:22 +0800)]
i2s:fix the hdmi no sound sometimes
    support for hdmi passthrough output

Signed-off-by: smj <smj@rock-chips.com>
9 years agork3368 lcdc: flush update regs worker when switch screen
hjc [Thu, 9 Apr 2015 03:54:56 +0000 (11:54 +0800)]
rk3368 lcdc: flush update regs worker when switch screen

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agoarm64: rockchip: rockchip_defconfig enabled rk818 & gt9xx & es8316
guoyi [Thu, 9 Apr 2015 02:58:42 +0000 (10:58 +0800)]
arm64: rockchip: rockchip_defconfig enabled rk818 & gt9xx & es8316

9 years agork fb: ignore frame when in hdmi switch or set error config
hjc [Thu, 9 Apr 2015 03:31:27 +0000 (11:31 +0800)]
rk fb: ignore frame when in hdmi switch or set error config

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork3368 lcdc: reset lcdc when switch screen video mode
hjc [Thu, 9 Apr 2015 03:27:15 +0000 (11:27 +0800)]
rk3368 lcdc: reset lcdc when switch screen video mode

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agoARM64: dt: rk3368: add driver support for rk818
Jianqun Xu [Thu, 9 Apr 2015 02:13:14 +0000 (10:13 +0800)]
ARM64: dt: rk3368: add driver support for rk818

Support rk818 pmic, patch is from zhangqing@rock-chips.com.

Signed-off-by: Zhangqing <zhangqing@rock-chips.com>
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
9 years agork3368-box.dts: enable uboot logo.
Zheng Yang [Wed, 8 Apr 2015 10:46:46 +0000 (18:46 +0800)]
rk3368-box.dts: enable uboot logo.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agodts:rk3368-box.dts default iommu
huang zhibao [Wed, 8 Apr 2015 08:22:27 +0000 (16:22 +0800)]
dts:rk3368-box.dts default iommu

9 years agoRK3368 GPU version: L0.12
zxl [Wed, 8 Apr 2015 03:20:30 +0000 (11:20 +0800)]
RK3368 GPU version: L0.12
1. Instead kmalloc to kzalloc.
2. Clear cleanup_sync in pvr_sync_clean_freelist.

9 years agork3368:mipi: Solve clk_unprepare error problem when plug and pull out hdmi.
xubilv [Tue, 7 Apr 2015 10:45:26 +0000 (18:45 +0800)]
rk3368:mipi: Solve clk_unprepare error problem when plug and pull out hdmi.

Signed-off-by: xubilv <xbl@rock-chips.com>
9 years agork3368: clk: clk_add_recalc_ddr_freq.
zhangqing [Fri, 3 Apr 2015 13:54:08 +0000 (06:54 -0700)]
rk3368: clk: clk_add_recalc_ddr_freq.

Get ddr frequency correctly.

Signed-off-by: zhangqing <zhangqing@rock-chips.com>
9 years agomailbox: rockchip: add driver for Rockchip SoCs integrated mailbox && System Control...
Aiyoujun [Thu, 2 Apr 2015 10:13:10 +0000 (18:13 +0800)]
mailbox: rockchip: add driver for Rockchip SoCs integrated mailbox && System Control and Power Interface(SCPI) protocol

Signed-off-by: Aiyoujun <ayj@rock-chips.com>
9 years agork fb: from rk3368 fb only need to reserved 1 framebuffer
hjc [Thu, 2 Apr 2015 11:11:02 +0000 (19:11 +0800)]
rk fb: from rk3368 fb only need to reserved 1 framebuffer

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agodelete unused file
hjc [Thu, 2 Apr 2015 10:56:31 +0000 (18:56 +0800)]
delete unused file

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agoHDMI: revert commit 3fe08a661c106d071afb45ddf3660c2e92fe8b52 for
Zheng Yang [Thu, 2 Apr 2015 09:11:12 +0000 (17:11 +0800)]
HDMI: revert commit 3fe08a661c106d071afb45ddf3660c2e92fe8b52 for
      find root reason on commit 7f2f16780d1a27cffcaa8a2310621771174defe1.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agoHDMI: improve cec function:
Zheng Yang [Thu, 2 Apr 2015 08:56:40 +0000 (16:56 +0800)]
HDMI: improve cec function:
        1. To get logic address more stable, we ping 3 times to each
   logic address. If the result is NACK for two times, this
   logic address is not occupied.
        2. If transmmit cec data failed, retry immediately.
        4. set CECOP_IMAGE_VIEW_ON only taget to TV, not broadcasting.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agoHDMI: fix edid mode list error: set head->prev to edid->modelist.
Zheng Yang [Thu, 2 Apr 2015 08:49:50 +0000 (16:49 +0800)]
HDMI: fix edid mode list error: set head->prev to edid->modelist.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agoMerge tag lsk-v3.10-15.03-android
Huang, Tao [Thu, 2 Apr 2015 01:25:21 +0000 (09:25 +0800)]
Merge tag lsk-v3.10-15.03-android

lsk-v3.10-15.03-android release

9 years agoarm64: rockchip: rk3368 support boot from little core without swap
Huang, Tao [Thu, 2 Apr 2015 01:10:03 +0000 (09:10 +0800)]
arm64: rockchip: rk3368 support boot from little core without swap

Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
9 years agorm64: rockchip: rockchip_defconfig enable POWERVR_ROGUE
Huang, Tao [Wed, 1 Apr 2015 03:51:27 +0000 (11:51 +0800)]
rm64: rockchip: rockchip_defconfig enable POWERVR_ROGUE

just for debug

Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
9 years agoarm64: rockchip: rockchip_defconfig disable reboot while panic
Huang, Tao [Wed, 1 Apr 2015 03:24:16 +0000 (11:24 +0800)]
arm64: rockchip: rockchip_defconfig disable reboot while panic

just for debug

Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
9 years agomodify wifi: load driver when kernel bootup:
hwg [Wed, 1 Apr 2015 13:22:35 +0000 (21:22 +0800)]
modify wifi: load driver when kernel bootup:
 can increase speed of wifi open/close
 can solve memory alloc fail when open wifi

9 years agousb: gadget: MTP support compat ioctl
lyz [Wed, 1 Apr 2015 08:04:27 +0000 (16:04 +0800)]
usb: gadget: MTP support compat ioctl