firefly-linux-kernel-4.4.55.git
9 years agodefconfig: rockchip: enable CONFIG_MMC_DW_SKIP_CACHE_OP
Shawn Lin [Fri, 10 Jul 2015 04:46:49 +0000 (12:46 +0800)]
defconfig: rockchip: enable CONFIG_MMC_DW_SKIP_CACHE_OP

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agofs: direct-io: convert rw from READ to KERNEL_READ
Shawn Lin [Fri, 10 Jul 2015 01:20:11 +0000 (09:20 +0800)]
fs: direct-io: convert rw from READ to KERNEL_READ

KERNEL_READ equal READ puls REQ_KERNEL, which indicates
this brq comes from direct-io. Any block-layer devices who
care this req type can get it now.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agommc: rk_sdmmc: add MMC_DW_SKIP_CACHE_OP for data manipulation
Shawn Lin [Wed, 8 Jul 2015 09:36:16 +0000 (17:36 +0800)]
mmc: rk_sdmmc: add MMC_DW_SKIP_CACHE_OP for data manipulation

Direct IO of filesystem  had recursive searched and map the addr
itself, so mmc drivers can avoid to do the same ops in order to
improve throughput. We got 30% improvement for 4KB bs packet test.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agoarm64: dma-mapping: conditional skip map_sg by attrs
Shawn Lin [Wed, 8 Jul 2015 09:32:06 +0000 (17:32 +0800)]
arm64: dma-mapping: conditional skip map_sg by attrs

Add if statement(DMA_ATTR_SKIP_CPU_SYNC) for __swiotlb_map_sg_attrs
to skip invalidating each sg element

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years ago hdmi:rk3368/rk3288: modify phy termination resistance.
Zheng Yang [Fri, 10 Jul 2015 03:33:57 +0000 (11:33 +0800)]
 hdmi:rk3368/rk3288: modify phy termination resistance.

        Set single-ended source termination resistance
        to 100ohm for HDMI1.4 and 50ohm for HDMI2.0.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agohdmi:rk3368/rk3288: set color format in avi to RGB before mute output.
Zheng Yang [Fri, 10 Jul 2015 03:00:49 +0000 (11:00 +0800)]
hdmi:rk3368/rk3288: set color format in avi to RGB before mute output.

        For some sink, it will random recognize YCbCr as RGB when swithing
        hdmi format, picture will covered with purple. If we set color
        fomat in avi to RGB and reset avi to YCbCr, picture will be ok. So
        we set avi to RGB before mute ouput when switching hdmi format.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agodts:sdmmc: slow down sdmmc frequence to 37.5MHz for SDK board
hecanyang [Fri, 10 Jul 2015 02:48:17 +0000 (10:48 +0800)]
dts:sdmmc: slow down sdmmc frequence to 37.5MHz for SDK board

SDK board sdmmc can't run 50MHz, otherwise SD initialising will return error.
log as below. slow down sdmmc frequence to 37.5MHz can fix it.

<4>[  802.611901]  [0:    kworker/0:2:  644] rk_sdmmc: BOOT   The card is inserted.  ===!!!!!!==[mmc1]
<6>[  802.838728]  [0:  kworker/u16:0:    6] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 400000Hz, actual 3
96825HZ div = 63)
<4>[  802.838858]  [0:  kworker/u16:0:    6] rk_sdmmc: BOOT dw_mci_setup_bus: argue clk_mmc workaround out 800000Hz for
init[mmc1]
<6>[  802.990527]  [0:  kworker/u16:0:    6] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual
50000000HZ div = 0)
<4>[  802.990671]  [0:  kworker/u16:0:    6] rk_sdmmc: BOOT dw_mci_setup_bus: argue clk_mmc workaround out normal clock
[mmc1]
<3>[  802.996461]  [0:  kworker/u16:0:    6] mmc1: error -84 whilst initialising SD card

Signed-off-by: hecanyang <hcy@rock-chips.com>
9 years agotve:rk1000: set default cvbd mode to PAL.
Zheng Yang [Fri, 10 Jul 2015 02:42:55 +0000 (10:42 +0800)]
tve:rk1000: set default cvbd mode to PAL.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agodts:rk3368-box: enable uboot logo
Zheng Yang [Fri, 10 Jul 2015 02:40:58 +0000 (10:40 +0800)]
dts:rk3368-box: enable uboot logo

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agorfkill-wlan: repair vref pmu ctrl problem
hwg [Thu, 9 Jul 2015 10:59:56 +0000 (18:59 +0800)]
rfkill-wlan: repair vref pmu ctrl problem

