firefly-linux-kernel-4.4.55.git
10 years agocamsys_drv: v0.d.0
ddl [Tue, 10 Jun 2014 01:43:23 +0000 (09:43 +0800)]
camsys_drv: v0.d.0

10 years agopl330 : fix ifdef error
qjb [Tue, 10 Jun 2014 01:42:08 +0000 (09:42 +0800)]
pl330 : fix ifdef error

10 years agoaudio soc dma : add audio getposition dma
qjb [Tue, 10 Jun 2014 01:17:55 +0000 (09:17 +0800)]
audio soc dma : add audio getposition dma

10 years agocamsys_drv:v0.c.0 camsys_head:v0.7.0
zyc [Thu, 5 Jun 2014 00:48:02 +0000 (08:48 +0800)]
camsys_drv:v0.c.0 camsys_head:v0.7.0

10 years agoUSB: fix usb host hot-plug bug.
wlf [Mon, 9 Jun 2014 01:40:06 +0000 (09:40 +0800)]
USB: fix usb host hot-plug bug.

10 years agork808: fix deadlock when shutown or reboot
黄涛 [Fri, 6 Jun 2014 10:50:11 +0000 (18:50 +0800)]
rk808: fix deadlock when shutown or reboot

When shutdown, rk808 driver shutdown first, so io_lock mutex is locked.
At same time, gpu change freq by runtime pm, will locked on rk808_reg_read.
Finally, gpu device shutdown, call pm_runtime_barrier. Deadlock happens.

Fix this bug by make rk808 shutdown later.

  task                PC stack   pid father
