Commit Graph

404973 Commits

Author SHA1 Message Date
Zhaoyifeng
627fe3d23e NAND : add boot media check
Add boot media check , if boot from EMMC,no need to enable nand clock.
2015-04-21 12:57:56 +08:00
zxl
9279372228 RK3368 GPU version: Rogue L 0.14 Remove 'Instead kmalloc to kzalloc'
Signed-off-by: zxl <zhuangxl@rock-chips.com>
2015-04-21 11:03:28 +08:00
Sugar Zhang
5a79ff4cba es8316: fix spk no sound.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
2015-04-21 10:12:24 +08:00
Zhaoyifeng
84917a89f2 NAND : Fix 3368 dts nand clock config
hclk_emem_peri need config for nand.
2015-04-21 09:50:33 +08:00
hjc
14b1c79fc6 rk3368 lcdc: add support serial RGB888 and RGB888 DUMY output
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-20 20:55:42 +08:00
Mark Yao
b8667979fa video: dts: add disp fullscreen for box logo 2015-04-20 17:55:06 +08:00
Mark Yao
a9085919ca video: rockchip: logo: copy loader to framebuffer
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
2015-04-20 17:51:20 +08:00
Mark Yao
4bf5481fa6 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>
2015-04-20 17:51:20 +08:00
hjc
327278fd7b rk3368 lcdc: enable dither up default
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-20 17:07:53 +08:00
hjc
3648385d25 rk fb: extend output mutex lock in win config
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-20 17:07:53 +08:00
hjc
95e61b5584 rk3368 lcdc: fix some hidden trouble maybe lead to abnormal when shutdown
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-20 17:07:52 +08:00
hwg
1879153799 wifi: support random mac address and save to file, solve compile warning 2015-04-20 16:23:36 +08:00
hwg
f37e3b555c wifi: support random mac address and save to file 2015-04-20 16:23:28 +08:00
hwg
1212a71d9d wifi driver: rtl8723bs, rtl8723bs-vq0, rtl8723bu, rtl8812au, modify custom mac addr error problem 2015-04-20 16:23:18 +08:00
huang zhibao
70244039d4 rk1000: rk1000 Standby power consumption processing 2015-04-18 15:08:06 +08:00
Alpha Lin
0e06aef4d3 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>
2015-04-17 14:16:33 +08:00
Simon
aa34284b75 rk3368: iommu: expose iommu tlb invalidate operation to owner
Signed-off-by: Simon <xxm@rock-chips.com>
2015-04-17 11:11:45 +08:00
Simon
28b00ae9fe rk3368: iommu: delete vop/hevc attach/detach log
Signed-off-by: Simon <xxm@rock-chips.com>
2015-04-17 11:11:42 +08:00
Simon
1617e62c09 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>
2015-04-17 11:11:12 +08:00
huang zhibao
b8167b6f7d dst: rk3368-box.dts amend pwm regulator 2015-04-17 10:12:52 +08:00
huang zhibao
b5c698b5c6 dts: 1.add box rk3368 r88 dts; 2.amend 3368 box pwm regulator 2015-04-17 10:09:29 +08:00
hjc
09440c9ed5 rk3368 lcdc: revert lcdc reset when switch hdmi
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-16 20:17:24 +08:00
hjc
b280cfcee1 rk3368 lcdc: add gather config for bandwidth
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-16 20:17:24 +08:00
hjc
5a61bdfd90 rk fb: if lcdc is suspend ignore set par and display
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-16 20:17:24 +08:00
Zheng Yang
29ebc4486f rk3368-box.dts: modify fb display policy to DISPLAY_POLICY_BOX_TEMP.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2015-04-16 09:35:50 +08:00
hjc
e6ac3de62a rk fb: add fb disp policy for excessive stage
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-15 19:28:05 +08:00
hjc
cc8c69af8f 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>
2015-04-15 18:01:04 +08:00
zsq
a8dceb6bb9 change rga.h define to match rk_fb config 2015-04-15 15:53:39 +08:00
zxl
e64ed7772a RK3368 GPU version: Rogue L 0.13
Remove 'Clear cleanup_sync'

Signed-off-by: zxl <zhuangxl@rock-chips.com>
2015-04-15 09:53:37 +08:00
Zheng Yang
3db783a988 rk1000: Fix picture error when suspend and switch mode.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2015-04-14 22:05:41 +08:00
Zheng Yang
da0c4bb9b0 display-sysfs:
Do not disable HDMI in function rk_display_device_enable.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
2015-04-14 21:16:19 +08:00
CMY
1a2971e2cd rk: ion: Add trace emit function for ion debug
Signed-off-by: CMY <cmy@rock-chips.com>
2015-04-14 19:59:46 +08:00
Zheng Yang
5e925ef55c 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>
2015-04-14 19:35:22 +08:00
Zhaoyifeng
e1bce0140d 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.
2015-04-14 17:29:24 +08:00
hjc
307f76c3cc rk fb: add switch enable status when send uevent
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-14 15:42:26 +08:00
Amit Pundir
f56ff9935a 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: cfc7e99e9e,
"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>
2015-04-13 15:56:10 +08:00
hjc
5aa93b8181 rk fb: update message info when page fault
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-13 16:01:18 +08:00
hjc
27dce98214 rk fb: send uevent when change video mode
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-13 16:01:18 +08:00
Jialing Fu
f51501b7bb 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>
2015-04-13 15:32:15 +08:00
zhangqing
409b9a9fe4 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>
2015-04-13 04:27:48 -07:00
hjc
9118760938 rk fb: do something when user set invalid config
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-13 11:15:03 +08:00
CMY
3186064dd9 rk: iommu: enable iommu by default on rk33xx platform
Signed-off-by: CMY <cmy@rock-chips.com>
2015-04-13 09:30:50 +08:00
lintao
db26b0def7 dts: rk3368: add mcu jtag pcl sd1 inactive state
Signed-off-by: lintao <lintao@rock-chips.com>
2015-04-13 09:22:52 +08:00
hjc
5de58df8a6 rk fb: set retire fence fd to -1 when ignore this frame
Signed-off-by: hjc <hjc@rock-chips.com>
2015-04-13 09:39:50 +08:00
Zheng Yang
33be0d0365 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>
2015-04-11 17:33:19 +08:00
Aiyoujun
c04cdecff9 usb: ftp: fix the bug of ftp ioctrl args problem with 32bit userspace on 64bit platforms
Signed-off-by: Aiyoujun <ayj@rock-chips.com>
2015-04-11 16:14:20 +08:00
guoyi
c3ab142dc7 rk3368-p9: dts: enabled change ddr-freq 2015-04-11 16:40:46 +08:00
lyz
bd1b1fd8d6 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>
2015-04-10 16:30:56 +08:00
Alpha Lin
f161a8f22b 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>
2015-04-10 13:56:19 +08:00
Zheng Yang
2258ac9cca 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>
2015-04-09 18:07:37 +08:00