9 years agork_vop: rk3288: fix kernel logo crash with iommu enable
Mark Yao [Thu, 9 Jul 2015 10:03:09 +0000 (18:03 +0800)]
rk_vop: rk3288: fix kernel logo crash with iommu enable

Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
9 years agoASoC: hdmi_spdif: support format SNDRV_PCM_FMTBIT_S24_LE
Sugar Zhang [Thu, 9 Jul 2015 08:17:50 +0000 (16:17 +0800)]
ASoC: hdmi_spdif: support format SNDRV_PCM_FMTBIT_S24_LE

because of DMA_SLAVE_BUSWIDTH_4_BYTES, we support SNDRV_PCM_FMTBIT_S24_LE
which store data in low three bytes. not support SNDRV_PCM_FMTBIT_S24_3LE

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agoASoC: rockchip: implement suspend/resume for i2s
Sugar Zhang [Thu, 9 Jul 2015 01:40:05 +0000 (09:40 +0800)]
ASoC: rockchip: implement suspend/resume for i2s

use regmap_reinit_cache to restore hw registers after power loss
during a suspend/resume cycle.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agodts: 3368 box dts add dcdc eta3558
huang zhibao [Wed, 8 Jul 2015 01:41:51 +0000 (09:41 +0800)]
dts: 3368 box dts add dcdc eta3558

9 years agommc: rk_sdmmc: fix wrong skip condiction of post_tmo
Shawn Lin [Tue, 7 Jul 2015 02:05:45 +0000 (10:05 +0800)]
mmc: rk_sdmmc: fix wrong skip condiction of post_tmo

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agotve:rk1000: fix rk1000 suspend and resume error
ShenZhengyi [Tue, 7 Jul 2015 01:18:59 +0000 (09:18 +0800)]
tve:rk1000: fix rk1000 suspend and resume error

Signed-off-by: ShenZhengyi <szy@rock-chips.com>
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agodts:rk3288-box: enable uboot logo.
Zheng Yang [Tue, 7 Jul 2015 01:26:51 +0000 (09:26 +0800)]
dts:rk3288-box: enable uboot logo.

9 years agotve:gm7122: When gm7122 init, do not switch fb.
ShenZhengyi [Mon, 6 Jul 2015 01:54:36 +0000 (09:54 +0800)]
tve:gm7122: When gm7122 init, do not switch fb.

it can avoid green screen, when HDMI switch to CVBS.

Signed-off-by: ShenZhengyi <szy@rock-chips.com>
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agoASoC: hdmi_spdif: config hdmi audio when hdmi using spdif source.
Sugar Zhang [Mon, 6 Jul 2015 09:08:14 +0000 (17:08 +0800)]
ASoC: hdmi_spdif: config hdmi audio when hdmi using spdif source.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agoASoC: spdif: fill channel status sample freq.
Sugar Zhang [Mon, 6 Jul 2015 09:06:00 +0000 (17:06 +0800)]
ASoC: spdif: fill channel status sample freq.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years ago rk3368: pmic: rk808:adjust dcdc voltage step
guoyi [Mon, 6 Jul 2015 07:02:47 +0000 (15:02 +0800)]
 rk3368: pmic: rk808:adjust dcdc voltage step

Signed-off-by: guoyi <gy@rock-chips.com>
Signed-off-by: zhangqing <zhangqing@rock-chips.com>
9 years agochange RGA2 dtsi name for all platform
Shengqin.Zhang [Mon, 6 Jul 2015 05:59:24 +0000 (13:59 +0800)]
change RGA2 dtsi name for all platform

Signed-off-by: Shengqin.Zhang <zsq@rock-chips.com>
9 years agobcmdhd wifi: auto recognize for AP62x2
hwg [Fri, 3 Jul 2015 11:23:38 +0000 (19:23 +0800)]
bcmdhd wifi: auto recognize for AP62x2

