Age | Commit message (Collapse) | Author | Files | Lines |
|
Fix the variable type and the macro name to make this driver buildable.
Change-Id: I14f95c66db7bcfc8170e330e065f3de80c34ada8
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
|
|
list_first_entry does not return null, when the list is empty.
Change-Id: I014e2ef5ba035db3b6fc97e6821bc9869143f867
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
|
|
This patch support dynamic range for color space conversion.
COLOR_RANGE_LIMITED: selects narrow -> Y(16 to 235), Cb/Cr(16 to 240)
COLOR_RANGE_FULL: selects wide -> Y/Cb/Cr(0 to 255), Wide default
Change-Id: I7bb62883b497b5b6869108247cc33b09c07f470e
Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
|
|
This patch makes Exynos DRM GSC driver compatible with device tree.
Change-Id: I0e1abed40778c97c15ed5d52fc4568f0ee105c57
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
|
|
This patch makes Exynos DRM GSC driver buildable with Exynos 3 series,
not only with Exynos 5 series.
Change-Id: Ib8cda001f7aee34c1584923c4be43a3ed77c6e6d
Signed-off-by: Hyungwon Hwang <human.hwang@samsung.com>
|
|
This patch supports exynos drm display writeback mode that clone
the screen with fimd like below.
FIMD----->FIMC H/W---->MEMORY
Change-Id: I8172ec6ee157e2e48a23b9776e11543c33716dc5
Signed-off-by: Donghwa Lee <dh09.lee@samsung.com>
|
|
This patch fix two things:
- Remove duplicated HDMI_I2S_SEL_SDATA2(x) macro definition, add
missing HDMI_I2S_SEL_SDATA0(x) macro and fix macro usage.
- Fix HDMI_I2S_IN_DISABLE and HDMI_I2S_IN_ENABLE values and fix
macro usage.
Change-Id: I172913a61011292c3c912a3e8ccd84109924b906
Signed-off-by: Robert Baldyga <r.baldyga@samsung.com>
|
|
Change-Id: If5b327b3e33cc518c72003de0b3b0e643b43ff42
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
Change-Id: I18cd6a16b9ef66797ceb9b72bb37f626ae1d3856
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
Change-Id: I2b2618cba75472e07f32a873ec516103a9e2b9d8
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
If user NV12MT uses as pixel format, the Addfb2 ioctl is failed because
of missing to check DRM_FORMAT_NV12MT. The NV12MT pixel format is
supported by exynos4 and some qualcomm chipset and it is used by exynos
drm driver.
Change-Id: I94435dc3bff96377b9dd295d469e862ac637c6bc
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
|
|
The mixer graphic layer 0 isn't blended as default by commit
0377f4ed9f1aed30292c4e3c87f24e028ae26f36(drm/exynos: Don't blend mixer
layer 0). But it needs to be blended with graphic layer 0 if video layer
is enabled by vp because video layer is bottom.
Change-Id: I3c4a18c569463fab5cd210e654428bfae8fd5e2d
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
|
|
This patch remove build error of drm_mipi_dsi.c as following log:
CC kernel/trace/trace.o
drivers/gpu/drm/drm_mipi_dsi.c: In function ‘mipi_dsi_device_alloc’:
drivers/gpu/drm/drm_mipi_dsi.c:78:3: error: implicit declaration of function ‘ERR_PTR’ [-Werror=implicit-function-declaration]
drivers/gpu/drm/drm_mipi_dsi.c:78:3: warning: return makes pointer from integer without a cast [enabled by default]
drivers/gpu/drm/drm_mipi_dsi.c: In function ‘of_mipi_dsi_device_add’:
drivers/gpu/drm/drm_mipi_dsi.c:111:3: warning: return makes pointer from integer without a cast [enabled by default]
drivers/gpu/drm/drm_mipi_dsi.c:117:3: warning: return makes pointer from integer without a cast [enabled by default]
drivers/gpu/drm/drm_mipi_dsi.c:121:2: error: implicit declaration of function ‘IS_ERR’ [-Werror=implicit-function-declaration]
drivers/gpu/drm/drm_mipi_dsi.c:123:4: error: implicit declaration of function ‘PTR_ERR’ [-Werror=implicit-function-declaration]
drivers/gpu/drm/drm_mipi_dsi.c:123:4: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘int’ [-Wformat]
drivers/gpu/drm/drm_mipi_dsi.c:135:3: warning: return makes pointer from integer without a cast [enabled by default]
cc1: some warnings being treated as errors
make[3]: *** [drivers/gpu/drm/drm_mipi_dsi.o
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
|
|
This patch adds s6e63j0x03 MIPI-DSI command mode panel driver
which is used for Gear 2 wearable device.
Change-Id: If3c8046af224afe5e947819eeff545a5b9dc04fc
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This patch resolves potential deadlock issue that can be incurred
by changing file->f_op and filp->private_data to exynos specific
mapper ops and gem object temporarily.
To resolve this issue, this patch creates a new anon file dedicated
to exynos specific mmaper, and making it used instead of existing one.
Change-Id: I7e49302561385f4a2ce4e06980c25481d0d2e91c
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
The offset of register DSIM_PLLTMR_REG in Exynos5420 is
different from the one in Exynos4 SoC.
In case of Exynos5420 SoC, there is no frequency band bit
in DSIM_PLLCTRL_REG,
and it uses DSIM_PHYCTRL_REG and DSIM_PHYTIMING*_REG instead.
So this patch adds driver data to distinguish it.
Change-Id: Id5fad2e6042d28a73ed38de8657db9599d2cb782
Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
To support MIPI command mode based I80 interface panel,
FIMD should do followings:
- Sets LCD I80 interface timings configuration.
- Uses "lcd_sys" as an IRQ resource and sets relevant IRQ configuration.
- Sets LCD block configuration for I80 interface.
- Sets ideal(pixel) clock is 2 times faster than the original one to
generate frame done IRQ prior to the next TE signal.
- Implements trigger feature that transfers image data if there is page
flip request, and implements TE handler to call trigger function.
Change-Id: I3a620a40e4d9c03a2d41b61ffb6cc7c43e782d1f
Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
To support LCD I80 interface, the DSI host calls this handler
to notify the panel tearing effect synchronization signal to
the CRTC device manager to trigger to transfer video image.
Change-Id: Ic07e1bc6ee5744c7f7abea2e4ff99eeca86c8a3f
Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
To support LCD I80 interface, the panel should generates
Tearing Effect synchronization signal between MCU and FB
to display video images.
And the display controller should trigger to transfer
video image at this signal.
So the panel receives the TE IRQ, then calls this handler
chains to notify it to the display controller.
Change-Id: Ie60112b9b135bb8a1b05a01fedcd62bd65fc59cd
Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
There could be the case that the page flip operation isn't finished correctly
with some abnormal condition such as panel reset. So this patch replaces
wait_event() with wait_event_timeout() to avoid waiting for page flip completion
infinitely.
And clears exynos_crtc->pending_flip in exynos_drm_crtc_page_flip()
when exynos_drm_crtc_mode_set_commit() is failed.
Change-Id: Ib110ff1d6089394da37ba5a8375a4efdd6128672
Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This configuration could be used in MIPI DSI command mode also.
Change-Id: I7f0f088296cd56d8b68dc9ae6ff910dd63e84d89
Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Acked-by: Inki Dae <inki.dae@samsung.com>
Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This patch resolves page fault issue of Mixer when disabled.
The SFRs of VP and Mixer are updated by Vertical Sync of Timing
generator which is a part of HDMI so the sequence to disable TV
Subsystem should be as following:
VP -> Mixer -> HDMI
For this, this patch disables Mixer and VP (if used) prior to
disabling HDMI.
Change-Id: I85591e66264c9e5b7efe7ddf7fe71df1b9972356
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This reverts commit 4d1a75bbabd92b458e8f8cf1d3c071efc873cc87.
Change-Id: I4b56d6ac44586580c4a6d871e20064aacce30331
|
|
The hdmi should turn off after mixer turns off by H/W limitation.
Otherwise, the TV power domain is not disabled. Generally, first it's
called DPMS function of encoder than DPMS function of crtc at from DPMS
off to DPMS on. It can be solution about the H/W dependency to control
hdmi power by crtc DPMS instead of encoder DPMS.
Change-Id: I86e39c438453af5bcc19b7109d2e3569d629d52f
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
|
|
This patch fixes calling usleep_range() after taking reg_slock
using spin_lock_irqsave(). The mdelay() is used instead.
Waiting in atomic context is not the best idea in general.
Hopefully, waiting occurs only when Video Processor fails
to reset correctly.
Change-Id: Ib2bf151cb4dcb45ab42e9d8f85bf27e1fab21757
Signed-off-by: Tomasz Stanislawski <t.stanislaws@samsung.com>
|
|
Correct spelling typo in various part of drivers
Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
|
|
Correct spelling typo in various part of kernel
Signed-off-by: Masanari Iida <standby24x7@gmail.com>
Acked-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Conflicts:
arch/arm64/kvm/handle_exit.c
arch/mips/ralink/cevt-rt3352.c
arch/mips/ralink/timer.c
drivers/gpu/drm/exynos/exynos_drm_fimc.c
drivers/i2c/busses/i2c-exynos5.c
drivers/iio/adc/twl6030-gpadc.c
fs/btrfs/tests/free-space-tests.c
net/nfc/digital_dep.c
|
|
dma_buf_map_attachment and dma_buf_vmap can return NULL or
ERR_PTR on a error. This encourages a common buggy pattern in
callers:
sgt = dma_buf_map_attachment(attach, DMA_BIDIRECTIONAL);
if (IS_ERR_OR_NULL(sgt))
return PTR_ERR(sgt);
This causes the caller to return 0 on an error. IS_ERR_OR_NULL
is almost always a sign of poorly-defined error handling.
This patch converts dma_buf_map_attachment to always return
ERR_PTR, and fixes the callers that incorrectly handled NULL.
There are a few more callers that were not checking for NULL
at all, which would have dereferenced a NULL pointer later.
There are also a few more callers that correctly handled NULL
and ERR_PTR differently, I left those alone but they could also
be modified to delete the NULL check.
This patch also converts dma_buf_vmap to always return NULL.
All the callers to dma_buf_vmap only check for NULL, and would
have dereferenced an ERR_PTR and panic'd if one was ever
returned. This is not consistent with the rest of the dma buf
APIs, but matches the expectations of all of the callers.
Signed-off-by: Colin Cross <ccross@android.com>
Reviewed-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
|
|
The patch adds backlight support to s6e8aa0 panel.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Change-Id: I8cf8717c84da1619ceb8a0d841935255f917030d
|
|
This patch resolves the issue that the use of existing dtb is broken.
This patch gets existing dt nodes directly and checks if existing dtb
should be supported or not.
For this, it adds a soc_ver varable to hdmi_context structure to distinguish
SoC version because it should get dt node corresponding to SoC correctly.
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
Signed-off-by: Tomasz Stanislawski <t.stanislaws@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This patch resolves a dead lock issue that could be incurred when
exynos_drm_crtc_dpms function was called.
The exynos_drm_crtc_dpms function waits for the completion of pended
page flip events. However, preclose callback - this releases all unhandled
page flip events - is called prior to the exynos_drm_crtc_dpms function call
when drm is closed. So at this time, this will make the exynos_drm_crtc_dpms
to wait infiniately for the completion of the page flip events.
This patch releases the unhandled page flip events at postclose instead
of preclose so that exynos_drm_crtc_dpms function can be waked up.
Changelog v2:
- fix a memory leak when drm is closed.
. it has a memory leak when a requeste page flip is handled after
drm_events_release() is called and before drm_fb_release()
is called. At this time, a drm_pending_event will not be freed.
So also this chage releases the drm_pending_event at postclose().
And it calls drm_vblank_put() for pair if there is any unhandled page
flip event.
Signed-off-by: Inki Dae <inki.dae@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
|
|
If any fimd channel was already active, initializing iommu will result
in a PAGE FAULT (e.e. u-boot could have turned on the display and
not disabled it before the kernel starts). This patch checks if any
channel is active before initializing iommu and disables it.
Changelog v2:
- consider SoC without SHADOWCON register
Signed-off-by: Akshu Agrawal <akshu.a@samsung.com>
Signed-off-by: Prathyush K <prathyush.k@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This patch removes wrong dt bindings and adds new ones.
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
The patch adds MIPI-DSI based S6E8AA0 AMOLED LCD panel driver.
Driver uses mipi_dsi bus to communicate with panel and exposes drm_panel
interface.
v2
- added bus error handling,
- set maxmimum DSI packet size on init,
- removed unsupported brightness drm_panel callbacks,
- minor improvements
v3
- switched to gpiod framework,
- minor fixes in error handling
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
The patch adds LD9040 parallel RGB panel driver with SPI control interface.
The driver uses drm_panel framework.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This patch removes MODULE_DEVICE_TABLE definition to of_device_id
of MIPI-DSI driver.
Eyxnos drm should be built as single module so these definitions
should be removed.
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
The patch adds driver for Exynos DSI master (DSIM). It is a platform driver
which is registered as exynos_drm_display sub-driver of exynos_drm framework
and implements DRM encoder/connector pair.
It is also MIPI-DSI host driver and provides DSI bus for panels.
It interacts with its panel(s) using drm_panel framework.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
Signed-off-by: Shobhit Kumar <shobhit.kumar@intel.com>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Acked-by: Dave Airlie <airlied@gmail.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This patch adds explicit check if there is a connector with
connected status before fbdev initialization. It prevents creation
of default fbdev 1024x768 which is unusable on panels with bigger resolutions.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
There are only a few users of the DRM_LOG_KMS() macro. We can simplify
the DRM code a bit by replacing them by DRM_DEBUG_KMS().
Cc: Inki Dae <inki.dae@samsung.com>
Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
The patch removes unused vidcon0 field from fimd_context structure.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
The patch adds parallel output interface to FIMD device driver.
It also restores support for panels initialized by boot loader,
but without proper kernel driver.
Driver uses video interface bindings to find connected panel.
It uses drm_panel interface to interact with the panel.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Reviewed-by: Tomasz Figa <t.figa@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
MIPI DSI host node can contain child nodes which are not DSI devices.
Checking for existence of reg property can be used to distinguish such nodes.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
MIPI DSI bus allows to model DSI hosts and DSI peripherals using the
Linux driver model. DSI hosts are registered by the DSI host drivers.
During registration DSI peripherals will be created from the children
of the DSI host's device tree node. Support for registration from
board-setup code will be added later when needed.
DSI hosts expose operations which can be used by DSI peripheral drivers
to access associated devices.
Signed-off-by: Andrzej Hajda <a.hajda@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This panel is used by Tegra Note 7 and supported by the simple-panel
driver.
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|
|
This panel is used by the NVIDIA SHIELD and supported by the
simple-panel driver.
Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
|