init            D c06e9a14     0     1      0 0x00000000
[<c06e9a14>] (__schedule+0x48c/0x554) from [<c02e281c>] (__pm_runtime_barrier+0x114/0x138)
[<c02e281c>] (__pm_runtime_barrier+0x114/0x138) from [<c02e3cf4>] (pm_runtime_barrier+0x68/0xb8)
[<c02e3cf4>] (pm_runtime_barrier+0x68/0xb8) from [<c02d85ac>] (device_shutdown+0xa0/0x190)
[<c02d85ac>] (device_shutdown+0xa0/0x190) from [<c0042128>] (kernel_restart+0xc/0x50)
[<c0042128>] (kernel_restart+0xc/0x50) from [<c00422c4>] (SyS_reboot+0x150/0x1b0)
[<c00422c4>] (SyS_reboot+0x150/0x1b0) from [<c000da00>] (ret_fast_syscall+0x0/0x30)
kworker/2:1     D c06e9a14     0    32      2 0x00000000
Workqueue: pm pm_runtime_work
[<c06e9a14>] (__schedule+0x48c/0x554) from [<c06e9ec0>] (schedule_preempt_disabled+0x24/0x34)
[<c06e9ec0>] (schedule_preempt_disabled+0x24/0x34) from [<c06e8bf8>] (__mutex_lock_slowpath+0x1c0/0x22c)
[<c06e8bf8>] (__mutex_lock_slowpath+0x1c0/0x22c) from [<c06e8c94>] (mutex_lock+0x30/0x48)
[<c06e8c94>] (mutex_lock+0x30/0x48) from [<c02f0dbc>] (rk808_reg_read+0x24/0x5c)
[<c02f0dbc>] (rk808_reg_read+0x24/0x5c) from [<c02f0fa8>] (rk808_dcdc_is_enabled+0x28/0x38)
[<c02f0fa8>] (rk808_dcdc_is_enabled+0x28/0x38) from [<c02a6acc>] (_regulator_is_enabled+0x34/0x40)
[<c02a6acc>] (_regulator_is_enabled+0x34/0x40) from [<c02a6c50>] (_regulator_do_set_voltage+0xbc/0x3e4)
[<c02a6c50>] (_regulator_do_set_voltage+0xbc/0x3e4) from [<c02a7c1c>] (regulator_set_voltage+0xc0/0xe0)
[<c02a7c1c>] (regulator_set_voltage+0xc0/0xe0) from [<c0027b7c>] (dvfs_regulator_set_voltage_readback.isra.6+0x14/0x8c)
[<c0027b7c>] (dvfs_regulator_set_voltage_readback.isra.6+0x14/0x8c) from [<c0027d5c>] (dvfs_scale_volt_direct+0xa0/0xc4)
[<c0027d5c>] (dvfs_scale_volt_direct+0xa0/0xc4) from [<c0027f24>] (dvfs_target+0x1a4/0x1d4)
[<c0027f24>] (dvfs_target+0x1a4/0x1d4) from [<c00273e8>] (dvfs_clk_set_rate+0x44/0x80)
[<c00273e8>] (dvfs_clk_set_rate+0x44/0x80) from [<c02c1388>] (mali_dvfs_clk_set+0x28/0x48)
[<c02c1388>] (mali_dvfs_clk_set+0x28/0x48) from [<c02c01f4>] (kbase_platform_dvfs_set_level+0x9c/0xe0)
[<c02c01f4>] (kbase_platform_dvfs_set_level+0x9c/0xe0) from [<c02c032c>] (kbase_platform_dvfs_enable+0xf4/0x110)
[<c02c032c>] (kbase_platform_dvfs_enable+0xf4/0x110) from [<c02bf908>] (pm_callback_runtime_off+0x3c/0x58)
[<c02bf908>] (pm_callback_runtime_off+0x3c/0x58) from [<c02d2650>] (kbase_device_runtime_suspend+0x24/0x34)
[<c02d2650>] (kbase_device_runtime_suspend+0x24/0x34) from [<c02de738>] (pm_generic_runtime_suspend+0x2c/0x40)
[<c02de738>] (pm_generic_runtime_suspend+0x2c/0x40) from [<c02e25c4>] (__rpm_callback+0x38/0x68)
[<c02e25c4>] (__rpm_callback+0x38/0x68) from [<c02e2658>] (rpm_callback+0x64/0x7c)
[<c02e2658>] (rpm_callback+0x64/0x7c) from [<c02e3210>] (rpm_suspend+0x2d8/0x534)
[<c02e3210>] (rpm_suspend+0x2d8/0x534) from [<c02e3e60>] (pm_runtime_work+0x7c/0x94)
[<c02e3e60>] (pm_runtime_work+0x7c/0x94) from [<c004773c>] (process_one_work+0x29c/0x458)
[<c004773c>] (process_one_work+0x29c/0x458) from [<c0047a8c>] (worker_thread+0x194/0x2d4)
[<c0047a8c>] (worker_thread+0x194/0x2d4) from [<c004cf74>] (kthread+0xa0/0xac)
[<c004cf74>] (kthread+0xa0/0xac) from [<c000da98>] (ret_from_fork+0x14/0x3c)

10 years agocolor_fill_mode mmu
huangds [Fri, 6 Jun 2014 10:18:58 +0000 (18:18 +0800)]
color_fill_mode mmu

10 years agork fb: fix 10 bit yuv video play err
zwl [Fri, 6 Jun 2014 09:57:21 +0000 (17:57 +0800)]
rk fb: fix 10 bit yuv video play err

10 years agoARM: rockchip: fix building without CONFIG_INPUT, CONFIG_CPU_FREQ, CONFIG_FB_ROCKCHIP
黄涛 [Fri, 6 Jun 2014 09:26:20 +0000 (17:26 +0800)]
ARM: rockchip: fix building without CONFIG_INPUT, CONFIG_CPU_FREQ, CONFIG_FB_ROCKCHIP

10 years agork32 lcdc: add cabc other mode
zwl [Fri, 6 Jun 2014 08:15:50 +0000 (16:15 +0800)]
rk32 lcdc: add cabc other mode

10 years ago ddr_rk32.c: addition fix system reboot stop at DDR_DEBUG information
hcy [Fri, 6 Jun 2014 07:42:34 +0000 (15:42 +0800)]
ddr_rk32.c: addition fix system reboot stop at DDR_DEBUG information

10 years agodel RGA suppot iommu releate to IOMMU must be open
zsq [Fri, 6 Jun 2014 06:27:51 +0000 (14:27 +0800)]
del RGA suppot iommu releate to IOMMU must be open