9 years agoASoC: rockchip: rename rk30_i2s.c to rk_i2s.c
Sugar Zhang [Thu, 2 Jul 2015 12:02:31 +0000 (20:02 +0800)]
ASoC: rockchip: rename rk30_i2s.c to rk_i2s.c

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agoASoC: rockchip: refactor i2s driver.
Sugar Zhang [Thu, 2 Jul 2015 11:53:06 +0000 (19:53 +0800)]
ASoC: rockchip: refactor i2s driver.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agoHDMI: add a helper function for config hdmi audio.
Sugar Zhang [Thu, 2 Jul 2015 11:26:27 +0000 (19:26 +0800)]
HDMI: add a helper function for config hdmi audio.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agorockchip_defconfig: support rk1000.
Zheng Yang [Wed, 1 Jul 2015 07:11:30 +0000 (15:11 +0800)]
rockchip_defconfig: support rk1000.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agork1000: fix ypbpr compile error.
Zheng Yang [Wed, 1 Jul 2015 07:09:39 +0000 (15:09 +0800)]
rk1000: fix ypbpr compile error.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agodts: rk3288 box: fix some error.
Zheng Yang [Wed, 1 Jul 2015 07:06:57 +0000 (15:06 +0800)]
dts: rk3288 box: fix some error.

1. fix audio codec.
2. framebuffer size set to 1080P.
3. fix hdmi setting error.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agobcmdhd wifi: nvram auto recognize for AP6335
hwg [Wed, 1 Jul 2015 06:53:29 +0000 (14:53 +0800)]
bcmdhd wifi: nvram auto recognize for AP6335

9 years agodts: add rk3288-box.dts.
Zheng Yang [Wed, 1 Jul 2015 04:02:04 +0000 (12:02 +0800)]
dts: add rk3288-box.dts.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agodtsi:rk3288: add remotectl pwm.
Zheng Yang [Wed, 1 Jul 2015 03:59:02 +0000 (11:59 +0800)]
dtsi:rk3288: add remotectl pwm.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agoHDMI:rk3368/rk3288: delete some unused code.
Zheng Yang [Tue, 30 Jun 2015 03:26:10 +0000 (11:26 +0800)]
HDMI:rk3368/rk3288: delete some unused code.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agoHDMI:rk3368/rk3288: add debugfs node regs_phy to modify phy regs.
Zheng Yang [Tue, 30 Jun 2015 03:19:31 +0000 (11:19 +0800)]
HDMI:rk3368/rk3288: add debugfs node regs_phy to modify phy regs.

and rename debugfs node hdmi to regs_ctrl.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agodts:rk3368-box-r88_808: add dts support for the BOX board of R88(RK3368)_PMU_Vxx
Aiyoujun [Tue, 30 Jun 2015 02:07:18 +0000 (10:07 +0800)]
dts:rk3368-box-r88_808: add dts support for the BOX board of R88(RK3368)_PMU_Vxx

Signed-off-by: Aiyoujun <ayj@rock-chips.com>
9 years agodelete unused code and update coding style
huang zhibao [Fri, 26 Jun 2015 10:28:05 +0000 (18:28 +0800)]
delete unused code and update coding style

9 years agork3368: tsadc: support print temp from console
David Wu [Fri, 26 Jun 2015 08:57:36 +0000 (16:57 +0800)]
rk3368: tsadc: support print temp from console

Signed-off-by: David Wu <wdc@rock-chips.com>
9 years agork3368: tsadc: add hw shut temp
David Wu [Fri, 26 Jun 2015 08:15:12 +0000 (16:15 +0800)]
rk3368: tsadc: add hw shut temp

if temp reached hw_shut_temp three times continuously, system would power off.

Signed-off-by: David Wu <wdc@rock-chips.com>
9 years agork3368: tsadc: get temp from scpi interface
David Wu [Fri, 26 Jun 2015 06:49:54 +0000 (14:49 +0800)]
rk3368: tsadc: get temp from scpi interface

Signed-off-by: David Wu <wdc@rock-chips.com>
9 years agork3368: clk: cpll: make cpll low jitter.
zhangqing [Thu, 25 Jun 2015 23:50:06 +0000 (16:50 -0700)]
rk3368: clk: cpll: make cpll low jitter.

This modify is for cpll low jitter.
Make the signal of clk_gmac better.

Signed-off-by: zhangqing <zhangqing@rock-chips.com>
9 years agodvfs: rockchip: fix min_temp_limit
Xiao Feng [Thu, 25 Jun 2015 12:05:35 +0000 (20:05 +0800)]
dvfs: rockchip: fix min_temp_limit

Signed-off-by: Xiao Feng <xf@rock-chips.com>
9 years agoarm64: rockchip: rk3368: dts: fix min_temp_limit
Xiao Feng [Thu, 25 Jun 2015 12:04:41 +0000 (20:04 +0800)]
arm64: rockchip: rk3368: dts: fix min_temp_limit

