[v6] drm/msm/disp/dpu1: add support for dspp sub block flush in sc7280

2022-10-01 Thread Kalyan Thota
Flush mechanism for DSPP blocks has changed in sc7280 family, it allows individual sub blocks to be flushed in coordination with master flush control. Representation: master_flush && (PCC_flush | IGC_flush .. etc ) This change adds necessary support for the above design. Changes in v1: - Few

[PATCH v3 2/2] drm/tests: Split drm_test_dp_mst_sideband_msg_req_decode into parameterized tests

2022-10-01 Thread Maíra Canal
The drm_test_dp_mst_sideband_msg_req_decode repeats the same test structure with different parameters. This could be better represented by parameterized tests, provided by KUnit. In addition to the parameterization of the tests, the test case for the client ID was changed: instead of using

[PATCH v3 1/2] drm/tests: Split drm_test_dp_mst_calc_pbn_mode into parameterized tests

2022-10-01 Thread Maíra Canal
The drm_test_dp_mst_calc_pbn_mode is based on a loop that executes tests for a couple of test cases. This could be better represented by parameterized tests, provided by KUnit. So, convert the drm_test_dp_mst_calc_pbn_mode into parameterized tests. Signed-off-by: Maíra Canal Reviewed-by: Michał

[PATCH] drm: rcar-du: Fix Kconfig dependency between RCAR_DU and RCAR_MIPI_DSI

2022-10-01 Thread Laurent Pinchart
When the R-Car MIPI DSI driver was added, it was a standalone encoder driver without any dependency to or from the R-Car DU driver. Commit 957fe62d7d15 ("drm: rcar-du: Fix DSI enable & disable sequence") then added a direct call from the DU driver to the MIPI DSI driver, without updating Kconfig

Re: [PATCH 4/4] drm: panel: Add lg sw43408 panel driver

2022-10-01 Thread Marijn Suijten
On 2022-07-18 22:30:51, Caleb Connolly wrote: > From: Sumit Semwal > > LG SW43408 is 1080x2160, 4-lane MIPI-DSI panel, used in some Pixel3 > phones. > > Whatever init sequence we have for this panel isn't capable of > initialising it completely, toggling the reset gpio ever causes the > panel

Re: [PATCH 3/5] drm/msm/dsi: Account for DSC's bits_per_pixel having 4 fractional bits

2022-10-01 Thread Marijn Suijten
Doing some self-review as these patches accrued some bit-rot while waiting to be sent. On 2022-10-01 21:08:05, Marijn Suijten wrote: > drm_dsc_config's bits_per_pixel field holds a fractional value with 4 > bits, which all panel drivers should adhere to for > drm_dsc_pps_payload_pack() to

Re: [PATCH 3/5] drm/msm/dsi: Account for DSC's bits_per_pixel having 4 fractional bits

2022-10-01 Thread Konrad Dybcio
On 1.10.2022 21:08, Marijn Suijten wrote: > drm_dsc_config's bits_per_pixel field holds a fractional value with 4 > bits, which all panel drivers should adhere to for > drm_dsc_pps_payload_pack() to generate a valid payload. All code in the > DSI driver here seems to assume that this field

Re: [PATCH 5/5] drm/dsc: Prevent negative BPG offsets from shadowing adjacent bitfields

2022-10-01 Thread Marijn Suijten
On 2022-10-01 21:08:07, Marijn Suijten wrote: > msm's dsi_host specifies negative BPG offsets which fill the full 8 bits > of a char thanks to two's complement: this however results in those bits > bleeding into the next parameter when the field is only expected to > contain 6-bit wide values. >

Re: [PATCH 2/5] drm/msm/dsi: Remove repeated calculation of slice_per_intf

2022-10-01 Thread Konrad Dybcio
On 1.10.2022 21:08, Marijn Suijten wrote: > slice_per_intf is already computed for intf_width, which holds the same > value as hdisplay. > > Fixes: 08802f515c3c ("drm/msm/dsi: Add support for DSC configuration") > Signed-off-by: Marijn Suijten > --- Reviewed-by: Konrad Dybcio Konrad >

Re: [PATCH 1/5] drm/msm/dsi: Remove useless math in DSC calculation

