Herman Chen [Wed, 27 May 2015 02:26:33 +0000 (10:26 +0800)]
vcodec: fix enable race condition when power on/off
When multi-instances power on at same time the condition enabled maybe
set mutli-times. Use atomic function to replace orginal
read/compare/change operation to avoid multi-instances.
Also add power on/off count to debugfs for checking
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
xxx [Wed, 27 May 2015 01:04:58 +0000 (09:04 +0800)]
add func: check tf ver
hjc [Tue, 26 May 2015 08:17:28 +0000 (16:17 +0800)]
rk3368 lcdc: update hdmi overscan config path
Signed-off-by: hjc <hjc@rock-chips.com>
hjc [Tue, 26 May 2015 07:54:49 +0000 (15:54 +0800)]
rk fb: fix in interlace mode switch between ntsc and pal lead to pagefault
Signed-off-by: hjc <hjc@rock-chips.com>
hjc [Tue, 26 May 2015 06:39:36 +0000 (14:39 +0800)]
rk3368 lcdc: add wait frame start for uboot logo switch kernel logo and enable iommu
Signed-off-by: hjc <hjc@rock-chips.com>
hjc [Tue, 26 May 2015 06:38:23 +0000 (14:38 +0800)]
rk fb: fix uboot logo switch to kernel logo splash screen
Signed-off-by: hjc <hjc@rock-chips.com>
Xiao Feng [Tue, 26 May 2015 08:14:50 +0000 (16:14 +0800)]
dvfs: rockchip: add cpu thermal management test nodes
Signed-off-by: Xiao Feng <xf@rock-chips.com>
Zheng Yang [Tue, 26 May 2015 08:17:05 +0000 (16:17 +0800)]
Zheng Yang [Tue, 26 May 2015 08:14:09 +0000 (16:14 +0800)]
display-sys: fix compile warning
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Zheng Yang [Tue, 26 May 2015 06:57:22 +0000 (14:57 +0800)]
display-sys: function mode_string check input parameter.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
xxx [Tue, 26 May 2015 06:53:55 +0000 (14:53 +0800)]
modify smc call func id to Standard sip id for efuse and pm-rk3368
hjc [Mon, 25 May 2015 08:01:12 +0000 (16:01 +0800)]
rk3368 lcdc: fix iommu crash when resume
Signed-off-by: hjc <hjc@rock-chips.com>
Huang, Tao [Mon, 25 May 2015 07:45:53 +0000 (15:45 +0800)]
arm64: rockchip: rk3368: refactor efuse code
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Mon, 25 May 2015 07:26:54 +0000 (15:26 +0800)]
arm64: rockchip: rk3368: dts: add rockchip,rk3368-efuse-256
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Shengqin.Zhang [Mon, 25 May 2015 07:30:20 +0000 (15:30 +0800)]
fix rga mmu buf cause system crash when use ion mmu buf
Signed-off-by: Shengqin.Zhang <zsq@rock-chips.com>
Simon [Mon, 25 May 2015 03:48:31 +0000 (11:48 +0800)]
rk3368: iommu: fix region free position when iovmm_activate failed
Signed-off-by: Simon <xxm@rock-chips.com>
Shawn Lin [Mon, 25 May 2015 02:50:47 +0000 (10:50 +0800)]
Revert "mmc: rk_sdmmc: manually zero desc after allocated on ARM64 platform."
This reverts commit
e68d16d33646fabf36e782b300404f112eb94d1d.
Zhangfei Gao [Mon, 25 May 2015 02:46:54 +0000 (10:46 +0800)]
mmc: dw_mmc: init desc in dw_mci_idmac_init
Set 0 to des1 in 32bit case.
Otherwise the random value of des1 will be used in
dw_mci_translate_sglist: IDMAC_SET_BUFFER1_SIZE(desc, length)
Signed-off-by: Fei Wang <w.f@huawei.com>
Signed-off-by: Zhangfei Gao <zhangfei.gao@linaro.org>
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Shawn Lin [Mon, 25 May 2015 02:08:48 +0000 (10:08 +0800)]
dts: arm64: rk3368: fix wrong property for esd
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
cc: Sam Guo <sam.guo@rock-chips.com>
cc: Xiao Yao <xiaoyao@rock-chips.com>
ShenZhengyi [Sat, 23 May 2015 07:49:05 +0000 (15:49 +0800)]
CVBS: Add gm7122 driver.
If you use it, should add board information to dts file, such as i2c address, sleep pin.
like that:
gm7122_tve@44 {
compatible = "gm7122_tve";
reg = <0x44>;
rockchip,source = <0>; //0: LCDC0; 1: LCDC1
rockchip,prop = <PRMRY>;//<EXTEND>
gpio-reset = <&gpio0 GPIO_A1 GPIO_ACTIVE_HIGH>;
gpio-sleep = <&gpio0 GPIO_C6 GPIO_ACTIVE_HIGH>;
status = "okay";
};
Signed-off-by: ShenZhengyi <szy@rock-chips.com>
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Zheng Yang [Sat, 23 May 2015 03:08:49 +0000 (11:08 +0800)]
HDMI: No need to set audio when hdmi is not connected.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Peng Du [Mon, 12 Aug 2013 21:42:59 +0000 (14:42 -0700)]
arm64: kernel: add system revision support
Bug
1248538
Change-Id: I272a264ba2904dfc7a2c6d74ab4fbfdd301b8985
Signed-off-by: Peng Du <pdu@nvidia.com>
Reviewed-on: http://git-master/r/260756
Reviewed-by: Alexander Van Brunt <avanbrunt@nvidia.com>
Zheng Yang [Fri, 22 May 2015 10:34:17 +0000 (18:34 +0800)]
HDMI: register display type according lcdc property.
If property of lcdc connected by HDMI is EXTERN,
we register HDMI as a aux display device.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Zheng Yang [Fri, 22 May 2015 10:34:03 +0000 (18:34 +0800)]
display-sys: delete unused code.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Shawn Lin [Fri, 22 May 2015 10:17:48 +0000 (18:17 +0800)]
mmc: rk_sdmmc: fix compile warning
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Shawn Lin [Fri, 22 May 2015 09:39:26 +0000 (17:39 +0800)]
mmc: core: add wrapper for timeout value
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
cc: Xiao yao <xiaoyao@rock-chips.com>
Shawn Lin [Fri, 22 May 2015 08:08:48 +0000 (16:08 +0800)]
mmc: rk_sdmmc: do more timeout recovery operation
We stop slaver and rebank our setting for better
compatibility.
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Reviewed-by: Roger Hu <roger.hu@rock-chips.com>
Tested-by: Allen Lee <allen.lee@rock-chips.com>
cc: Xiao yao <xiaoyao@rock-chips.com>
Shawn Lin [Fri, 22 May 2015 07:38:08 +0000 (15:38 +0800)]
mmc: core: skyrocket timeout for cmd erase_group_xxx
It shocked me that a buggy emmc need quite a long period
of time for setting its erase_group_xxx. Increase timeout
value does not harm to normal case which just under constrain.
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Tested-by: Yongzhong Yang <yongzhong.yang@rock-chips.com>
cc: Xiao yao <xiaoyao@rock-chips.com>
Shawn Lin [Fri, 22 May 2015 06:56:11 +0000 (14:56 +0800)]
mmc: rk_sdmmc: disable controller int before enter deepsleep
Generally when machine enter deepsleep, with no cirrcumstance,
host can interact with slavery devices. So disbale our int generater
ourself. By occasionly, we find reset controller will trigger an
unexpected SEB int. It exists a race condition for reset and IO timing
before switched to gpio and confuse state machine.
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Tested-and-Reviewed-by: Xiao yao <xiaoyao@rock-chips.com>
lintao [Fri, 22 May 2015 02:54:34 +0000 (10:54 +0800)]
mmc: rk_sdmmc: add platform hook for special pm ops during deepsleep
We register a platform hook and restore all of our regs if platform does
need to cutoff controller's power-supply during deepsleep in period of time.
Make sure your have added "controller-power-down" property AND comment out
"keep-power-in-suspend" in related dts file.
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: Xiaoyao <xiaoyao@rock-chips.com>
Reviewed-by: Chenjh <chenjh@rock-chips.com>
Tested-by: Chenjh <chenjh@rock-chips.com>
Xiao Feng [Thu, 21 May 2015 07:10:25 +0000 (15:10 +0800)]
dtsi: ddr_freq: add vop bandwidth freq table
Signed-off-by: Xiao Feng <xf@rock-chips.com>
Zheng Yang [Fri, 22 May 2015 07:18:37 +0000 (15:18 +0800)]
fb: add sysfs node lcdcid.
Now we have many fb devices, each vop layer is mapped to a fb device.
If there is 2 vop, we can not distinguish the vop between these fb devices.
Add sysfs node lcdcid to get the lcdc id mapped by fb device.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
hwg [Fri, 22 May 2015 01:52:18 +0000 (09:52 +0800)]
rfkill-wlan: skip can't find rockchip,grf property error in none 3368 platform
zhangqing [Thu, 21 May 2015 18:56:16 +0000 (11:56 -0700)]
rk3368: pmic: rk818:adjust dcdc voltage step
Signed-off-by: zhangqing <zhangqing@rock-chips.com>
Sugar Zhang [Thu, 21 May 2015 10:38:13 +0000 (18:38 +0800)]
ASoC: es8316: use startup/shutdown to manager power consumption.
use startup/shutdown to reduce power consumption, every time codec
standby, we shutdown codec. so, there is no need extra operation in
suspend.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Huang, Tao [Thu, 21 May 2015 10:28:22 +0000 (18:28 +0800)]
arm: rockchip: vcodec_service: allow no rockchip,grf in dts
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Thu, 21 May 2015 10:23:29 +0000 (18:23 +0800)]
clk: rockchip: allow no rockchip,grf in dts on arm
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Sugar Zhang [Thu, 21 May 2015 07:53:59 +0000 (15:53 +0800)]
ASoC: dmaengine: use dma_request_slave_channel to request dma chan.
if i2s module probe before dma module, dma chan resources are not ready.
use dma_request_slave_channel to reinitialize dma chan if not ready.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Zheng Yang [Thu, 21 May 2015 05:45:22 +0000 (13:45 +0800)]
HDMI: support show edid status.
Use /sys/class/display/HDMI/debug node to
show sink EDID status and raw status.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Zheng Yang [Thu, 21 May 2015 05:40:15 +0000 (13:40 +0800)]
display-sys: debug node support to show debug information.
Add a callback function getdebug() to show debug information.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Zheng Yang [Thu, 21 May 2015 02:26:34 +0000 (10:26 +0800)]
HDMI: just list common format when edid is not valid.
If EDID is not valid, list following common format:
1920x1080p-60
1920x1080p-50
1280x720p-60
1280x720p-50
720px576p-50
720px480p-60
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
hwg [Thu, 21 May 2015 01:02:38 +0000 (09:02 +0800)]
esp8089 wifi: solve warning in 64bit
Huang, Tao [Wed, 20 May 2015 14:10:23 +0000 (22:10 +0800)]
video: rockchip: rga2: fix compilation error on arm
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 14:09:59 +0000 (22:09 +0800)]
video: rockchip: fix compilation error on arm
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 14:09:32 +0000 (22:09 +0800)]
usb: rockchip: fix compilation error on arm
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 14:08:53 +0000 (22:08 +0800)]
spi: rockchip: fix compilation error on arm
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 14:08:31 +0000 (22:08 +0800)]
pwm: rockchip: fix compilation error on arm
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 14:07:02 +0000 (22:07 +0800)]
arm: rockchip: select MFD_SYSCON
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 13:30:05 +0000 (21:30 +0800)]
usb: dwc_otg: build driver depends on arm or arm64
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 13:29:02 +0000 (21:29 +0800)]
arm: rockchip: cpu.h: only support on arm
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 12:31:57 +0000 (20:31 +0800)]
arm: rockchip: efuse: fix compilation error on arm
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 08:01:55 +0000 (16:01 +0800)]
arm: rockchip: use read_cpuid_part instead of read_cpuid_part_number
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 07:34:59 +0000 (15:34 +0800)]
rk: gcc-wrapper.py ignore sysctl_net_core.c:24
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 07:34:03 +0000 (15:34 +0800)]
rkwifi: dhd_config: fix compilation warning
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Wed, 20 May 2015 07:17:32 +0000 (15:17 +0800)]
rk1000: fix compilation warning
Huang, Tao [Wed, 20 May 2015 06:49:34 +0000 (14:49 +0800)]
Merge branch develop-3.10-next
Xiao Feng [Thu, 14 May 2015 07:45:31 +0000 (15:45 +0800)]
ddrfreq: add vop bandwidth freq table in dts, in order to support more boards
Signed-off-by: Xiao Feng <xf@rock-chips.com>
Xiao Feng [Wed, 13 May 2015 11:27:56 +0000 (19:27 +0800)]
ddrfreq: fix new_freq=0 when the current load of ddr is between high_load and low_load
Signed-off-by: Xiao Feng <xf@rock-chips.com>
Alpha Lin [Fri, 15 May 2015 08:54:02 +0000 (16:54 +0800)]
VPU, set the power-on flag after power domain already on.
Previous register operation before power on.
Software reset vpu inside vdpu interrupt handle.
Signed-off-by: Alpha Lin <alpha.lin@rock-chips.com>
Sugar Zhang [Wed, 20 May 2015 03:01:43 +0000 (11:01 +0800)]
ASoC: es8316: reduce standby power consumption around ~uA.
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
hjc [Wed, 20 May 2015 03:05:09 +0000 (11:05 +0800)]
rk fb:extern rockchip_get_screen_type for mipi dsi
Signed-off-by: hjc <hjc@rock-chips.com>
hjc [Wed, 6 May 2015 08:18:36 +0000 (16:18 +0800)]
rk fb: fix hdmi/cvbs display error when uboot display logo
Signed-off-by: hjc <hjc@rock-chips.com>
Zheng Yang [Tue, 19 May 2015 09:53:55 +0000 (17:53 +0800)]
HDMI: Not filter the input 3dmode with EDID information.
If input 3dmode is not list in EDID, we print a
warning log and send it to sink, no longer return
error.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Zheng Yang [Tue, 19 May 2015 09:50:55 +0000 (17:50 +0800)]
HDMI: fix edid 3d information offset parse error.
In EDID 3D descriptor, 3d information is after
4K format. But we did not increase the offset of
3d content if 4K format is zero, which make 3d
information error.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Zheng Yang [Tue, 19 May 2015 09:53:55 +0000 (17:53 +0800)]
HDMI: Not filter the input 3dmode with EDID information.
If input 3dmode is not list in EDID, we print a
warning log and send it to sink, no longer return
error.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Zheng Yang [Tue, 19 May 2015 09:50:55 +0000 (17:50 +0800)]
HDMI: fix edid 3d information offset parse error.
In EDID 3D descriptor, 3d information is after
4K format. But we did not increase the offset of
3d content if 4K format is zero, which make 3d
information error.
Signed-off-by: Zheng Yang <zhengyang@rock-chips.com>
Mark Yao [Wed, 13 May 2015 08:17:28 +0000 (16:17 +0800)]
rk_fb: compatible for mid hdmi switch screen
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
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>
Huang, Tao [Tue, 19 May 2015 02:56:23 +0000 (10:56 +0800)]
input: keyboard: rk_keys: add wake lock
New version Android will never call EPOLLWAKEUP or EVIOCSSUSPENDBLOCK.
So we need add wake lock in driver.
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Tue, 19 May 2015 02:06:36 +0000 (10:06 +0800)]
input: keyboard: rk_keys: use jiffies rather than msecs_to_jiffies
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Tue, 19 May 2015 01:57:19 +0000 (09:57 +0800)]
input: keyboard: rk_keys: fix CodingStyle issues only
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Mark Yao [Wed, 13 May 2015 08:17:28 +0000 (16:17 +0800)]
rk_fb: compatible for mid hdmi switch screen
Signed-off-by: Mark Yao <mark.yao@rock-chips.com>
Xiao Feng [Mon, 18 May 2015 13:23:31 +0000 (21:23 +0800)]
rk3368: cpufreq: fix pm_notifier return NOTIFY_BAD
the big cluster mask is random when down cpu1~cpu7, so we get the error policy cpu in pm_notifier.
Signed-off-by: Xiao Feng <xf@rock-chips.com>
Huang, Tao [Mon, 18 May 2015 10:22:30 +0000 (18:22 +0800)]
arm64: rockchip: cpuquiet: be quiet when cpu up/down
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Mon, 18 May 2015 09:26:13 +0000 (17:26 +0800)]
cpufreq: rockchip_big_little: minor cleanups
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Mon, 18 May 2015 09:25:12 +0000 (17:25 +0800)]
rockchip: hmp: adjust hmp_up/down_threshold
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Mon, 18 May 2015 09:22:52 +0000 (17:22 +0800)]
cpuquiet: add rockchip cpuquiet bl_balanced governor driver
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Mon, 18 May 2015 09:20:35 +0000 (17:20 +0800)]
cpuquiet: add rockchip cpuquiet driver
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Mon, 18 May 2015 09:17:28 +0000 (17:17 +0800)]
cpuquiet: Update averaging of nr_runnables
Doing a Exponential moving average per nr_running++/-- does not
guarantee a fixed sample rate which induces errors if there are lots of
threads being enqueued/dequeued from the rq (Linpack mt). Instead of
keeping track of the avg, the scheduler now keeps track of the integral
of nr_running and allows the readers to perform filtering on top.
Implemented a proper exponential moving average for the runnables
governor and a straight 100ms average for the balanced governor. Tweaked
the thresholds for the runnables governor to minimize latency. Also,
decreased sample_rate for the runnables governor to the absolute minimum
of 10msecs.
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Huang, Tao [Mon, 18 May 2015 09:08:55 +0000 (17:08 +0800)]
cpuquiet: PM QoS: Add max/min online cpus as PM QoS parameter
Signed-off-by: Huang, Tao <huangtao@rock-chips.com>
Krishna Sitaraman [Tue, 15 Apr 2014 20:35:54 +0000 (13:35 -0700)]
arm64: add cpu power configs to arm64/Kconfig
Add cpuquiet to proper location
Bug
1453967
Change-Id: I03b35ed12acdf5c6fc62c3bddc8b5a2a018a1303
Signed-off-by: Krishna Sitaraman <ksitaraman@nvidia.com>
Reviewed-on: http://git-master/r/396582
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Adeel Raza <araza@nvidia.com>
Reviewed-by: Alexander Van Brunt <avanbrunt@nvidia.com>
Sai Charan Gurrappadi [Thu, 16 Aug 2012 01:00:35 +0000 (18:00 -0700)]
cpuquiet: Added cpuquiet to driver Makefile
Change-Id: I8a3fd51df81de8d4375b9ddabbaf4fed5277b17d
Signed-off-by: Sai Charan Gurrappadi <sgurrappadi@nvidia.com>
Reviewed-on: http://git-master/r/123849
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Rebase-Id: R90846374c2567592a285664e65941d6534017c8a
Sai Gurrappadi [Tue, 13 May 2014 21:50:09 +0000 (14:50 -0700)]
drivers: cpuquiet: Fix runnable gov device_busy
On device_busy, the runnable governor stops its sample timer and cancels
any queued runnable_work. However, it is possible for the cpuquiet
platform driver to call device_busy on cpuquiet_quiesence/wake_cpu calls
which can be invoked from the queued runnable_worker thread. This will
lead to the runnable_worker thread waiting infinitely on it self
finishing in cancel_work_sync.
Fix this by removing the cancel_work_sync call as it isn't necessary
because the worker doesn't requeue it self. Stopping the timer is
sufficient.
Bug
200002511
Change-Id: Ic69061b12d4dbb96b259ed9b62a0475271bd36d0
Signed-off-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
(cherry picked from commit
b9a2a2cfa91d14935fdef626517d738399af4e4d)
Reviewed-on: http://git-master/r/415315
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Reviewed-by: Kerwin Wan <kerwinw@nvidia.com>
Sai Gurrappadi [Fri, 20 Dec 2013 00:30:02 +0000 (16:30 -0800)]
cpuquiet: Add Sysfs node for nr_run_thresholds
Added sysfs node that exposes the nr_runnable threshold at which cores
are quiesenced/woken up. To write into this node:
echo 1core# 2core# ... n_core# > nr_run_thresholds
Bug
1427140
Change-Id: I7cabd63692cf92f7fe8d1064437b1d73002d4ba5
Signed-off-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
Reviewed-on: http://git-master/r/369017
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Sai Gurrappadi [Fri, 20 Dec 2013 00:30:02 +0000 (16:30 -0800)]
cpuquiet: Support X cpus for runnables governor
Runnables govenror will now work properly for any number of cpus as
defined by NR_CPUS. Switched the ordering of nr_run_threshold init to
ensure that array is initialized correctly to UINT_MAX for NR_CPUS-1 cpu.
Bug
1427140
Change-Id: Ic612406ceaf80dd7e0b6693906df339f8b6512aa
Signed-off-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
Reviewed-on: http://git-master/r/369016
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Sai Gurrappadi [Tue, 17 Dec 2013 21:40:45 +0000 (13:40 -0800)]
cpuquiet: Clean up sysfs memory properly
Runnable sysfs node wasn't being free'd in stop via a kobject_put call
because the sysfs node wasn't allocated with kobject_create. Now do an
explicity kfree on stop after the kobject_put.
Change-Id: I5ba554312757380dfb2e814f75832b28d4c7edf8
Signed-off-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
Reviewed-on: http://git-master/r/346645
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Sai Gurrappadi [Thu, 12 Dec 2013 23:25:53 +0000 (15:25 -0800)]
cpuquiet: Fix locking in driver_unregister
cpuquiet_switch_governors needs to be protected with the cpuquiet_lock.
Change-Id: I948d1190a270b9e8b732eaad80a303560fe9f282
Signed-off-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
Reviewed-on: http://git-master/r/345013
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Jubeom Kim [Fri, 29 Nov 2013 07:37:28 +0000 (16:37 +0900)]
cpuquiet: move back cpuquiet_lock
Moved cpuquiet_lock to the back of cpuquiet_switch_governor().
cpuquiet_switch_governor() has to be protected by cpuquiet_lock.
In the runnable cpuquiet_governor case, it can occur a kernel panic or BUG_ON
because schedule_work() and INIT_WORK() can be performed at the same time.
Bug
1410816
Change-Id: I6d3d69bd8896e5425a762cbc4a58343a319edf29
Signed-off-by: Jubeom Kim <jubeomk@nvidia.com>
(cherry picked from commit
8502d0b7c057f96b7cd0495b49e37fc968d4bf8a)
Reviewed-on: http://git-master/r/337335
Reviewed-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
Tested-by: Sai Gurrappadi <sgurrappadi@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Dan Willemsen [Thu, 22 Aug 2013 21:18:19 +0000 (14:18 -0700)]
cpuquiet: balanced: WQ_RESCUER has been removed
Signed-off-by: Dan Willemsen <dwillemsen@nvidia.com>
Simo Melenius [Fri, 8 Mar 2013 09:24:12 +0000 (11:24 +0200)]
ARM: tegra: cpuquiet: augment no_lp to force both LP and G
- tegra_cpuquiet 'no_lp' node now accepts '-1' to force LP cluster on
- when a cluster is forced the switches take place immediately without
any delay
Bug
1247636
Change-Id: I1ec07acc3cf51419a4770542c6a1c90b92e0bf66
Signed-off-by: Simo Melenius <smelenius@nvidia.com>
Reviewed-on: http://git-master/r/208772
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
(cherry picked from commit
ab16bbb6f581da538448d2a64e03dd272b8fb985)
Reviewed-on: http://git-master/r/210358
Peter De Schrijver [Tue, 12 Feb 2013 15:51:26 +0000 (17:51 +0200)]
ARM: tegra: cpuquiet: make userspace governor actions synchronous
Userspace expects changes to happen synchronously. Implement this by waiting
with a (configureable) timeout for the action to happen.
Bug
1220065
Change-Id: I81301719707e4baf2b3aea62c38fc771ffe1205d
Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Reviewed-on: http://git-master/r/200013
Reviewed-by: Simone Willett <swillett@nvidia.com>
Tested-by: Simone Willett <swillett@nvidia.com>
Peter Boonstoppel [Thu, 24 Jan 2013 19:04:02 +0000 (11:04 -0800)]
cpuquiet: Remove synchronization from runnables_work_func()
runnables_stop() can deadlock when cancel_work_sync() waits for the
work function to end and the work function blocks on the same lock
held by runnables_stop().
Removing the locks from runnables_work_func() fixes this. This should
be safe because runnables_lock protects runnables_state and
runnables_work_func() only reads runnables_state. Also, the functions
that change state to DISABLED do a cancel_work_sync() to guarantee the
work function stopped running.
Bug
1215668
Change-Id: I70617b3b0fc81db8555869e67e3b11652af8d94c
Signed-off-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-on: http://git-master/r/193881
Reviewed-by: Mandar Padmawar <mpadmawar@nvidia.com>
Tested-by: Mandar Padmawar <mpadmawar@nvidia.com>
Sami Liedes [Tue, 5 Feb 2013 13:22:03 +0000 (15:22 +0200)]
cpuquiet: Fix warning about unused variable
drivers/cpuquiet/governors/runnable_threads.c: In function 'runnables_work_func':
drivers/cpuquiet/governors/runnable_threads.c:184:14: warning: unused variable 'state' [-Wunused-variable]
Change-Id: I26c2288876043cf3dd21e1b57317a1f5b2de5a9b
Signed-off-by: Sami Liedes <sliedes@nvidia.com>
Reviewed-on: http://git-master/r/197469
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Juha Tukkinen <jtukkinen@nvidia.com>
Juha Tukkinen [Tue, 22 Jan 2013 08:30:28 +0000 (10:30 +0200)]
cpuquiet: Add GCOV_PROFILE for governors
Include cpuquiet in GCOV profiling when enabled by defconfig.
Change-Id: Iadac806d4b7efd9e34afa765dbec59f0491b96a8
Signed-off-by: Juha Tukkinen <jtukkinen@nvidia.com>
Reviewed-on: http://git-master/r/192980
Reviewed-by: Automatic_Commit_Validation_User
Juha Tukkinen [Mon, 10 Sep 2012 14:00:35 +0000 (17:00 +0300)]
cpuquiet: Add GCOV_PROFILE
Include cpuquiet in GCOV profiling when enabled by defconfig.
Change-Id: I448602d2c79f4113b99e6546743585e629fa726e
Signed-off-by: Juha Tukkinen <jtukkinen@nvidia.com>
Reviewed-on: http://git-master/r/131127
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Rebase-Id: R7daa534f10a211bf7b15a253f5cfee7a126428f0
Peter Boonstoppel [Wed, 5 Dec 2012 18:45:53 +0000 (10:45 -0800)]
cpuquiet: Fix race in runnable governor
Fixed a race where the cpuquiet driver would call device_free() before
the governor was started, which would lead to a kernel panic because
runnables_timer was not initialized.
Introduced RUNNING state, so states are:
- DISABLED: truly disabled
- IDLE: enabled, but not polling upon request from the driver
- RUNNING: actively polling
Bug
1189042
Change-Id: I45b9ce40e61e1cfddde74ff7b2691722204045bb
Signed-off-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-on: http://git-master/r/168803
Reviewed-by: Sang-Hun Lee <sanlee@nvidia.com>
Tested-by: Sang-Hun Lee <sanlee@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Peter De Schrijver [Wed, 5 Dec 2012 14:13:09 +0000 (16:13 +0200)]
cpuquiet: Make stats optional
Make the per CPU statistics a configureable option.
bug
1049625
Change-Id: I28b248bbbad89a19e8d8d69400733dfd4a2cf052
Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Reviewed-on: http://git-master/r/168749
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Peter Boonstoppel [Mon, 12 Nov 2012 19:17:01 +0000 (11:17 -0800)]
cpuquiet: Update runnable gov param 20/100ms (1.25/2.25/2.5 +.5)
Sampling interval: 20ms
Window size: 100ms
Thresholds: 1.25/2.25/2.5 thread
Hysteresis: .5 thread
Bug
1050445
Change-Id: I5138bed06e6f3548ec440d2b9ee17460fc37adfb
Signed-off-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-on: http://git-master/r/163105
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>
Peter De Schrijver [Tue, 11 Sep 2012 14:30:32 +0000 (17:30 +0300)]
cpuquiet: initialize runnable threads first as the default governor
Add the necessary code to initialize the runnable threads governor first when
selected as the default governor.
Change-Id: Iebbf304f3934b429d8a217011b3cb45ecddfd558
Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Reviewed-on: http://git-master/r/131438
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Juha Tukkinen <jtukkinen@nvidia.com>
Rebase-Id: Rb5009930e554648a17d78edf9d8bdd17199c9c6a
Peter De Schrijver [Tue, 11 Sep 2012 14:27:51 +0000 (17:27 +0300)]
cpuquiet: balanced governor requires cpufreq
The balanced governor relies on cpufreq for some of its decisions. Fail
initialization if there are no cpufreq OPP tables available.
Change-Id: I5d64215d56f50d5df52c1433208b1eb40440c812
Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
Reviewed-on: http://git-master/r/131437
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Peter Boonstoppel <pboonstoppel@nvidia.com>
Reviewed-by: Juha Tukkinen <jtukkinen@nvidia.com>
Rebase-Id: R03bb471218a088a816a67232861759cba2b91f38