Signed-off-by: Xiao Feng <xf@rock-chips.com>
9 years agork3368: mailbox: Added SCPI APIs for TSADC function.
Frank Wang [Thu, 25 Jun 2015 10:17:46 +0000 (18:17 +0800)]
rk3368: mailbox: Added SCPI APIs for TSADC function.

Signed-off-by: Frank Wang <frank.wang@rock-chips.com>
9 years agork3368: tsadc: prevent to get temp when system going to suspend.
David Wu [Thu, 25 Jun 2015 07:09:19 +0000 (15:09 +0800)]
rk3368: tsadc: prevent to get temp when system going to suspend.

Signed-off-by: David Wu <wdc@rock-chips.com>
9 years agoVPU: return correct decoded length on iommu case
Herman Chen [Thu, 18 Jun 2015 13:54:23 +0000 (21:54 +0800)]
VPU: return correct decoded length on iommu case

On iommu case the decode buffer address is replace by iommu address.
When decoding finished the new register value is also the iommu address.
So the actual decoded length need a hack to calculate.

This patch is to resolve H.264 field stream packet with both top field
and bottom field. By retrieving the real decoded length decoder can detect
this case.

Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
9 years agodts: rk3368-tb_mipi: headset: no adc mode.
Sugar Zhang [Thu, 25 Jun 2015 01:55:54 +0000 (09:55 +0800)]
dts: rk3368-tb_mipi: headset: no adc mode.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agodts: rk3368-tb_mipi: disable headset wakeup.
Sugar Zhang [Wed, 24 Jun 2015 12:47:24 +0000 (20:47 +0800)]
dts: rk3368-tb_mipi: disable headset wakeup.

because the hp det src is provider by micbais in this board.
when suspend, micbais will be power down to reduce power consumption.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agoHeadset: add parse property "rockchip,headset_wakeup".
Sugar Zhang [Wed, 24 Jun 2015 12:47:04 +0000 (20:47 +0800)]
Headset: add parse property "rockchip,headset_wakeup".

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agoASoC: rt3261: initial micbais.
Sugar Zhang [Wed, 24 Jun 2015 12:44:29 +0000 (20:44 +0800)]
ASoC: rt3261: initial micbais.

Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
9 years agortl8188eu: update driver to v4.3.0.8_13968.20150417, modify some error
hwg [Wed, 24 Jun 2015 12:41:39 +0000 (20:41 +0800)]
rtl8188eu: update driver to v4.3.0.8_13968.20150417, modify some error

9 years agopm_tests: rockchip: add pvtm test
Xiao Feng [Wed, 24 Jun 2015 11:36:56 +0000 (19:36 +0800)]
pm_tests: rockchip: add pvtm test

Signed-off-by: Xiao Feng <xf@rock-chips.com>
9 years agopower: rk81x-battery: support otg device
Jianhong Chen [Wed, 24 Jun 2015 06:47:57 +0000 (14:47 +0800)]
power: rk81x-battery: support otg device

Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
Signed-off-by: 许盛飞 <xsf@rock-chips.com>
9 years agousb: bc: fix compile error
lyz [Wed, 24 Jun 2015 03:15:33 +0000 (11:15 +0800)]
usb: bc: fix compile error

Fix conflicting types for 'rk_bc_detect_notifier_register'

9 years agousb: bc: fix function name in hader file
lyz [Wed, 24 Jun 2015 01:59:25 +0000 (09:59 +0800)]
usb: bc: fix function name in hader file

9 years agoarm64: rockchip: rk3368-p9: dts: modify clocks init rate
Xiao Feng [Tue, 23 Jun 2015 13:00:32 +0000 (21:00 +0800)]
arm64: rockchip: rk3368-p9: dts: modify clocks init rate

reduce aclk_bus hclk_bus aclk_peri hclk_peri for power

Signed-off-by: Xiao Feng <xf@rock-chips.com>
9 years agoadd RGA param_x when scale down
Shengqin.Zhang [Tue, 23 Jun 2015 12:03:55 +0000 (20:03 +0800)]
add RGA param_x when scale down

Signed-off-by: Shengqin.Zhang <zsq@rock-chips.com>
9 years agoarm64: rockchip: rk3368: dts: add leakage adjust volt support
Xiao Feng [Tue, 23 Jun 2015 11:31:16 +0000 (19:31 +0800)]
arm64: rockchip: rk3368: dts: add leakage adjust volt support