10 years agork3288:pmic:act8846:modify shutdown func
张晴 [Fri, 6 Jun 2014 03:44:48 +0000 (11:44 +0800)]
rk3288:pmic:act8846:modify shutdown func

10 years agork3288:pmic:ricoh619:modify some warning
张晴 [Fri, 6 Jun 2014 03:09:24 +0000 (11:09 +0800)]
rk3288:pmic:ricoh619:modify some warning

10 years agork3288:pmic:ricoh619:add some lock and modify suspend func
张晴 [Fri, 6 Jun 2014 03:04:37 +0000 (11:04 +0800)]
rk3288:pmic:ricoh619:add some lock and modify suspend func

10 years agork3288 hdmi: modify pinctrl gpio state to sleep state
zwl [Fri, 6 Jun 2014 02:08:59 +0000 (10:08 +0800)]
rk3288 hdmi: modify pinctrl gpio state to sleep state

10 years agofixed: uart and gic resume for sleep mode
xxx [Fri, 6 Jun 2014 02:03:09 +0000 (10:03 +0800)]
fixed: uart and gic resume for sleep mode

10 years agork3288 hdmi: add iomux to gpio and pull down when suspend
zwl [Fri, 6 Jun 2014 00:49:13 +0000 (08:49 +0800)]
rk3288 hdmi: add iomux to gpio and pull down when suspend

10 years agoSDMMC: fix pad can not power down with sdmmc card insert
xjh [Thu, 5 Jun 2014 11:30:22 +0000 (19:30 +0800)]
SDMMC:  fix pad can not power down with sdmmc card insert

10 years agofix rga 2 compile bug
zsq [Thu, 5 Jun 2014 11:10:15 +0000 (19:10 +0800)]
fix rga 2 compile bug

10 years agommc: host:rk_sdmmc:
lintao [Thu, 5 Jun 2014 10:41:32 +0000 (18:41 +0800)]
mmc: host:rk_sdmmc:
wifi: SDIO use flags to detect card-in or card-remove.If
tagged up wifi and off, then go into deep suspend and resume, we
do not judge if wifi is on or off, this will crash pm.resume for
drivers cannot access register without hclk_mmc.

   [  357.835059] 1192..dw_mci_set_ios:  no card. [mmc1]
   [  358.322686] dwmmc_rockchip ff0d0000.rksdmmc: Timeout resetting block (ctrl reset 0x1)
   [  358.322792] dpm_run_callback(): platform_pm_resume+0x0/0x54 returns -19
   [  358.322813] PM: Device ff0d0000.rksdmmc failed to resume: error -19

   Fix it by default return success state to pm.resume if wifi off in SDIO slot

10 years agoadd rga iommu support
zsq [Thu, 5 Jun 2014 08:57:04 +0000 (16:57 +0800)]
add rga iommu support

10 years agork3288:pmic:act8846:support power off when charger;ricoh619:add protect for i2c error
张晴 [Thu, 5 Jun 2014 08:32:51 +0000 (16:32 +0800)]
rk3288:pmic:act8846:support power off when charger;ricoh619:add protect for i2c error

10 years agommc: host:rk_sdmmc: move out effect to sd/sdio
lintao [Thu, 5 Jun 2014 08:02:21 +0000 (16:02 +0800)]
mmc: host:rk_sdmmc: move out effect to sd/sdio

10 years agommc: host: rk_sdmmc:
lintao [Thu, 5 Jun 2014 05:28:15 +0000 (13:28 +0800)]
mmc: host: rk_sdmmc:
[IMPORTANT COMMIT]
        (1) Complete HS200 tuning algorithm for better performance & stability
        (2) Auto workaround for error emmc clk settingin dts by Linux BSP engineer.
        (3) Fixme: BUG on HS-DDR50 eMMC with div = 0

10 years agork: ion: resolve sg table alloc failed if ion's vmalloc heap is used
CMY [Thu, 5 Jun 2014 04:04:47 +0000 (12:04 +0800)]
rk: ion: resolve sg table alloc failed if ion's vmalloc heap is used