2022-10-01 Thread Konrad Dybcio
On 1.10.2022 21:08, Marijn Suijten wrote: > Multiplying a value by 2 and adding 1 to it always results in a value > that is uneven, and that 1 gets truncated immediately when performing > integer division by 2 again. There is no "rounding" possible here. > > Fixes: b9080324d6ca ("drm/msm/dsi:

[PATCH 5/5] drm/dsc: Prevent negative BPG offsets from shadowing adjacent bitfields

2022-10-01 Thread Marijn Suijten
msm's dsi_host specifies negative BPG offsets which fill the full 8 bits of a char thanks to two's complement: this however results in those bits bleeding into the next parameter when the field is only expected to contain 6-bit wide values. As a consequence random slices appear corrupted on-screen

[PATCH 3/5] drm/msm/dsi: Account for DSC's bits_per_pixel having 4 fractional bits

2022-10-01 Thread Marijn Suijten
drm_dsc_config's bits_per_pixel field holds a fractional value with 4 bits, which all panel drivers should adhere to for drm_dsc_pps_payload_pack() to generate a valid payload. All code in the DSI driver here seems to assume that this field doesn't contain any fractional bits, hence resulting in

[PATCH 4/5] drm/msm/dpu1: Account for DSC's bits_per_pixel having 4 fractional bits

2022-10-01 Thread Marijn Suijten
According to the comment this DPU register contains the bits per pixel as a 6.4 fractional value, conveniently matching the contents of bits_per_pixel in struct drm_dsc_config which also uses 4 fractional bits. However, the downstream source this implementation was copy-pasted from has its bpp

[PATCH 2/5] drm/msm/dsi: Remove repeated calculation of slice_per_intf

2022-10-01 Thread Marijn Suijten
slice_per_intf is already computed for intf_width, which holds the same value as hdisplay. Fixes: 08802f515c3c ("drm/msm/dsi: Add support for DSC configuration") Signed-off-by: Marijn Suijten --- drivers/gpu/drm/msm/dsi/dsi_host.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-)

[PATCH 1/5] drm/msm/dsi: Remove useless math in DSC calculation

2022-10-01 Thread Marijn Suijten
Multiplying a value by 2 and adding 1 to it always results in a value that is uneven, and that 1 gets truncated immediately when performing integer division by 2 again. There is no "rounding" possible here. Fixes: b9080324d6ca ("drm/msm/dsi: add support for dsc data") Signed-off-by: Marijn

[PATCH 0/5] drm: Fix math issues in MSM DSC implementation

2022-10-01 Thread Marijn Suijten
Various removals of complex yet unnecessary math, fixing all uses of drm_dsc_config::bits_per_pixel to deal with the fact that this field includes four fractional bits, and finally an approach for dealing with dsi_host setting negative values in range_bpg_offset, resulting in overflow inside

Re: [PATCH v4 14/30] drm/client: Add some tests for drm_connector_pick_cmdline_mode()

2022-10-01 Thread Maíra Canal
On 9/29/22 13:31, Maxime Ripard wrote: > drm_connector_pick_cmdline_mode() is in charge of finding a proper > drm_display_mode from the definition we got in the video= command line > argument. > > Let's add some unit tests to make sure we're not getting any regressions > there. > >

Re: [v5] drm/msm/disp/dpu1: add support for dspp sub block flush in sc7280

2022-10-01 Thread Dmitry Baryshkov
On Sat, 1 Oct 2022 at 17:25, Kalyan Thota wrote: > > > >-Original Message- > >From: Dmitry Baryshkov > >Sent: Friday, September 30, 2022 1:59 PM > >To: Doug Anderson ; Kalyan Thota (QUIC) > > > >Cc: y...@qualcomm.com; dri-devel ; > >linux-arm- > >msm ; freedreno > >; open list:OPEN

[PATCH drm-misc-next v2 8/9] drm/arm/malidp: drv: protect device resources after removal

2022-10-01 Thread Danilo Krummrich
(Hardware) resources which are bound to the driver and device lifecycle must not be accessed after the device and driver are unbound. However, the DRM device isn't freed as long as the last user didn't close it, hence userspace can still call into the driver. Therefore protect the critical

[PATCH drm-misc-next v2 9/9] drm/arm/malidp: remove calls to drm_mode_config_cleanup()

2022-10-01 Thread Danilo Krummrich
drm_mode_config_init() simply calls drmm_mode_config_init(), hence cleanup is automatically handled through registering drm_mode_config_cleanup() with drmm_add_action_or_reset(). While at it, get rid of the deprecated drm_mode_config_init() and replace it with drmm_mode_config_init() directly.

[PATCH drm-misc-next v2 7/9] drm/arm/malidp: crtc: protect device resources after removal