Signed-off-by: Xiao Feng <xf@rock-chips.com>
9 years agoarm64: rockchip: rockchip_defconfig disable SCHED_HMP_LITTLE_PACKING
Huang, Tao [Tue, 23 Jun 2015 09:05:17 +0000 (17:05 +0800)]
arm64: rockchip: rockchip_defconfig disable SCHED_HMP_LITTLE_PACKING

Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
9 years agoHDMI:rk3128/rk3036: fix compile error introduced by pre-commit.
Zheng Yang [Tue, 23 Jun 2015 08:52:17 +0000 (16:52 +0800)]
HDMI:rk3128/rk3036: fix compile error introduced by pre-commit.

hdcp_power_off_cb() was changed by commit
90e99a4c359e2609512feb7433670b10815593b4.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agoHDMI:rk3288/rk3368: support 2nd HDCP authentication.
Zheng Yang [Tue, 23 Jun 2015 08:51:23 +0000 (16:51 +0800)]
HDMI:rk3288/rk3368: support 2nd HDCP authentication.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agoHDMI: modify callback and events for HDCP 2nd auth.
Zheng Yang [Tue, 23 Jun 2015 08:48:52 +0000 (16:48 +0800)]
HDMI: modify callback and events for HDCP 2nd auth.

Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agommc: core: reduce erase event timeout
Shawn Lin [Tue, 23 Jun 2015 01:20:00 +0000 (09:20 +0800)]
mmc: core: reduce erase event timeout

We set wrong discard timeout limitation for erase event
which exceed that block layer does. And jbd warning
can be observed like blow:

INFO: task update_binary:151 blocked for more than 10 seconds.
"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
update_binary   D ffffffc000085674     0   151    134 0x00400008
Call trace:
[<ffffffc000085674>] __switch_to+0x80/0x8c
[<ffffffc00082cb28>] __schedule+0x4e0/0x6f4
[<ffffffc00082cda0>] schedule+0x64/0x70
[<ffffffc00082aea0>] schedule_timeout+0x28/0x250
[<ffffffc00082d2ac>] io_schedule_timeout+0x6c/0xa8
[<ffffffc00082d37c>] wait_for_common_io.constprop.111+0x94/0x114
[<ffffffc00082d41c>] wait_for_completion_io+0xc/0x18
[<ffffffc0002ffb08>] blkdev_issue_discard+0x1e0/0x214
[<ffffffc000300630>] blkdev_ioctl+0x2d0/0x708
[<ffffffc00030d52c>] compat_blkdev_ioctl+0x464/0x5ec
[<ffffffc0001bdf0c>] compat_sys_ioctl+0x104/0x1e8

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agommc: queue: use swap() in mmc_queue_thread()
Fabian Frederick [Wed, 10 Jun 2015 16:30:53 +0000 (18:30 +0200)]
mmc: queue: use swap() in mmc_queue_thread()

Use kernel.h macro definition.

Thanks to Julia Lawall for Coccinelle scripting support.

Signed-off-by: Fabian Frederick <fabf@skynet.be>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
9 years agodts: rk312x-pinctrl: disable IO pull-down for SDIO
Shawn Lin [Fri, 19 Jun 2015 00:54:56 +0000 (08:54 +0800)]
dts: rk312x-pinctrl: disable IO pull-down for SDIO

  Rockchips' platform contain ridiculous and closely
w/o maintained macro in pcl to pave the bumpy way for
other drivers to distinguish VALUE_PULL_UPDOWN_DISABLE
from VALUE_PULL_DISABLE.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Xiao Yao <xiaoyao@rock-chips.com>
Tested-by: Xiao Yao <xiaoyao@rock-chips.com>
Cc: Roger Hu <roger.hu@rock-chips.com>
9 years agommc: core: avoid recovery flow for tuning failure
Shawn Lin [Wed, 17 Jun 2015 10:50:52 +0000 (18:50 +0800)]
mmc: core: avoid recovery flow for tuning failure

  Communication scenario definitely should fail during
tuning procedure. Already does it reset controller, so
we don't need executing recovery for that case.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agommc: card: Fixup request missing in mmc_blk_issue_rw_rq
Ding Wang [Mon, 18 May 2015 12:14:15 +0000 (20:14 +0800)]
mmc: card: Fixup request missing in mmc_blk_issue_rw_rq

The current handler of MMC_BLK_CMD_ERR in mmc_blk_issue_rw_rq function
may cause new coming request permanent missing when the ongoing
request (previoulsy started) complete end.