10 years agoRevert "rk: ion: resolve sg table alloc failed when iommu has enable"
CMY [Thu, 5 Jun 2014 03:55:15 +0000 (11:55 +0800)]
Revert "rk: ion: resolve sg table alloc failed when iommu has enable"

This reverts commit d5479ef94730a2898ac0ae3dcf7518448eaa401e.

10 years agork32 dts: add cabc mode prop in lcdc node
zwl [Thu, 5 Jun 2014 01:10:28 +0000 (09:10 +0800)]
rk32 dts: add cabc mode prop in lcdc node

10 years agork32-lcdc: improve the cabc function
zwl [Thu, 5 Jun 2014 00:51:57 +0000 (08:51 +0800)]
rk32-lcdc: improve the cabc function

10 years agork: ion: fix ion.h build warnings
黄涛 [Wed, 4 Jun 2014 12:30:43 +0000 (20:30 +0800)]
rk: ion: fix ion.h build warnings

10 years agodma soc audio : add support dma infiniteloop mode
qjb [Wed, 4 Jun 2014 10:17:08 +0000 (18:17 +0800)]
dma soc audio : add support dma infiniteloop mode
soc audio rockchip default use infiniteloop mode

10 years agosoc dma : add audio dma timeout debuginterface
qjb [Wed, 4 Jun 2014 02:46:12 +0000 (10:46 +0800)]
soc dma : add audio dma timeout debuginterface

10 years ago fix system reboot stop at DDR_DEBUG information
hcy [Tue, 3 Jun 2014 08:54:13 +0000 (16:54 +0800)]
 fix system reboot stop at DDR_DEBUG information

10 years agop977: pmic:modify gpu not always on by defult
郭毅 [Tue, 3 Jun 2014 08:47:44 +0000 (16:47 +0800)]
p977: pmic:modify gpu not always on by defult

10 years agork3288:pmic:modify gpu not always on by defult
张晴 [Tue, 3 Jun 2014 08:09:05 +0000 (16:09 +0800)]
rk3288:pmic:modify gpu not always on by defult

10 years agodiable vdd_gpu when early suspend
陈亮 [Tue, 3 Jun 2014 07:16:11 +0000 (00:16 -0700)]
diable vdd_gpu when early suspend

10 years agoddrfreq: ddr enter auto_self_refresh when early suspend
陈亮 [Tue, 3 Jun 2014 06:41:46 +0000 (23:41 -0700)]
ddrfreq: ddr enter auto_self_refresh when early suspend

10 years agoi2s : fix i2s suspend resume set error
qjb [Tue, 3 Jun 2014 03:05:21 +0000 (11:05 +0800)]
i2s : fix i2s suspend resume set error

10 years agork: ion: resolve snapshot error and enable it by default
CMY [Sat, 31 May 2014 05:48:09 +0000 (13:48 +0800)]
rk: ion: resolve snapshot error and enable it by default

10 years agorockchip:midgard:update to r4p1_01dev0
xxm [Sat, 31 May 2014 02:45:08 +0000 (10:45 +0800)]
rockchip:midgard:update to r4p1_01dev0

10 years agoARM: rockchip: set default reboot flag as BOOT_NORMAL
黄涛 [Sat, 31 May 2014 02:37:12 +0000 (10:37 +0800)]
ARM: rockchip: set default reboot flag as BOOT_NORMAL

10 years agorockchip:midgard:disable temperature control temporarily
xxm [Fri, 30 May 2014 06:48:27 +0000 (14:48 +0800)]
rockchip:midgard:disable temperature control temporarily

10 years agork fb: modify acq_fence wait
zwl [Fri, 30 May 2014 03:43:33 +0000 (11:43 +0800)]
rk fb: modify acq_fence wait

10 years agork fb: remove xvir align that have moved to hwc
zwl [Fri, 30 May 2014 02:01:57 +0000 (10:01 +0800)]
rk fb: remove xvir align that have moved to hwc

10 years agork fb: modify some danger code
zwl [Thu, 29 May 2014 12:37:54 +0000 (20:37 +0800)]
rk fb: modify some danger code

10 years agork fb: coding style for upstream
zwl [Thu, 29 May 2014 12:14:14 +0000 (20:14 +0800)]
rk fb: coding style for upstream