2022-10-01 Thread Danilo Krummrich
(Hardware) resources which are bound to the driver and device lifecycle must not be accessed after the device and driver are unbound. However, the DRM device isn't freed as long as the last user didn't close it, hence userspace can still call into the driver. Therefore protect the critical

[PATCH drm-misc-next v2 6/9] drm/arm/malidp: plane: protect device resources after removal

2022-10-01 Thread Danilo Krummrich
(Hardware) resources which are bound to the driver and device lifecycle must not be accessed after the device and driver are unbound. However, the DRM device isn't freed as long as the last user didn't close it, hence userspace can still call into the driver. Therefore protect the critical

[PATCH drm-misc-next v2 5/9] drm/arm/malidp: use drm_dev_unplug()

2022-10-01 Thread Danilo Krummrich
When the driver is unbound, there might still be users in userspace having an open fd and are calling into the driver. While this is fine for drm managed resources, it is not for resources bound to the device/driver lifecycle, e.g. clocks or MMIO mappings. To prevent use-after-free issues we

[PATCH drm-misc-next v2 4/9] drm/arm/malidp: plane: use drm managed resources

2022-10-01 Thread Danilo Krummrich
Use drm managed resource allocation (drmm_universal_plane_alloc()) in order to get rid of the explicit destroy hook in struct drm_plane_funcs. Signed-off-by: Danilo Krummrich --- drivers/gpu/drm/arm/malidp_planes.c | 28 +++- 1 file changed, 7 insertions(+), 21

[PATCH drm-misc-next v2 3/9] drm/arm/malidp: crtc: use drmm_crtc_init_with_planes()

2022-10-01 Thread Danilo Krummrich
Use drmm_crtc_init_with_planes() instead of drm_crtc_init_with_planes() to get rid of the explicit destroy hook in struct drm_plane_funcs. Signed-off-by: Danilo Krummrich --- drivers/gpu/drm/arm/malidp_crtc.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git

[PATCH drm-misc-next v2 2/9] drm/arm/malidp: replace drm->dev_private with drm_to_malidp()

2022-10-01 Thread Danilo Krummrich
Using drm_device->dev_private is deprecated. Since we've switched to devm_drm_dev_alloc(), struct drm_device is now embedded in struct malidp_drm, hence we can use container_of() to get the struct drm_device instance instead. Signed-off-by: Danilo Krummrich --- drivers/gpu/drm/arm/malidp_crtc.c

[PATCH drm-misc-next v2 1/9] drm/arm/malidp: use drmm_* to allocate driver structures

2022-10-01 Thread Danilo Krummrich
Use drm managed resources to allocate driver structures and get rid of the deprecated drm_dev_alloc() call and replace it with devm_drm_dev_alloc(). This also serves as preparation to get rid of drm_device->dev_private and to fix use-after-free issues on driver unload. Signed-off-by: Danilo

[PATCH drm-misc-next v2 0/9] drm/arm/malidp: use drm managed resources

2022-10-01 Thread Danilo Krummrich
Hi, This patch series converts the driver to use drm managed resources to prevent potential use-after-free issues on driver unbind/rebind and to get rid of the usage of deprecated APIs. Changes in v2: - While protecting critical sections with drm_dev_{enter,exit} I forgot to handle

Re: [PATCH v2 02/16] slab: Introduce kmalloc_size_roundup()

2022-10-01 Thread Hyeonggon Yoo
On Fri, Sep 23, 2022 at 01:28:08PM -0700, Kees Cook wrote: > In the effort to help the compiler reason about buffer sizes, the > __alloc_size attribute was added to allocators. This improves the scope > of the compiler's ability to apply CONFIG_UBSAN_BOUNDS and (in the near > future)

Re: [PATCH v2 01/16] slab: Remove __malloc attribute from realloc functions

2022-10-01 Thread Hyeonggon Yoo
On Fri, Sep 23, 2022 at 01:28:07PM -0700, Kees Cook wrote: > The __malloc attribute should not be applied to "realloc" functions, as > the returned pointer may alias the storage of the prior pointer. Instead > of splitting __malloc from __alloc_size, which would be a huge amount of > churn, just

Re: [PATCH v3 2/2] drm/msm/dsi: Add phy configuration for QCM2290