The problem scenario is as follows:
(1) Request A is ongoing;
(2) Request B arrived, and finally mmc_blk_issue_rw_rq() is called;
(3) Request A encounters the MMC_BLK_CMD_ERR error;
(4) In the error handling of MMC_BLK_CMD_ERR, suppose mmc_blk_cmd_err()
    end request A completed and return zero. Continue the error handling,
    suppose mmc_blk_reset() reset device success;
(5) Continue the execution, while loop completed because variable ret
    is zero now;
(6) Finally, mmc_blk_issue_rw_rq() return without processing request B.

The process related to the missing request may wait that IO request
complete forever, possibly crashing the application or hanging the system.

Fix this issue by starting new request when reset success.

Signed-off-by: Ding Wang <justin.wang@spreadtrum.com>
Fixes: 67716327eec7 ("mmc: block: add eMMC hardware reset support")
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
9 years agommc: core: add timeout for context_info->is_done_rcv
Shawn Lin [Tue, 16 Jun 2015 10:01:40 +0000 (18:01 +0800)]
mmc: core: add timeout for context_info->is_done_rcv

  After dequeue a rq from blk and a accidental rq missing makes
bq->queue fails to fetch blk_rq again since !rq w/o been done.
Whatsoever was that, MUST ensure a schedule mechanisam to break
the dead loop, and issue the missing one again. We observe this
problem, all processes calling aio page writeback or commiting
journal were confined in io_schedule waiting for previous blk rq
to be completed, and cause os stucked.

page:c1337420 count:3 mapcount:0 mapping:dc8fdc34 index:0x502
page flags: 0x4000286c(referenced|uptodate|lru|active|private|writeback)
sleep_on_page: inode: dc8fdb58, 119091
CPU: 3 PID: 199 Comm: abc Not tainted 3.10.0 #298
[<c0013e44>] (unwind_backtrace+0x0/0xe0) from [<c001175c>] (show_stack+0x10/0x14)
[<c001175c>] (show_stack+0x10/0x14) from [<c00cadb8>] (sleep_on_page+0x6c/0x8c)
[<c00cadb8>] (sleep_on_page+0x6c/0x8c) from [<c0769a80>] (__wait_on_bit+0x54/0xa0)
[<c0769a80>] (__wait_on_bit+0x54/0xa0) from [<c00ca88c>] (wait_on_page_bit+0x8c/0x9c)
[<c00ca88c>] (wait_on_page_bit+0x8c/0x9c) from [<c00ca954>] (filemap_fdatawait_range+0x6c/0x110)
[<c00ca954>] (filemap_fdatawait_range+0x6c/0x110) from [<c00cbd8c>] (filemap_write_and_wait_range+0x54/0x78)
[<c00cbd8c>] (filemap_write_and_wait_range+0x54/0x78) from [<c0182e14>] (ext4_sync_file+0xdc/0x308)
[<c0182e14>] (ext4_sync_file+0xdc/0x308) from [<c01305f8>] (vfs_fsync_range+0x34/0x44)
[<c01305f8>] (vfs_fsync_range+0x34/0x44) from [<c01306b0>] (generic_write_sync+0x80/0x88)
[<c01306b0>] (generic_write_sync+0x80/0x88) from [<c00cc3fc>] (generic_file_aio_write+0xa0/0xb0)
[<c00cc3fc>] (generic_file_aio_write+0xa0/0xb0) from [<c0109198>] (do_sync_write+0x74/0x98)
[<c0109198>] (do_sync_write+0x74/0x98) from [<c0109ab8>] (vfs_write+0xd4/0x16c)
[<c0109ab8>] (vfs_write+0xd4/0x16c) from [<c0109df8>] (SyS_write+0x3c/0x60)
[<c0109df8>] (SyS_write+0x3c/0x60) from [<c000da00>] (ret_fast_syscall+0x0/0x30)

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Tested-by: Meiyou Chen <cmy@rock-chips.com>
9 years agommc: rk_sdmmc: remove edmac init in post tmo and data->stop
Shawn Lin [Fri, 12 Jun 2015 06:16:31 +0000 (14:16 +0800)]
mmc: rk_sdmmc: remove edmac init in post tmo and data->stop

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agommc: rk_sdmmc: add new property for mmc_assume_removable
Shawn Lin [Tue, 9 Jun 2015 08:15:28 +0000 (16:15 +0800)]
mmc: rk_sdmmc: add new property for mmc_assume_removable

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agommc: core: limit tuning block timeout
Shawn Lin [Mon, 8 Jun 2015 09:52:06 +0000 (17:52 +0800)]
mmc: core: limit tuning block timeout

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agodts: rockchip: add tune_regsbase for mmc
Shawn Lin [Mon, 8 Jun 2015 09:25:57 +0000 (17:25 +0800)]
dts: rockchip: add tune_regsbase for mmc

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agommc: host: Add facility to support re-tuning
Shawn Lin [Mon, 8 Jun 2015 09:20:01 +0000 (17:20 +0800)]
mmc: host: Add facility to support re-tuning

  This commit comes from community but not upstreram.
