platform/kernel/linux-exynos.git
8 years agopackaging: exclude build for non proper obs project
Seung-Woo Kim [Thu, 4 Aug 2016 01:41:22 +0000 (10:41 +0900)]
packaging: exclude build for non proper obs project

For tm2, it is only required to build for mobile aarch64 and for
odroid, it is only reuiqred to build for arm projects except for
wearable or mobile tm1 projects. So this patch adds build exclude
for each packaging.

Change-Id: Iba02f6ceb54a3a813e68095cfff6b6c06e4839fb
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agospi: exynos5433-isp: Fix doubled clock disable on suspend
Joonyoung Shim [Thu, 4 Aug 2016 08:04:42 +0000 (17:04 +0900)]
spi: exynos5433-isp: Fix doubled clock disable on suspend

This patch came from the commit 9d7fd21acb20 ("spi/s3c64xx: Fix doubled
clock disable on suspend") and the commit 4fcd9b9e06d4 ("spi: s3c64xx:
simplify suspend / resume handlers").

Fix doubled clock disable and unprepare during PM suspend which triggered
the warnings:

[   24.258574] WARNING: CPU: 0 PID: 326 at drivers/clk/clk.c:1010 clk_core_disable+0x90/0x14c()
[   24.258580] Modules linked in:
[   24.258589] CPU: 0 PID: 326 Comm: deviced Not tainted 4.1.0-01299-g70114f2-dirty #26
[   24.258592] Hardware name: Samsung TM2 board (DT)
[   24.258595] Call trace:
[   24.258605] [<ffffffc000089f34>] dump_backtrace+0x0/0x124
[   24.258610] [<ffffffc00008a068>] show_stack+0x10/0x1c
[   24.258618] [<ffffffc000a36ed0>] dump_stack+0x78/0xbc
[   24.258624] [<ffffffc00009acc8>] warn_slowpath_common+0x9c/0xd4
[   24.258628] [<ffffffc00009adc0>] warn_slowpath_null+0x14/0x20
[   24.258632] [<ffffffc000748e80>] clk_core_disable+0x8c/0x14c
[   24.258636] [<ffffffc0007493ec>] clk_disable+0x28/0x40
[   24.258644] [<ffffffc000529164>] s3c64xx_spi_suspend+0x3c/0x70
[   24.258652] [<ffffffc0004d7938>] platform_pm_suspend+0x20/0x50
[   24.258659] [<ffffffc0004e1b10>] dpm_run_callback+0x4c/0x190
[   24.258664] [<ffffffc0004e2b34>] __device_suspend+0xf4/0x380
[   24.258669] [<ffffffc0004e4738>] dpm_suspend+0x128/0x35c
[   24.258674] [<ffffffc0004e4e74>] dpm_suspend_start+0x68/0x78
[   24.258681] [<ffffffc0000e269c>] suspend_devices_and_enter+0xb8/0x838
[   24.258685] [<ffffffc0000e319c>] pm_suspend+0x380/0x5d8
[   24.258690] [<ffffffc0000e16d4>] state_store+0x7c/0xf4
[   24.258697] [<ffffffc000376a74>] kobj_attr_store+0x10/0x24
[   24.258705] [<ffffffc0002164d4>] sysfs_kf_write+0x3c/0x50
[   24.258710] [<ffffffc00021596c>] kernfs_fop_write+0xbc/0x180
[   24.258718] [<ffffffc0001aa2e8>] __vfs_write+0x28/0x10c
[   24.258722] [<ffffffc0001aac00>] vfs_write+0x8c/0x16c
[   24.258726] [<ffffffc0001ab518>] SyS_write+0x40/0xa0

The clocks may be already disabled before suspending. Check PM runtime
suspend status and disable clocks only if device is not suspended.
During resume do not enable the clocks if device is runtime suspended.

Change-Id: I194a5d458744086998b82602146648d34ff7050a
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: dts: trats2: add "reboot-inform" property for supporting reboot mode
Jaehoon Chung [Tue, 2 Aug 2016 01:23:37 +0000 (10:23 +0900)]
ARM: dts: trats2: add "reboot-inform" property for supporting reboot mode

Add the reboot-inform property for supporting reboot mode.
Trats2 is INFORM3 register, other boards are using INFORM2 regsiter.
In trats2's case, when we released the tizen-2.X with linux-3.10 kernel,
it had used the INFORM3 register. That's why trats2 only use the INFORM3
register.

Change-Id: Ief314f50c47601ad646789790b36731e64e0b688
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
8 years agoARM: dts: odroid: add "reboot-inform" property for supporting reboot mode
Jaehoon Chung [Mon, 1 Aug 2016 10:45:54 +0000 (19:45 +0900)]
ARM: dts: odroid: add "reboot-inform" property for supporting reboot mode

Add the reboot-inform property for supporting reboot mode.
Odroid families use the INFORM2 register as reboot special mode.

Change-Id: I906c32e6d26fcf08748f4916c277fb3995a1117f
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
8 years agoARM: exynos: pmu: support the reboot download mode
Jaehoon Chung [Mon, 1 Aug 2016 10:38:41 +0000 (19:38 +0900)]
ARM: exynos: pmu: support the reboot download mode

Support the reboot download mode functionality.
It can get from device-treee which INFORM register will be used.
If want to use this functionality, it also needs to implement something
on bootloader side.

Change-Id: Iae42f32d69b84ccdcb39fcfc8bc71f9cc8c42302
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
8 years agodrm/exynos/decon5433: wait for two vblanks before framebuffer removal
Andrzej Hajda [Tue, 2 Aug 2016 17:10:37 +0000 (19:10 +0200)]
drm/exynos/decon5433: wait for two vblanks before framebuffer removal

After window disable DECON can access its DMA buffer in current and next
scanout. To avoid possible page fault driver should ensure that two scanouts
passed before freeing framebuffer.

Change-Id: I5508f6686ff51d555eb1497b7a6d21b990fd6003
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
8 years agophy: exynos-mipi-video: simplify check for coupled phy status
Marek Szyprowski [Wed, 20 Jul 2016 10:50:47 +0000 (12:50 +0200)]
phy: exynos-mipi-video: simplify check for coupled phy status

There is no need to access regmap of coupled phy to check its state - such
information is already in the phy device itself, so use it directly. This
let us to avoid possible access to registers of the device in the disabled
power domain if the coupled phy is already disabled.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: If375eab85e6ec680e856a9eeafdf24823e8adb6e

8 years agophy: phy-exynos-mipi-video: fix incorrect check for coupled phy state
Marek Szyprowski [Tue, 26 Jul 2016 11:08:08 +0000 (13:08 +0200)]
phy: phy-exynos-mipi-video: fix incorrect check for coupled phy state

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I6c7fc15e1284fc70b3e581e8203f8dd43de63bb3

8 years agospi: s3c64xx-spi-isp: properly set initial runtime pm status
Marek Szyprowski [Fri, 22 Jul 2016 09:23:15 +0000 (11:23 +0200)]
spi: s3c64xx-spi-isp: properly set initial runtime pm status

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I619fc999265e3770a5295a3a9a1ef3fd46a9c94c

8 years agomedia: s5p-mfc: use clock gating only on mfc v5 hardware
Marek Szyprowski [Mon, 1 Aug 2016 11:55:21 +0000 (13:55 +0200)]
media: s5p-mfc: use clock gating only on mfc v5 hardware

Software clock gating causes unpredicted behavior of newer MFC hardware,
so use it only when working with v5 module.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I5a636b9c46b5e387da4d1c4f6dbb4adb583085e3

8 years agomedia: s5p-mfc: use printk_ratelimited for reporting ioctl errors
Marek Szyprowski [Thu, 28 Jul 2016 10:01:54 +0000 (12:01 +0200)]
media: s5p-mfc: use printk_ratelimited for reporting ioctl errors

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: Ieff41f18447d59924b2cad3b27e50dbb8e36539d

8 years agomedia: s5p-mfc: don't keep clocks prepared all the time
Marek Szyprowski [Thu, 30 Jun 2016 08:29:46 +0000 (10:29 +0200)]
media: s5p-mfc: don't keep clocks prepared all the time

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I2b3a109eb9ac28e282083adf444baaef75431376

8 years agomedia: s5p-mfc: fix close sequence
Marek Szyprowski [Fri, 1 Jul 2016 07:04:31 +0000 (09:04 +0200)]
media: s5p-mfc: fix close sequence

Turn power off after disabling clocks.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: Ibd5df109f2664edea7a42fc797945bd31c11f1d2

8 years agodrm/exynos: dsi: fix pm_runtime_get() result check in dsi power on path
Marek Szyprowski [Wed, 27 Jul 2016 05:56:13 +0000 (07:56 +0200)]
drm/exynos: dsi: fix pm_runtime_get() result check in dsi power on path

pm_runtime_get_sync() might return -EACCES if it is called during system
global suspend/resume procedure. In such case the correctly increases
device usage count. Its return value should be ignored in such case.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: Ic4167e2618a037716846f42f91951808dfb42b80

8 years agoARM64: dts: exynos5433: fix clock for MSCL/JPEG devfreq control
Marek Szyprowski [Fri, 1 Jul 2016 10:49:37 +0000 (12:49 +0200)]
ARM64: dts: exynos5433: fix clock for MSCL/JPEG devfreq control

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: Ic1669e9657da1c601774b3bf366cc6036a77147c

8 years agoarm: dts: exynos542x: disable orphaned G2D SYSMMU controllers
Marek Szyprowski [Thu, 21 Jul 2016 13:14:56 +0000 (15:14 +0200)]
arm: dts: exynos542x: disable orphaned G2D SYSMMU controllers

Disable G2D SYSMMU controllers until support for G2D is really implemented
and G2D SYSMMU register access freeze issue is resolved.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I38542642d255313307d9ac6a836ffece4a402b2b

8 years agodrm/exynos/decon5433: just return if decon is disable in decon_commit()
Joonyoung Shim [Tue, 2 Aug 2016 05:40:24 +0000 (14:40 +0900)]
drm/exynos/decon5433: just return if decon is disable in decon_commit()

The decon_commit() can be called before decon is enabled if atomic
patches are applied at exynos drm, then it will cause kernel panic.
Already decon drm driver of mainline is considering this case.

Change-Id: I3f3b02ec71e7e928042561f1d35196fe5dfce643
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agokernel/panic.c: turn off locks debug before releasing console lock
Vitaly Kuznetsov [Fri, 20 Nov 2015 23:57:24 +0000 (15:57 -0800)]
kernel/panic.c: turn off locks debug before releasing console lock

Commit 08d78658f393 ("panic: release stale console lock to always get the
logbuf printed out") introduced an unwanted bad unlock balance report when
panic() is called directly and not from OOPS (e.g.  from out_of_memory()).
The difference is that in case of OOPS we disable locks debug in
oops_enter() and on direct panic call nobody does that.

Fixes: 08d78658f393 ("panic: release stale console lock to always get the logbuf printed out")
Reported-by: kernel test robot <ying.huang@linux.intel.com>
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Cc: HATAYAMA Daisuke <d.hatayama@jp.fujitsu.com>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Jiri Kosina <jkosina@suse.cz>
Cc: Baoquan He <bhe@redhat.com>
Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Xie XiuQi <xiexiuqi@huawei.com>
Cc: Seth Jennings <sjenning@redhat.com>
Cc: "K. Y. Srinivasan" <kys@microsoft.com>
Cc: Jan Kara <jack@suse.cz>
Cc: Petr Mladek <pmladek@suse.cz>
Cc: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
[jy0922.shim: apply from mainline for console lockup debugging of drm]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Change-Id: Ia6a7ce2ee74a846363501db8fc5cdbec96216b33

8 years agopanic: release stale console lock to always get the logbuf printed out
Vitaly Kuznetsov [Sat, 7 Nov 2015 00:32:58 +0000 (16:32 -0800)]
panic: release stale console lock to always get the logbuf printed out

In some cases we may end up killing the CPU holding the console lock
while still having valuable data in logbuf. E.g. I'm observing the
following:

- A crash is happening on one CPU and console_unlock() is being called on
  some other.

- console_unlock() tries to print out the buffer before releasing the lock
  and on slow console it takes time.

- in the meanwhile crashing CPU does lots of printk()-s with valuable data
  (which go to the logbuf) and sends IPIs to all other CPUs.

- console_unlock() finishes printing previous chunk and enables interrupts
  before trying to print out the rest, the CPU catches the IPI and never
  releases console lock.

This is not the only possible case: in VT/fb subsystems we have many other
console_lock()/console_unlock() users.  Non-masked interrupts (or
receiving NMI in case of extreme slowness) will have the same result.
Getting the whole console buffer printed out on crash should be top
priority.

[akpm@linux-foundation.org: tweak comment text]
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Cc: HATAYAMA Daisuke <d.hatayama@jp.fujitsu.com>
Cc: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Jiri Kosina <jkosina@suse.cz>
Cc: Baoquan He <bhe@redhat.com>
Cc: Prarit Bhargava <prarit@redhat.com>
Cc: Xie XiuQi <xiexiuqi@huawei.com>
Cc: Seth Jennings <sjenning@redhat.com>
Cc: "K. Y. Srinivasan" <kys@microsoft.com>
Cc: Jan Kara <jack@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
[jy0922.shim: apply from mainline for console lockup debugging of drm]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Change-Id: Ifc2b6cb5d15166145933eac3f5ca446f4a5ac90f

8 years agoregulator: max77686: fix gpio_enabled shift wrapping bug
Joe Perches [Mon, 18 May 2015 17:01:03 +0000 (10:01 -0700)]
regulator: max77686: fix gpio_enabled shift wrapping bug

commit c53403a37cf083ce85da720f18918f73580d0064 upstream.

The code should handle more than 32 bits here because "id"
can be a value up to MAX77686_REGULATORS (currently 34).

Convert the gpio_enabled type to DECLARE_BITMAP and use
test_bit/set_bit.

Fixes: 3307e9025d29 ("regulator: max77686: Add GPIO control")
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Joe Perches <joe@perches.com>
Reviewed-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
[Backport from stable v4.1.y tree to remove UBSAN warning]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Change-Id: I415ce1309e1b8e5272cd5c703f5a7e22890479bf

8 years agocpuidle: Do not access cpuidle_devices when !CONFIG_CPU_IDLE
Catalin Marinas [Wed, 1 Jun 2016 17:52:16 +0000 (18:52 +0100)]
cpuidle: Do not access cpuidle_devices when !CONFIG_CPU_IDLE

The cpuidle_devices per-CPU variable is only defined when CPU_IDLE is
enabled. Commit c8cc7d4de7a4 ("sched/idle: Reorganize the idle loop")
removed the #ifdef CONFIG_CPU_IDLE around cpuidle_idle_call() with the
compiler optimising away __this_cpu_read(cpuidle_devices). However, with
CONFIG_UBSAN && !CONFIG_CPU_IDLE, this optimisation no longer happens
and the kernel fails to link since cpuidle_devices is not defined.

This patch introduces an accessor function for the current CPU cpuidle
device (returning NULL when !CONFIG_CPU_IDLE) and uses it in
cpuidle_idle_call().

Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Cc: 4.5+ <stable@vger.kernel.org> # 4.5+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
[Backport from mainline to fix build error for CONFIG_UBSAN && ! CONFIG_CPU_IDLE]
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Change-Id: I447cd7f1076903bc036eb0e832d9cabba91099b7

8 years agoARM: defconfig: rinato: replace mali400 driver to r5p2 from r4p0
Joonyoung Shim [Thu, 28 Jul 2016 02:35:06 +0000 (11:35 +0900)]
ARM: defconfig: rinato: replace mali400 driver to r5p2 from r4p0

This patch replaces mali400 driver from r4p0 to r5p2 for rinato
to align with other boards with mali400.

Change-Id: I3f9cb30ccef2390d1df91e7bb2d9d17b4ce29d6e
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: dts: exynos3250: fix g3d nodes
Joonyoung Shim [Thu, 28 Jul 2016 02:00:39 +0000 (11:00 +0900)]
ARM: dts: exynos3250: fix g3d nodes

This fixes order of reg resources. First has to be resource that has
lowest address because mali400 r5p2 version requires it.

This also adds interrupt-names for g3d nodes. The interrupt-names needs
at mali400 r5p2 version.

Change-Id: I84a31ff3691ffea084b5f3f0abbcf998ea0a8371
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agodrm/exynos: fix build warnings
Joonyoung Shim [Thu, 28 Jul 2016 02:32:10 +0000 (11:32 +0900)]
drm/exynos: fix build warnings

The commit fe6367c905b6 ("drm/exynos/mixer: enable HDMI-PHY before
configuring MIXER") causes many build warnings like below:

In file included from drivers/gpu/drm/exynos/exynos_drm_drv.c:23:0:
drivers/gpu/drm/exynos/exynos_drm_drv.h:320:13: warning: 'exynos_hdmiphy_enable' defined but not used [-Wunused-function]
 static void exynos_hdmiphy_enable(struct exynos_drm_crtc *crtc) {}
             ^
...

Make to inline function exynos_hdmiphy_enable to avoid build warnings.

Change-Id: Ic3e66cafb8283198143a0534d5b59727c66636be
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: defconfig: rinato: sync defconfig file for rinato to v4.1 tree
Jaehoon Chung [Wed, 27 Jul 2016 01:13:53 +0000 (10:13 +0900)]
ARM: defconfig: rinato: sync defconfig file for rinato to v4.1 tree

This patch updates the defconfig file for rinato to sync with v4.1
tree.

Change-Id: Ib1abd29eb6f1a1c23df44d273de1d1d963370143
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agoARM: defconfig: trats2: replace mali400 driver to r5p2 from r4p0
Seung-Woo Kim [Wed, 27 Jul 2016 10:33:59 +0000 (19:33 +0900)]
ARM: defconfig: trats2: replace mali400 driver to r5p2 from r4p0

This patch replaces mali400 driver from r4p0 to r5p2 for trats2
to align with other boards with mali400.

Change-Id: I52d4d85a75d1a399dda3439d5ac6c189b863a48f
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agoARM: defconfig: trats2: disable CONFIG_MMC_CLKGATE
Jaehoon Chung [Wed, 27 Jul 2016 01:12:09 +0000 (10:12 +0900)]
ARM: defconfig: trats2: disable CONFIG_MMC_CLKGATE

This patch disables CONFIG_MMC_CLKGATE to remove spamming mmc log
message about setting  mmc clock.

Change-Id: I1f3071f3e9da6c5d213e48fcb731595ff7b29679
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agoARM: defconfig: trats2: sync defconfig file for v4.1 tree
Jaehoon Chung [Wed, 27 Jul 2016 01:12:09 +0000 (10:12 +0900)]
ARM: defconfig: trats2: sync defconfig file for v4.1 tree

This patch updates the defconfig file for trats2 to sync with v4.1
tree.

Change-Id: Ib9682a36e721a881256ce52caa94a916a91d8403
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agoARM: mali400: r4p0_rel0: fix build errors
Joonyoung Shim [Thu, 28 Jul 2016 00:58:10 +0000 (09:58 +0900)]
ARM: mali400: r4p0_rel0: fix build errors

Now occurs below build errors with -Werror=date-time. Remove code using
__DATE__ and __TIME__ to fix build errors.

drivers/gpu/arm/mali400/r4p0_rel0/linux/mali_kernel_linux.c: In function 'mali_module_init':
drivers/gpu/arm/mali400/r4p0_rel0/linux/mali_kernel_linux.c:338:71: error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]
  MALI_DEBUG_PRINT(2, ("Compiled: %s, time: %s.\n", __DATE__, __TIME__));
                                                                       ^
drivers/gpu/arm/mali400/r4p0_rel0/linux/mali_kernel_linux.c:338:1: error: macro "__TIME__" might prevent reproducible builds [-Werror=date-time]
  MALI_DEBUG_PRINT(2, ("Compiled: %s, time: %s.\n", __DATE__, __TIME__));

Change-Id: I3cb0d55619afdffee618b2ae84c9b5c600aae196
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoASoC: ymu831: remove IRQF_DISABLED
Seung-Woo Kim [Wed, 27 Jul 2016 08:38:10 +0000 (17:38 +0900)]
ASoC: ymu831: remove IRQF_DISABLED

After mainline commit "d8bf368 genirq: Remove the deprecated
'IRQF_DISABLED' request_irq() flag entirely", IRQF_DISABLED is
removed. The flags is deprecated in early kernel, so it can
be replaced with 0x0 like other drivers.

This patch fixes following build error:
   sound/soc/codecs/ymu831/ymu831.c: In function 'init_irq':
   sound/soc/codecs/ymu831/ymu831.c:8525:54: error: 'IRQF_DISABLED' undeclared (first use in this    function)
     err = request_irq(mc_asoc->pdata->irq, irq_handler, IRQF_DISABLED,
                                                         ^

Change-Id: Id06d964fbe2a62f8c9c642d13479782b9663e7cc
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agoASoC: ymu831: replace snd_soc_jack_new() to snd_soc_card_jack_new()
Seung-Woo Kim [Wed, 27 Jul 2016 08:16:22 +0000 (17:16 +0900)]
ASoC: ymu831: replace snd_soc_jack_new() to snd_soc_card_jack_new()

After mainline commit "77c7176 ASoC: Remove snd_soc_jack_new()",
snd_soc_jack_new() should be replaced with snd_soc_card_jack_new().

This patch fixes following build error:
   sound/soc/codecs/ymu831/ymu831.c:8525:54: note: each undeclared identifier is reported only once for each function it appears in
   sound/soc/codecs/ymu831/ymu831.c: In function 'mc_asoc_probe':
   sound/soc/codecs/ymu831/ymu831.c:8787:2: error: implicit declaration of function 'snd_soc_jack_new' [-Werror=implicit-function-declaration]
     snd_soc_jack_new(codec, "Headset",
     ^

Change-Id: Ic043abca5a0dc55eacaf60830b760b95d06551cf
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agodrm/exynos: modify primary plane index of decon of exynos5433
Joonyoung Shim [Tue, 8 Mar 2016 07:29:43 +0000 (16:29 +0900)]
drm/exynos: modify primary plane index of decon of exynos5433

Make primary plane index to 1 instead of 0 because plane for video
playing should be below primary plane.

Change-Id: I4bb0c472cb65173cd07ea64582c88e00d1d444bf
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agodrm/exynos: unregister unused plane of exynos5433 decon-tv
Joonyoung Shim [Tue, 26 Jul 2016 02:04:47 +0000 (11:04 +0900)]
drm/exynos: unregister unused plane of exynos5433 decon-tv

The window 0 of exynos5433 decon-tv is unused in driver so it doesn't
need to register as plane. We can do this as consider first_win value of
driver data.

Change-Id: I5f68cb2055c78743ca24247f5e47a1532fb7b532
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agodrm/exynos: enable zpos property on primary plane
Joonyoung Shim [Thu, 10 Mar 2016 05:47:47 +0000 (14:47 +0900)]
drm/exynos: enable zpos property on primary plane

Now zpos property is immutable, so it's no problem to permit zpos
property on primary plane.

Change-Id: I1996a826e93c969adadb681e91e813f091b606b9
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agodrm/exynos: Properly report supported formats for each device
Marek Szyprowski [Sun, 30 Aug 2015 15:53:57 +0000 (00:53 +0900)]
drm/exynos: Properly report supported formats for each device

Exynos DRM reported that all planes for all supported sub-devices supports
only three pixel formats: XRGB24, ARGB24 and NV12. This patch lets each
Exynos DRM sub-drivers to provide the list of supported pixel formats
and registers this list to DRM core.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
[jy0922.shim: backported from original mainline commit]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Change-Id: I7f486b9f2d776a8fdd8cb0c758100eba8de31ef6

8 years agodrm/exynos/hdmi: apply configuration in case of power cycling
Andrzej Hajda [Tue, 26 Jul 2016 09:03:26 +0000 (11:03 +0200)]
drm/exynos/hdmi: apply configuration in case of power cycling

When power is turned off and on, modesetting is not performed,
but HDMI registers should be set.
The patch fixes issues with black screen on Odroid (X)U3 during
console blank/unblank.

Change-Id: I95d9098969793d38986237234b95e11a7027052f
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
8 years agodrm/exynos/mixer: enable HDMI-PHY before configuring MIXER
Andrzej Hajda [Tue, 26 Jul 2016 08:45:55 +0000 (10:45 +0200)]
drm/exynos/mixer: enable HDMI-PHY before configuring MIXER

Mixer similarly to DECON-TV requires enabled clock generated
by HDMI-PHY to proper work.
The patch fixes hang on Odroid (X)U3 during console blank/unblank.

Change-Id: I9fa14fe02e54d2981fa06b43654f9616cd7074a8
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
8 years agopackaging: add baselibs.conf
Chan Lee [Thu, 9 Jun 2016 08:05:07 +0000 (17:05 +0900)]
packaging: add baselibs.conf

this config file is for creating bi-arch rpms of armv7l

Change-Id: Ifc9d1e31fbfa8376b0d6bffd8d1700e06d0a1c17
Signed-off-by: Chan Lee <chan45.lee@samsung.com>
8 years agoARM64: tizen_tm2_defconfig: disable rtc-s3c config
Joonyoung Shim [Fri, 22 Jul 2016 06:57:55 +0000 (15:57 +0900)]
ARM64: tizen_tm2_defconfig: disable rtc-s3c config

Currently there is booting issue of tizen 3.0 mobile 32bit platform with
PID1 getting stuck printing "systemd[1]: Time has been changed"
continuously. [1][2]

This problem is related with rtc-s3c and now rtc-s3c is reporting time
values over 2038 years like below:

[    5.124065] s3c-rtc 10590000.rtc: setting system clock to 2140-10-02 10:52:03 UTC (5388461523)

Android MM N910S kernel uses only pmic rtc, not rtc-s3c so i think it's
better to disable rtc-s3c.

[1] https://github.com/systemd/systemd/issues/1143
[2] https://patchwork.ozlabs.org/patch/585661

Change-Id: Idc580c2494aa309607dd835ca39411236f3366e6
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoclk: exynos542x: add IGNORE_UNUSED flag to aclk432_scaler clock
Marek Szyprowski [Mon, 18 Jul 2016 11:53:52 +0000 (13:53 +0200)]
clk: exynos542x: add IGNORE_UNUSED flag to aclk432_scaler clock

This keeping this clock enabled is needed for proper GSCL power domain
on/off sequence, so add this flag to avoid core disabling it on boot.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I8b2e39c3a76fd194104eb21066d33b2f0a5a8289

8 years agodts: tm2/tm2e: remove te-gpios property from panel node
Andrzej Hajda [Mon, 4 Jul 2016 06:13:49 +0000 (08:13 +0200)]
dts: tm2/tm2e: remove te-gpios property from panel node

Since DECON uses HW-TRIGGER it does not need TE interrupt. Exynos-DSI driver
will not register this interrupt if the property is not present.

Change-Id: I15097fed7cdcdabf8f825c3b170eb625966fcacc
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
8 years agodrm/exynos/dsi: make te-gpios optional
Andrzej Hajda [Fri, 1 Jul 2016 13:57:41 +0000 (15:57 +0200)]
drm/exynos/dsi: make te-gpios optional

In case of HW-TRIGGER te-gpios interrupt is not necessary. With this
patch we can get rid of 60 interrupt callbacks per second.

Change-Id: Ifbe6b55eefe41e5de63e0be58c7c34054d8e73be
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
8 years agodrm/exynos/decon5433: merge interrupt handlers
Andrzej Hajda [Wed, 6 Jul 2016 06:13:12 +0000 (08:13 +0200)]
drm/exynos/decon5433: merge interrupt handlers

Both interrupt handlers do almost the same things, merging will simplify
the code.

Change-Id: I53fc1fbc0fa4ca00fdb5aa266b959427bd7f1f2a
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
8 years agodrm/exynos/decon5433: handle vblank in vblank interrupt
Andrzej Hajda [Wed, 29 Jun 2016 08:00:02 +0000 (10:00 +0200)]
drm/exynos/decon5433: handle vblank in vblank interrupt

vblank should be signaled to userspace as soon as possible after sending
frame. INTFRMDONEPEND irq looks to be the best moment.
Handling it in TE interrupt looks wrong - TE triggers reading framebuffers
so it is the worst moment, it could result in delayed frame update.
Other benefit of moving vblank handiling to vblank interrupt is possibility
to eliminate TE irq handler in case of HWTRIGGER.

Change-Id: I1f9b1830c3328a935d05fc9d859c9baf4df33533
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
8 years agobuild: remove dtb files for ARM64 exynos
Joonyoung Shim [Thu, 7 Jul 2016 01:07:52 +0000 (10:07 +0900)]
build: remove dtb files for ARM64 exynos

Remove existing dtb files before building because old dtb files can be
included in kernel image.

Change-Id: I28847ad01cbf38e458e093c1c912eecc1f066560
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: tizen_odroid_defconfig: enable sync config
Joonyoung Shim [Thu, 7 Jul 2016 05:20:18 +0000 (14:20 +0900)]
ARM: tizen_odroid_defconfig: enable sync config

The android sync config is enabled by request of window part because of
vulkan support.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM64: tizen_tm2_defconfig: enable sync config
Joonyoung Shim [Wed, 29 Jun 2016 02:38:33 +0000 (11:38 +0900)]
ARM64: tizen_tm2_defconfig: enable sync config

The android sync config is enabled by request of window part because of
vulkan support.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: tizen_odroid_defconfig: enable mali400 r5p2_rel0
Joonyoung Shim [Tue, 24 May 2016 02:03:21 +0000 (11:03 +0900)]
ARM: tizen_odroid_defconfig: enable mali400 r5p2_rel0

Enable mali400 r5p2_rel0 instead of r4p0_rel0.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: tizen_odroid_defconfig: enable mali midgard r12p0_04rel0
Joonyoung Shim [Mon, 23 May 2016 08:38:54 +0000 (17:38 +0900)]
ARM: tizen_odroid_defconfig: enable mali midgard r12p0_04rel0

We will use mali midgard r12p0_04rel0 instead of r5p0_06rel0.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM64: tizen_tm2_defconfig: enable mali midgard r12p0_04rel0
Joonyoung Shim [Mon, 23 May 2016 09:02:15 +0000 (18:02 +0900)]
ARM64: tizen_tm2_defconfig: enable mali midgard r12p0_04rel0

We will use mali midgard r12p0_04rel0 instead of r5p0_06rel0.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: use get_unused_fd_flags(O_CLOEXEC) instead of get_unused_fd()
Joonyoung Shim [Thu, 7 Jul 2016 05:02:21 +0000 (14:02 +0900)]
ARM: mali400: r5p2_rel0: use get_unused_fd_flags(O_CLOEXEC) instead of get_unused_fd()

get_unused_fd() was changed to get_unused_fd_flags() by the commit
1a7bd2265fc5 ("make get_unused_fd_flags() a function"), so it causes
build error,

drivers/gpu/arm/mali400/r5p2_rel0/linux/mali_sync.c: In function 'mali_sync_fence_fd_alloc':
drivers/gpu/arm/mali400/r5p2_rel0/linux/mali_sync.c:235:2: error: implicit declaration of function 'get_unused_fd' [-Werror=implicit-function-declaration]
  fd = get_unused_fd();
  ^

This patch was refered from the commit 45acea57335e ("android/sw_sync:
use get_unused_fd_flags(O_CLOEXEC) instead of get_unused_fd()")

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: replace CONFIG_PM_RUNTIME to CONFIG_PM
Seung-Woo Kim [Mon, 23 May 2016 08:23:22 +0000 (17:23 +0900)]
ARM: mali400: r5p2_rel0: replace CONFIG_PM_RUNTIME to CONFIG_PM

After commit 464ed18ebdb6 ("PM: Eliminate CONFIG_PM_RUNTIME") which
is applied kernel version 3.19, PM_RUNTIME is eliminated. So this
patch replaces CONFIG_PM_RUNTIME to CONFIG_PM for kernel version
larger than 3.19.

Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
[jy0922.shim: apply to mali400 r5p2_rel0 with some modification]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: fix build error
Joonyoung Shim [Mon, 23 May 2016 06:35:41 +0000 (15:35 +0900)]
ARM: mali400: r5p2_rel0: fix build error

Include pm_runtime.h to fix below build error when CONFIG_PM_RUNTIME is
disabled.

drivers/gpu/arm/mali400/r5p2_rel0/linux/mali_kernel_linux.c: In function ‘mali_driver_suspend_scheduler’:
drivers/gpu/arm/mali400/r5p2_rel0/linux/mali_kernel_linux.c:595:2: error: implicit declaration of function ‘pm_runtime_active’ [-Werror=implicit-function-declaration]
  if (pm_runtime_active(dev))
  ^

Change-Id: Ic613dd9785a9d563e50361328944bd23d33fd70c
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: fix building out of tree
Joonyoung Shim [Tue, 24 May 2016 09:21:06 +0000 (18:21 +0900)]
ARM: mali400: fix building out of tree

s/$(src)/$(srctree)\/$(src)/

$(srctree) has absolute path of kernel root directory, so with this
commit, building problem by relative path will be gone from outside of
kernel tree.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: add GLES mem profiler feature
YoungJun Cho [Tue, 21 Jul 2015 04:19:27 +0000 (13:19 +0900)]
ARM: mali400: r5p2_rel0: add GLES mem profiler feature

This patch adds GLES mem profiler feature.

You could use it by "cat /sys/kernel/debug/mali/gles_mem/<PID>".
Without user-DDK's MALI_IOC_MEM_PROFILE_GLES_MEM, it only show layout.

With this ioctl, you could check current GLES relevant memory status
in opened session and also check memory leakage in trash subdirectory.

The mechanism of detecting memory leakage is checking information when
the session is closed. So the user misses to free (GLES)memory during
session, it(the PID) could be found in trash.

Caution! When app is killed and the session is forcely shut down, then
it(the PID) could be found in trash but we can not guarantee there is a
real memory leakage. That is because like this case, it is impossible
to call MALI_IOC_MEM_PROFILE_GLES_MEM to remove allocated memory.

Change-Id: I78a08f7b53594dc20f8cc6f4c892250fdc9e8208
Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
[jy0922.shim: applied to r5p2_rel0 from r5p0_rel0]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: delete proprietary word in Kbuild
YoungJun Cho [Thu, 2 Jul 2015 10:44:49 +0000 (19:44 +0900)]
ARM: mali400: r5p2_rel0: delete proprietary word in Kbuild

This is to guid for non-gpl case, not related with license,
but Tango detects it because it simply compares string.

Change-Id: Iad42e139fd5d040b3242f1e7358720ef24343570
Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
[jy0922.shim: applied to r5p2_rel0 from r5p0_rel0]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: fix of_match_table
Joonyoung Shim [Mon, 23 May 2016 10:20:09 +0000 (19:20 +0900)]
ARM: mali400: r5p2_rel0: fix of_match_table

The exynos platform of this kernel has exynos specific of_match_table,
so use mali_of_matches of exynos instead of base_dt_ids of mali.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: fix for exynos
Joonyoung Shim [Mon, 23 May 2016 07:51:52 +0000 (16:51 +0900)]
ARM: mali400: r5p2_rel0: fix for exynos

The exynos platform codes have to be modified a bit to apply
r5p2_rel0. If not, will occurs build errors.

  CC      drivers/gpu/arm/mali400/r5p2_rel0/linux/mali_kernel_linux.o
drivers/gpu/arm/mali400/r5p2_rel0/linux/mali_kernel_linux.c:190:13: error: conflicting types for ‘mali_platform_power_mode_change’
 extern void mali_platform_power_mode_change(int power_mode);
...
drivers/gpu/arm/mali400/r5p2_rel0/platform/exynos/exynos.c:246:2: error: unknown field ‘utilization_interval’ specified in initializer
  .utilization_interval = 100, /* 100ms in Tizen */
  ^
...
drivers/built-in.o: In function `mali_remove':
/home/pub/git/spin/linux-exynos/drivers/gpu/arm/mali400/r5p2_rel0/linux/mali_kernel_linux.c:561: undefined reference to `mali_platform_device_deinit'
drivers/built-in.o: In function `mali_probe':
/home/pub/git/spin/linux-exynos/drivers/gpu/arm/mali400/r5p2_rel0/linux/mali_kernel_linux.c:515: undefined reference to `mali_platform_device_init'
drivers/built-in.o: In function `mali_hw_core_register_read':
/home/pub/git/spin/linux-exynos/drivers/gpu/arm/mali400/r5p2_rel0/common/mali_hw_core.h:52: undefined reference to `mali_is_on'
drivers/built-in.o: In function `mali_hw_core_register_write':
/home/pub/git/spin/linux-exynos/drivers/gpu/arm/mali400/r5p2_rel0/common/mali_hw_core.h:98: undefined reference to `mali_is_on'
drivers/built-in.o: In function `mali_hw_core_register_read':
/home/pub/git/spin/linux-exynos/drivers/gpu/arm/mali400/r5p2_rel0/common/mali_hw_core.h:52: undefined reference to `mali_is_on'
/home/pub/git/spin/linux-exynos/drivers/gpu/arm/mali400/r5p2_rel0/common/mali_hw_core.h:52: undefined reference to `mali_is_on'
drivers/built-in.o: In function `mali_hw_core_register_write':
/home/pub/git/spin/linux-exynos/drivers/gpu/arm/mali400/r5p2_rel0/common/mali_hw_core.h:98: undefined reference to `mali_is_on'
drivers/built-in.o:/home/pub/git/spin/linux-exynos/drivers/gpu/arm/mali400/r5p2_rel0/common/mali_hw_core.h:52: more undefined references to `mali_is_on' follow

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: add exynos platform codes
Joonyoung Shim [Mon, 23 May 2016 06:09:33 +0000 (15:09 +0900)]
ARM: mali400: r5p2_rel0: add exynos platform codes

This comes from r4p0_rel0.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: sync codes for TM1 from r5p0_rel0
Joonyoung Shim [Tue, 10 May 2016 07:18:10 +0000 (16:18 +0900)]
ARM: mali400: r5p2_rel0: sync codes for TM1 from r5p0_rel0

Spectrum added some codes on r5p0_rel0 public, so do it on r5p2_rel0.
But except some codes related with below defines

SPRD_MEM_OPT_PAGE_TABLE_SHRINK
MALI_IOC_MEM_INIT
MALI_IOC_MEM_TERM

because we cannot add them by changed codes from r5p2_rel0.

Change-Id: I1423e7ce5181d4f1a08f3fbd01f9d426290eff29
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: fix Makefile & Kconfig
Joonyoung Shim [Tue, 10 May 2016 05:59:10 +0000 (14:59 +0900)]
ARM: mali400: r5p2_rel0: fix Makefile & Kconfig

For building of r5p2_rel0.

Change-Id: I23c3144d886b9cbfe6061650ab16d180eb74e94c
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r5p2_rel0: add public codes from ARM
Joonyoung Shim [Tue, 10 May 2016 05:57:26 +0000 (14:57 +0900)]
ARM: mali400: r5p2_rel0: add public codes from ARM

This comes from DX910-SW-99002-r5p2-00rel0.tgz of ARM web site.

Change-Id: I8d556f4abba5497679068eec6540a1d7716f6ebb
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: mali400: r4p0_rel0: fix to rearrange resources
Joonyoung Shim [Tue, 24 May 2016 04:44:09 +0000 (13:44 +0900)]
ARM: mali400: r4p0_rel0: fix to rearrange resources

Above commit ("ARM: dts: exynos4x12: fix g3d nodes") changes order of
reg resources, so need to fix codes to rearrange resources.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: dts: exynos4x12: fix g3d nodes
Joonyoung Shim [Tue, 24 May 2016 02:57:22 +0000 (11:57 +0900)]
ARM: dts: exynos4x12: fix g3d nodes

This fixes order of reg resources. First has to be resource that has
lowest address because mali400 r5p2 version requires it.

This also adds interrupt-names for g3d nodes. The interrupt-names needs
at mali400 r5p2 version.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM: dts: exynos5422-odroidxu3-common: Add mali regulator supply
Joonyoung Shim [Mon, 23 May 2016 05:39:48 +0000 (14:39 +0900)]
ARM: dts: exynos5422-odroidxu3-common: Add mali regulator supply

mali-supply is used for devfreq voltage supply control.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM64: dts: exynos5433: Add power_nodel node for mali midgard
Sylwester Nawrocki [Fri, 18 Mar 2016 15:21:29 +0000 (16:21 +0100)]
ARM64: dts: exynos5433: Add power_nodel node for mali midgard

Property values taken from example for Mali-T602 from
Documentation/devicetree/bindings/arm/mali-midgard.txt.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
8 years agoARM64: dts: exynos5433-tm2e: Add mali regulator supply
Joonyoung Shim [Fri, 20 May 2016 06:04:40 +0000 (15:04 +0900)]
ARM64: dts: exynos5433-tm2e: Add mali regulator supply

mali-supply is used for devfreq voltage supply control.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoARM64: dts: exynos5433-tm2: Add mali regulator supply
Sylwester Nawrocki [Wed, 16 Mar 2016 18:16:43 +0000 (19:16 +0100)]
ARM64: dts: exynos5433-tm2: Add mali regulator supply

mali-supply is used for devfreq voltage supply control.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to dts of tm2]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoDocumentation: Add devicetree bindings documentation for Mali Midgard
Sylwester Nawrocki [Fri, 18 Mar 2016 15:23:45 +0000 (16:23 +0100)]
Documentation: Add devicetree bindings documentation for Mali Midgard

Extracted from TX011-BU-00001-r10p0-00rel0.tgz downloaded from
malideveloper.arm.com.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
8 years agogpu: arm: midgard: r12p0_04rel0: add exynos5422 platform files
Joonyoung Shim [Mon, 23 May 2016 05:37:02 +0000 (14:37 +0900)]
gpu: arm: midgard: r12p0_04rel0: add exynos5422 platform files

This is based on exynos5433 platform files.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: r12p0_04rel0: Fix incorrect IS_ERR_OR_NULL() usage
Sylwester Nawrocki [Thu, 17 Mar 2016 16:00:41 +0000 (17:00 +0100)]
gpu: arm: midgard: r12p0_04rel0: Fix incorrect IS_ERR_OR_NULL() usage

The corresponding function return ERR_PTR() values which
should be tested with IS_ERR(), not IS_ERR_OR_NULL() macro.
Especially it is not correct to do:

 if(IS_ERR_OR_NULL(value))
error = PTR_ERR(value);

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0 except r5p0_06rel0 part]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: r12p0_04rel0: Add custom simple_ondemand devfreq governor data
Sylwester Nawrocki [Wed, 16 Mar 2016 18:20:58 +0000 (19:20 +0100)]
gpu: arm: midgard: r12p0_04rel0: Add custom simple_ondemand devfreq governor data

Need custom upthreshold and downdifferential for mali devfreq.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0]

8 years agogpu: arm: midgard: r12p0_04rel0: Restore frequency/voltage values on error paths...
Sylwester Nawrocki [Wed, 16 Mar 2016 18:20:16 +0000 (19:20 +0100)]
gpu: arm: midgard: r12p0_04rel0: Restore frequency/voltage values on error paths in kbase_devfreq_target()

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: r12p0_04rel0: add regulator enable/disable calls
Sylwester Nawrocki [Thu, 17 Mar 2016 11:02:01 +0000 (12:02 +0100)]
gpu: arm: midgard: r12p0_04rel0: add regulator enable/disable calls

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0 with some modification]

8 years agogpu: arm: midgard: r12p0_04rel0: Workaround for missing last_status field
Sylwester Nawrocki [Wed, 16 Mar 2016 16:58:55 +0000 (17:58 +0100)]
gpu: arm: midgard: r12p0_04rel0: Workaround for missing last_status field

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: r12p0_04rel0: Fix 'struct devfreq_cooling_ops' related compilation...
Sylwester Nawrocki [Tue, 15 Mar 2016 15:18:56 +0000 (16:18 +0100)]
gpu: arm: midgard: r12p0_04rel0: Fix 'struct devfreq_cooling_ops' related compilation break

There is no 'struct devfreq_cooling_ops' in current kernel tree
and 'struct devfreq_cooling_power' seems to be an equivalent of it.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: r12p0_04rel0: Fix build warning about devfreq cooling device
Chanwoo Choi [Tue, 14 Jul 2015 09:53:42 +0000 (18:53 +0900)]
gpu: arm: midgard: r12p0_04rel0: Fix build warning about devfreq cooling device

This patch fixes the build warning according to new devfreq_cooling device
driver and make the frequency table as descending order.

Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: r12p0_04rel0: change temperature var type to int in model_static_p...
Sylwester Nawrocki [Wed, 16 Mar 2016 16:36:13 +0000 (17:36 +0100)]
gpu: arm: midgard: r12p0_04rel0: change temperature var type to int in model_static_power()

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: r12p0_04rel0: add exynos5433 platform files
Joonyoung Shim [Thu, 19 May 2016 09:44:30 +0000 (18:44 +0900)]
gpu: arm: midgard: r12p0_04rel0: add exynos5433 platform files

We should check more clock and regulator for DVFS.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
[jy0922.shim: apply to midgard r12p0_04rel0 with removing some codes]

8 years agogpu: arm: midgard: remove choice in Kconfig of r12p0_04rel0
Joonyoung Shim [Thu, 19 May 2016 08:16:03 +0000 (17:16 +0900)]
gpu: arm: midgard: remove choice in Kconfig of r12p0_04rel0

The choice of each mali version causes Kconfig errors like below,

$ make ARCH=arm64 menuconfig
scripts/kconfig/mconf  Kconfig
drivers/gpu/arm/midgard/r12p0_04rel0/Kconfig:126:warning: choice value used outside its choice group
drivers/gpu/arm/midgard/r12p0_04rel0/Kconfig:129:warning: choice value used outside its choice group
drivers/gpu/arm/midgard/r12p0_04rel0/Kconfig:132:warning: choice value used outside its choice group
drivers/gpu/arm/midgard/r12p0_04rel0/Kconfig:135:warning: choice value used outside its choice group
drivers/gpu/arm/midgard/r12p0_04rel0/Kconfig:137:warning: choice value used outside its choice group

Also remove configs for unused platform.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: support Kconfig for r12p0_04rel0
Joonyoung Shim [Thu, 7 Jul 2016 00:19:58 +0000 (09:19 +0900)]
gpu: arm: midgard: support Kconfig for r12p0_04rel0

So, we can select mali midgard r12p0_04rel0 from Kconfig of midgard.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: add r12p0_04rel0 sources
Joonyoung Shim [Wed, 6 Jul 2016 08:33:48 +0000 (17:33 +0900)]
gpu: arm: midgard: add r12p0_04rel0 sources

This is mali midgard r12p0_04rel0 version from ARM.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: remove choice in Kconfig of r5p0_06rel0
Joonyoung Shim [Thu, 19 May 2016 08:16:21 +0000 (17:16 +0900)]
gpu: arm: midgard: remove choice in Kconfig of r5p0_06rel0

The choice of each mali version causes Kconfig errors like below,

$ make ARCH=arm64 menuconfig
scripts/kconfig/mconf  Kconfig
drivers/gpu/arm/midgard/r12p0_02dev0/Kconfig:126:warning: choice value used outside its choice group
drivers/gpu/arm/midgard/r12p0_02dev0/Kconfig:129:warning: choice value used outside its choice group
drivers/gpu/arm/midgard/r12p0_02dev0/Kconfig:132:warning: choice value used outside its choice group
drivers/gpu/arm/midgard/r12p0_02dev0/Kconfig:135:warning: choice value used outside its choice group
drivers/gpu/arm/midgard/r12p0_02dev0/Kconfig:137:warning: choice value used outside its choice group

Also remove configs for unused platform.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: fix Kconfig for multiple driver
Joonyoung Shim [Thu, 19 May 2016 02:32:40 +0000 (11:32 +0900)]
gpu: arm: midgard: fix Kconfig for multiple driver

This will make Kconfig of midgard can select mali midgard version to
use.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoarm64: tizen_tm2_defconfig: fix mali directory path for gator
Joonyoung Shim [Thu, 7 Jul 2016 06:30:33 +0000 (15:30 +0900)]
arm64: tizen_tm2_defconfig: fix mali directory path for gator

The mali midgard path was changed to drivers/gpu/arm/midgard/r5p0_06rel0
from drivers/gpu/arm/midgard, so should fix mali path for gator in
defconfig.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agogpu: arm: midgard: move to r5p0_06rel0
Joonyoung Shim [Thu, 19 May 2016 02:16:21 +0000 (11:16 +0900)]
gpu: arm: midgard: move to r5p0_06rel0

This is initial work to support multiple midgard driver in midgard
directory.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agodevfreq_cooling: return on allocation failure
Dan Carpenter [Wed, 4 Nov 2015 13:36:20 +0000 (16:36 +0300)]
devfreq_cooling: return on allocation failure

If the allocation fails then we can't continue.

Fixes: a76caf55e5b3 ('thermal: Add devfreq cooling')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
[jy0922.shim: apply mainline patch]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agothermal: devfreq_cooling: Make power a u64
Javi Merino [Mon, 2 Nov 2015 19:03:04 +0000 (19:03 +0000)]
thermal: devfreq_cooling: Make power a u64

The prototype of do_div() is:

uint32_t do_div(uint64_t *n, uint32_t base);

Make power u64 to avoid the following warning:

   drivers/thermal/devfreq_cooling.c: In function 'get_dynamic_power':
   drivers/thermal/devfreq_cooling.c:267:2: warning: comparison of distinct pointer types lacks a cast [enabled by default]
   drivers/thermal/devfreq_cooling.c:267:2: warning: right shift count >= width of type [enabled by default]
   drivers/thermal/devfreq_cooling.c:267:2: warning: passing argument 1 of '__div64_32' from incompatible pointer type [enabled by default]
   include/asm-generic/div64.h:35:17: note: expected 'uint64_t *' but argument is of type 'long unsigned int *'

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Cc: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
[jy0922.shim: apply mainline patch]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agothermal: devfreq_cooling: use a thermal_cooling_device for register and unregister
Javi Merino [Mon, 2 Nov 2015 19:03:03 +0000 (19:03 +0000)]
thermal: devfreq_cooling: use a thermal_cooling_device for register and unregister

Be consistent with what other cooling devices do and return a struct
thermal_cooling_device * on register.  Also, for the unregister, accept
a struct thermal_cooling_device * as parameter.

Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
[jy0922.shim: apply mainline patch]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agodevfreq_cooling: add trace information
Javi Merino [Thu, 10 Sep 2015 17:09:31 +0000 (18:09 +0100)]
devfreq_cooling: add trace information

Tracing is useful for debugging and performance tuning.  Add similar
traces to what's present in the cpu cooling device.

Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ingo Molnar <mingo@redhat.com>
Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
[jy0922.shim: apply from mainline with fixup of fuzz]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agothermal: Add devfreq cooling
Ørjan Eide [Thu, 10 Sep 2015 17:09:30 +0000 (18:09 +0100)]
thermal: Add devfreq cooling

Add a generic thermal cooling device for devfreq, that is similar to
cpu_cooling.

The device must use devfreq.  In order to use the power extension of the
cooling device, it must have registered its OPPs using the OPP library.

Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Ørjan Eide <orjan.eide@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
[jy0922.shim: apply from mainline with fixup of fuzz]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agothermal: remove devfreq cooling
Joonyoung Shim [Thu, 19 May 2016 10:04:11 +0000 (19:04 +0900)]
thermal: remove devfreq cooling

Remove local old driver to apply original mainline driver for devfreq
cooling.

Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoPM / devfreq: comments for get_dev_status usage updated
MyungJoo Ham [Tue, 18 Aug 2015 04:45:49 +0000 (13:45 +0900)]
PM / devfreq: comments for get_dev_status usage updated

With the introduction of devfreq_update_stats(), governors
are not recommended to use get_dev_status() directly.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
[jy0922.shim: apply mainline patch]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoPM / devfreq: cache the last call to get_dev_status()
Javi Merino [Fri, 14 Aug 2015 17:56:56 +0000 (18:56 +0100)]
PM / devfreq: cache the last call to get_dev_status()

The return value of get_dev_status() can be reused.  Cache it so that
other parts of the kernel can reuse it instead of having to call the
same function again.

Cc: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
[jy0922.shim: apply mainline patch]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agothermal: extend the cooling device API to include power information
Javi Merino [Thu, 26 Feb 2015 19:00:28 +0000 (19:00 +0000)]
thermal: extend the cooling device API to include power information

Add three optional callbacks to the cooling device interface to allow
them to express power.  In addition to the callbacks, add helpers to
identify cooling devices that implement the power cooling device API.

Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
[jy0922.shim: apply mainline patch]
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
8 years agoRevert "PM: devfreq: Add the prototype of update_devfreq() to export"
Sylwester Nawrocki [Tue, 15 Mar 2016 11:56:37 +0000 (12:56 +0100)]
Revert "PM: devfreq: Add the prototype of update_devfreq() to export"

This temporarily reverts commit d70aa318b6a80780e3134d8a07303fa72b95576b,
which will be re-applied after applying soem mainline commits.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
8 years agogpu: mali: Drop TRACE_SYSTEM_STRING macro definition from mali_linux_trace.h
Sylwester Nawrocki [Mon, 14 Mar 2016 17:16:19 +0000 (18:16 +0100)]
gpu: mali: Drop TRACE_SYSTEM_STRING macro definition from mali_linux_trace.h

This fixes compilation warning:

In file included from include/trace/define_trace.h:90:0,
                 from drivers/gpu/arm/midgard/mali_linux_trace.h:211,
                 from drivers/gpu/arm/midgard/mali_kbase_core_linux.c:4199:
include/trace/ftrace.h:28:0: warning: "TRACE_SYSTEM_STRING" redefined
 #define TRACE_SYSTEM_STRING __app(TRACE_SYSTEM_VAR,__trace_system_name)
 ^
In file included from include/trace/define_trace.h:83:0,
                 from drivers/gpu/arm/midgard/mali_linux_trace.h:211,
                 from drivers/gpu/arm/midgard/mali_kbase_core_linux.c:4199:
drivers/gpu/arm/midgard/./mali_linux_trace.h:28:0: note: this is the location of the previous definition
 #define TRACE_SYSTEM_STRING __stringify(TRACE_SYSTEM)
 ^
In file included from include/trace/ftrace.h:134:0,
                 from include/trace/define_trace.h:90,
                 from drivers/gpu/arm/midgard/mali_linux_trace.h:211,
                 from drivers/gpu/arm/midgard/mali_kbase_core_linux.c:4199:
drivers/gpu/arm/midgard/./mali_linux_trace.h:28:0: warning: "TRACE_SYSTEM_STRING" redefined
 #define TRACE_SYSTEM_STRING __stringify(TRACE_SYSTEM)
 ^
In file included from include/trace/define_trace.h:90:0,
                 from drivers/gpu/arm/midgard/mali_linux_trace.h:211,
                 from drivers/gpu/arm/midgard/mali_kbase_core_linux.c:4199:
include/trace/ftrace.h:28:0: note: this is the location of the previous definition
 #define TRACE_SYSTEM_STRING __app(TRACE_SYSTEM_VAR,__trace_system_name)

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
8 years agoarm64: tizen_tm2_defconfig: enable the sec-nfc legacy driver
Jihoon Jung [Fri, 29 Apr 2016 06:06:10 +0000 (15:06 +0900)]
arm64: tizen_tm2_defconfig: enable the sec-nfc legacy driver

This patch enables the sec-nfc legacy driver instead of s3fwrn5 for
neard interface. The legacy driver is used from nfc-manager which is
used as replacement of neard from Tizen.

Change-Id: I7a688738b69ca14723c8333cfca28c30ba2b9c84
Signed-off-by: Jihoon Jung <jh8801.jung@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agonfc: change driver from neard interface to legacy sec-nfc
Jihoon Jung [Fri, 29 Apr 2016 01:56:28 +0000 (10:56 +0900)]
nfc: change driver from neard interface to legacy sec-nfc

This enable the legacy nfc driver instead of neard interface.
It is required for nfc-manager and lsi nfc plugin implementation.

Change-Id: Ia77f105262e5c4899806e6310be6ae9cbc013ec9
Signed-off-by: Jihoon Jung <jh8801.jung@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
8 years agoarm: configs: merge odroid related defconfigs
Seung-Woo Kim [Tue, 5 Jul 2016 05:07:08 +0000 (14:07 +0900)]
arm: configs: merge odroid related defconfigs

There are two separated defconfig files for odroid including
tizen_odroidu3_defconfig and odroidxu3_defconfig. With just one
defconfig, it is possible to support both boards. So this patch
merges both odroid defconfigs into one tizen_odroid_defconfig
and also replaces defconfig from packaging spec file.

Change-Id: I5232ab6e5adfb98ea312e2fcfb9d149860c8764d
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>