10 years agoARM: rockchip: rockchip_defconfig enable SWP_EMULATE
黄涛 [Thu, 29 May 2014 06:53:13 +0000 (14:53 +0800)]
ARM: rockchip: rockchip_defconfig enable SWP_EMULATE

10 years agop977_8846: dts: recovery brightness
郭毅 [Thu, 29 May 2014 01:07:18 +0000 (09:07 +0800)]
p977_8846: dts: recovery brightness

10 years agork hdmi: coding style for upstream
zwl [Thu, 29 May 2014 03:10:09 +0000 (11:10 +0800)]
rk hdmi: coding style for upstream

10 years agop977: dts: open i2c3 to make camera work fine
郭毅 [Thu, 29 May 2014 01:51:52 +0000 (09:51 +0800)]
p977: dts: open i2c3 to make camera work fine

10 years agoclk: rk3288: when apll change rate, adjust div to make rate change more gently
dkl [Wed, 28 May 2014 09:45:06 +0000 (17:45 +0800)]
clk: rk3288: when apll change rate, adjust div to make rate change more gently

10 years agoclk: rockchip: add rk3188plus_pll_com_table and some marcos, to
dkl [Wed, 28 May 2014 07:02:42 +0000 (15:02 +0800)]
clk: rockchip: add rk3188plus_pll_com_table and some marcos, to
separate CLK_PLL_3188PLUS pll type from CLK_PLL_3188 better.

10 years agocamsys driver: v0.b.0
zyc [Wed, 28 May 2014 05:54:41 +0000 (13:54 +0800)]
camsys driver: v0.b.0

10 years agommc: host: rk_sdmmc:
lintao [Wed, 28 May 2014 00:31:14 +0000 (08:31 +0800)]
mmc: host: rk_sdmmc:
Use clk subsystem interface to judge enable_cnt refer number

10 years agommc: host: rk_sdmmc.c
lintao [Wed, 28 May 2014 00:18:14 +0000 (08:18 +0800)]
mmc: host: rk_sdmmc.c
Fix 67f4bf0667d and move sdio-relative clk managerment in
dw_mci_set_sdio_status.

10 years agoARM: PIE: empty.S add __gnu_mcount_nc, fix for function tracer
黄涛 [Tue, 27 May 2014 10:36:21 +0000 (18:36 +0800)]
ARM: PIE: empty.S add __gnu_mcount_nc, fix for function tracer

10 years agoARM: rockchip: fix for function tracer
黄涛 [Tue, 27 May 2014 10:33:26 +0000 (18:33 +0800)]
ARM: rockchip: fix for function tracer

10 years agop977: dts: disabled unused spi and i2c to reducing power consumption
郭毅 [Tue, 27 May 2014 09:43:51 +0000 (17:43 +0800)]
p977: dts: disabled unused spi and i2c to reducing power consumption

10 years agork: bt: to solve problem that bluetooth can not wake up system
CMY [Tue, 27 May 2014 09:35:47 +0000 (17:35 +0800)]
rk: bt: to solve problem that bluetooth can not wake up system

10 years agork32 lcdc and hdmi: add report rk system status
zwl [Tue, 27 May 2014 09:03:50 +0000 (17:03 +0800)]
rk32 lcdc and hdmi: add report rk system status

10 years agork3288:pmic:rk808&act8846:slove init suspend and resume when device init failed;modif...
张晴 [Tue, 27 May 2014 09:02:31 +0000 (17:02 +0800)]
rk3288:pmic:rk808&act8846:slove init suspend and resume when device init failed;modify rk808 shutdown func

10 years agoARM: rockchip: show Processor on cpuinfo, for some Andorid QQ games
黄涛 [Tue, 27 May 2014 08:52:03 +0000 (16:52 +0800)]
ARM: rockchip: show Processor on cpuinfo, for some Andorid QQ games

10 years agofs: partitions:
lintao [Tue, 27 May 2014 08:32:17 +0000 (16:32 +0800)]
fs: partitions:
        Fix new partitions size limit bug. Make no sense compare sector_t size
    to PAGE_SIZE, and that will fail partition add when too small part definition in
    parameter. Now, NO LIMIT for partition size.