We cannot wait for picking up such a great movement without
upstream admit it. We just take a light way to merge it and
minimize the change.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: xiaoyao <xiaoyao@rock-chips.com>
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
9 years agommc: rk_sdmmc: new tuning policy
Shawn Lin [Mon, 8 Jun 2015 08:04:20 +0000 (16:04 +0800)]
mmc: rk_sdmmc: new tuning policy

  Totally new tuning policy for rockchip mhsc
merging from upstream and sustainable experiments
conducted by massive test using tier one customers's board.
This fine ajustment might be more durable and readable.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Xiao Yao <xiaoyao@rock-chips.com>
Test-by: Xiao Yao <xiaoyao@rock-chips.com>
9 years agommc: rk_sdmmc: local reversion and code regulation
Shawn Lin [Wed, 3 Jun 2015 09:16:03 +0000 (17:16 +0800)]
mmc: rk_sdmmc: local reversion and code regulation

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
9 years agoRK3368 GPU version: Rogue L 0.18
zxl [Tue, 23 Jun 2015 01:11:36 +0000 (09:11 +0800)]
RK3368 GPU version: Rogue L 0.18
If fix freq,then don't force to drop freq to the lowest.

9 years agodts: rk3368-p9_818: modify DVFS table for gpu, if not so, reboot test would be failed...
Aiyoujun [Tue, 23 Jun 2015 00:47:55 +0000 (08:47 +0800)]
dts: rk3368-p9_818: modify DVFS table for gpu, if not so, reboot test would be failed sometimes.

Signed-off-by: Aiyoujun <ayj@rock-chips.com>
9 years agousb: bc: add battery charger detect head file
lyz [Fri, 19 Jun 2015 11:26:30 +0000 (19:26 +0800)]
usb: bc: add battery charger detect head file

Signed-off-by: lyz <lyz@rock-chips.com>
9 years agousb: dwc_otg: prevent re-submit urb when disconnect detected
lyz [Fri, 19 Jun 2015 11:08:44 +0000 (19:08 +0800)]
usb: dwc_otg: prevent re-submit urb when disconnect detected

Signed-off-by: lyz <lyz@rock-chips.com>
9 years agovop: full: update win direct enable function
hjc [Fri, 19 Jun 2015 06:22:42 +0000 (14:22 +0800)]
vop: full: update win direct enable function

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agork fb: when switch screen,should not close vop,this will lead to close clk
hjc [Fri, 19 Jun 2015 06:18:36 +0000 (14:18 +0800)]
rk fb: when switch screen,should not close vop,this will lead to close clk
       just need to close all win

Signed-off-by: hjc <hjc@rock-chips.com>
9 years agortl8188eu: update driver to v4.3.0.8_13968.20150417
hwg [Thu, 18 Jun 2015 10:28:07 +0000 (18:28 +0800)]
rtl8188eu: update driver to v4.3.0.8_13968.20150417

9 years agodefconfig: add dcdc eta3555
huang zhibao [Thu, 18 Jun 2015 10:06:40 +0000 (18:06 +0800)]
defconfig: add dcdc eta3555

9 years agoregulator: add eta3555 support
huang zhibao [Thu, 18 Jun 2015 09:55:55 +0000 (17:55 +0800)]
regulator: add eta3555 support

9 years agotve:rk1000:modify suspend and resume condition
ShenZhengyi [Thu, 18 Jun 2015 09:08:56 +0000 (17:08 +0800)]
tve:rk1000:modify suspend and resume condition

Signed-off-by: ShenZhengyi <szy@rock-chips.com>
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agotve:rk1000: Fix code style
ShenZhengyi [Thu, 18 Jun 2015 09:01:22 +0000 (17:01 +0800)]
tve:rk1000: Fix code style

Signed-off-by: ShenZhengyi <szy@rock-chips.com>
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
9 years agobcmdhd wifi: add auto recognize different chips
hwg [Thu, 18 Jun 2015 09:30:23 +0000 (17:30 +0800)]
bcmdhd wifi: add auto recognize different chips

