From: Marek Szyprowski <m.szyprowski@samsung.com>
To: "Krzysztof Kozlowski" <krzk@kernel.org>,
"Michael Tretter" <m.tretter@pengutronix.de>,
"Bartłomiej Żołnierkiewicz" <b.zolnierkie@samsung.com>,
"Sylwester Nawrocki" <sylvester.nawrocki@gmail.com>,
"Andrzej Hajda" <a.hajda@samsung.com>,
"Inki Dae" <inki.dae@samsung.com>,
"Joonyoung Shim" <jy0922.shim@samsung.com>,
"Seung-Woo Kim" <sw0312.kim@samsung.com>
Cc: dri-devel@lists.freedesktop.org,
"linux-samsung-soc@vger.kernel.org"
<linux-samsung-soc@vger.kernel.org>,
kernel@pengutronix.de, Laurent.pinchart@ideasonboard.com,
narmstrong@baylibre.com
Subject: Re: [PATCH 00/16] drm/exynos: Convert driver to drm bridge
Date: Fri, 4 Sep 2020 10:31:12 +0200 [thread overview]
Message-ID: <cb6d3ced-5bd2-443f-674e-b4c9acb8c021@samsung.com> (raw)
In-Reply-To: <CAJKOXPcJCfFL43OLXC_DAowU0o_jW2rZ7qX-m8ePcPEMo0PEgQ@mail.gmail.com>
Hi Krzysztof,
On 03.09.2020 22:08, Krzysztof Kozlowski wrote:
> On Thu, 3 Sep 2020 at 18:57, Michael Tretter <m.tretter@pengutronix.de> wrote:
>> the Exynos MIPI DSI Phy is also found on the i.MX8M Mini. However, on the
>> i.MX8M Mini, the bridge is driven by an LCDIF display controller instead of
>> the Exynos Decon. The driver for the LCDIF does not use the component
>> framework, but uses drm bridges.
>>
>> This series converts the Exynos MIPI DSI into a drm bridge and makes it usable
>> with such drivers. Although the driver is converted, it still supports the
>> component framework API to stay compliant with the Exynos DRM driver.
>>
>> Unfortunately, I don't have any Exynos SoC to actually test the series. I
>> tested the driver with a few additional unfinished patches on the i.MX8M Mini
>> EVK, but somebody should definitely verify that the driver is still working on
>> Exynos hardware.
> Hi Michael,
>
> +Cc maintainers and folks in Samsung.
>
> Please follow the script/get_maintainers.pl to get the list of
> maintainers of the Exynos DRM drivers. First they could provide you
> with testing, second they might be the people merging the driver.
>
> Unfortunately I cannot provide proper testing as none of my boards
> have a display attached. :)
Thanks for adding cc to me. Sadly this patchset crashed badly on Samsung
Exnyos based boards. Here is the log from Exynos3250-based Rinato:
exynos4-fb 11c00000.fimd: Adding to iommu group 0
OF: graph: no port node found in /soc/fimd@11c00000
[drm] Exynos DRM: using 11c00000.fimd device for DMA mapping operations
exynos-drm exynos-drm: bound 11c00000.fimd (ops fimd_component_ops)
OF: graph: no port node found in /soc/dsi@11c80000
8<--- cut here ---
Unable to handle kernel NULL pointer dereference at virtual address 00000650
pgd = (ptrval)
[00000650] *pgd=00000000
Internal error: Oops: 5 [#1] PREEMPT SMP ARM
Modules linked in:
CPU: 1 PID: 1 Comm: swapper/0 Not tainted
5.9.0-rc2-next-20200824-00017-g3e9b20f7eb0d #1576
Hardware name: Samsung Exynos (Flattened Device Tree)
PC is at samsung_dsim_resume+0x18/0x120
LR is at genpd_runtime_resume+0x160/0x278
...
[<c064f590>] (samsung_dsim_resume) from [<c0685020>]
(genpd_runtime_resume+0x160/0x278)
[<c0685020>] (genpd_runtime_resume) from [<c0677e84>]
(__rpm_callback+0xbc/0x124)
[<c0677e84>] (__rpm_callback) from [<c0677f0c>] (rpm_callback+0x20/0x80)
[<c0677f0c>] (rpm_callback) from [<c0676aec>] (rpm_resume+0x388/0x714)
[<c0676aec>] (rpm_resume) from [<c0676edc>] (__pm_runtime_resume+0x64/0x9c)
[<c0676edc>] (__pm_runtime_resume) from [<c0669e10>]
(__device_attach+0xcc/0x17c)
[<c0669e10>] (__device_attach) from [<c0668ee8>]
(bus_probe_device+0x88/0x90)
[<c0668ee8>] (bus_probe_device) from [<c06660a0>] (device_add+0x4e8/0x79c)
[<c06660a0>] (device_add) from [<c063dc1c>]
(mipi_dsi_device_register_full+0xc8/0x148)
[<c063dc1c>] (mipi_dsi_device_register_full) from [<c063dcec>]
(mipi_dsi_host_register+0x50/0x168)
[<c063dcec>] (mipi_dsi_host_register) from [<c064d90c>]
(samsung_dsim_bind+0x368/0x40c)
[<c064d90c>] (samsung_dsim_bind) from [<c06449f8>]
(exynos_dsi_bind+0x78/0x88)
[<c06449f8>] (exynos_dsi_bind) from [<c0661ef0>]
(component_bind_all+0xfc/0x290)
[<c0661ef0>] (component_bind_all) from [<c06413d0>]
(exynos_drm_bind+0xe4/0x19c)
[<c06413d0>] (exynos_drm_bind) from [<c0662464>]
(try_to_bring_up_master+0x1e4/0x2c4)
[<c0662464>] (try_to_bring_up_master) from [<c06629a4>]
(component_master_add_with_match+0xd4/0x108)
[<c06629a4>] (component_master_add_with_match) from [<c06410f8>]
(exynos_drm_platform_probe+0xe4/0x110)
[<c06410f8>] (exynos_drm_platform_probe) from [<c066cb8c>]
(platform_drv_probe+0x6c/0xa4)
[<c066cb8c>] (platform_drv_probe) from [<c066a0c8>]
(really_probe+0x200/0x4fc)
[<c066a0c8>] (really_probe) from [<c066a58c>]
(driver_probe_device+0x78/0x1fc)
[<c066a58c>] (driver_probe_device) from [<c066a974>]
(device_driver_attach+0x58/0x60)
[<c066a974>] (device_driver_attach) from [<c066aa58>]
(__driver_attach+0xdc/0x174)
[<c066aa58>] (__driver_attach) from [<c0667e50>]
(bus_for_each_dev+0x68/0xb4)
[<c0667e50>] (bus_for_each_dev) from [<c0669184>]
(bus_add_driver+0x158/0x214)
[<c0669184>] (bus_add_driver) from [<c066b93c>] (driver_register+0x78/0x110)
[<c066b93c>] (driver_register) from [<c06412b8>]
(exynos_drm_init+0xe4/0x118)
[<c06412b8>] (exynos_drm_init) from [<c01023f4>]
(do_one_initcall+0x8c/0x424)
[<c01023f4>] (do_one_initcall) from [<c10011a8>]
(kernel_init_freeable+0x190/0x1dc)
[<c10011a8>] (kernel_init_freeable) from [<c0ae8e5c>]
(kernel_init+0x8/0x118)
[<c0ae8e5c>] (kernel_init) from [<c0100114>] (ret_from_fork+0x14/0x20)
Exception stack(0xd94a5fb0 to 0xd94a5ff8)
...
---[ end trace 1a053145d15f23dc ]---
Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
CPU0: stopping
CPU: 0 PID: 0 Comm: swapper/0 Tainted: G D
5.9.0-rc2-next-20200824-00017-g3e9b20f7eb0d #1576
Hardware name: Samsung Exynos (Flattened Device Tree)
[<c011160c>] (unwind_backtrace) from [<c010cfc0>] (show_stack+0x10/0x14)
[<c010cfc0>] (show_stack) from [<c0533c3c>] (dump_stack+0xbc/0xe8)
[<c0533c3c>] (dump_stack) from [<c01104e0>] (handle_IPI+0x3e0/0x428)
[<c01104e0>] (handle_IPI) from [<c05511dc>] (gic_handle_irq+0x98/0x9c)
[<c05511dc>] (gic_handle_irq) from [<c0100af0>] (__irq_svc+0x70/0xb0)
Exception stack(0xc1101f08 to 0xc1101f50)
...
[<c0100af0>] (__irq_svc) from [<c01095dc>] (arch_cpu_idle+0x24/0x44)
[<c01095dc>] (arch_cpu_idle) from [<c01635dc>] (do_idle+0x1bc/0x2bc)
[<c01635dc>] (do_idle) from [<c0163a90>] (cpu_startup_entry+0x18/0x1c)
[<c0163a90>] (cpu_startup_entry) from [<c1000f88>]
(start_kernel+0x628/0x664)
[<c1000f88>] (start_kernel) from [<00000000>] (0x0)
---[ end Kernel panic - not syncing: Attempted to kill init!
exitcode=0x0000000b ]---
I've didn't check the code yet, but the conversion also lacks "select
DRM_SAMSUNG_DSIM" in the Exynos DSI driver's Kconfig, as I wasn't even
able to compile it with the current exynos_defconfig.
I've tested it on top of next-20200824, because it doesn't apply
on current linux-next.
Best regards
--
Marek Szyprowski, PhD
Samsung R&D Institute Poland
next prev parent reply other threads:[~2020-09-04 8:31 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-03 16:57 [PATCH 00/16] drm/exynos: Convert driver to drm bridge Michael Tretter
2020-09-03 16:57 ` [PATCH 01/16] drm/encoder: remove obsolete documentation of bridge Michael Tretter
2020-09-03 22:04 ` Laurent Pinchart
2020-09-03 16:57 ` [PATCH 02/16] drm/exynos: extract helper functions for probe Michael Tretter
2020-09-04 9:04 ` Marek Szyprowski
2020-09-04 9:21 ` Marek Szyprowski
2020-09-03 16:57 ` [PATCH 03/16] drm/exynos: remove in_bridge_node from exynos_dsi Michael Tretter
2020-09-03 16:57 ` [PATCH 04/16] drm/exynos: implement a drm bridge Michael Tretter
2020-09-03 16:57 ` [PATCH 05/16] drm/exynos: convert encoder functions to bridge function Michael Tretter
2020-09-03 16:57 ` [PATCH 06/16] drm/exynos: configure mode on drm bridge Michael Tretter
2020-09-03 16:57 ` [PATCH 07/16] drm/exynos: get encoder from bridge whenever possible Michael Tretter
2020-09-03 16:57 ` [PATCH 08/16] drm/exynos: use exynos_dsi as drvdata Michael Tretter
2020-09-03 16:57 ` [PATCH 09/16] drm/exynos: call probe helper from bind Michael Tretter
2020-09-03 16:57 ` [PATCH 10/16] drm/exynos: move dsi host registration to probe helper Michael Tretter
2020-09-03 16:57 ` [PATCH 11/16] drm/exynos: shift register values to fields on write Michael Tretter
2020-09-03 16:57 ` [PATCH 12/16] drm/exynos: use identifier instead of register offsets Michael Tretter
2020-09-03 16:57 ` [PATCH 13/16] drm/exynos: add callback for tearing effect handler Michael Tretter
2020-09-03 16:57 ` [PATCH 14/16] drm/exynos: add callback for enabling i80 mode Michael Tretter
2020-09-03 16:57 ` [PATCH 15/16] drm/exynos: split out platform specific code Michael Tretter
2020-09-03 20:08 ` [PATCH 00/16] drm/exynos: Convert driver to drm bridge Krzysztof Kozlowski
2020-09-04 8:31 ` Marek Szyprowski [this message]
2020-09-04 12:20 ` Michael Tretter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cb6d3ced-5bd2-443f-674e-b4c9acb8c021@samsung.com \
--to=m.szyprowski@samsung.com \
--cc=Laurent.pinchart@ideasonboard.com \
--cc=a.hajda@samsung.com \
--cc=b.zolnierkie@samsung.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=inki.dae@samsung.com \
--cc=jy0922.shim@samsung.com \
--cc=kernel@pengutronix.de \
--cc=krzk@kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=m.tretter@pengutronix.de \
--cc=narmstrong@baylibre.com \
--cc=sw0312.kim@samsung.com \
--cc=sylvester.nawrocki@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox