On 2015년 01월 20일 23:31, Marek Szyprowski wrote:
If system provides IOMMU feature, Exynos DRM should use it by default,
because the Exynos DRM subdrivers don't work correctly when Exynos IOMMU
driver has been enabled and no IOMMU support has been compiled into Exynos
DRM driver.
Applied.
Hi Marek,
On 2015년 02월 02일 22:20, Marek Szyprowski wrote:
Mixed need to have hdmi clock enabled to properly perform power on/off
sequences, so add handling of this clock directly to the mixer driver.
Dependency between hdmi clock and mixer module has been observed on
Exynos4 based boards.
Hi,
On 02/03/2015 10:41 PM, Gustavo Padovan wrote:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
This issue was caused by the latest exynos_update_plane() clean up
that unified plane operations. After those changes the plane failed
to go the On state. This patch fix this problem by
Hi,
On 02/03/2015 11:16 PM, Gustavo Padovan wrote:
2015-02-02 Joonyoung Shim jy0922.s...@samsung.com:
Hi,
On 01/30/2015 11:44 PM, Gustavo Padovan wrote:
Hi Joonyoung,
2015-01-30 Joonyoung Shim jy0922.s...@samsung.com:
Hi,
On 01/23/2015 09:43 PM, Gustavo Padovan wrote:
From: Daniel
Hi,
On 02/03/2015 05:47 PM, Carlo Caione wrote:
The Exynos DRM driver doesn't follow the correct API when dealing with
dma_{alloc, mmap, free}_attrs functions and the
DMA_ATTR_NO_KERNEL_MAPPING attribute.
When a IOMMU is not available and the DMA_ATTR_NO_KERNEL_MAPPING is
used, the driver
Hi,
On 02/04/2015 04:14 AM, Gustavo Padovan wrote:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Use drm_atomic_set_fb_for_plane() in the legacy page_flip path to keep
track of the framebuffer pointer and reference.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
Hi,
On 02/04/2015 04:14 AM, Gustavo Padovan wrote:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
struct {fimd,mixer,vidi}_win_data was just keeping the same data
as struct exynos_drm_plane thus get ride of it and use exynos_drm_plane
directly.
It changes how planes are created
Hi,
On 02/04/2015 04:14 AM, Gustavo Padovan wrote:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
exynos_plane_dpms(DRM_MODE_DPMS_ON) calls the win_enable()'s callback
from the underlying layer. However neither one of these layers implement
win_enable() - FIMD, Mixer and VIDI. Thus
Hi,
On 02/04/2015 04:14 AM, Gustavo Padovan wrote:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
The new atomic infrastructure needs the .mode_set_nofb() callback to
update CRTC timings before setting any plane.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
Hi,
On 02/04/2015 04:14 AM, Gustavo Padovan wrote:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
The atomic helper to disable planes also uses the optional
.atomic_disable() helper. The unique operation it does is calling
.win_disable()
Is there any reason to split this patch
Hi,
On 02/04/2015 04:14 AM, Gustavo Padovan wrote:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Hi,
This series clean ups a few more paths from exynos-drm with the most important
being the removal of the global page flip queue and the removal in driver
internal data (struct
Hi,
On 02/04/2015 04:14 AM, Gustavo Padovan wrote:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Add CRTC callbacks .atomic_begin() .atomic_flush(). On exynos they
unprotect the windows before the commit and protects it after based on
a plane mask tha store which plane will be
On Fri, Jan 30, 2015 at 10:37:19AM -0500, Rob Clark wrote:
On Tue, Jan 20, 2015 at 11:38 AM, Ajay Kumar ajaykumar...@samsung.com wrote:
Currently, third party bridge drivers(ptn3460) are dependent
on the corresponding encoder driver init, since bridge driver
needs a drm_device pointer to
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
This issue was caused by the latest exynos_update_plane() clean up
that unified plane operations. After those changes the plane failed
to go the On state. This patch fix this problem by doing correct account
of exynos_crtc-enabled.
On wto, 2015-02-03 at 13:10 +0900, Kukjin Kim wrote:
Krzysztof Kozlowski wrote:
The 'pm_data', 'exynos_release_ret_regs' and
'exynos5420_release_ret_regs' are not exported nor used outside of
suspend.c file. Make them static.
This fixes following sparse warnings:
The Exynos DRM driver doesn't follow the correct API when dealing with
dma_{alloc, mmap, free}_attrs functions and the
DMA_ATTR_NO_KERNEL_MAPPING attribute.
When a IOMMU is not available and the DMA_ATTR_NO_KERNEL_MAPPING is
used, the driver should use the pointer returned by dma_alloc_attr() as
From: Jasper St. Pierre jstpie...@mecheye.net
Even without an iommu, NO_KERNEL_MAPPING is still convenient to save on
kernel address space in places where we don't need a kernel mapping.
Implement support for it in the two places where we're creating an
expensive mapping.
__alloc_from_pool uses
The DMA_ATTR_NO_KERNEL_MAPPING attribute is used to notify dma-mapping core
that the driver will not use kernel mapping for the allocated buffer at all, so
the core can skip creating it.
Unfortunately at the moment this attribute is only valid for IOMMU setups. In
non-IOMMU setups the codepath
On wto, 2015-02-03 at 12:20 +0900, Kukjin Kim wrote:
Krzysztof Kozlowski wrote:
Prevent possible NULL pointer dereference if of_iomap() fails. Handle
the error by skipping such power domain.
Signed-off-by: Krzysztof Kozlowski k.kozlow...@samsung.com
---
On Tue, Feb 03, 2015 at 03:05:36PM +0100, Sylwester Nawrocki wrote:
On 03/02/15 14:11, Mark Brown wrote:
OK, I can apply them if people want but I'd need a resend - I discarded
them since they'd normally go via the arch tree.
I will resend the last 3 patches then. There also shouldn't be
This patch provides a simple mmc-pwrseq-emmc driver, which controls
single gpio line. It perform standard eMMC hw reset procedure, as
descibed by Jedec 4.4 specification. This procedure is performed just
after MMC core enabled power to the given mmc host (to fix possible
issues if bootloader has
Hi Chanwoo,
On 02/02/15 15:24, Chanwoo Choi wrote:
This patch adds the the mux/divider/gate clocks for CMU_DISP domain which
includes the clocks of Display IPs (DECON/HDMI/DSIM/MIXER). The CMU_DISP
clocks
is used to need the source clock of CMU_MIF domain so, the CMU_MIF's clocks
related to
Hi Sylwester,
On 02/03/2015 09:29 PM, Sylwester Nawrocki wrote:
On 03/02/15 13:17, Sylwester Nawrocki wrote:
diff --git a/drivers/clk/samsung/clk-exynos5433.c
b/drivers/clk/samsung/clk-exynos5433.c
index 3d6164e..cf3f0ac 100644
--- a/drivers/clk/samsung/clk-exynos5433.c
+++
This sets up the blending equation in the following way:
out = src * src_alpha + dst * (1 - src_alpha)
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/exynos_fimg2d.c | 4
exynos/exynos_fimg2d.h | 1 +
2 files changed, 5 insertions(+)
diff --git
Hello,
here are some miscellaneous improvements (small features, bugfixes, spelling
fixes, etc.) for the exynos component of libdrm. The general idea is to let
userspace use the G2D engine functionality more
efficiently.
If someone is interested in an application that actually makes use of
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/Makefile.am| 2 +-
exynos/exynos_fimg2d.c| 2 +-
exynos/exynos_fimg2d.h| 328 ++
exynos/fimg2d.h | 328
Register defines all use uppercase hex codes.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/fimg2d_reg.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/exynos/fimg2d_reg.h b/exynos/fimg2d_reg.h
index 5782488..07dd634 100644
--- a/exynos/fimg2d_reg.h
This makes it easier to spot memory corruptions which don't become
visible when using a plain buffer filled with a solid color (so
corruptions that are just a permutation of the bytes in the buffer).
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
tests/exynos/exynos_fimg2d_test.c
In almost all functions the base address register is written, so it
makes sense to have a helper function for this.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/exynos_fimg2d.c | 87 +++---
1 file changed, 33 insertions(+), 54
This is a combination of g2d_copy_with_scale and g2d_scale.
It is a pretty common operation to scale one buffer and then
blend it on top of another, so provide a direct way to that
operation.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/exynos_fimg2d.c | 129
No functional changes.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/exynos_fimg2d.c| 8
tests/exynos/exynos_fimg2d_test.c | 4 ++--
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/exynos/exynos_fimg2d.c b/exynos/exynos_fimg2d.c
index
Keeps the code cleaner, since the structs have to be initialized
once anyway.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/exynos_fimg2d.c| 4 +---
tests/exynos/exynos_fimg2d_test.c | 15 ---
2 files changed, 5 insertions(+), 14 deletions(-)
This also avoids the floating point conversion steps and just
uses pure integer arithmetic.
Since the G2D hardware scaling approach is a bit unintuitive,
document it in the function as well.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/exynos_fimg2d.c | 19
Check for a useable connector and also if the resolution is sane
(width and height are both non-zero).
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
tests/exynos/exynos_fimg2d_test.c | 14 +-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git
The blend test uses the userptr functionality of exynos-drm, which
is currently not safe to use. If the kernel hasn't been build with
exynos-iommu support, then the blend test is going to produce (kernel)
memory corruption, eventually leading to a system crash.
Disable the test for now, until the
The coefficient mode enables use of global color, not alpha.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/exynos_fimg2d.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/exynos/exynos_fimg2d.h b/exynos/exynos_fimg2d.h
index bd116cf..78cff47 100644
---
This is useful when the default repeat mode, which is 'repeat'
produces artifacts at the borders of the copied image.
Choose the 'pad' mode to make use of the color of the destination
image.
In my usage case the destination is the framebuffer, which is
solid filled with a background color.
The reason for this change is to let userspace use the header.
Currently 'make install' does not install it.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
exynos/Makefile.am | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/exynos/Makefile.am
Currently getchar() is used to pause execution after each test.
The user isn't informed if one is supposed to do anything for
the tests to continue, so print a simple message to make this
more clear.
Signed-off-by: Tobias Jakobi tjak...@math.uni-bielefeld.de
---
tests/exynos/exynos_fimg2d_test.c
On 03/02/15 14:11, Mark Brown wrote:
On Tue, Feb 03, 2015 at 12:04:16PM +0100, Sylwester Nawrocki wrote:
Sorry, I should've said - I applied the ASoC patches, not these.
Shall I take 13 to 15 DT patches in Samsung tree?
Patches 13, 14 use macro definitions which are added in patch which
Clock related properties are added to the Exynos4 I2S device nodes
so they can be referred to as clock providers. Missing i2s_opclk1
clock is added to the I2S0 node and clock properties are added
to the MAX98090 codec node to allow it to control/read frequency
of the MCLK clock directly.
I2S1, I2S2 on Exynos4 SoC series have limited functionality compared
to I2S0, samsung,s3c6410-i2s compatible should be used for them.
Cc: sta...@vger.kernel.org
Signed-off-by: Sylwester Nawrocki s.nawro...@samsung.com
---
arch/arm/boot/dts/exynos4.dtsi |4 ++--
1 file changed, 2
Now when the CDCLK I2S output clock can be handled through the clock
API the Odroid X2/U3 can be switched to the simple-audio-card DT binding.
Signed-off-by: Sylwester Nawrocki s.nawro...@samsung.com
---
arch/arm/boot/dts/exynos4.dtsi |3 +++
On Tue, Feb 03, 2015 at 12:04:16PM +0100, Sylwester Nawrocki wrote:
Sorry, I should've said - I applied the ASoC patches, not these.
Shall I take 13 to 15 DT patches in Samsung tree?
Patches 13, 14 use macro definitions which are added in patch which is
already in Mark's sound tree (ASoC:
2015-02-02 Joonyoung Shim jy0922.s...@samsung.com:
Hi,
On 01/30/2015 11:44 PM, Gustavo Padovan wrote:
Hi Joonyoung,
2015-01-30 Joonyoung Shim jy0922.s...@samsung.com:
Hi,
On 01/23/2015 09:43 PM, Gustavo Padovan wrote:
From: Daniel Kurtz djku...@chromium.org
The 'mode' is
Prevent possible NULL pointer dereference of pointer returned by
of_find_device_by_node(). Handle this by skipping such power domain.
Additionally fail the init on kstrdup() failure. Such case is actually
not fatal because the name for power domain allocated by kstrdup() is
used only in printk.
On 2/3/2015 12:47 AM, Carlo Caione wrote:
From: Jasper St. Pierre jstpie...@mecheye.net
Even without an iommu, NO_KERNEL_MAPPING is still convenient to save on
kernel address space in places where we don't need a kernel mapping.
Implement support for it in the two places where we're creating an
On Tue, Feb 3, 2015 at 6:54 PM, Laura Abbott lau...@codeaurora.org wrote:
On 2/3/2015 12:47 AM, Carlo Caione wrote:
From: Jasper St. Pierre jstpie...@mecheye.net
Even without an iommu, NO_KERNEL_MAPPING is still convenient to save on
kernel address space in places where we don't need a
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Set CRTC, planes and connectors to use the default implementations from
the atomic helper library. The helpers will work to keep track of state
for each DRM object.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
---
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
exynos_disable_plane() is used only once now thus remove it and call
exynos_plane_dpms() directly.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
---
drivers/gpu/drm/exynos/exynos_drm_plane.c | 9 +
1 file changed, 1
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Use the pipe var received instead of using always -1 as pipe value.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
---
drivers/gpu/drm/exynos/exynos_drm_crtc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Use drm_atomic_set_fb_for_plane() in the legacy page_flip path to keep
track of the framebuffer pointer and reference.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
---
drivers/gpu/drm/exynos/exynos_drm_crtc.c | 3 +++
1
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
It is not used outside of the plane scope anymore.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
---
drivers/gpu/drm/exynos/exynos_drm_plane.c | 11 ++-
drivers/gpu/drm/exynos/exynos_drm_plane.h | 5 -
2 files
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
The new atomic infrastructure needs the .mode_set_nofb() callback to
update CRTC timings before setting any plane.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
Conflicts:
drivers/gpu/drm/exynos/exynos_drm_crtc.c
---
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
exynos_plane_dpms(DRM_MODE_DPMS_ON) calls the win_enable()'s callback
from the underlying layer. However neither one of these layers implement
win_enable() - FIMD, Mixer and VIDI. Thus the call to exynos_plane_dpms()
is pointless.
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Rip out the check from exynos_update_plane() and create
exynos_check_plane() for the check phase enabling use to use
the atomic helpers to call our check and update phases when updating
planes.
Update all users of exynos_update_plane()
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Hi,
This series clean ups a few more paths from exynos-drm with the most important
being the removal of the global page flip queue and the removal in driver
internal data (struct *_win_data) that was replicating plane data.
Following these
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
struct {fimd,mixer,vidi}_win_data was just keeping the same data
as struct exynos_drm_plane thus get ride of it and use exynos_drm_plane
directly.
It changes how planes are created and remove .win_mode_set() callback
that was only filling all
From: Daniel Kurtz djku...@chromium.org
The 'mode' is the modeline information which specifies the ideal mode
requested by the mode set initiator (usually userspace).
The 'adjusted_mode' is the actual hardware mode after all the crtcs
and encoders have had a chance to fix it up.
The
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
The atomic helper to disable planes also uses the optional
.atomic_disable() helper. The unique operation it does is calling
.win_disable()
exynos_drm_fb_get_buf_cnt() needs a fb check too to avoid a null pointer.
Signed-off-by: Gustavo
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
Add CRTC callbacks .atomic_begin() .atomic_flush(). On exynos they
unprotect the windows before the commit and protects it after based on
a plane mask tha store which plane will be updated.
For that we create two new exynos_crtc callbacks:
From: Gustavo Padovan gustavo.pado...@collabora.co.uk
These functions were already removed by previous cleanup work, but these
ones were left behind.
Signed-off-by: Gustavo Padovan gustavo.pado...@collabora.co.uk
Acked-by: Joonyoung Shim jy0922.s...@samsung.com
---
From: Mandeep Singh Baines m...@chromium.org
The goal of the change is to make sure we send the vblank event on the
current vblank. My hope is to fix any races that might be causing flicker.
After this change I only see a flicker in the transition plymouth and
X11.
Simplified the code by
On 03/02/15 05:27, Kukjin Kim wrote:
Mark Brown wrote:
On Wed, Jan 14, 2015 at 07:42:40PM +0100, Sylwester Nawrocki wrote:
Clock related properties are added to the Exynos4 I2S device nodes
so they can be referred to as clock providers. Missing i2s_opclk1
clock is added to the I2S0 node and
The 'exynos5420_pm_data' and of_device_id array are not modified and can
be made const.
Signed-off-by: Krzysztof Kozlowski k.kozlow...@samsung.com
---
Changes since v1:
1. New patch.
---
arch/arm/mach-exynos/suspend.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git
Since 32b0aa9aaeb4 (ARM: EXYNOS: Remove i2c sys configuration related
code) the Exynos 5250 no longer saves additional registers under
'exynos_pm_data.extra_save' field.
No one else uses this code so get rid of it making also 'exynos_pm_data'
const everywhere.
Signed-off-by: Krzysztof Kozlowski
The 'pm_data', 'exynos_release_ret_regs', 'exynos3250_release_ret_regs'
and 'exynos5420_release_ret_regs' are not exported nor used outside of
suspend.c file. Make them static.
This fixes following sparse warnings:
arch/arm/mach-exynos/suspend.c:83:23: warning: symbol 'pm_data' was not
declared.
Hi,
On 02/03/2015 12:58 PM, Kukjin Kim wrote:
Marek Szyprowski wrote:
Hi all,
This is yet another update on patchset, which enables HDMI support for
Exynos based platforms.
Beside DTS changes, this patchset adds parent domain support for Exynos
PM domains and add support for 'hdmi' clock
This patch fixes the bug of CLK_SCLK_HDMI_SPDIF_DISP clock because this clock
should be included in CMU_TOP domain. So, this patch moves the CLK_SCLK_HDMI_
SPDIF_DISP clock from CMU_MIF to CMU_TOP domain.
Cc: Sylwester Nawrocki s.nawro...@samsung.com
Cc: Tomasz Figa tomasz.f...@gmail.com
69 matches
Mail list logo