9 years agork3368: TP: Forget to remove source drivers/input/touchscreen/gt9xx/Kconfig.
xubilv [Thu, 18 Jun 2015 09:11:53 +0000 (17:11 +0800)]
rk3368: TP: Forget to remove source drivers/input/touchscreen/gt9xx/Kconfig.

Signed-off-by: xubilv <xbl@rock-chips.com>
9 years agodts: add rk3368-tb_mipi.dts to support new SDK top board
hcy [Thu, 18 Jun 2015 07:56:02 +0000 (15:56 +0800)]
dts: add rk3368-tb_mipi.dts to support new SDK top board

Signed-off-by: hecanyang <hcy@rock-chips.com>
9 years agodvfs: rockchip: if can not get regulator, set regulator=NULL
Xiao Feng [Thu, 18 Jun 2015 07:39:19 +0000 (15:39 +0800)]
dvfs: rockchip: if can not get regulator, set regulator=NULL

Signed-off-by: Xiao Feng <xf@rock-chips.com>
9 years agoclocksource: rockchip_timer: set clockevent irq flags include IRQF_PERCPU
Huang, Tao [Thu, 18 Jun 2015 07:21:53 +0000 (15:21 +0800)]
clocksource: rockchip_timer: set clockevent irq flags include IRQF_PERCPU

Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
9 years agoRK3368: TP: use dts to control the difference between GT9XX.
xubilv [Thu, 18 Jun 2015 03:38:19 +0000 (11:38 +0800)]
RK3368: TP: use dts to control the difference between GT9XX.

Signed-off-by: xubilv <xbl@rock-chips.com>
9 years agork3368-tb_8846: dts: modify battery node
Jianhong Chen [Wed, 17 Jun 2015 06:02:46 +0000 (14:02 +0800)]
rk3368-tb_8846: dts: modify battery node

1) add dc det pinctrl
2) disable usb adapter
3) set input charge current 3000mA

Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
9 years agopower: rk81x-battery: fix dwc_otg_check_dpdm declare error
Jianhong Chen [Wed, 17 Jun 2015 01:50:10 +0000 (09:50 +0800)]
power: rk81x-battery: fix dwc_otg_check_dpdm declare error

Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
9 years agopower: rk81x battery: fix charger online init
Andy Yan [Mon, 8 Jun 2015 01:38:49 +0000 (09:38 +0800)]
power: rk81x battery: fix charger online init

if the system boot with charger online, use it
as init state for power_supply_register

Signed-off-by: Andy Yan <yxj@rock-chips.com>
Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
9 years agopower: rk81x battery: fix charge/discharge check in reboot mode
Andy Yan [Thu, 11 Jun 2015 07:19:53 +0000 (15:19 +0800)]
power: rk81x battery: fix charge/discharge check in reboot mode

judge charge/discharge mode by current direction

Signed-off-by: Andy Yan <yxj@rock-chips.com>
Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
9 years agopower: rk81x battery: skip invalid voltage
Andy Yan [Fri, 12 Jun 2015 00:44:52 +0000 (08:44 +0800)]
power: rk81x battery: skip invalid voltage

rk81x battery may get invalid value when resume from suspend,
if the voltage get from adc is lower than INVALID_VOL_THRESD,
we consider it as invalid and filter it

Signed-off-by: Andy Yan <yxj@rock-chips.com>
Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
9 years agopower: rk81x-battery: disable charge over time funtion
Jianhong Chen [Thu, 11 Jun 2015 13:40:48 +0000 (21:40 +0800)]
power: rk81x-battery: disable charge over time funtion

Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
9 years agopower: rk81x-battery: count all avaraible rsoc into calc
Jianhong Chen [Tue, 16 Jun 2015 13:26:39 +0000 (21:26 +0800)]
power: rk81x-battery: count all avaraible rsoc into calc

Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
9 years agopower: rk81x-battery: get charge flag by command line
Jianhong Chen [Tue, 16 Jun 2015 08:58:12 +0000 (16:58 +0800)]
power: rk81x-battery: get charge flag by command line

Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>
9 years agopower: rk81x battery: add virtual power support
Andy Yan [Wed, 10 Jun 2015 03:41:07 +0000 (11:41 +0800)]
power: rk81x battery: add virtual power support

if some board don't use a real fuel gauge, set virtual_power
in dts, the battery driver will report virtural soc to user space

Signed-off-by: Andy Yan <yxj@rock-chips.com>
Signed-off-by: Jianhong Chen <chenjh@rock-chips.com>