From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id B4230ECAAD5 for ; Mon, 5 Sep 2022 11:24:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238215AbiIELYn (ORCPT ); Mon, 5 Sep 2022 07:24:43 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:32878 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238198AbiIELYl (ORCPT ); Mon, 5 Sep 2022 07:24:41 -0400 Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7C983634E for ; Mon, 5 Sep 2022 04:24:34 -0700 (PDT) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout2.w1.samsung.com (KnoxPortal) with ESMTP id 20220905112419euoutp02a6df02e9e7cc8666ff4f71029ecb3eee~R8yCn5ych0971309713euoutp02k for ; Mon, 5 Sep 2022 11:24:19 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.w1.samsung.com 20220905112419euoutp02a6df02e9e7cc8666ff4f71029ecb3eee~R8yCn5ych0971309713euoutp02k DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1662377059; bh=7flYTWURgvZWZJ0bllJwRUFaD/epPd9YT+NmvYtDtng=; h=Date:Subject:From:To:Cc:In-Reply-To:References:From; b=uonc5MUq30HqmmPAtt3iNle9c1ay73T9L9wbfdzY/zWBA1yo381E5mlSyN9kVFdYj dmwmz2U8yELHGr8Px1cWLXf4ftk6DTJM7ImpCql9QgsAK4jcVBSbpfEKv0oxDsna1D fDXwub89fs+rXKhBYR3NyRMP+mT8o0Nx2DxRBxxo= Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20220905112404eucas1p102451e5139cc449cf30959fe4fc2427c~R8x0rjDPi2163221632eucas1p1j; Mon, 5 Sep 2022 11:24:04 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges1new.samsung.com (EUCPMTA) with SMTP id 9D.53.29727.35CD5136; Mon, 5 Sep 2022 12:24:04 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20220905112403eucas1p1b3154207ebea4d10684904144e17b3c0~R8x0LYf4s1126311263eucas1p1C; Mon, 5 Sep 2022 11:24:03 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20220905112403eusmtrp253635c8319b725b5b58e8174cae82dcb~R8x0FDCaj1852618526eusmtrp22; Mon, 5 Sep 2022 11:24:03 +0000 (GMT) X-AuditID: cbfec7f2-21dff7000001741f-b8-6315dc535ddc Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id B9.C9.07473.35CD5136; Mon, 5 Sep 2022 12:24:03 +0100 (BST) Received: from [106.210.134.192] (unknown [106.210.134.192]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20220905112402eusmtip2e5ae6c1ea62e596e302614549e3dbf29~R8xy4wfX22248922489eusmtip2Z; Mon, 5 Sep 2022 11:24:02 +0000 (GMT) Message-ID: Date: Mon, 5 Sep 2022 13:24:02 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.13.0 Subject: Re: [PATCH v4 02/12] drm: bridge: Add Samsung DSIM bridge driver Content-Language: en-US From: Marek Szyprowski To: Jagan Teki , Andrzej Hajda , Inki Dae , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Frieder Schrempf , Fancy Fang , Tim Harvey , Michael Nazzareno Trimarchi , Adam Ford , Neil Armstrong , Robert Foss , Laurent Pinchart , Tommaso Merciai , Marek Vasut Cc: Matteo Lisi , dri-devel@lists.freedesktop.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, NXP Linux Team , linux-amarula In-Reply-To: <7511aa28-a944-d241-5bea-8404008e7dce@samsung.com> Content-Transfer-Encoding: 8bit X-Brightmail-Tracker: H4sIAAAAAAAAA01Sf0xTVxj19r2+lpq611LhinMznXGbycqYbLs4449sc8+pYWaduPGH1vKC bKWYFiaOLIKAYR3UUgk/io7GIjCQIQUMkM50TWmraAV0BCylw7FlIiAURFYyGO3Tjf/Od873 3XO+L5eLCcuIKG6KMp1WKWUKMcHDrzn+dr8hHVorf1Mbh4Y83RjymWZw9MhTR6B7Tx4TqOiy m430Ph2OZs06Av013Iuj22fGOei74moOqtVdJ5D593420gR+xFD5nessNH42B6DuB00YupmT jyObNhH5DSPL4vmHBOp1+TH0dOE2tiuCapz2sanHA/kc6geDC6dKXHY25S70ElSHwcuhKgsq 2JTJ8pBF2X81samhfgtB+b53sqiW6tNU82Q7i9K21gNqxvzSJy98wdueRCtSvqZV0TuO8o6b GlrAiYYNmQ8G84lsoIcaEMaFZCysWrJyNIDHFZJ1ALaaJwmmmAVw2tMFmGIGwCLvIuv5SO4Z O84ItQAau56wmWIawMDICBHs4pM7YH+lHQtinNwES31FOMML4I2K0RBeS8qhweEAQRxO7oXe G4EQj5GR8P5oVciNIGOgZkITyiQim9hwYrQklAkLuhXOj4QcwsidsMVRQDDTL8PctkqMyarl wauDAgZ/AG/N/flsh3A45mzlMPhFuNQRdOMu4zT4T/lWhs6E/Y+uPHvmPTjkDhDBFox8HTZ1 RjP0blg414kzk2vgwISACbAG6q+VYQzNhwVnhUz3Zmhw/vSf5y89fZgOiA0rjmJYsbxhxSqG /32NAK8HkXSGOjWZVsco6ZMStSxVnaFMlsjTUs1g+e92Lzr97eDi2LTEBlhcYAOQi4lF/KR2 kVzIT5Kd+oZWpR1RZShotQ2s5+LiSL485apMSCbL0umvaPoErXqusrhhUdmsC/fenl/dvLQa Pz2f6cx+NyvPXRCIz3Ecc1kuFW67TxSNKIl10tfKt+2UevZ33q15/9ytVVbBqv1E1ZXDX/7G DtMmLKRfTJiwHwwX+r89ZKwVZm1s2hwh3RA9oZU0Kl4Zf+dAerbOO/lpmXpKlOiQ2CSd87Hu 4Qjj+KStePGox3PyY/1gnH/XbtGhNmzPXVOW4vP4pN639J/Zz8fPebv6tkdbZqd6zl2YGt54 Z8vPiQMLfxifFrurpbHUVP5lvnS92mf1WHr2NfisrR0fpdUItrblnTrwIS9cGJdbmlhHHcRU UbmW+sMlS6/mzR2LvXkkobHUuq6mpKLL1TfWId07uq9ZjKuPy2K2YCq17F+ki5zvKgQAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrHKsWRmVeSWpSXmKPExsVy+t/xe7rBd0STDT5/FLS4c/s0s8X9xZ9Z LF7fXsFmceXrezaL3qXnWC0m3Z/AYvFl0wQ2ixf3LrJYnG16w27ROXEJu8XyCfvYLDY9vsZq 0fVrJbPFjPP7mCzetDUyWpx+tJ7Z4lRjK4vFob5oi0+zHgIlJ79ks7h44hOzxfffZ5kdxDzW frzP6vH+Riu7x7xZJ1g8ppw4wupxrucum8fOWXfZPWZ3zGT1WLznJZPHkauLWT3uXNvD5nG/ +ziTx+Yl9R4b3+1g8ujbsorR4/MmuQD+KD2bovzSklSFjPziElulaEMLIz1DSws9IxNLPUNj 81grI1MlfTublNSczLLUIn27BL2Mxas3Mxaslq14dLOVrYFxkkQXIyeHhICJRHPTEZYuRi4O IYGljBJXlm1jhUjISJyc1gBlC0v8udbFBlH0nlFi6vkGFpAEr4CdxLXZR5hBbBYBFYlp93uh 4oISJ2c+AbNFBZIlljTcBxskLOApcffkL7A4s4C4xK0n85lAbDYBQ4mutxALRAS2skq82rYO zGEW+MgocWnyFnaI1U1MEn+n/mQHaeEUsJfYfKyDDWKUmUTX1i5GCFteonnrbOYJjEKzkFwy C8nGWUhaZiFpWcDIsopRJLW0ODc9t9hQrzgxt7g0L10vOT93EyMw4Ww79nPzDsZ5rz7qHWJk 4mA8xCjBwawkwpuyQyRZiDclsbIqtSg/vqg0J7X4EKMpMDgmMkuJJucDU15eSbyhmYGpoYmZ pYGppZmxkjivZ0FHopBAemJJanZqakFqEUwfEwenVAPTVI6cGXIO0auuqf6YzGZldnROluz8 DV5hb1ZcCWFaevyjRNCz8otOv6c8uz/VYctdacsZ9tvVHu5Pfj9T/Ni2matiJl6qWTgp5d6S pebOuhdVmXyEsj8Lq39TCeKquTTz4iomLfOp0l+1Lpzf8bbsoSpT34mTP1XUsi5t28ckXxqi ujiN8Yk2b9m0K2+6Jdkr53zdX/vy2qp6NonPQtw3Llb1LeY7tOul6uzn1/mXRkT953qgy3U8 cHluOUdks8qT9TPiHys8P/JUWjhjr35y7VupV9Hn5nast3eYbhMVuIQ//YKifl7ugzneG36/ F04zr7LvnvZOjfF79cY7LX3WG4/OjS4PvqCeFidoVfbXXomlOCPRUIu5qDgRAGgNCO7BAwAA X-CMS-MailID: 20220905112403eucas1p1b3154207ebea4d10684904144e17b3c0 X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-RootMTR: 20220829184118eucas1p2cda47fa166cafcb904800a55a5f66180 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20220829184118eucas1p2cda47fa166cafcb904800a55a5f66180 References: <20220829184031.1863663-1-jagan@amarulasolutions.com> <20220829184031.1863663-3-jagan@amarulasolutions.com> <7511aa28-a944-d241-5bea-8404008e7dce@samsung.com> Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org Hi All, On 02.09.2022 12:47, Marek Szyprowski wrote: > On 29.08.2022 20:40, Jagan Teki wrote: >> 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 differentiate platform-specific and bridge >> driver >> code and keep maintaining the exynos_drm_dsi.c code as platform-specific >> glue code and samsung-dsim.c as a common bridge driver code. >> >> - Exynos specific glue code is exynos specific te_irq, host_attach, and >>    detach code along with conventional component_ops. >> >> - Samsung DSIM is a bridge driver which is common across all >> platforms and >>    the respective platform-specific glue will initialize at the end >> of the >>    probe. The platform-specific operations and other glue calls will >> invoke >>    on associate code areas. >> >> v4: >> * include Inki Dae in MAINTAINERS >> * remove dsi_driver probe in exynos_drm_drv to support multi-arch build > > This breaks Exynos DRM completely as the Exynos DRM driver is not able > to wait until the DSI driver is probed and registered as component. > > I will show how to rework this the way it is done in > drivers/gpu/drm/exynos/exynos_dp.c and > drivers/gpu/drm/bridge/analogix/analogix_dp_core.c soon... I've finally had some time to implement such approach, see https://github.com/mszyprow/linux/tree/v6.0-dsi-v4-reworked If you want me to send the patches against your v4 patchset, let me know, but imho my changes are much more readable after squashing to the original patches. Now the driver is fully multi-arch safe and ready for further extensions. I've removed the weak functions, reworked the way the plat_data is used (dropped the patch related to it) and restored exynos-dsi driver as a part of the Exynos DRM drivers/subsystem. Feel free to resend the above as v5 after testing on your hardware. At least it properly works now on all Exynos boards I have, both compiled into the kernel or as modules. > >> v3: >> * restore gpio related fixes >> * restore proper bridge chain >> * rework initialization issue >> * fix header includes in proper way >> >> v2: >> * fixed exynos dsi driver conversion (Marek Szyprowski) >> * updated commit message >> * updated MAINTAINERS file >> >> v1: >> * don't maintain component_ops in bridge driver >> * don't maintain platform glue code in bridge driver >> * add platform-specific glue code and make a common bridge >> >> Signed-off-by: Marek Szyprowski >> Signed-off-by: Jagan Teki >> --- >>   MAINTAINERS                             |    9 + >>   drivers/gpu/drm/bridge/Kconfig          |   12 + >>   drivers/gpu/drm/bridge/Makefile         |    1 + >>   drivers/gpu/drm/bridge/samsung-dsim.c   | 1686 ++++++++++++++++++++++ >>   drivers/gpu/drm/exynos/Kconfig          |    1 + >>   drivers/gpu/drm/exynos/exynos_drm_drv.c |    3 - >>   drivers/gpu/drm/exynos/exynos_drm_drv.h |    1 - >>   drivers/gpu/drm/exynos/exynos_drm_dsi.c | 1715 +---------------------- >>   include/drm/bridge/samsung-dsim.h       |   99 ++ >>   9 files changed, 1868 insertions(+), 1659 deletions(-) >>   create mode 100644 drivers/gpu/drm/bridge/samsung-dsim.c >>   create mode 100644 include/drm/bridge/samsung-dsim.h >> >> ... > > Best regards Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 97FCAECAAD5 for ; Mon, 5 Sep 2022 11:24:34 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 4DB7610E314; Mon, 5 Sep 2022 11:24:32 +0000 (UTC) Received: from mailout1.w1.samsung.com (mailout1.w1.samsung.com [210.118.77.11]) by gabe.freedesktop.org (Postfix) with ESMTPS id B25F810E30F for ; Mon, 5 Sep 2022 11:24:25 +0000 (UTC) Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20220905112414euoutp0138ed92128e973566c1fa5fd1aa462492~R8x97pUTt0333303333euoutp01W for ; Mon, 5 Sep 2022 11:24:14 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20220905112414euoutp0138ed92128e973566c1fa5fd1aa462492~R8x97pUTt0333303333euoutp01W DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1662377054; bh=7flYTWURgvZWZJ0bllJwRUFaD/epPd9YT+NmvYtDtng=; h=Date:Subject:From:To:Cc:In-Reply-To:References:From; b=Xuux5+M2XrmAJ8c6OjhTQp3M1kqGWaOo/bv9HtquwNEzW5GrG+oUBgpI7p3aQPqDU e+mgVpZ0QTNip/M2e6CGk4RRIz9pGgQJfJ5DZ4S6AYXrLY+84dcpOofAVDrMpazS5O h6oJ13mBao4+3f2MNIVQJU4sNFuDACq5ur5wdZ4U= Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20220905112404eucas1p102451e5139cc449cf30959fe4fc2427c~R8x0rjDPi2163221632eucas1p1j; Mon, 5 Sep 2022 11:24:04 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges1new.samsung.com (EUCPMTA) with SMTP id 9D.53.29727.35CD5136; Mon, 5 Sep 2022 12:24:04 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20220905112403eucas1p1b3154207ebea4d10684904144e17b3c0~R8x0LYf4s1126311263eucas1p1C; Mon, 5 Sep 2022 11:24:03 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20220905112403eusmtrp253635c8319b725b5b58e8174cae82dcb~R8x0FDCaj1852618526eusmtrp22; Mon, 5 Sep 2022 11:24:03 +0000 (GMT) X-AuditID: cbfec7f2-21dff7000001741f-b8-6315dc535ddc Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id B9.C9.07473.35CD5136; Mon, 5 Sep 2022 12:24:03 +0100 (BST) Received: from [106.210.134.192] (unknown [106.210.134.192]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20220905112402eusmtip2e5ae6c1ea62e596e302614549e3dbf29~R8xy4wfX22248922489eusmtip2Z; Mon, 5 Sep 2022 11:24:02 +0000 (GMT) Message-ID: Date: Mon, 5 Sep 2022 13:24:02 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.13.0 Subject: Re: [PATCH v4 02/12] drm: bridge: Add Samsung DSIM bridge driver Content-Language: en-US From: Marek Szyprowski To: Jagan Teki , Andrzej Hajda , Inki Dae , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Frieder Schrempf , Fancy Fang , Tim Harvey , Michael Nazzareno Trimarchi , Adam Ford , Neil Armstrong , Robert Foss , Laurent Pinchart , Tommaso Merciai , Marek Vasut In-Reply-To: <7511aa28-a944-d241-5bea-8404008e7dce@samsung.com> Content-Transfer-Encoding: 8bit X-Brightmail-Tracker: H4sIAAAAAAAAA01Sf0xTVxj19r2+lpq611LhinMznXGbycqYbLs4449sc8+pYWaduPGH1vKC bKWYFiaOLIKAYR3UUgk/io7GIjCQIQUMkM50TWmraAV0BCylw7FlIiAURFYyGO3Tjf/Od873 3XO+L5eLCcuIKG6KMp1WKWUKMcHDrzn+dr8hHVorf1Mbh4Y83RjymWZw9MhTR6B7Tx4TqOiy m430Ph2OZs06Av013Iuj22fGOei74moOqtVdJ5D593420gR+xFD5nessNH42B6DuB00YupmT jyObNhH5DSPL4vmHBOp1+TH0dOE2tiuCapz2sanHA/kc6geDC6dKXHY25S70ElSHwcuhKgsq 2JTJ8pBF2X81samhfgtB+b53sqiW6tNU82Q7i9K21gNqxvzSJy98wdueRCtSvqZV0TuO8o6b GlrAiYYNmQ8G84lsoIcaEMaFZCysWrJyNIDHFZJ1ALaaJwmmmAVw2tMFmGIGwCLvIuv5SO4Z O84ItQAau56wmWIawMDICBHs4pM7YH+lHQtinNwES31FOMML4I2K0RBeS8qhweEAQRxO7oXe G4EQj5GR8P5oVciNIGOgZkITyiQim9hwYrQklAkLuhXOj4QcwsidsMVRQDDTL8PctkqMyarl wauDAgZ/AG/N/flsh3A45mzlMPhFuNQRdOMu4zT4T/lWhs6E/Y+uPHvmPTjkDhDBFox8HTZ1 RjP0blg414kzk2vgwISACbAG6q+VYQzNhwVnhUz3Zmhw/vSf5y89fZgOiA0rjmJYsbxhxSqG /32NAK8HkXSGOjWZVsco6ZMStSxVnaFMlsjTUs1g+e92Lzr97eDi2LTEBlhcYAOQi4lF/KR2 kVzIT5Kd+oZWpR1RZShotQ2s5+LiSL485apMSCbL0umvaPoErXqusrhhUdmsC/fenl/dvLQa Pz2f6cx+NyvPXRCIz3Ecc1kuFW67TxSNKIl10tfKt+2UevZ33q15/9ytVVbBqv1E1ZXDX/7G DtMmLKRfTJiwHwwX+r89ZKwVZm1s2hwh3RA9oZU0Kl4Zf+dAerbOO/lpmXpKlOiQ2CSd87Hu 4Qjj+KStePGox3PyY/1gnH/XbtGhNmzPXVOW4vP4pN639J/Zz8fPebv6tkdbZqd6zl2YGt54 Z8vPiQMLfxifFrurpbHUVP5lvnS92mf1WHr2NfisrR0fpdUItrblnTrwIS9cGJdbmlhHHcRU UbmW+sMlS6/mzR2LvXkkobHUuq6mpKLL1TfWId07uq9ZjKuPy2K2YCq17F+ki5zvKgQAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrHKsWRmVeSWpSXmKPExsVy+t/xe7rBd0STDT5/FLS4c/s0s8X9xZ9Z LF7fXsFmceXrezaL3qXnWC0m3Z/AYvFl0wQ2ixf3LrJYnG16w27ROXEJu8XyCfvYLDY9vsZq 0fVrJbPFjPP7mCzetDUyWpx+tJ7Z4lRjK4vFob5oi0+zHgIlJ79ks7h44hOzxfffZ5kdxDzW frzP6vH+Riu7x7xZJ1g8ppw4wupxrucum8fOWXfZPWZ3zGT1WLznJZPHkauLWT3uXNvD5nG/ +ziTx+Yl9R4b3+1g8ujbsorR4/MmuQD+KD2bovzSklSFjPziElulaEMLIz1DSws9IxNLPUNj 81grI1MlfTublNSczLLUIn27BL2Mxas3Mxaslq14dLOVrYFxkkQXIyeHhICJRHPTEZYuRi4O IYGljBJXlm1jhUjISJyc1gBlC0v8udbFBlH0nlFi6vkGFpAEr4CdxLXZR5hBbBYBFYlp93uh 4oISJ2c+AbNFBZIlljTcBxskLOApcffkL7A4s4C4xK0n85lAbDYBQ4mutxALRAS2skq82rYO zGEW+MgocWnyFnaI1U1MEn+n/mQHaeEUsJfYfKyDDWKUmUTX1i5GCFteonnrbOYJjEKzkFwy C8nGWUhaZiFpWcDIsopRJLW0ODc9t9hQrzgxt7g0L10vOT93EyMw4Ww79nPzDsZ5rz7qHWJk 4mA8xCjBwawkwpuyQyRZiDclsbIqtSg/vqg0J7X4EKMpMDgmMkuJJucDU15eSbyhmYGpoYmZ pYGppZmxkjivZ0FHopBAemJJanZqakFqEUwfEwenVAPTVI6cGXIO0auuqf6YzGZldnROluz8 DV5hb1ZcCWFaevyjRNCz8otOv6c8uz/VYctdacsZ9tvVHu5Pfj9T/Ni2matiJl6qWTgp5d6S pebOuhdVmXyEsj8Lq39TCeKquTTz4iomLfOp0l+1Lpzf8bbsoSpT34mTP1XUsi5t28ckXxqi ujiN8Yk2b9m0K2+6Jdkr53zdX/vy2qp6NonPQtw3Llb1LeY7tOul6uzn1/mXRkT953qgy3U8 cHluOUdks8qT9TPiHys8P/JUWjhjr35y7VupV9Hn5nast3eYbhMVuIQ//YKifl7ugzneG36/ F04zr7LvnvZOjfF79cY7LX3WG4/OjS4PvqCeFidoVfbXXomlOCPRUIu5qDgRAGgNCO7BAwAA X-CMS-MailID: 20220905112403eucas1p1b3154207ebea4d10684904144e17b3c0 X-Msg-Generator: CA Content-Type: text/plain; charset="utf-8" X-RootMTR: 20220829184118eucas1p2cda47fa166cafcb904800a55a5f66180 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20220829184118eucas1p2cda47fa166cafcb904800a55a5f66180 References: <20220829184031.1863663-1-jagan@amarulasolutions.com> <20220829184031.1863663-3-jagan@amarulasolutions.com> <7511aa28-a944-d241-5bea-8404008e7dce@samsung.com> X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-samsung-soc@vger.kernel.org, Matteo Lisi , dri-devel@lists.freedesktop.org, NXP Linux Team , linux-amarula , linux-arm-kernel@lists.infradead.org Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Hi All, On 02.09.2022 12:47, Marek Szyprowski wrote: > On 29.08.2022 20:40, Jagan Teki wrote: >> 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 differentiate platform-specific and bridge >> driver >> code and keep maintaining the exynos_drm_dsi.c code as platform-specific >> glue code and samsung-dsim.c as a common bridge driver code. >> >> - Exynos specific glue code is exynos specific te_irq, host_attach, and >>    detach code along with conventional component_ops. >> >> - Samsung DSIM is a bridge driver which is common across all >> platforms and >>    the respective platform-specific glue will initialize at the end >> of the >>    probe. The platform-specific operations and other glue calls will >> invoke >>    on associate code areas. >> >> v4: >> * include Inki Dae in MAINTAINERS >> * remove dsi_driver probe in exynos_drm_drv to support multi-arch build > > This breaks Exynos DRM completely as the Exynos DRM driver is not able > to wait until the DSI driver is probed and registered as component. > > I will show how to rework this the way it is done in > drivers/gpu/drm/exynos/exynos_dp.c and > drivers/gpu/drm/bridge/analogix/analogix_dp_core.c soon... I've finally had some time to implement such approach, see https://github.com/mszyprow/linux/tree/v6.0-dsi-v4-reworked If you want me to send the patches against your v4 patchset, let me know, but imho my changes are much more readable after squashing to the original patches. Now the driver is fully multi-arch safe and ready for further extensions. I've removed the weak functions, reworked the way the plat_data is used (dropped the patch related to it) and restored exynos-dsi driver as a part of the Exynos DRM drivers/subsystem. Feel free to resend the above as v5 after testing on your hardware. At least it properly works now on all Exynos boards I have, both compiled into the kernel or as modules. > >> v3: >> * restore gpio related fixes >> * restore proper bridge chain >> * rework initialization issue >> * fix header includes in proper way >> >> v2: >> * fixed exynos dsi driver conversion (Marek Szyprowski) >> * updated commit message >> * updated MAINTAINERS file >> >> v1: >> * don't maintain component_ops in bridge driver >> * don't maintain platform glue code in bridge driver >> * add platform-specific glue code and make a common bridge >> >> Signed-off-by: Marek Szyprowski >> Signed-off-by: Jagan Teki >> --- >>   MAINTAINERS                             |    9 + >>   drivers/gpu/drm/bridge/Kconfig          |   12 + >>   drivers/gpu/drm/bridge/Makefile         |    1 + >>   drivers/gpu/drm/bridge/samsung-dsim.c   | 1686 ++++++++++++++++++++++ >>   drivers/gpu/drm/exynos/Kconfig          |    1 + >>   drivers/gpu/drm/exynos/exynos_drm_drv.c |    3 - >>   drivers/gpu/drm/exynos/exynos_drm_drv.h |    1 - >>   drivers/gpu/drm/exynos/exynos_drm_dsi.c | 1715 +---------------------- >>   include/drm/bridge/samsung-dsim.h       |   99 ++ >>   9 files changed, 1868 insertions(+), 1659 deletions(-) >>   create mode 100644 drivers/gpu/drm/bridge/samsung-dsim.c >>   create mode 100644 include/drm/bridge/samsung-dsim.h >> >> ... > > Best regards Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 7F3CCECAAD3 for ; Mon, 5 Sep 2022 15:12:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:References:In-Reply-To:Cc:To:From: Subject:MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=COJoO6HlgLOGGj67fiKWc0LmzExQh2OG7GM/8SINfXM=; b=aHGHtbUN+wPOWz sRsnStHxaLj75rztIBii5I5Du4S3ctI7EzcYaaFGGGNHCLbSrf+FLfPL34hVt6POEP+QWml1i5lyt ubZVHclg8USa8eSeXYNBybuiL3i6cpDQWXMWdRJj/1wJ0qaOnNRjzU67c8rgU8OSPD2rZ+7CqOfcF 66rFcPdlprdcViRS58U9jdfJW394hCenWnQOOv3mR71EZgERudQABCM/txVfJJm/XrDD5pKYBrX5k gwK9yHdP3rxHIbm8CdCWA4n0dEWYsdQDcdx621vAmhD/F6PT4wdgZoBhCduMm2YbVPN32nZpdypIM nVugAI6CG0GOjGVtDhXA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oVDke-005f2g-FA; Mon, 05 Sep 2022 15:11:05 +0000 Received: from mailout1.w1.samsung.com ([210.118.77.11]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oVADh-001B6o-82 for linux-arm-kernel@lists.infradead.org; Mon, 05 Sep 2022 11:24:52 +0000 Received: from eucas1p2.samsung.com (unknown [182.198.249.207]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20220905112419euoutp01ae51075313b9e653df394f7657545049~R8yCmLrTR0333303333euoutp01Y for ; Mon, 5 Sep 2022 11:24:19 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20220905112419euoutp01ae51075313b9e653df394f7657545049~R8yCmLrTR0333303333euoutp01Y DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1662377059; bh=7flYTWURgvZWZJ0bllJwRUFaD/epPd9YT+NmvYtDtng=; h=Date:Subject:From:To:Cc:In-Reply-To:References:From; b=uonc5MUq30HqmmPAtt3iNle9c1ay73T9L9wbfdzY/zWBA1yo381E5mlSyN9kVFdYj dmwmz2U8yELHGr8Px1cWLXf4ftk6DTJM7ImpCql9QgsAK4jcVBSbpfEKv0oxDsna1D fDXwub89fs+rXKhBYR3NyRMP+mT8o0Nx2DxRBxxo= Received: from eusmges1new.samsung.com (unknown [203.254.199.242]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20220905112404eucas1p102451e5139cc449cf30959fe4fc2427c~R8x0rjDPi2163221632eucas1p1j; Mon, 5 Sep 2022 11:24:04 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges1new.samsung.com (EUCPMTA) with SMTP id 9D.53.29727.35CD5136; Mon, 5 Sep 2022 12:24:04 +0100 (BST) Received: from eusmtrp2.samsung.com (unknown [182.198.249.139]) by eucas1p1.samsung.com (KnoxPortal) with ESMTPA id 20220905112403eucas1p1b3154207ebea4d10684904144e17b3c0~R8x0LYf4s1126311263eucas1p1C; Mon, 5 Sep 2022 11:24:03 +0000 (GMT) Received: from eusmgms1.samsung.com (unknown [182.198.249.179]) by eusmtrp2.samsung.com (KnoxPortal) with ESMTP id 20220905112403eusmtrp253635c8319b725b5b58e8174cae82dcb~R8x0FDCaj1852618526eusmtrp22; Mon, 5 Sep 2022 11:24:03 +0000 (GMT) X-AuditID: cbfec7f2-21dff7000001741f-b8-6315dc535ddc Received: from eusmtip2.samsung.com ( [203.254.199.222]) by eusmgms1.samsung.com (EUCPMTA) with SMTP id B9.C9.07473.35CD5136; Mon, 5 Sep 2022 12:24:03 +0100 (BST) Received: from [106.210.134.192] (unknown [106.210.134.192]) by eusmtip2.samsung.com (KnoxPortal) with ESMTPA id 20220905112402eusmtip2e5ae6c1ea62e596e302614549e3dbf29~R8xy4wfX22248922489eusmtip2Z; Mon, 5 Sep 2022 11:24:02 +0000 (GMT) Message-ID: Date: Mon, 5 Sep 2022 13:24:02 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.13.0 Subject: Re: [PATCH v4 02/12] drm: bridge: Add Samsung DSIM bridge driver Content-Language: en-US From: Marek Szyprowski To: Jagan Teki , Andrzej Hajda , Inki Dae , Joonyoung Shim , Seung-Woo Kim , Kyungmin Park , Frieder Schrempf , Fancy Fang , Tim Harvey , Michael Nazzareno Trimarchi , Adam Ford , Neil Armstrong , Robert Foss , Laurent Pinchart , Tommaso Merciai , Marek Vasut Cc: Matteo Lisi , dri-devel@lists.freedesktop.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org, NXP Linux Team , linux-amarula In-Reply-To: <7511aa28-a944-d241-5bea-8404008e7dce@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA01Sf0xTVxj19r2+lpq611LhinMznXGbycqYbLs4449sc8+pYWaduPGH1vKC bKWYFiaOLIKAYR3UUgk/io7GIjCQIQUMkM50TWmraAV0BCylw7FlIiAURFYyGO3Tjf/Od873 3XO+L5eLCcuIKG6KMp1WKWUKMcHDrzn+dr8hHVorf1Mbh4Y83RjymWZw9MhTR6B7Tx4TqOiy m430Ph2OZs06Av013Iuj22fGOei74moOqtVdJ5D593420gR+xFD5nessNH42B6DuB00YupmT jyObNhH5DSPL4vmHBOp1+TH0dOE2tiuCapz2sanHA/kc6geDC6dKXHY25S70ElSHwcuhKgsq 2JTJ8pBF2X81samhfgtB+b53sqiW6tNU82Q7i9K21gNqxvzSJy98wdueRCtSvqZV0TuO8o6b GlrAiYYNmQ8G84lsoIcaEMaFZCysWrJyNIDHFZJ1ALaaJwmmmAVw2tMFmGIGwCLvIuv5SO4Z O84ItQAau56wmWIawMDICBHs4pM7YH+lHQtinNwES31FOMML4I2K0RBeS8qhweEAQRxO7oXe G4EQj5GR8P5oVciNIGOgZkITyiQim9hwYrQklAkLuhXOj4QcwsidsMVRQDDTL8PctkqMyarl wauDAgZ/AG/N/flsh3A45mzlMPhFuNQRdOMu4zT4T/lWhs6E/Y+uPHvmPTjkDhDBFox8HTZ1 RjP0blg414kzk2vgwISACbAG6q+VYQzNhwVnhUz3Zmhw/vSf5y89fZgOiA0rjmJYsbxhxSqG /32NAK8HkXSGOjWZVsco6ZMStSxVnaFMlsjTUs1g+e92Lzr97eDi2LTEBlhcYAOQi4lF/KR2 kVzIT5Kd+oZWpR1RZShotQ2s5+LiSL485apMSCbL0umvaPoErXqusrhhUdmsC/fenl/dvLQa Pz2f6cx+NyvPXRCIz3Ecc1kuFW67TxSNKIl10tfKt+2UevZ33q15/9ytVVbBqv1E1ZXDX/7G DtMmLKRfTJiwHwwX+r89ZKwVZm1s2hwh3RA9oZU0Kl4Zf+dAerbOO/lpmXpKlOiQ2CSd87Hu 4Qjj+KStePGox3PyY/1gnH/XbtGhNmzPXVOW4vP4pN639J/Zz8fPebv6tkdbZqd6zl2YGt54 Z8vPiQMLfxifFrurpbHUVP5lvnS92mf1WHr2NfisrR0fpdUItrblnTrwIS9cGJdbmlhHHcRU UbmW+sMlS6/mzR2LvXkkobHUuq6mpKLL1TfWId07uq9ZjKuPy2K2YCq17F+ki5zvKgQAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrHKsWRmVeSWpSXmKPExsVy+t/xe7rBd0STDT5/FLS4c/s0s8X9xZ9Z LF7fXsFmceXrezaL3qXnWC0m3Z/AYvFl0wQ2ixf3LrJYnG16w27ROXEJu8XyCfvYLDY9vsZq 0fVrJbPFjPP7mCzetDUyWpx+tJ7Z4lRjK4vFob5oi0+zHgIlJ79ks7h44hOzxfffZ5kdxDzW frzP6vH+Riu7x7xZJ1g8ppw4wupxrucum8fOWXfZPWZ3zGT1WLznJZPHkauLWT3uXNvD5nG/ +ziTx+Yl9R4b3+1g8ujbsorR4/MmuQD+KD2bovzSklSFjPziElulaEMLIz1DSws9IxNLPUNj 81grI1MlfTublNSczLLUIn27BL2Mxas3Mxaslq14dLOVrYFxkkQXIyeHhICJRHPTEZYuRi4O IYGljBJXlm1jhUjISJyc1gBlC0v8udbFBlH0nlFi6vkGFpAEr4CdxLXZR5hBbBYBFYlp93uh 4oISJ2c+AbNFBZIlljTcBxskLOApcffkL7A4s4C4xK0n85lAbDYBQ4mutxALRAS2skq82rYO zGEW+MgocWnyFnaI1U1MEn+n/mQHaeEUsJfYfKyDDWKUmUTX1i5GCFteonnrbOYJjEKzkFwy C8nGWUhaZiFpWcDIsopRJLW0ODc9t9hQrzgxt7g0L10vOT93EyMw4Ww79nPzDsZ5rz7qHWJk 4mA8xCjBwawkwpuyQyRZiDclsbIqtSg/vqg0J7X4EKMpMDgmMkuJJucDU15eSbyhmYGpoYmZ pYGppZmxkjivZ0FHopBAemJJanZqakFqEUwfEwenVAPTVI6cGXIO0auuqf6YzGZldnROluz8 DV5hb1ZcCWFaevyjRNCz8otOv6c8uz/VYctdacsZ9tvVHu5Pfj9T/Ni2matiJl6qWTgp5d6S pebOuhdVmXyEsj8Lq39TCeKquTTz4iomLfOp0l+1Lpzf8bbsoSpT34mTP1XUsi5t28ckXxqi ujiN8Yk2b9m0K2+6Jdkr53zdX/vy2qp6NonPQtw3Llb1LeY7tOul6uzn1/mXRkT953qgy3U8 cHluOUdks8qT9TPiHys8P/JUWjhjr35y7VupV9Hn5nast3eYbhMVuIQ//YKifl7ugzneG36/ F04zr7LvnvZOjfF79cY7LX3WG4/OjS4PvqCeFidoVfbXXomlOCPRUIu5qDgRAGgNCO7BAwAA X-CMS-MailID: 20220905112403eucas1p1b3154207ebea4d10684904144e17b3c0 X-Msg-Generator: CA X-RootMTR: 20220829184118eucas1p2cda47fa166cafcb904800a55a5f66180 X-EPHeader: CA CMS-TYPE: 201P X-CMS-RootMailID: 20220829184118eucas1p2cda47fa166cafcb904800a55a5f66180 References: <20220829184031.1863663-1-jagan@amarulasolutions.com> <20220829184031.1863663-3-jagan@amarulasolutions.com> <7511aa28-a944-d241-5bea-8404008e7dce@samsung.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220905_042449_812025_33166761 X-CRM114-Status: GOOD ( 25.16 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGkgQWxsLAoKT24gMDIuMDkuMjAyMiAxMjo0NywgTWFyZWsgU3p5cHJvd3NraSB3cm90ZToKPiBP biAyOS4wOC4yMDIyIDIwOjQwLCBKYWdhbiBUZWtpIHdyb3RlOgo+PiBTYW1zdW5nIE1JUEkgRFNJ TSBjb250cm9sbGVyIGlzIGNvbW1vbiBEU0kgSVAgdGhhdCBjYW4gYmUgdXNlZCBpbiAKPj4gdmFy aW91cwo+PiBTb0NzIGxpa2UgRXh5bm9zLCBpLk1YOE0gTWluaS9OYW5vLgo+Pgo+PiBJbiBvcmRl ciB0byBhY2Nlc3MgdGhpcyBEU0kgY29udHJvbGxlciBiZXR3ZWVuIHZhcmlvdXMgcGxhdGZvcm0g U29DcywKPj4gdGhlIGlkZWFsIHdheSB0byBpbmNvcnBvcmF0ZSB0aGlzIGluIHRoZSBkcm0gc3Rh Y2sgaXMgdmlhIHRoZSBkcm0gYnJpZGdlCj4+IGRyaXZlci4KPj4KPj4gVGhpcyBwYXRjaCBpcyB0 cnlpbmcgdG8gZGlmZmVyZW50aWF0ZSBwbGF0Zm9ybS1zcGVjaWZpYyBhbmQgYnJpZGdlIAo+PiBk cml2ZXIKPj4gY29kZSBhbmQga2VlcCBtYWludGFpbmluZyB0aGUgZXh5bm9zX2RybV9kc2kuYyBj b2RlIGFzIHBsYXRmb3JtLXNwZWNpZmljCj4+IGdsdWUgY29kZSBhbmQgc2Ftc3VuZy1kc2ltLmMg YXMgYSBjb21tb24gYnJpZGdlIGRyaXZlciBjb2RlLgo+Pgo+PiAtIEV4eW5vcyBzcGVjaWZpYyBn bHVlIGNvZGUgaXMgZXh5bm9zIHNwZWNpZmljIHRlX2lycSwgaG9zdF9hdHRhY2gsIGFuZAo+PiDC oMKgIGRldGFjaCBjb2RlIGFsb25nIHdpdGggY29udmVudGlvbmFsIGNvbXBvbmVudF9vcHMuCj4+ Cj4+IC0gU2Ftc3VuZyBEU0lNIGlzIGEgYnJpZGdlIGRyaXZlciB3aGljaCBpcyBjb21tb24gYWNy b3NzIGFsbCAKPj4gcGxhdGZvcm1zIGFuZAo+PiDCoMKgIHRoZSByZXNwZWN0aXZlIHBsYXRmb3Jt LXNwZWNpZmljIGdsdWUgd2lsbCBpbml0aWFsaXplIGF0IHRoZSBlbmQgCj4+IG9mIHRoZQo+PiDC oMKgIHByb2JlLiBUaGUgcGxhdGZvcm0tc3BlY2lmaWMgb3BlcmF0aW9ucyBhbmQgb3RoZXIgZ2x1 ZSBjYWxsc8Kgd2lsbCAKPj4gaW52b2tlCj4+IMKgwqAgb24gYXNzb2NpYXRlIGNvZGUgYXJlYXMu Cj4+Cj4+IHY0Ogo+PiAqIGluY2x1ZGUgSW5raSBEYWUgaW4gTUFJTlRBSU5FUlMKPj4gKiByZW1v dmUgZHNpX2RyaXZlciBwcm9iZSBpbiBleHlub3NfZHJtX2RydiB0byBzdXBwb3J0IG11bHRpLWFy Y2ggYnVpbGQKPgo+IFRoaXMgYnJlYWtzIEV4eW5vcyBEUk0gY29tcGxldGVseSBhcyB0aGUgRXh5 bm9zIERSTSBkcml2ZXIgaXMgbm90IGFibGUgCj4gdG8gd2FpdCB1bnRpbCB0aGUgRFNJIGRyaXZl ciBpcyBwcm9iZWQgYW5kIHJlZ2lzdGVyZWQgYXMgY29tcG9uZW50Lgo+Cj4gSSB3aWxsIHNob3cg aG93IHRvIHJld29yayB0aGlzIHRoZSB3YXkgaXQgaXMgZG9uZSBpbiAKPiBkcml2ZXJzL2dwdS9k cm0vZXh5bm9zL2V4eW5vc19kcC5jIGFuZCAKPiBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxv Z2l4L2FuYWxvZ2l4X2RwX2NvcmUuYyBzb29uLi4uCgpJJ3ZlIGZpbmFsbHkgaGFkIHNvbWUgdGlt ZSB0byBpbXBsZW1lbnQgc3VjaCBhcHByb2FjaCwgc2VlIApodHRwczovL2dpdGh1Yi5jb20vbXN6 eXByb3cvbGludXgvdHJlZS92Ni4wLWRzaS12NC1yZXdvcmtlZAoKSWYgeW91IHdhbnQgbWUgdG8g c2VuZCB0aGUgcGF0Y2hlcyBhZ2FpbnN0IHlvdXIgdjQgcGF0Y2hzZXQsIGxldCBtZSAKa25vdywg YnV0IGltaG8gbXkgY2hhbmdlcyBhcmUgbXVjaCBtb3JlIHJlYWRhYmxlIGFmdGVyIHNxdWFzaGlu ZyB0byB0aGUgCm9yaWdpbmFsIHBhdGNoZXMuCgpOb3cgdGhlIGRyaXZlciBpcyBmdWxseSBtdWx0 aS1hcmNoIHNhZmUgYW5kIHJlYWR5IGZvciBmdXJ0aGVyIApleHRlbnNpb25zLiBJJ3ZlIHJlbW92 ZWQgdGhlIHdlYWsgZnVuY3Rpb25zLCByZXdvcmtlZCB0aGUgd2F5IHRoZSAKcGxhdF9kYXRhIGlz IHVzZWQgKGRyb3BwZWQgdGhlIHBhdGNoIHJlbGF0ZWQgdG8gaXQpIGFuZCByZXN0b3JlZCAKZXh5 bm9zLWRzaSBkcml2ZXIgYXMgYSBwYXJ0IG9mIHRoZSBFeHlub3MgRFJNIGRyaXZlcnMvc3Vic3lz dGVtLiBGZWVsIApmcmVlIHRvIHJlc2VuZCB0aGUgYWJvdmUgYXMgdjUgYWZ0ZXIgdGVzdGluZyBv biB5b3VyIGhhcmR3YXJlLiBBdCBsZWFzdCAKaXQgcHJvcGVybHkgd29ya3Mgbm93IG9uIGFsbCBF eHlub3MgYm9hcmRzIEkgaGF2ZSwgYm90aCBjb21waWxlZCBpbnRvIAp0aGUga2VybmVsIG9yIGFz IG1vZHVsZXMuCgo+Cj4+IHYzOgo+PiAqIHJlc3RvcmUgZ3BpbyByZWxhdGVkIGZpeGVzCj4+ICog cmVzdG9yZSBwcm9wZXIgYnJpZGdlIGNoYWluCj4+ICogcmV3b3JrIGluaXRpYWxpemF0aW9uIGlz c3VlCj4+ICogZml4IGhlYWRlciBpbmNsdWRlcyBpbiBwcm9wZXIgd2F5Cj4+Cj4+IHYyOgo+PiAq IGZpeGVkIGV4eW5vcyBkc2kgZHJpdmVyIGNvbnZlcnNpb24gKE1hcmVrIFN6eXByb3dza2kpCj4+ ICogdXBkYXRlZCBjb21taXQgbWVzc2FnZQo+PiAqIHVwZGF0ZWQgTUFJTlRBSU5FUlMgZmlsZQo+ Pgo+PiB2MToKPj4gKiBkb24ndCBtYWludGFpbiBjb21wb25lbnRfb3BzIGluIGJyaWRnZSBkcml2 ZXIKPj4gKiBkb24ndCBtYWludGFpbiBwbGF0Zm9ybSBnbHVlIGNvZGUgaW4gYnJpZGdlIGRyaXZl cgo+PiAqIGFkZCBwbGF0Zm9ybS1zcGVjaWZpYyBnbHVlIGNvZGUgYW5kIG1ha2UgYSBjb21tb24g YnJpZGdlCj4+Cj4+IFNpZ25lZC1vZmYtYnk6IE1hcmVrIFN6eXByb3dza2kgPG0uc3p5cHJvd3Nr aUBzYW1zdW5nLmNvbT4KPj4gU2lnbmVkLW9mZi1ieTogSmFnYW4gVGVraSA8amFnYW5AYW1hcnVs YXNvbHV0aW9ucy5jb20+Cj4+IC0tLQo+PiDCoCBNQUlOVEFJTkVSU8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHzCoMKgwqAgOSArCj4+IMKg IGRyaXZlcnMvZ3B1L2RybS9icmlkZ2UvS2NvbmZpZ8KgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoCAx MiArCj4+IMKgIGRyaXZlcnMvZ3B1L2RybS9icmlkZ2UvTWFrZWZpbGXCoMKgwqDCoMKgwqDCoMKg IHzCoMKgwqAgMSArCj4+IMKgIGRyaXZlcnMvZ3B1L2RybS9icmlkZ2Uvc2Ftc3VuZy1kc2ltLmPC oMKgIHwgMTY4NiArKysrKysrKysrKysrKysrKysrKysrCj4+IMKgIGRyaXZlcnMvZ3B1L2RybS9l eHlub3MvS2NvbmZpZ8KgwqDCoMKgwqDCoMKgwqDCoCB8wqDCoMKgIDEgKwo+PiDCoCBkcml2ZXJz L2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fZHJ2LmMgfMKgwqDCoCAzIC0KPj4gwqAgZHJpdmVy cy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHJtX2Rydi5oIHzCoMKgwqAgMSAtCj4+IMKgIGRyaXZl cnMvZ3B1L2RybS9leHlub3MvZXh5bm9zX2RybV9kc2kuYyB8IDE3MTUgKy0tLS0tLS0tLS0tLS0t LS0tLS0tLS0KPj4gwqAgaW5jbHVkZS9kcm0vYnJpZGdlL3NhbXN1bmctZHNpbS5owqDCoMKgwqDC oMKgIHzCoMKgIDk5ICsrCj4+IMKgIDkgZmlsZXMgY2hhbmdlZCwgMTg2OCBpbnNlcnRpb25zKCsp LCAxNjU5IGRlbGV0aW9ucygtKQo+PiDCoCBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9ncHUv ZHJtL2JyaWRnZS9zYW1zdW5nLWRzaW0uYwo+PiDCoCBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVk ZS9kcm0vYnJpZGdlL3NhbXN1bmctZHNpbS5oCj4+Cj4+IC4uLgo+Cj4gQmVzdCByZWdhcmRzCgpC ZXN0IHJlZ2FyZHMKLS0gCk1hcmVrIFN6eXByb3dza2ksIFBoRApTYW1zdW5nIFImRCBJbnN0aXR1 dGUgUG9sYW5kCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgtYXJtLWtlcm5lbEBsaXN0cy5p bmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8v bGludXgtYXJtLWtlcm5lbAo=