2022-10-01 Thread Marijn Suijten
On 2022-09-24 15:19:00, Dmitry Baryshkov wrote: > From: Loic Poulain > > The QCM2290 SoC a the 14nm (V2.0) single DSI phy. The platform is not > fully compatible with the standard 14nm PHY, so it requires a separate > compatible and config entry. > > Signed-off-by: Loic Poulain > [DB: rebased

[PATCH drm-misc-next v2 7/9] drm/fsl-dcu: crtc: protect device resources after removal

2022-10-01 Thread Danilo Krummrich
(Hardware) resources which are bound to the driver and device lifecycle must not be accessed after the device and driver are unbound. However, the DRM device isn't freed as long as the last user didn't close it, hence userspace can still call into the driver. Therefore protect the critical

[PATCH drm-misc-next v2 9/9] drm/fsl-dcu: remove calls to drm_mode_config_cleanup()

2022-10-01 Thread Danilo Krummrich
drm_mode_config_init() simply calls drmm_mode_config_init(), hence cleanup is automatically handled through registering drm_mode_config_cleanup() with drmm_add_action_or_reset(). While at it, get rid of the deprecated drm_mode_config_init() and replace it with drmm_mode_config_init() directly.

[PATCH drm-misc-next v2 8/9] drm/fsl-dcu: remove trailing return statements

2022-10-01 Thread Danilo Krummrich
Remove the trailing return statements at the end of void functions. Signed-off-by: Danilo Krummrich --- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 1 - drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c | 1 - 2 files changed, 2 deletions(-) diff --git a/drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c

[PATCH drm-misc-next v2 6/9] drm/fsl-dcu: plane: protect device resources after removal

2022-10-01 Thread Danilo Krummrich
(Hardware) resources which are bound to the driver and device lifecycle must not be accessed after the device and driver are unbound. However, the DRM device isn't freed as long as the last user didn't close it, hence userspace can still call into the driver. Therefore protect the critical

[PATCH drm-misc-next v2 5/9] drm/fsl-dcu: use drm_dev_unplug()

2022-10-01 Thread Danilo Krummrich
When the driver is unbound, there might still be users in userspace having an open fd and are calling into the driver. While this is fine for drm managed resources, it is not for resources bound to the device/driver lifecycle, e.g. clocks or MMIO mappings. To prevent use-after-free issues we

[PATCH drm-misc-next v2 4/9] drm/fsl-dcu: plane: use drm managed resources

2022-10-01 Thread Danilo Krummrich
Use drm managed resource allocation (drmm_universal_plane_alloc()) in order to get rid of the explicit destroy hook in struct drm_plane_funcs. Signed-off-by: Danilo Krummrich --- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 4 ++-- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_plane.c | 25

[PATCH drm-misc-next v2 3/9] drm/fsl-dcu: crtc: use drmm_crtc_init_with_planes()

2022-10-01 Thread Danilo Krummrich
Use drmm_crtc_init_with_planes() instead of drm_crtc_init_with_planes() to get rid of the explicit destroy hook in struct drm_plane_funcs. Signed-off-by: Danilo Krummrich --- drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_crtc.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git

[PATCH drm-misc-next v2 2/9] drm/fsl-dcu: replace drm->dev_private with drm_to_fsl_dcu_drm_dev()

2022-10-01 Thread Danilo Krummrich
Using drm_device->dev_private is deprecated. Since we've switched to devm_drm_dev_alloc(), struct drm_device is now embedded in struct malidp_drm, hence we can use container_of() to get the struct drm_device instance instead. Signed-off-by: Danilo Krummrich ---

[PATCH drm-misc-next v2 1/9] drm/fsl-dcu: use drmm_* to allocate driver structures

2022-10-01 Thread Danilo Krummrich
Use drm managed resources to allocate driver structures and get rid of the deprecated drm_dev_alloc() call and replace it with devm_drm_dev_alloc(). This also serves as preparation to get rid of drm_device->dev_private and to fix use-after-free issues on driver unload. Signed-off-by: Danilo

[PATCH drm-misc-next v2 0/9] drm/fsl-dcu: use drm managed resources

2022-10-01 Thread Danilo Krummrich
Hi, This patch series converts the driver to use drm managed resources to prevent potential use-after-free issues on driver unbind/rebind and to get rid of the usage of deprecated APIs. Changes in v2: - While protecting critical sections with drm_dev_{enter,exit} I forgot to handle

[PATCH] drm: Add 64:27 and 256:135 picture aspect ratio support

2022-10-01 Thread Lee Shawn C
Drm driver did not report connector can support 64:27 and 256:135 picture aspect ratio. Even if drm_edid driver already have those modes in CEA table. Add both of them then user space application would program proper picture apsect ratio when HDMI 2.1 monitor connected. Cc: Shankar Uma Cc: Ville

RE: [v5] drm/msm/disp/dpu1: add support for dspp sub block flush in sc7280

2022-10-01 Thread Kalyan Thota
>-Original Message- >From: Dmitry Baryshkov >Sent: Friday, September 30, 2022 1:59 PM >To: Doug Anderson ; Kalyan Thota (QUIC) > >Cc: y...@qualcomm.com; dri-devel ; linux-arm- >msm ; freedreno >; open list:OPEN FIRMWARE AND FLATTENED >DEVICE TREE BINDINGS ; LKML ker...@vger.kernel.org>;

Re: [PATCH v6 00/10] drm: bridge: Add Samsung MIPI DSIM bridge

2022-10-01 Thread Jagan Teki
Hi Fabio, On Sat, Oct 1, 2022 at 4:04 PM Fabio Estevam wrote: > > Hi Jagan, > > On Sat, Oct 1, 2022 at 5:07 AM Jagan Teki wrote: > > > Repo: > > https://gitlab.com/openedev/kernel/-/commits/imx8mm-dsi-v6 > > This URL returns an error. Please double-check. Thanks for the notice. Now it is

Re: [v5] drm/msm/disp/dpu1: add support for dspp sub block flush in sc7280

2022-10-01 Thread Dmitry Baryshkov
On 29 September 2022 19:13:20 GMT+03:00, Doug Anderson wrote: >Hi, > >On Wed, Sep 14, 2022 at 5:16 AM Kalyan Thota wrote: >> >> Flush mechanism for DSPP blocks has changed in sc7280 family, it >> allows individual sub blocks to be flushed in coordination with >> master flush control. >> >>

Re: [v5] drm/msm/disp/dpu1: add support for dspp sub block flush in sc7280

2022-10-01 Thread Dmitry Baryshkov
On 29 September 2022 19:13:20 GMT+03:00, Doug Anderson wrote: >Hi, > >On Wed, Sep 14, 2022 at 5:16 AM Kalyan Thota wrote: >> >> Flush mechanism for DSPP blocks has changed in sc7280 family, it >> allows individual sub blocks to be flushed in coordination with >> master flush control. >> >>

Re: [PATCH v4 00/30] drm: Analog TV Improvements

2022-10-01 Thread Noralf Trønnes
Den 29.09.2022 18.30, skrev Maxime Ripard: > Hi, > > Here's a series aiming at improving the command line named modes support, > and more importantly how we deal with all the analog TV variants. > > The named modes support were initially introduced to allow to specify the > analog TV mode to

Re: [PATCH v4 11/30] drm/modes: Add a function to generate analog display modes

2022-10-01 Thread Noralf Trønnes
Den 29.09.2022 18.31, skrev Maxime Ripard: > Multiple drivers (meson, vc4, sun4i) define analog TV 525-lines and > 625-lines modes in their drivers. > > Since those modes are fairly standard, and that we'll need to use them > in more places in the future, it makes sense to move their

Re: [PATCH v4 30/30] drm/sun4i: tv: Convert to the new TV mode property

2022-10-01 Thread Noralf Trønnes
Den 29.09.2022 18.31, skrev Maxime Ripard: > Now that the core can deal fine with analog TV modes, let's convert the > sun4i TV driver to leverage those new features. > > Signed-off-by: Maxime Ripard > --- > drivers/gpu/drm/sun4i/sun4i_tv.c | 148 > ++- >

Re: [PATCH v6 00/10] drm: bridge: Add Samsung MIPI DSIM bridge

2022-10-01 Thread Fabio Estevam
Hi Jagan, On Sat, Oct 1, 2022 at 5:07 AM Jagan Teki wrote: > Repo: > https://gitlab.com/openedev/kernel/-/commits/imx8mm-dsi-v6 This URL returns an error. Please double-check.

Re: [PATCH 4/4] arm64: dts: smaug: Add display panel node

2022-10-01 Thread Krzysztof Kozlowski
On 30/09/2022 23:14, Rob Herring wrote: > + dc@5420 { > + status = "okay"; You should override by labels, not by full path. >>> >>> Why exactly is that? I've always stayed away from that (and asked others >>> not to do so, at least on Tegra) because I

[PATCH v6 10/10] drm: bridge: samsung-dsim: Add i.MX8MM support

2022-10-01 Thread Jagan Teki
Samsung MIPI DSIM master can also be found in i.MX8MM SoC. Add compatible and associated driver_data for it. v6: * none v3: * enable DSIM_QUIRK_FIXUP_SYNC_POL quirk v5: * [mszyprow] rebased and adjusted to the new driver initialization * drop quirk v4: * none v3: * enable

[PATCH v6 09/10] dt-bindings: display: exynos: dsim: Add NXP i.MX8MM support

2022-10-01 Thread Jagan Teki
Samsung MIPI DSIM bridge can also be found in i.MX8MM SoC. Add dt-bingings for it. v6, v5, v4: * none v3: * collect Rob Acked-by v2: * updated comments v1: * new patch Acked-by: Rob Herring Signed-off-by: Jagan Teki --- Documentation/devicetree/bindings/display/exynos/exynos_dsim.txt | 1

[PATCH v6 08/10] drm: bridge: samsung-dsim: Add input_bus_flags

2022-10-01 Thread Jagan Teki
eLCDIF is expecting to have input_bus_flags as DE_LOW in order to set active low during valid data transfer on each horizontal line. Add DE_LOW flag via drm bridge timings. v6: * none v5: * rebased based on updated bridge changes v4, v3, v2, v1: * none Signed-off-by: Jagan Teki ---

[PATCH v6 07/10] drm: bridge: samsung-dsim: Add atomic_get_input_bus_fmts

2022-10-01 Thread Jagan Teki
Finding the right input bus format throughout the pipeline is hard so add atomic_get_input_bus_fmts callback and initialize with the default RGB888_1X24 bus format on DSI-end. This format can be used in pipeline for negotiating bus format between the DSI-end of this bridge and the other component

[PATCH v6 06/10] drm: bridge: samsung-dsim: Add platform PLL_P (PMS_P) offset

2022-10-01 Thread Jagan Teki
Look like PLL PMS_P offset value varies between platforms that have Samsung DSIM IP. However, there is no clear evidence for it as both Exynos and i.MX 8M Mini Application Processor Reference Manual is still referring the PMS_P offset as 13. The offset 13 is not working for i.MX8M Mini SoCs but

[PATCH v6 05/10] drm: bridge: samsung-dsim: Add atomic_check

2022-10-01 Thread Jagan Teki
Look like an explicit fixing up of mode_flags is required for DSIM IP present in i.MX8M Mini/Nano SoCs. At least the LCDIF + DSIM needs active low sync polarities in order to correlate the correct sync flags of the surrounding components in the chain to make sure the whole pipeline can work

[PATCH v6 04/10] drm: bridge: samsung-dsim: Handle proper DSI host initialization

2022-10-01 Thread Jagan Teki
DSI host initialization handling in previous exynos dsi driver has some pitfalls. It initializes the host during host transfer() hook that is indeed not the desired call flow for I2C and any other DSI configured downstream bridges. Host transfer() is usually triggered for downstream DSI panels or

[PATCH v6 03/10] drm: bridge: samsung-dsim: Mark PHY as optional

2022-10-01 Thread Jagan Teki
In i.MX8M Mini/Nano SoC the DSI Phy requires a MIPI DPHY bit to reset in order to activate the PHY and that can be done via upstream i.MX8M blk-ctrl driver. So, mark the phy get as optional. v6, v5, v4, v3, v2: * none v1: * new patch Signed-off-by: Jagan Teki ---

[PATCH v6 02/10] drm: bridge: samsung-dsim: Lookup OF-graph or Child node devices

2022-10-01 Thread Jagan Teki
The child devices in MIPI DSI can be binding with OF-graph and also via child nodes. The OF-graph interface represents the child devices via remote and associated endpoint numbers like dsi { compatible = "fsl,imx8mm-mipi-dsim"; ports { port@0 { reg = <0>;

[PATCH v6 01/10] drm: bridge: Add Samsung DSIM bridge driver

2022-10-01 Thread Jagan Teki
Samsung MIPI DSIM controller is common DSI IP that can be used in various SoCs like Exynos, i.MX8M Mini/Nano. In order to access this DSI controller between various platform SoCs, the ideal way to incorporate this in the drm stack is via the drm bridge driver. This patch is trying to

[PATCH v6 00/10] drm: bridge: Add Samsung MIPI DSIM bridge

2022-10-01 Thread Jagan Teki
This series supports common bridge support for Samsung MIPI DSIM which is used in Exynos and i.MX8MM SoC's. The final bridge supports both the Exynos and i.MX8MM DSI devices. Changes for v6: * handle previous bridge for exynos dsi while attaching bridge Changes for v5: * bridge changes to