10 years agork3288 lcdc: add support BCSH func
hjc [Tue, 27 May 2014 08:03:59 +0000 (16:03 +0800)]
rk3288 lcdc: add support BCSH func

10 years agoMerge branch 'develop-3.10' of ssh://10.10.10.29/rk/kernel into develop-3.10
陈亮 [Tue, 27 May 2014 06:35:41 +0000 (23:35 -0700)]
Merge branch 'develop-3.10' of ssh://10.10.10.29/rk/kernel into develop-3.10

10 years ago1.add rk_system_status.c, listen system status ,and prepare something for new status...
陈亮 [Tue, 27 May 2014 06:32:01 +0000 (23:32 -0700)]
1.add rk_system_status.c, listen system status ,and prepare something for new status. 2.serialize ddrfreq, ensure that change ddrfreq is done before enter new status

10 years agoP977_8846: dts: updata cw2015's parameters
郭毅 [Tue, 27 May 2014 06:23:07 +0000 (14:23 +0800)]
P977_8846: dts: updata cw2015's parameters

10 years agork3288 hdmi: coding style for upstream
zwl [Tue, 27 May 2014 03:48:09 +0000 (11:48 +0800)]
rk3288 hdmi: coding style for upstream

10 years agork3288:pmic:ricoh619:modify some warning
张晴 [Tue, 27 May 2014 01:28:18 +0000 (09:28 +0800)]
rk3288:pmic:ricoh619:modify some warning

10 years agork fb: add ion unmap for fb
zwl [Mon, 26 May 2014 13:30:16 +0000 (21:30 +0800)]
rk fb: add ion unmap for fb

10 years agommc: host: rk_sdmmc:
lintao [Mon, 26 May 2014 09:05:06 +0000 (17:05 +0800)]
mmc: host: rk_sdmmc:
Fix clk enable/disable mismatch issue and disable clk when controller
doesn't been used ever for better power consumption.

10 years agork3288:pmic:ricoh619:slove reboot i2c error;modify power off;slove fg 100%
张晴 [Mon, 26 May 2014 08:32:01 +0000 (16:32 +0800)]
rk3288:pmic:ricoh619:slove reboot i2c error;modify power off;slove fg 100%

10 years agork3288: judge mmu status when deinitialize register structure
ljf [Mon, 26 May 2014 07:28:11 +0000 (15:28 +0800)]
rk3288: judge mmu status when deinitialize register structure

10 years agodvfs: avoid round a rate two times since it may cause round wrong value at second...
陈亮 [Mon, 26 May 2014 02:36:50 +0000 (19:36 -0700)]
dvfs: avoid round a rate two times since it may cause round wrong value at second time

10 years agofix primary screen display crash when playing video and just insert HDMI
zwl [Sat, 24 May 2014 07:55:56 +0000 (15:55 +0800)]
fix primary screen display crash when playing video and just insert HDMI

10 years agork: ion: resolve sg table alloc failed when iommu has enable
CMY [Fri, 23 May 2014 10:25:30 +0000 (18:25 +0800)]
rk: ion: resolve sg table alloc failed when iommu has enable

10 years agoARM: rockchip: add support bootloader charge
黄涛 [Fri, 23 May 2014 07:16:41 +0000 (15:16 +0800)]
ARM: rockchip: add support bootloader charge

10 years agork3288: raise logic to 1.1V when vop work
陈亮 [Fri, 23 May 2014 06:33:34 +0000 (23:33 -0700)]
rk3288: raise logic to 1.1V when vop work

10 years agortc: HYM8563: fix double free bug when probe failed
黄涛 [Fri, 23 May 2014 06:13:55 +0000 (14:13 +0800)]
rtc: HYM8563: fix double free bug when probe failed

10 years agorockchip:midgard:1,fix division by zero when gpu freq table have only one item 2...
xxm [Fri, 23 May 2014 03:18:12 +0000 (11:18 +0800)]
rockchip:midgard:1,fix division by zero when gpu freq table have only one item 2,add temperature control when reach 110

10 years agocamsys_drv: v0.a.0
ddl [Fri, 23 May 2014 01:18:42 +0000 (09:18 +0800)]
camsys_drv: v0.a.0

10 years agobdi: avoid oops on device removal
Jan Kara [Thu, 3 Apr 2014 21:46:23 +0000 (14:46 -0700)]
bdi: avoid oops on device removal

commit 5acda9d12dcf1ad0d9a5a2a7c646de3472fa7555 upstream.

After commit 839a8e8660b6 ("writeback: replace custom worker pool
implementation with unbound workqueue") when device is removed while we
are writing to it we crash in bdi_writeback_workfn() ->
set_worker_desc() because bdi->dev is NULL.

This can happen because even though bdi_unregister() cancels all pending
flushing work, nothing really prevents new ones from being queued from
balance_dirty_pages() or other places.

Fix the problem by clearing BDI_registered bit in bdi_unregister() and
checking it before scheduling of any flushing work.

Fixes: 839a8e8660b6777e7fe4e80af1a048aebe2b5977
Reviewed-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Jan Kara <jack@suse.cz>
Cc: Derek Basehore <dbasehore@chromium.org>
Cc: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit bf0972039ddc483a9cb79edae73076c635876568)

10 years agobacking_dev: fix hung task on sync
Derek Basehore [Thu, 3 Apr 2014 21:46:22 +0000 (14:46 -0700)]
backing_dev: fix hung task on sync

commit 6ca738d60c563d5c6cf6253ee4b8e76fa77b2b9e upstream.

bdi_wakeup_thread_delayed() used the mod_delayed_work() function to
schedule work to writeback dirty inodes.  The problem with this is that
it can delay work that is scheduled for immediate execution, such as the
work from sync_inodes_sb().  This can happen since mod_delayed_work()
can now steal work from a work_queue.  This fixes the problem by using
queue_delayed_work() instead.  This is a regression caused by commit
839a8e8660b6 ("writeback: replace custom worker pool implementation with
unbound workqueue").

The reason that this causes a problem is that laptop-mode will change
the delay, dirty_writeback_centisecs, to 60000 (10 minutes) by default.
In the case that bdi_wakeup_thread_delayed() races with
sync_inodes_sb(), sync will be stopped for 10 minutes and trigger a hung
task.  Even if dirty_writeback_centisecs is not long enough to cause a
hung task, we still don't want to delay sync for that long.

We fix the problem by using queue_delayed_work() when we want to
schedule writeback sometime in future.  This function doesn't change the
timer if it is already armed.

For the same reason, we also change bdi_writeback_workfn() to
immediately queue the work again in the case that the work_list is not
empty.  The same problem can happen if the sync work is run on the
rescue worker.

[jack@suse.cz: update changelog, add comment, use bdi_wakeup_thread_delayed()]
Signed-off-by: Derek Basehore <dbasehore@chromium.org>
Reviewed-by: Jan Kara <jack@suse.cz>
Cc: Alexander Viro <viro@zento.linux.org.uk>
Reviewed-by: Tejun Heo <tj@kernel.org>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: "Darrick J. Wong" <darrick.wong@oracle.com>
Cc: Derek Basehore <dbasehore@chromium.org>
Cc: Kees Cook <keescook@chromium.org>
Cc: Benson Leung <bleung@chromium.org>
Cc: Sonny Rao <sonnyrao@chromium.org>
Cc: Luigi Semenzato <semenzato@chromium.org>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: Dave Chinner <david@fromorbit.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
(cherry picked from commit 39305a6ac73ca6e8349773d032cdb5336d42196f)

10 years agoUSB: add dwc_otg_usb_state function for vbus power control.
wlf [Thu, 22 May 2014 09:44:22 +0000 (17:44 +0800)]
USB: add dwc_otg_usb_state function for vbus power control.

10 years agork3288:pmic:ricoh619:slove pwrkey missed when wakeup;modify some fg error
张晴 [Thu, 22 May 2014 08:53:53 +0000 (16:53 +0800)]
rk3288:pmic:ricoh619:slove pwrkey missed when wakeup;modify some fg error

10 years agork fb: add set win state in set_par and pan_display that may use for BOX
zwl [Thu, 22 May 2014 08:03:18 +0000 (16:03 +0800)]
rk fb: add set win state in set_par and pan_display that may use for BOX

10 years agommc: host: rk_sdmmc:
lintao [Thu, 22 May 2014 07:36:27 +0000 (15:36 +0800)]
mmc: host: rk_sdmmc:
        When sysyem enter suspend, MHSC would be power-off, and the CD int
    will be trigger after controller power-on sequential flow, it's wrong case
    for sd card always in slot! Move it to routine_card to judge present state
    and decide whether to wakeup screen or not. Now, SHOULD NOT disable vcc_sd
    in regulator_state_mem .

    [28890.551808] mmc_sd_detect(mmc1): Unable to re-detect card (-110)
    [28890.551842] mmc1: card 1234 removed
    [28890.856547] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 400000Hz, actual 396825HZ div = 63)
    [28891.163590] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
    [28891.163709] rk_sdmmc: BOOT Bus speed=50000000Hz,Bus width=4bits.[mmc1]
    [28891.163766] mmc1: new high speed SDHC card at address 1234
    [28891.164460] mmcblk1: mmc1:1234 SA32G 29.3 GiB
    [28891.165939] mmcblk1: p1

10 years agoARM: rockchip: fix rk3288 tsadc_int pinctrl
黄涛 [Thu, 22 May 2014 07:09:59 +0000 (15:09 +0800)]
ARM: rockchip: fix rk3288 tsadc_int pinctrl

10 years agoUSB: fix Coding Style.
wlf [Thu, 22 May 2014 03:30:11 +0000 (11:30 +0800)]
USB: fix Coding Style.

10 years agork fb: modify fb align for improve gpu ddr utilization
zwl [Thu, 22 May 2014 01:21:59 +0000 (09:21 +0800)]
rk fb: modify fb align for improve gpu ddr utilization

10 years agoclocksource: rockchip_timer: rk_timer_read_current_value64 return u64
黄涛 [Thu, 22 May 2014 00:29:50 +0000 (08:29 +0800)]
clocksource: rockchip_timer: rk_timer_read_current_value64 return u64

10 years agofix bug: ddr freq will not change any more when video quit abnormal
陈亮 [Wed, 21 May 2014 12:16:45 +0000 (05:16 -0700)]
fix bug: ddr freq will not change any more when video quit abnormal

10 years agoddrfreq: separate ddr from clk frame to fix dead lock and advance performance
陈亮 [Wed, 21 May 2014 09:11:06 +0000 (02:11 -0700)]
ddrfreq: separate ddr from clk frame to fix dead lock and advance performance

10 years agork3288: remove unused files and config (old vpu service)
ljf [Wed, 21 May 2014 08:18:41 +0000 (16:18 +0800)]
rk3288: remove unused files and config (old vpu service)

10 years agoWiFi&BT add io reference voltage control to reducing power consumption, default is...
gwl [Tue, 20 May 2014 09:24:15 +0000 (17:24 +0800)]
WiFi&BT add io reference voltage control to reducing power consumption, default is disabled.

10 years agoaudio coding style : use pr_err and pr_info to replace printk
陈金泉 [Tue, 20 May 2014 09:03:42 +0000 (17:03 +0800)]
audio coding style : use pr_err and pr_info to replace printk

10 years agoAudio : Change coding style
陈金泉 [Tue, 20 May 2014 08:20:02 +0000 (16:20 +0800)]
Audio : Change coding style

10 years agoi2c: fix i2c transfer error when irqs disabled
wdc [Tue, 20 May 2014 02:39:45 +0000 (10:39 +0800)]
i2c: fix i2c transfer error when irqs disabled

10 years agork fb: sync with hwc when wait at fb
hjc [Tue, 20 May 2014 04:13:58 +0000 (12:13 +0800)]
rk fb: sync with hwc when wait at fb

10 years agortc: fix some bug of rtc-HYM8563 and change default rtc to HYM8563
郭毅 [Tue, 20 May 2014 03:01:05 +0000 (11:01 +0800)]
rtc: fix some bug of rtc-HYM8563 and change default rtc to HYM8563