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 EF8F2C433F5 for ; Wed, 6 Apr 2022 07:47:28 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3763810F2AF; Wed, 6 Apr 2022 07:47:28 +0000 (UTC) Received: from mail-m17637.qiye.163.com (mail-m17637.qiye.163.com [59.111.176.37]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1D39B10F2AF for ; Wed, 6 Apr 2022 07:47:26 +0000 (UTC) Received: from [192.168.60.102] (unknown [103.29.142.67]) by mail-m17637.qiye.163.com (Hmail) with ESMTPA id 0C199980555; Wed, 6 Apr 2022 15:47:21 +0800 (CST) Message-ID: <52d602e9-088a-4c82-ab08-9f0a127d0e5f@rock-chips.com> Date: Wed, 6 Apr 2022 15:47:18 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH v9 20/23] drm/rockchip: Make VOP driver optional Content-Language: en-US To: Sascha Hauer References: <20220330063913.GW12181@pengutronix.de> <9619ce71-db59-d6cd-c254-2b67122fa245@rock-chips.com> <20220331070614.GD4012@pengutronix.de> <20220331081815.GF4012@pengutronix.de> <8aa9da47-d7ed-41bf-384c-103757c19fe2@rock-chips.com> <20220401125527.GM4012@pengutronix.de> <7b2630d8-0575-5d65-dd81-3ef336ad5ba7@rock-chips.com> <20220405090509.GP4012@pengutronix.de> <93001a4c-b009-202f-7b04-34e1a9e617ec@rock-chips.com> <20220406070403.GS4012@pengutronix.de> From: Andy Yan In-Reply-To: <20220406070403.GS4012@pengutronix.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-HM-Spam-Status: e1kfGhgUHx5ZQUtXWQgPGg8OCBgUHx5ZQUlOS1dZCBgUCR5ZQVlLVUtZV1 kWDxoPAgseWUFZKDYvK1lXWShZQUhPN1dZLVlBSVdZDwkaFQgSH1lBWUNOHhpWSkMeGh1LSEtMGE JMVRMBExYaEhckFA4PWVdZFhoPEhUdFFlBWU9LSFVKSktISkxVS1kG X-HM-Sender-Digest: e1kMHhlZQR0aFwgeV1kSHx4VD1lBWUc6NU06OCo6AT4MGUoCSQMjMyoT AS4aC0lVSlVKTU9CSUhKSU9PSUxPVTMWGhIXVRoVHwJVAhoVOwkUGBBWGBMSCwhVGBQWRVlXWRIL WUFZSktIVUlCVUpPSVVNTFlXWQgBWUFKSkhNQzcG X-HM-Tid: 0a7ffdd7a9d4d992kuws0c199980555 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: devicetree@vger.kernel.org, Benjamin Gaignard , Sandy Huang , dri-devel@lists.freedesktop.org, Kever Yang , linux-rockchip@lists.infradead.org, Michael Riesch , kernel@pengutronix.de, Peter Geis , linux-arm-kernel@lists.infradead.org Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Hi: On 4/6/22 15:04, Sascha Hauer wrote: > On Wed, Apr 06, 2022 at 09:43:49AM +0800, Andy Yan wrote: >> Hi Sacha: >> >> On 4/5/22 17:05, Sascha Hauer wrote: >>> On Sat, Apr 02, 2022 at 09:25:33AM +0800, Andy Yan wrote: >>>> Hi Sascha: >>>> >>>> On 4/1/22 20:55, Sascha Hauer wrote: >>>>> On Thu, Mar 31, 2022 at 07:00:34PM +0800, Andy Yan wrote: >>>>>> Hi: >>>>>> >>>>>> On 3/31/22 16:18, Sascha Hauer wrote: >>>>>>> On Thu, Mar 31, 2022 at 03:20:37PM +0800, Andy Yan wrote: >>>>>>>> Hi Sascha: >>>>>>>> >>>>>>>> On 3/31/22 15:06, Sascha Hauer wrote: >>>>>>>>> On Wed, Mar 30, 2022 at 08:50:09PM +0800, Andy Yan wrote: >>>>>>>>>> Hi Sascha: >>>>>>>>>> >>>>>>>>>> On 3/30/22 14:39, Sascha Hauer wrote: >>>>>>>>>>> Hi Andy, >>>>>>>>>>> >>>>>>>>>>> On Tue, Mar 29, 2022 at 07:56:27PM +0800, Andy Yan wrote: >>>>>>>>>>>> Hi Sascha: >>>>>>>>>>>> >>>>>>>>>>>> On 3/28/22 23:11, Sascha Hauer wrote: >>>>>>>>>>>>> With upcoming VOP2 support VOP won't be the only choice anymore, so make >>>>>>>>>>>>> the VOP driver optional. >>>>>>>>>>>>> >>>>>>>>>>>>> Signed-off-by: Sascha Hauer >>>>>>>>>>>>> --- >>>>>>>>>>>>> drivers/gpu/drm/rockchip/Kconfig | 8 ++++++++ >>>>>>>>>>>>> drivers/gpu/drm/rockchip/Makefile | 3 ++- >>>>>>>>>>>>> drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 2 +- >>>>>>>>>>>>> 3 files changed, 11 insertions(+), 2 deletions(-) >>>>>>>>>>>>> >>>>>>>>>>>>> diff --git a/drivers/gpu/drm/rockchip/Kconfig b/drivers/gpu/drm/rockchip/Kconfig >>>>>>>>>>>>> index fa5cfda4e90e3..7d22e2997a571 100644 >>>>>>>>>>>>> --- a/drivers/gpu/drm/rockchip/Kconfig >>>>>>>>>>>>> +++ b/drivers/gpu/drm/rockchip/Kconfig >>>>>>>>>>>>> @@ -23,8 +23,16 @@ config DRM_ROCKCHIP >>>>>>>>>>>>> if DRM_ROCKCHIP >>>>>>>>>>>>> +config ROCKCHIP_VOP >>>>>>>>>>>>> + bool "Rockchip VOP driver" >>>>>>>>>>>>> + default y >>>>>>>>>>>>> + help >>>>>>>>>>>>> + This selects support for the VOP driver. You should enable it >>>>>>>>>>>>> + on all older SoCs up to RK3399. >>>>>>>>>>> That reminds me that I wanted to rephrase this. Will change in next >>>>>>>>>>> round. >>>>>>>>>>> >>>>>>>>>>>>> + >>>>>>>>>>>>> config ROCKCHIP_ANALOGIX_DP >>>>>>>>>>>>> bool "Rockchip specific extensions for Analogix DP driver" >>>>>>>>>>>>> + depends on ROCKCHIP_VOP >>>>>>>>>>>> Aanlogix dp is also on vop2 base soc such as  rk356x and rk3588. >>>>>>>>> BTW I just looked at the downstream driver. Here we have the same >>>>>>>>> situation that the analogix dp driver calls rockchip_drm_wait_vact_end() >>>>>>>>> which is implemented in the VOP driver, so when the analogix dp driver >>>>>>>>> is actually used on a VOP2 SoC then it is either used in a way that >>>>>>>>> rockchip_drm_wait_vact_end() will never be called or it explodes in all >>>>>>>>> colours. >>>>>>>>> >>>>>>>>>>> I added the dependency because analogix_dp-rockchip.c calls >>>>>>>>>>> rockchip_drm_wait_vact_end() which is implemented in the VOP driver, >>>>>>>>>>> so this driver currenty can't work with the VOP2 driver and can't >>>>>>>>>>> be linked without the VOP driver being present. >>>>>>>>>>> I'll add a few words to the commit message. >>>>>>>>>> Maybe a better direction is move rockchip_drm_wait_vact_end from the VOP >>>>>>>>>> driver to rockchip_drm_drv.c >>>>>>>>> I am not sure if that's really worth it. Yes, the direction might be the >>>>>>>>> right one, but I would really prefer when somebody does the change who >>>>>>>>> can test and confirm that the analogix dp really works with VOP2 in the >>>>>>>>> end. >>>>>>>> If follow this point, the current DW_MIPI also has not been tested for >>>>>>>> confirm that it >>>>>>>> >>>>>>>> can really work with VOP2, so you should also make it depends on >>>>>>>> ROCKCHIP_VOP. >>> Here you are suggesting to add even more Kconfig dependencies. >>> >>>>>>> Well at least I have patches here which make DW_MIPI work with VOP2 ;) >>>>>> But you DW_MIPI patches for rk356x didn't come. So this is not keep >>>>>> consistency with this point. >>>>>> >>>>>>> What about the others, like LVDS and RGB? >>>>>> Yes, we also have other interface , RK356X has LVDS/RGB/BT1120/BT656, RK3588 >>>>>> has BT1120/BT656, no LVDS or RGB. >>>>>> >>>>>>>> I think the current solution is just a workaround to make your patch pass >>>>>>>> the kernel compile >>>>>>> Indeed. >>>>>>> >>>>>>> I agree that it would be good to add a note somewhere which outputs >>>>>>> work with the VOP2 driver (currently only HDMI), but I wonder if Kconfig >>>>>>> dependencies is the right place for it, because only people who deliberately >>>>>>> disable VOP support will see this information. >>>>>>> Maybe we should rather add it to the Kconfig help text? >>>>>> If a device is supported for this soc, we will add dt node at the dtsi file. >>>>>> >>>>>> A Kconfig dependencies don't seems a good idea. >>> Here you say Kconfig dependencies are no good idea. >> >> Yes. It's not a good idea. So I don't want to see you use a Kcofig >> dependence >> >> to disable a module to avoid compile which introduced by your patch. >> >>>>> Ok, this means we can keep my current approach with just letting >>>>> ROCKCHIP_ANALOGIX_DP depend on ROCKCHIP_VOP to avoid having a non >>>> Excuse me? How do you get this conclusion ? >>> Given that you say that you want to have both more and less Kconfig >>> dependencies I came to the conclusion that I only add one where it's >>> necessary to compile the driver. >>> >>>> I said before,  vop and vop2 based platforms both have ROCKCHIP_ANALOGIX_DP. >>> Maybe, but vop2 with ROCKCHIP_ANALOGIX_DP doesn't even work in the >>> Rockchip downstream kernel, so I wonder how relevant this usecase really >>> is. >> >> No, this is not the truth. Rockchip_ANALOGIX_DP of course work with the >> vendor kernel. We have many rk356x based products shipped with edp. >> Even the VGA output interface on RK3568_EVB1 is drived by >> ROCKCHIP_ANALOGIX_DP with a RTD2166 eDP to VGA convert >> chip. >> >> >> So how do you get conclusion that ROCKCHIP_ANALOGIX_DP can't work with >> the Rockchip downstream kernel? Is it because you can't make the DP work on >> your board? If it is, please contact the supplier who gave you the board. > In the downstream kernel I have available (which is a 5.10.66) > analogix_dp-rockchip.c calls rockchip_drm_wait_vact_end() which is > implemented in rockchip_drm_vop.c and assumes that the passed struct > drm_crtc * can be converted to a struct vop *. Basically it's the same > situation we have right now with the mainline kernel, just that the > linker issues won't show up because the VOP driver can't be disabled > in the downstream kernel. So you judge ROCKCHIP_ANALOGIX_DP can't work by this(as vop2 doesn't has rockchip_drm_wait_vact_end interface)? No, you may not know clearly about this function, this function is used for eDP PSR, which is a optional function, that means not every eDP panel has PSR function(this function usually parsed from edid). This really not means than ROCKCHIP_ANALOGIX_DP can't work. And your 5.10 downstream kernel seems out of dated. We have already move this function out from rockchip_drm_vop to rockchip_drm_drv. >> >> Do you have a RK3568_EVB1 that has a VGA output interface on board? >> >> If you have it, I can offer you image to verify the DP. >> >> >>>> If this patch will cause the compile error, please do a real fix, not a >>> I can't, because I don't have any hardware to test the Analogix DP on a >>> VOP hardware, and given that Analogix DP in conjunction with VOP2 hardware is >>> not even supported in the downstream Kernel I am not sure if it's really >>> worth doing that. >> >> Again, this is not the truth, see above. >> I am not ask you support the ROCKCHIP_ANALOGIX_DP on upstream, I just >> want you can give a better solution when you patch cause the compile error. >> Disable a module when it conflict with your patch is too rough. > It does not conflict with my patch. The dependency only means that you can't > enable the Analogix DP driver when the VOP driver is disabled. That > doesn't hurt, because currently you can't do anything with the Analogix > DP driver without the VOP driver. With the added dependency the Analogix DP > driver can still be used with the VOP driver, even when the VOP2 driver > is enabled. I really can't see a problem with that. > > Sascha > 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 C23E6C433EF for ; Wed, 6 Apr 2022 07:47:50 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To: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=07Z1SlrT3I6tz7wApbyxRy7D+ItfOTPMmnp9SRZ8FaQ=; b=b0F83I8DMS24G8 wvifWCCQfN3fJtzkz4ECB2uJBnC7ZTFgHnr60x8vilUkYKHTdgWzYBhWmnVgpdIEtf50HdTF6N+As gbWdb4qkV9LshGhWiE5dbnAhn+N7ZWZEL+ro9E/5qWdHzojQ5k0+UWAbzcxYiTLk7whUSVCLA2gS/ k/4zdemlT7bgFb6TsJfoS/+BVUH1arvFSOK0HCL0M1e9H0z4pLkmSYX2gGyjyg2h+pB4NpwBCBGA/ KwcyAwmlSSQkkGrcJWcKwEJVJOt5FpL6jF3HwezHdUCbsNQ1hZytR2QVmr8DXyihnpLHxIhfKTB9d wPYh2sNxSQY8LzM98d+A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nc0OI-004Wx3-Ce; Wed, 06 Apr 2022 07:47:46 +0000 Received: from mail-m17637.qiye.163.com ([59.111.176.37]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nc0O2-004WoK-3d; Wed, 06 Apr 2022 07:47:33 +0000 Received: from [192.168.60.102] (unknown [103.29.142.67]) by mail-m17637.qiye.163.com (Hmail) with ESMTPA id 0C199980555; Wed, 6 Apr 2022 15:47:21 +0800 (CST) Message-ID: <52d602e9-088a-4c82-ab08-9f0a127d0e5f@rock-chips.com> Date: Wed, 6 Apr 2022 15:47:18 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH v9 20/23] drm/rockchip: Make VOP driver optional Content-Language: en-US To: Sascha Hauer Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org, kernel@pengutronix.de, Benjamin Gaignard , Michael Riesch , Sandy Huang , =?UTF-8?Q?Heiko_St=c3=bcbner?= , Peter Geis , Kever Yang References: <20220330063913.GW12181@pengutronix.de> <9619ce71-db59-d6cd-c254-2b67122fa245@rock-chips.com> <20220331070614.GD4012@pengutronix.de> <20220331081815.GF4012@pengutronix.de> <8aa9da47-d7ed-41bf-384c-103757c19fe2@rock-chips.com> <20220401125527.GM4012@pengutronix.de> <7b2630d8-0575-5d65-dd81-3ef336ad5ba7@rock-chips.com> <20220405090509.GP4012@pengutronix.de> <93001a4c-b009-202f-7b04-34e1a9e617ec@rock-chips.com> <20220406070403.GS4012@pengutronix.de> From: Andy Yan In-Reply-To: <20220406070403.GS4012@pengutronix.de> X-HM-Spam-Status: e1kfGhgUHx5ZQUtXWQgPGg8OCBgUHx5ZQUlOS1dZCBgUCR5ZQVlLVUtZV1 kWDxoPAgseWUFZKDYvK1lXWShZQUhPN1dZLVlBSVdZDwkaFQgSH1lBWUNOHhpWSkMeGh1LSEtMGE JMVRMBExYaEhckFA4PWVdZFhoPEhUdFFlBWU9LSFVKSktISkxVS1kG X-HM-Sender-Digest: e1kMHhlZQR0aFwgeV1kSHx4VD1lBWUc6NU06OCo6AT4MGUoCSQMjMyoT AS4aC0lVSlVKTU9CSUhKSU9PSUxPVTMWGhIXVRoVHwJVAhoVOwkUGBBWGBMSCwhVGBQWRVlXWRIL WUFZSktIVUlCVUpPSVVNTFlXWQgBWUFKSkhNQzcG X-HM-Tid: 0a7ffdd7a9d4d992kuws0c199980555 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220406_004730_505644_021BA4AB X-CRM114-Status: GOOD ( 44.94 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org SGk6CgpPbiA0LzYvMjIgMTU6MDQsIFNhc2NoYSBIYXVlciB3cm90ZToKPiBPbiBXZWQsIEFwciAw NiwgMjAyMiBhdCAwOTo0Mzo0OUFNICswODAwLCBBbmR5IFlhbiB3cm90ZToKPj4gSGkgU2FjaGE6 Cj4+Cj4+IE9uIDQvNS8yMiAxNzowNSwgU2FzY2hhIEhhdWVyIHdyb3RlOgo+Pj4gT24gU2F0LCBB cHIgMDIsIDIwMjIgYXQgMDk6MjU6MzNBTSArMDgwMCwgQW5keSBZYW4gd3JvdGU6Cj4+Pj4gSGkg U2FzY2hhOgo+Pj4+Cj4+Pj4gT24gNC8xLzIyIDIwOjU1LCBTYXNjaGEgSGF1ZXIgd3JvdGU6Cj4+ Pj4+IE9uIFRodSwgTWFyIDMxLCAyMDIyIGF0IDA3OjAwOjM0UE0gKzA4MDAsIEFuZHkgWWFuIHdy b3RlOgo+Pj4+Pj4gSGk6Cj4+Pj4+Pgo+Pj4+Pj4gT24gMy8zMS8yMiAxNjoxOCwgU2FzY2hhIEhh dWVyIHdyb3RlOgo+Pj4+Pj4+IE9uIFRodSwgTWFyIDMxLCAyMDIyIGF0IDAzOjIwOjM3UE0gKzA4 MDAsIEFuZHkgWWFuIHdyb3RlOgo+Pj4+Pj4+PiBIaSBTYXNjaGE6Cj4+Pj4+Pj4+Cj4+Pj4+Pj4+ IE9uIDMvMzEvMjIgMTU6MDYsIFNhc2NoYSBIYXVlciB3cm90ZToKPj4+Pj4+Pj4+IE9uIFdlZCwg TWFyIDMwLCAyMDIyIGF0IDA4OjUwOjA5UE0gKzA4MDAsIEFuZHkgWWFuIHdyb3RlOgo+Pj4+Pj4+ Pj4+IEhpIFNhc2NoYToKPj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+IE9uIDMvMzAvMjIgMTQ6MzksIFNh c2NoYSBIYXVlciB3cm90ZToKPj4+Pj4+Pj4+Pj4gSGkgQW5keSwKPj4+Pj4+Pj4+Pj4KPj4+Pj4+ Pj4+Pj4gT24gVHVlLCBNYXIgMjksIDIwMjIgYXQgMDc6NTY6MjdQTSArMDgwMCwgQW5keSBZYW4g d3JvdGU6Cj4+Pj4+Pj4+Pj4+PiBIaSBTYXNjaGE6Cj4+Pj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+Pj4g T24gMy8yOC8yMiAyMzoxMSwgU2FzY2hhIEhhdWVyIHdyb3RlOgo+Pj4+Pj4+Pj4+Pj4+IFdpdGgg dXBjb21pbmcgVk9QMiBzdXBwb3J0IFZPUCB3b24ndCBiZSB0aGUgb25seSBjaG9pY2UgYW55bW9y ZSwgc28gbWFrZQo+Pj4+Pj4+Pj4+Pj4+IHRoZSBWT1AgZHJpdmVyIG9wdGlvbmFsLgo+Pj4+Pj4+ Pj4+Pj4+Cj4+Pj4+Pj4+Pj4+Pj4gU2lnbmVkLW9mZi1ieTogU2FzY2hhIEhhdWVyIDxzLmhhdWVy QHBlbmd1dHJvbml4LmRlPgo+Pj4+Pj4+Pj4+Pj4+IC0tLQo+Pj4+Pj4+Pj4+Pj4+ICAgICAgICAg ZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL0tjb25maWcgICAgICAgICAgICB8IDggKysrKysrKysK Pj4+Pj4+Pj4+Pj4+PiAgICAgICAgIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9NYWtlZmlsZSAg ICAgICAgICAgfCAzICsrLQo+Pj4+Pj4+Pj4+Pj4+ICAgICAgICAgZHJpdmVycy9ncHUvZHJtL3Jv Y2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuYyB8IDIgKy0KPj4+Pj4+Pj4+Pj4+PiAgICAgICAgIDMg ZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKPj4+Pj4+Pj4+ Pj4+Pgo+Pj4+Pj4+Pj4+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAv S2NvbmZpZyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9LY29uZmlnCj4+Pj4+Pj4+Pj4+Pj4g aW5kZXggZmE1Y2ZkYTRlOTBlMy4uN2QyMmUyOTk3YTU3MSAxMDA2NDQKPj4+Pj4+Pj4+Pj4+PiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvS2NvbmZpZwo+Pj4+Pj4+Pj4+Pj4+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9LY29uZmlnCj4+Pj4+Pj4+Pj4+Pj4gQEAgLTIzLDgg KzIzLDE2IEBAIGNvbmZpZyBEUk1fUk9DS0NISVAKPj4+Pj4+Pj4+Pj4+PiAgICAgICAgIGlmIERS TV9ST0NLQ0hJUAo+Pj4+Pj4+Pj4+Pj4+ICtjb25maWcgUk9DS0NISVBfVk9QCj4+Pj4+Pj4+Pj4+ Pj4gKwlib29sICJSb2NrY2hpcCBWT1AgZHJpdmVyIgo+Pj4+Pj4+Pj4+Pj4+ICsJZGVmYXVsdCB5 Cj4+Pj4+Pj4+Pj4+Pj4gKwloZWxwCj4+Pj4+Pj4+Pj4+Pj4gKwkgIFRoaXMgc2VsZWN0cyBzdXBw b3J0IGZvciB0aGUgVk9QIGRyaXZlci4gWW91IHNob3VsZCBlbmFibGUgaXQKPj4+Pj4+Pj4+Pj4+ PiArCSAgb24gYWxsIG9sZGVyIFNvQ3MgdXAgdG8gUkszMzk5Lgo+Pj4+Pj4+Pj4+PiBUaGF0IHJl bWluZHMgbWUgdGhhdCBJIHdhbnRlZCB0byByZXBocmFzZSB0aGlzLiBXaWxsIGNoYW5nZSBpbiBu ZXh0Cj4+Pj4+Pj4+Pj4+IHJvdW5kLgo+Pj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+Pj4+ICsKPj4+Pj4+ Pj4+Pj4+PiAgICAgICAgIGNvbmZpZyBST0NLQ0hJUF9BTkFMT0dJWF9EUAo+Pj4+Pj4+Pj4+Pj4+ ICAgICAgICAgCWJvb2wgIlJvY2tjaGlwIHNwZWNpZmljIGV4dGVuc2lvbnMgZm9yIEFuYWxvZ2l4 IERQIGRyaXZlciIKPj4+Pj4+Pj4+Pj4+PiArCWRlcGVuZHMgb24gUk9DS0NISVBfVk9QCj4+Pj4+ Pj4+Pj4+PiBBYW5sb2dpeCBkcCBpcyBhbHNvIG9uIHZvcDIgYmFzZSBzb2Mgc3VjaCBhc8KgIHJr MzU2eCBhbmQgcmszNTg4Lgo+Pj4+Pj4+Pj4gQlRXIEkganVzdCBsb29rZWQgYXQgdGhlIGRvd25z dHJlYW0gZHJpdmVyLiBIZXJlIHdlIGhhdmUgdGhlIHNhbWUKPj4+Pj4+Pj4+IHNpdHVhdGlvbiB0 aGF0IHRoZSBhbmFsb2dpeCBkcCBkcml2ZXIgY2FsbHMgcm9ja2NoaXBfZHJtX3dhaXRfdmFjdF9l bmQoKQo+Pj4+Pj4+Pj4gd2hpY2ggaXMgaW1wbGVtZW50ZWQgaW4gdGhlIFZPUCBkcml2ZXIsIHNv IHdoZW4gdGhlIGFuYWxvZ2l4IGRwIGRyaXZlcgo+Pj4+Pj4+Pj4gaXMgYWN0dWFsbHkgdXNlZCBv biBhIFZPUDIgU29DIHRoZW4gaXQgaXMgZWl0aGVyIHVzZWQgaW4gYSB3YXkgdGhhdAo+Pj4+Pj4+ Pj4gcm9ja2NoaXBfZHJtX3dhaXRfdmFjdF9lbmQoKSB3aWxsIG5ldmVyIGJlIGNhbGxlZCBvciBp dCBleHBsb2RlcyBpbiBhbGwKPj4+Pj4+Pj4+IGNvbG91cnMuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+ PiBJIGFkZGVkIHRoZSBkZXBlbmRlbmN5IGJlY2F1c2UgYW5hbG9naXhfZHAtcm9ja2NoaXAuYyBj YWxscwo+Pj4+Pj4+Pj4+PiByb2NrY2hpcF9kcm1fd2FpdF92YWN0X2VuZCgpIHdoaWNoIGlzIGlt cGxlbWVudGVkIGluIHRoZSBWT1AgZHJpdmVyLAo+Pj4+Pj4+Pj4+PiBzbyB0aGlzIGRyaXZlciBj dXJyZW50eSBjYW4ndCB3b3JrIHdpdGggdGhlIFZPUDIgZHJpdmVyIGFuZCBjYW4ndAo+Pj4+Pj4+ Pj4+PiBiZSBsaW5rZWQgd2l0aG91dCB0aGUgVk9QIGRyaXZlciBiZWluZyBwcmVzZW50Lgo+Pj4+ Pj4+Pj4+PiBJJ2xsIGFkZCBhIGZldyB3b3JkcyB0byB0aGUgY29tbWl0IG1lc3NhZ2UuCj4+Pj4+ Pj4+Pj4gTWF5YmUgYSBiZXR0ZXIgZGlyZWN0aW9uIGlzIG1vdmUgcm9ja2NoaXBfZHJtX3dhaXRf dmFjdF9lbmQgZnJvbSB0aGUgVk9QCj4+Pj4+Pj4+Pj4gZHJpdmVyIHRvIHJvY2tjaGlwX2RybV9k cnYuYwo+Pj4+Pj4+Pj4gSSBhbSBub3Qgc3VyZSBpZiB0aGF0J3MgcmVhbGx5IHdvcnRoIGl0LiBZ ZXMsIHRoZSBkaXJlY3Rpb24gbWlnaHQgYmUgdGhlCj4+Pj4+Pj4+PiByaWdodCBvbmUsIGJ1dCBJ IHdvdWxkIHJlYWxseSBwcmVmZXIgd2hlbiBzb21lYm9keSBkb2VzIHRoZSBjaGFuZ2Ugd2hvCj4+ Pj4+Pj4+PiBjYW4gdGVzdCBhbmQgY29uZmlybSB0aGF0IHRoZSBhbmFsb2dpeCBkcCByZWFsbHkg d29ya3Mgd2l0aCBWT1AyIGluIHRoZQo+Pj4+Pj4+Pj4gZW5kLgo+Pj4+Pj4+PiBJZiBmb2xsb3cg dGhpcyBwb2ludCwgdGhlIGN1cnJlbnQgRFdfTUlQSSBhbHNvIGhhcyBub3QgYmVlbiB0ZXN0ZWQg Zm9yCj4+Pj4+Pj4+IGNvbmZpcm0gdGhhdCBpdAo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBjYW4gcmVhbGx5 IHdvcmsgd2l0aCBWT1AyLCBzbyB5b3Ugc2hvdWxkIGFsc28gbWFrZSBpdCBkZXBlbmRzIG9uCj4+ Pj4+Pj4+IFJPQ0tDSElQX1ZPUC4KPj4+IEhlcmUgeW91IGFyZSBzdWdnZXN0aW5nIHRvIGFkZCBl dmVuIG1vcmUgS2NvbmZpZyBkZXBlbmRlbmNpZXMuCj4+Pgo+Pj4+Pj4+IFdlbGwgYXQgbGVhc3Qg SSBoYXZlIHBhdGNoZXMgaGVyZSB3aGljaCBtYWtlIERXX01JUEkgd29yayB3aXRoIFZPUDIgOykK Pj4+Pj4+IEJ1dCB5b3UgRFdfTUlQSSBwYXRjaGVzIGZvciByazM1NnggZGlkbid0IGNvbWUuIFNv IHRoaXMgaXMgbm90IGtlZXAKPj4+Pj4+IGNvbnNpc3RlbmN5IHdpdGggdGhpcyBwb2ludC4KPj4+ Pj4+Cj4+Pj4+Pj4gV2hhdCBhYm91dCB0aGUgb3RoZXJzLCBsaWtlIExWRFMgYW5kIFJHQj8KPj4+ Pj4+IFllcywgd2UgYWxzbyBoYXZlIG90aGVyIGludGVyZmFjZSAsIFJLMzU2WCBoYXMgTFZEUy9S R0IvQlQxMTIwL0JUNjU2LCBSSzM1ODgKPj4+Pj4+IGhhcyBCVDExMjAvQlQ2NTYsIG5vIExWRFMg b3IgUkdCLgo+Pj4+Pj4KPj4+Pj4+Pj4gSSB0aGluayB0aGUgY3VycmVudCBzb2x1dGlvbiBpcyBq dXN0IGEgd29ya2Fyb3VuZCB0byBtYWtlIHlvdXIgcGF0Y2ggcGFzcwo+Pj4+Pj4+PiB0aGUga2Vy bmVsIGNvbXBpbGUKPj4+Pj4+PiBJbmRlZWQuCj4+Pj4+Pj4KPj4+Pj4+PiBJIGFncmVlIHRoYXQg aXQgd291bGQgYmUgZ29vZCB0byBhZGQgYSBub3RlIHNvbWV3aGVyZSB3aGljaCBvdXRwdXRzCj4+ Pj4+Pj4gd29yayB3aXRoIHRoZSBWT1AyIGRyaXZlciAoY3VycmVudGx5IG9ubHkgSERNSSksIGJ1 dCBJIHdvbmRlciBpZiBLY29uZmlnCj4+Pj4+Pj4gZGVwZW5kZW5jaWVzIGlzIHRoZSByaWdodCBw bGFjZSBmb3IgaXQsIGJlY2F1c2Ugb25seSBwZW9wbGUgd2hvIGRlbGliZXJhdGVseQo+Pj4+Pj4+ IGRpc2FibGUgVk9QIHN1cHBvcnQgd2lsbCBzZWUgdGhpcyBpbmZvcm1hdGlvbi4KPj4+Pj4+PiBN YXliZSB3ZSBzaG91bGQgcmF0aGVyIGFkZCBpdCB0byB0aGUgS2NvbmZpZyBoZWxwIHRleHQ/Cj4+ Pj4+PiBJZiBhIGRldmljZSBpcyBzdXBwb3J0ZWQgZm9yIHRoaXMgc29jLCB3ZSB3aWxsIGFkZCBk dCBub2RlIGF0IHRoZSBkdHNpIGZpbGUuCj4+Pj4+Pgo+Pj4+Pj4gQSBLY29uZmlnIGRlcGVuZGVu Y2llcyBkb24ndCBzZWVtcyBhIGdvb2QgaWRlYS4KPj4+IEhlcmUgeW91IHNheSBLY29uZmlnIGRl cGVuZGVuY2llcyBhcmUgbm8gZ29vZCBpZGVhLgo+Pgo+PiBZZXMuIEl0J3Mgbm90IGEgZ29vZCBp ZGVhLiBTbyBJIGRvbid0IHdhbnQgdG8gc2VlIHlvdSB1c2UgYSBLY29maWcKPj4gZGVwZW5kZW5j ZQo+Pgo+PiB0byBkaXNhYmxlIGEgbW9kdWxlIHRvIGF2b2lkIGNvbXBpbGUgd2hpY2ggaW50cm9k dWNlZCBieSB5b3VyIHBhdGNoLgo+Pgo+Pj4+PiBPaywgdGhpcyBtZWFucyB3ZSBjYW4ga2VlcCBt eSBjdXJyZW50IGFwcHJvYWNoIHdpdGgganVzdCBsZXR0aW5nCj4+Pj4+IFJPQ0tDSElQX0FOQUxP R0lYX0RQIGRlcGVuZCBvbiBST0NLQ0hJUF9WT1AgdG8gYXZvaWQgaGF2aW5nIGEgbm9uCj4+Pj4g RXhjdXNlIG1lPyBIb3cgZG8geW91IGdldCB0aGlzIGNvbmNsdXNpb24gPwo+Pj4gR2l2ZW4gdGhh dCB5b3Ugc2F5IHRoYXQgeW91IHdhbnQgdG8gaGF2ZSBib3RoIG1vcmUgYW5kIGxlc3MgS2NvbmZp Zwo+Pj4gZGVwZW5kZW5jaWVzIEkgY2FtZSB0byB0aGUgY29uY2x1c2lvbiB0aGF0IEkgb25seSBh ZGQgb25lIHdoZXJlIGl0J3MKPj4+IG5lY2Vzc2FyeSB0byBjb21waWxlIHRoZSBkcml2ZXIuCj4+ Pgo+Pj4+IEkgc2FpZCBiZWZvcmUswqAgdm9wIGFuZCB2b3AyIGJhc2VkIHBsYXRmb3JtcyBib3Ro IGhhdmUgUk9DS0NISVBfQU5BTE9HSVhfRFAuCj4+PiBNYXliZSwgYnV0IHZvcDIgd2l0aCBST0NL Q0hJUF9BTkFMT0dJWF9EUCBkb2Vzbid0IGV2ZW4gd29yayBpbiB0aGUKPj4+IFJvY2tjaGlwIGRv d25zdHJlYW0ga2VybmVsLCBzbyBJIHdvbmRlciBob3cgcmVsZXZhbnQgdGhpcyB1c2VjYXNlIHJl YWxseQo+Pj4gaXMuCj4+Cj4+IE5vLCB0aGlzIGlzIG5vdCB0aGUgdHJ1dGguIFJvY2tjaGlwX0FO QUxPR0lYX0RQIG9mIGNvdXJzZSB3b3JrIHdpdGggdGhlCj4+IHZlbmRvciBrZXJuZWwuIFdlIGhh dmUgbWFueSByazM1NnggYmFzZWQgcHJvZHVjdHMgc2hpcHBlZCB3aXRoIGVkcC4KPj4gRXZlbiB0 aGUgVkdBIG91dHB1dCBpbnRlcmZhY2Ugb24gUkszNTY4X0VWQjEgaXMgZHJpdmVkIGJ5Cj4+IFJP Q0tDSElQX0FOQUxPR0lYX0RQIHdpdGggYSBSVEQyMTY2IGVEUCB0byBWR0EgY29udmVydAo+PiBj aGlwLgo+Pgo+Pgo+PiBTbyBob3cgZG8geW91IGdldCBjb25jbHVzaW9uIHRoYXQgUk9DS0NISVBf QU5BTE9HSVhfRFAgY2FuJ3Qgd29yayB3aXRoCj4+IHRoZSBSb2NrY2hpcCBkb3duc3RyZWFtIGtl cm5lbD8gSXMgaXQgYmVjYXVzZSB5b3UgY2FuJ3QgbWFrZSB0aGUgRFAgd29yayBvbgo+PiB5b3Vy IGJvYXJkPyBJZiBpdCBpcywgcGxlYXNlIGNvbnRhY3QgdGhlIHN1cHBsaWVyIHdobyBnYXZlIHlv dSB0aGUgYm9hcmQuCj4gSW4gdGhlIGRvd25zdHJlYW0ga2VybmVsIEkgaGF2ZSBhdmFpbGFibGUg KHdoaWNoIGlzIGEgNS4xMC42NikKPiBhbmFsb2dpeF9kcC1yb2NrY2hpcC5jIGNhbGxzIHJvY2tj aGlwX2RybV93YWl0X3ZhY3RfZW5kKCkgd2hpY2ggaXMKPiBpbXBsZW1lbnRlZCBpbiByb2NrY2hp cF9kcm1fdm9wLmMgYW5kIGFzc3VtZXMgdGhhdCB0aGUgcGFzc2VkIHN0cnVjdAo+IGRybV9jcnRj ICogY2FuIGJlIGNvbnZlcnRlZCB0byBhIHN0cnVjdCB2b3AgKi4gQmFzaWNhbGx5IGl0J3MgdGhl IHNhbWUKPiBzaXR1YXRpb24gd2UgaGF2ZSByaWdodCBub3cgd2l0aCB0aGUgbWFpbmxpbmUga2Vy bmVsLCBqdXN0IHRoYXQgdGhlCj4gbGlua2VyIGlzc3VlcyB3b24ndCBzaG93IHVwIGJlY2F1c2Ug dGhlIFZPUCBkcml2ZXIgY2FuJ3QgYmUgZGlzYWJsZWQKPiBpbiB0aGUgZG93bnN0cmVhbSBrZXJu ZWwuCgoKU28geW91IGp1ZGdlIFJPQ0tDSElQX0FOQUxPR0lYX0RQIGNhbid0IHdvcmsgYnkgdGhp cyhhcyB2b3AyIGRvZXNuJ3QgaGFzIApyb2NrY2hpcF9kcm1fd2FpdF92YWN0X2VuZCBpbnRlcmZh Y2UpPwoKTm8sIHlvdSBtYXkgbm90IGtub3cgY2xlYXJseSBhYm91dCB0aGlzIGZ1bmN0aW9uLCB0 aGlzIGZ1bmN0aW9uIGlzIHVzZWQgCmZvciBlRFAgUFNSLCB3aGljaCBpcyBhCgpvcHRpb25hbCBm dW5jdGlvbiwgdGhhdCBtZWFucyBub3QgZXZlcnkgZURQIHBhbmVsIGhhcyBQU1IgZnVuY3Rpb24o dGhpcyAKZnVuY3Rpb24gdXN1YWxseSBwYXJzZWQgZnJvbSBlZGlkKS4KClRoaXMgcmVhbGx5IG5v dCBtZWFucyB0aGFuIFJPQ0tDSElQX0FOQUxPR0lYX0RQIGNhbid0IHdvcmsuCgoKQW5kIHlvdXIg NS4xMCBkb3duc3RyZWFtIGtlcm5lbCBzZWVtcyBvdXQgb2YgZGF0ZWQuIFdlIGhhdmUgYWxyZWFk eSBtb3ZlIAp0aGlzIGZ1bmN0aW9uIG91dCBmcm9tIHJvY2tjaGlwX2RybV92b3AgdG8gcm9ja2No aXBfZHJtX2Rydi4KCgo+Pgo+PiBEbyB5b3UgaGF2ZSBhIFJLMzU2OF9FVkIxIHRoYXQgaGFzIGEg VkdBIG91dHB1dCBpbnRlcmZhY2Ugb24gYm9hcmQ/Cj4+Cj4+IElmIHlvdSBoYXZlIGl0LCBJIGNh biBvZmZlciB5b3UgaW1hZ2UgdG8gdmVyaWZ5IHRoZSBEUC4KPj4KPj4KPj4+PiBJZiB0aGlzIHBh dGNoIHdpbGwgY2F1c2UgdGhlIGNvbXBpbGUgZXJyb3IsIHBsZWFzZSBkbyBhIHJlYWwgZml4LCBu b3QgYQo+Pj4gSSBjYW4ndCwgYmVjYXVzZSBJIGRvbid0IGhhdmUgYW55IGhhcmR3YXJlIHRvIHRl c3QgdGhlIEFuYWxvZ2l4IERQIG9uIGEKPj4+IFZPUCBoYXJkd2FyZSwgYW5kIGdpdmVuIHRoYXQg QW5hbG9naXggRFAgaW4gY29uanVuY3Rpb24gd2l0aCBWT1AyIGhhcmR3YXJlIGlzCj4+PiBub3Qg ZXZlbiBzdXBwb3J0ZWQgaW4gdGhlIGRvd25zdHJlYW0gS2VybmVsIEkgYW0gbm90IHN1cmUgaWYg aXQncyByZWFsbHkKPj4+IHdvcnRoIGRvaW5nIHRoYXQuCj4+Cj4+IEFnYWluLCB0aGlzIGlzIG5v dCB0aGUgdHJ1dGgsIHNlZSBhYm92ZS4KPj4gSSBhbSBub3QgYXNrIHlvdSBzdXBwb3J0IHRoZSBS T0NLQ0hJUF9BTkFMT0dJWF9EUCBvbiB1cHN0cmVhbSwgSSBqdXN0Cj4+IHdhbnQgeW91IGNhbiBn aXZlIGEgYmV0dGVyIHNvbHV0aW9uIHdoZW4geW91IHBhdGNoIGNhdXNlIHRoZSBjb21waWxlIGVy cm9yLgo+PiBEaXNhYmxlIGEgbW9kdWxlIHdoZW4gaXQgY29uZmxpY3Qgd2l0aCB5b3VyIHBhdGNo IGlzIHRvbyByb3VnaC4KPiBJdCBkb2VzIG5vdCBjb25mbGljdCB3aXRoIG15IHBhdGNoLiBUaGUg ZGVwZW5kZW5jeSBvbmx5IG1lYW5zIHRoYXQgeW91IGNhbid0Cj4gZW5hYmxlIHRoZSBBbmFsb2dp eCBEUCBkcml2ZXIgd2hlbiB0aGUgVk9QIGRyaXZlciBpcyBkaXNhYmxlZC4gVGhhdAo+IGRvZXNu J3QgaHVydCwgYmVjYXVzZSBjdXJyZW50bHkgeW91IGNhbid0IGRvIGFueXRoaW5nIHdpdGggdGhl IEFuYWxvZ2l4Cj4gRFAgZHJpdmVyIHdpdGhvdXQgdGhlIFZPUCBkcml2ZXIuIFdpdGggdGhlIGFk ZGVkIGRlcGVuZGVuY3kgdGhlIEFuYWxvZ2l4IERQCj4gZHJpdmVyIGNhbiBzdGlsbCBiZSB1c2Vk IHdpdGggdGhlIFZPUCBkcml2ZXIsIGV2ZW4gd2hlbiB0aGUgVk9QMiBkcml2ZXIKPiBpcyBlbmFi bGVkLiBJIHJlYWxseSBjYW4ndCBzZWUgYSBwcm9ibGVtIHdpdGggdGhhdC4KPgo+IFNhc2NoYQo+ CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eC1y b2NrY2hpcCBtYWlsaW5nIGxpc3QKTGludXgtcm9ja2NoaXBAbGlzdHMuaW5mcmFkZWFkLm9yZwpo dHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LXJvY2tjaGlw Cg== 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 58CA2C433EF for ; Wed, 6 Apr 2022 07:48:39 +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-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:From:References:Cc:To: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=ayZVSZL+H4EUpmDT7HUuF1gyBcPw9A1Hjv/ar5rh2nM=; b=1ITQDtaiuZ4pae r9zIY4YWICeE1tgmaOiaXih1nRcgsdNoaCGFe6AmlJfHfC4ZhAQClcwL8FTyGvTHQx4o/hyyNg3Oh twYZzeAlLW/jMaYghhEQtXRoSaXSGS/vU3IIuIjiV5X2+Sl0Ou5vxRTPlaGpVPVDD8gH9GFCSQQ9F n/QDeogvFJqd9tVm4umQpiHV2L65Xe+IIOlMWe5whs7M0/Pr/Qy8F52BG86rBHexlis8nm5p4+2cn 8iq3VCR39rl3OT86Pgq5+EDqZqgJlgpfytDZzJBuTpAiCnHNofrbu42vfmzlXxKSGGQlStwUO2kLi 8K4Pr0bodfQhYr1LhJEw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nc0O7-004WsN-Kw; Wed, 06 Apr 2022 07:47:35 +0000 Received: from mail-m17637.qiye.163.com ([59.111.176.37]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nc0O2-004WoK-3d; Wed, 06 Apr 2022 07:47:33 +0000 Received: from [192.168.60.102] (unknown [103.29.142.67]) by mail-m17637.qiye.163.com (Hmail) with ESMTPA id 0C199980555; Wed, 6 Apr 2022 15:47:21 +0800 (CST) Message-ID: <52d602e9-088a-4c82-ab08-9f0a127d0e5f@rock-chips.com> Date: Wed, 6 Apr 2022 15:47:18 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH v9 20/23] drm/rockchip: Make VOP driver optional Content-Language: en-US To: Sascha Hauer Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org, kernel@pengutronix.de, Benjamin Gaignard , Michael Riesch , Sandy Huang , =?UTF-8?Q?Heiko_St=c3=bcbner?= , Peter Geis , Kever Yang References: <20220330063913.GW12181@pengutronix.de> <9619ce71-db59-d6cd-c254-2b67122fa245@rock-chips.com> <20220331070614.GD4012@pengutronix.de> <20220331081815.GF4012@pengutronix.de> <8aa9da47-d7ed-41bf-384c-103757c19fe2@rock-chips.com> <20220401125527.GM4012@pengutronix.de> <7b2630d8-0575-5d65-dd81-3ef336ad5ba7@rock-chips.com> <20220405090509.GP4012@pengutronix.de> <93001a4c-b009-202f-7b04-34e1a9e617ec@rock-chips.com> <20220406070403.GS4012@pengutronix.de> From: Andy Yan In-Reply-To: <20220406070403.GS4012@pengutronix.de> X-HM-Spam-Status: e1kfGhgUHx5ZQUtXWQgPGg8OCBgUHx5ZQUlOS1dZCBgUCR5ZQVlLVUtZV1 kWDxoPAgseWUFZKDYvK1lXWShZQUhPN1dZLVlBSVdZDwkaFQgSH1lBWUNOHhpWSkMeGh1LSEtMGE JMVRMBExYaEhckFA4PWVdZFhoPEhUdFFlBWU9LSFVKSktISkxVS1kG X-HM-Sender-Digest: e1kMHhlZQR0aFwgeV1kSHx4VD1lBWUc6NU06OCo6AT4MGUoCSQMjMyoT AS4aC0lVSlVKTU9CSUhKSU9PSUxPVTMWGhIXVRoVHwJVAhoVOwkUGBBWGBMSCwhVGBQWRVlXWRIL WUFZSktIVUlCVUpPSVVNTFlXWQgBWUFKSkhNQzcG X-HM-Tid: 0a7ffdd7a9d4d992kuws0c199980555 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220406_004730_505644_021BA4AB X-CRM114-Status: GOOD ( 44.94 ) 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-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SGk6CgpPbiA0LzYvMjIgMTU6MDQsIFNhc2NoYSBIYXVlciB3cm90ZToKPiBPbiBXZWQsIEFwciAw NiwgMjAyMiBhdCAwOTo0Mzo0OUFNICswODAwLCBBbmR5IFlhbiB3cm90ZToKPj4gSGkgU2FjaGE6 Cj4+Cj4+IE9uIDQvNS8yMiAxNzowNSwgU2FzY2hhIEhhdWVyIHdyb3RlOgo+Pj4gT24gU2F0LCBB cHIgMDIsIDIwMjIgYXQgMDk6MjU6MzNBTSArMDgwMCwgQW5keSBZYW4gd3JvdGU6Cj4+Pj4gSGkg U2FzY2hhOgo+Pj4+Cj4+Pj4gT24gNC8xLzIyIDIwOjU1LCBTYXNjaGEgSGF1ZXIgd3JvdGU6Cj4+ Pj4+IE9uIFRodSwgTWFyIDMxLCAyMDIyIGF0IDA3OjAwOjM0UE0gKzA4MDAsIEFuZHkgWWFuIHdy b3RlOgo+Pj4+Pj4gSGk6Cj4+Pj4+Pgo+Pj4+Pj4gT24gMy8zMS8yMiAxNjoxOCwgU2FzY2hhIEhh dWVyIHdyb3RlOgo+Pj4+Pj4+IE9uIFRodSwgTWFyIDMxLCAyMDIyIGF0IDAzOjIwOjM3UE0gKzA4 MDAsIEFuZHkgWWFuIHdyb3RlOgo+Pj4+Pj4+PiBIaSBTYXNjaGE6Cj4+Pj4+Pj4+Cj4+Pj4+Pj4+ IE9uIDMvMzEvMjIgMTU6MDYsIFNhc2NoYSBIYXVlciB3cm90ZToKPj4+Pj4+Pj4+IE9uIFdlZCwg TWFyIDMwLCAyMDIyIGF0IDA4OjUwOjA5UE0gKzA4MDAsIEFuZHkgWWFuIHdyb3RlOgo+Pj4+Pj4+ Pj4+IEhpIFNhc2NoYToKPj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+IE9uIDMvMzAvMjIgMTQ6MzksIFNh c2NoYSBIYXVlciB3cm90ZToKPj4+Pj4+Pj4+Pj4gSGkgQW5keSwKPj4+Pj4+Pj4+Pj4KPj4+Pj4+ Pj4+Pj4gT24gVHVlLCBNYXIgMjksIDIwMjIgYXQgMDc6NTY6MjdQTSArMDgwMCwgQW5keSBZYW4g d3JvdGU6Cj4+Pj4+Pj4+Pj4+PiBIaSBTYXNjaGE6Cj4+Pj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+Pj4g T24gMy8yOC8yMiAyMzoxMSwgU2FzY2hhIEhhdWVyIHdyb3RlOgo+Pj4+Pj4+Pj4+Pj4+IFdpdGgg dXBjb21pbmcgVk9QMiBzdXBwb3J0IFZPUCB3b24ndCBiZSB0aGUgb25seSBjaG9pY2UgYW55bW9y ZSwgc28gbWFrZQo+Pj4+Pj4+Pj4+Pj4+IHRoZSBWT1AgZHJpdmVyIG9wdGlvbmFsLgo+Pj4+Pj4+ Pj4+Pj4+Cj4+Pj4+Pj4+Pj4+Pj4gU2lnbmVkLW9mZi1ieTogU2FzY2hhIEhhdWVyIDxzLmhhdWVy QHBlbmd1dHJvbml4LmRlPgo+Pj4+Pj4+Pj4+Pj4+IC0tLQo+Pj4+Pj4+Pj4+Pj4+ICAgICAgICAg ZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL0tjb25maWcgICAgICAgICAgICB8IDggKysrKysrKysK Pj4+Pj4+Pj4+Pj4+PiAgICAgICAgIGRyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9NYWtlZmlsZSAg ICAgICAgICAgfCAzICsrLQo+Pj4+Pj4+Pj4+Pj4+ICAgICAgICAgZHJpdmVycy9ncHUvZHJtL3Jv Y2tjaGlwL3JvY2tjaGlwX2RybV9kcnYuYyB8IDIgKy0KPj4+Pj4+Pj4+Pj4+PiAgICAgICAgIDMg ZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKPj4+Pj4+Pj4+ Pj4+Pgo+Pj4+Pj4+Pj4+Pj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAv S2NvbmZpZyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9LY29uZmlnCj4+Pj4+Pj4+Pj4+Pj4g aW5kZXggZmE1Y2ZkYTRlOTBlMy4uN2QyMmUyOTk3YTU3MSAxMDA2NDQKPj4+Pj4+Pj4+Pj4+PiAt LS0gYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvS2NvbmZpZwo+Pj4+Pj4+Pj4+Pj4+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9LY29uZmlnCj4+Pj4+Pj4+Pj4+Pj4gQEAgLTIzLDgg KzIzLDE2IEBAIGNvbmZpZyBEUk1fUk9DS0NISVAKPj4+Pj4+Pj4+Pj4+PiAgICAgICAgIGlmIERS TV9ST0NLQ0hJUAo+Pj4+Pj4+Pj4+Pj4+ICtjb25maWcgUk9DS0NISVBfVk9QCj4+Pj4+Pj4+Pj4+ Pj4gKwlib29sICJSb2NrY2hpcCBWT1AgZHJpdmVyIgo+Pj4+Pj4+Pj4+Pj4+ICsJZGVmYXVsdCB5 Cj4+Pj4+Pj4+Pj4+Pj4gKwloZWxwCj4+Pj4+Pj4+Pj4+Pj4gKwkgIFRoaXMgc2VsZWN0cyBzdXBw b3J0IGZvciB0aGUgVk9QIGRyaXZlci4gWW91IHNob3VsZCBlbmFibGUgaXQKPj4+Pj4+Pj4+Pj4+ PiArCSAgb24gYWxsIG9sZGVyIFNvQ3MgdXAgdG8gUkszMzk5Lgo+Pj4+Pj4+Pj4+PiBUaGF0IHJl bWluZHMgbWUgdGhhdCBJIHdhbnRlZCB0byByZXBocmFzZSB0aGlzLiBXaWxsIGNoYW5nZSBpbiBu ZXh0Cj4+Pj4+Pj4+Pj4+IHJvdW5kLgo+Pj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+Pj4+ICsKPj4+Pj4+ Pj4+Pj4+PiAgICAgICAgIGNvbmZpZyBST0NLQ0hJUF9BTkFMT0dJWF9EUAo+Pj4+Pj4+Pj4+Pj4+ ICAgICAgICAgCWJvb2wgIlJvY2tjaGlwIHNwZWNpZmljIGV4dGVuc2lvbnMgZm9yIEFuYWxvZ2l4 IERQIGRyaXZlciIKPj4+Pj4+Pj4+Pj4+PiArCWRlcGVuZHMgb24gUk9DS0NISVBfVk9QCj4+Pj4+ Pj4+Pj4+PiBBYW5sb2dpeCBkcCBpcyBhbHNvIG9uIHZvcDIgYmFzZSBzb2Mgc3VjaCBhc8KgIHJr MzU2eCBhbmQgcmszNTg4Lgo+Pj4+Pj4+Pj4gQlRXIEkganVzdCBsb29rZWQgYXQgdGhlIGRvd25z dHJlYW0gZHJpdmVyLiBIZXJlIHdlIGhhdmUgdGhlIHNhbWUKPj4+Pj4+Pj4+IHNpdHVhdGlvbiB0 aGF0IHRoZSBhbmFsb2dpeCBkcCBkcml2ZXIgY2FsbHMgcm9ja2NoaXBfZHJtX3dhaXRfdmFjdF9l bmQoKQo+Pj4+Pj4+Pj4gd2hpY2ggaXMgaW1wbGVtZW50ZWQgaW4gdGhlIFZPUCBkcml2ZXIsIHNv IHdoZW4gdGhlIGFuYWxvZ2l4IGRwIGRyaXZlcgo+Pj4+Pj4+Pj4gaXMgYWN0dWFsbHkgdXNlZCBv biBhIFZPUDIgU29DIHRoZW4gaXQgaXMgZWl0aGVyIHVzZWQgaW4gYSB3YXkgdGhhdAo+Pj4+Pj4+ Pj4gcm9ja2NoaXBfZHJtX3dhaXRfdmFjdF9lbmQoKSB3aWxsIG5ldmVyIGJlIGNhbGxlZCBvciBp dCBleHBsb2RlcyBpbiBhbGwKPj4+Pj4+Pj4+IGNvbG91cnMuCj4+Pj4+Pj4+Pgo+Pj4+Pj4+Pj4+ PiBJIGFkZGVkIHRoZSBkZXBlbmRlbmN5IGJlY2F1c2UgYW5hbG9naXhfZHAtcm9ja2NoaXAuYyBj YWxscwo+Pj4+Pj4+Pj4+PiByb2NrY2hpcF9kcm1fd2FpdF92YWN0X2VuZCgpIHdoaWNoIGlzIGlt cGxlbWVudGVkIGluIHRoZSBWT1AgZHJpdmVyLAo+Pj4+Pj4+Pj4+PiBzbyB0aGlzIGRyaXZlciBj dXJyZW50eSBjYW4ndCB3b3JrIHdpdGggdGhlIFZPUDIgZHJpdmVyIGFuZCBjYW4ndAo+Pj4+Pj4+ Pj4+PiBiZSBsaW5rZWQgd2l0aG91dCB0aGUgVk9QIGRyaXZlciBiZWluZyBwcmVzZW50Lgo+Pj4+ Pj4+Pj4+PiBJJ2xsIGFkZCBhIGZldyB3b3JkcyB0byB0aGUgY29tbWl0IG1lc3NhZ2UuCj4+Pj4+ Pj4+Pj4gTWF5YmUgYSBiZXR0ZXIgZGlyZWN0aW9uIGlzIG1vdmUgcm9ja2NoaXBfZHJtX3dhaXRf dmFjdF9lbmQgZnJvbSB0aGUgVk9QCj4+Pj4+Pj4+Pj4gZHJpdmVyIHRvIHJvY2tjaGlwX2RybV9k cnYuYwo+Pj4+Pj4+Pj4gSSBhbSBub3Qgc3VyZSBpZiB0aGF0J3MgcmVhbGx5IHdvcnRoIGl0LiBZ ZXMsIHRoZSBkaXJlY3Rpb24gbWlnaHQgYmUgdGhlCj4+Pj4+Pj4+PiByaWdodCBvbmUsIGJ1dCBJ IHdvdWxkIHJlYWxseSBwcmVmZXIgd2hlbiBzb21lYm9keSBkb2VzIHRoZSBjaGFuZ2Ugd2hvCj4+ Pj4+Pj4+PiBjYW4gdGVzdCBhbmQgY29uZmlybSB0aGF0IHRoZSBhbmFsb2dpeCBkcCByZWFsbHkg d29ya3Mgd2l0aCBWT1AyIGluIHRoZQo+Pj4+Pj4+Pj4gZW5kLgo+Pj4+Pj4+PiBJZiBmb2xsb3cg dGhpcyBwb2ludCwgdGhlIGN1cnJlbnQgRFdfTUlQSSBhbHNvIGhhcyBub3QgYmVlbiB0ZXN0ZWQg Zm9yCj4+Pj4+Pj4+IGNvbmZpcm0gdGhhdCBpdAo+Pj4+Pj4+Pgo+Pj4+Pj4+PiBjYW4gcmVhbGx5 IHdvcmsgd2l0aCBWT1AyLCBzbyB5b3Ugc2hvdWxkIGFsc28gbWFrZSBpdCBkZXBlbmRzIG9uCj4+ Pj4+Pj4+IFJPQ0tDSElQX1ZPUC4KPj4+IEhlcmUgeW91IGFyZSBzdWdnZXN0aW5nIHRvIGFkZCBl dmVuIG1vcmUgS2NvbmZpZyBkZXBlbmRlbmNpZXMuCj4+Pgo+Pj4+Pj4+IFdlbGwgYXQgbGVhc3Qg SSBoYXZlIHBhdGNoZXMgaGVyZSB3aGljaCBtYWtlIERXX01JUEkgd29yayB3aXRoIFZPUDIgOykK Pj4+Pj4+IEJ1dCB5b3UgRFdfTUlQSSBwYXRjaGVzIGZvciByazM1NnggZGlkbid0IGNvbWUuIFNv IHRoaXMgaXMgbm90IGtlZXAKPj4+Pj4+IGNvbnNpc3RlbmN5IHdpdGggdGhpcyBwb2ludC4KPj4+ Pj4+Cj4+Pj4+Pj4gV2hhdCBhYm91dCB0aGUgb3RoZXJzLCBsaWtlIExWRFMgYW5kIFJHQj8KPj4+ Pj4+IFllcywgd2UgYWxzbyBoYXZlIG90aGVyIGludGVyZmFjZSAsIFJLMzU2WCBoYXMgTFZEUy9S R0IvQlQxMTIwL0JUNjU2LCBSSzM1ODgKPj4+Pj4+IGhhcyBCVDExMjAvQlQ2NTYsIG5vIExWRFMg b3IgUkdCLgo+Pj4+Pj4KPj4+Pj4+Pj4gSSB0aGluayB0aGUgY3VycmVudCBzb2x1dGlvbiBpcyBq dXN0IGEgd29ya2Fyb3VuZCB0byBtYWtlIHlvdXIgcGF0Y2ggcGFzcwo+Pj4+Pj4+PiB0aGUga2Vy bmVsIGNvbXBpbGUKPj4+Pj4+PiBJbmRlZWQuCj4+Pj4+Pj4KPj4+Pj4+PiBJIGFncmVlIHRoYXQg aXQgd291bGQgYmUgZ29vZCB0byBhZGQgYSBub3RlIHNvbWV3aGVyZSB3aGljaCBvdXRwdXRzCj4+ Pj4+Pj4gd29yayB3aXRoIHRoZSBWT1AyIGRyaXZlciAoY3VycmVudGx5IG9ubHkgSERNSSksIGJ1 dCBJIHdvbmRlciBpZiBLY29uZmlnCj4+Pj4+Pj4gZGVwZW5kZW5jaWVzIGlzIHRoZSByaWdodCBw bGFjZSBmb3IgaXQsIGJlY2F1c2Ugb25seSBwZW9wbGUgd2hvIGRlbGliZXJhdGVseQo+Pj4+Pj4+ IGRpc2FibGUgVk9QIHN1cHBvcnQgd2lsbCBzZWUgdGhpcyBpbmZvcm1hdGlvbi4KPj4+Pj4+PiBN YXliZSB3ZSBzaG91bGQgcmF0aGVyIGFkZCBpdCB0byB0aGUgS2NvbmZpZyBoZWxwIHRleHQ/Cj4+ Pj4+PiBJZiBhIGRldmljZSBpcyBzdXBwb3J0ZWQgZm9yIHRoaXMgc29jLCB3ZSB3aWxsIGFkZCBk dCBub2RlIGF0IHRoZSBkdHNpIGZpbGUuCj4+Pj4+Pgo+Pj4+Pj4gQSBLY29uZmlnIGRlcGVuZGVu Y2llcyBkb24ndCBzZWVtcyBhIGdvb2QgaWRlYS4KPj4+IEhlcmUgeW91IHNheSBLY29uZmlnIGRl cGVuZGVuY2llcyBhcmUgbm8gZ29vZCBpZGVhLgo+Pgo+PiBZZXMuIEl0J3Mgbm90IGEgZ29vZCBp ZGVhLiBTbyBJIGRvbid0IHdhbnQgdG8gc2VlIHlvdSB1c2UgYSBLY29maWcKPj4gZGVwZW5kZW5j ZQo+Pgo+PiB0byBkaXNhYmxlIGEgbW9kdWxlIHRvIGF2b2lkIGNvbXBpbGUgd2hpY2ggaW50cm9k dWNlZCBieSB5b3VyIHBhdGNoLgo+Pgo+Pj4+PiBPaywgdGhpcyBtZWFucyB3ZSBjYW4ga2VlcCBt eSBjdXJyZW50IGFwcHJvYWNoIHdpdGgganVzdCBsZXR0aW5nCj4+Pj4+IFJPQ0tDSElQX0FOQUxP R0lYX0RQIGRlcGVuZCBvbiBST0NLQ0hJUF9WT1AgdG8gYXZvaWQgaGF2aW5nIGEgbm9uCj4+Pj4g RXhjdXNlIG1lPyBIb3cgZG8geW91IGdldCB0aGlzIGNvbmNsdXNpb24gPwo+Pj4gR2l2ZW4gdGhh dCB5b3Ugc2F5IHRoYXQgeW91IHdhbnQgdG8gaGF2ZSBib3RoIG1vcmUgYW5kIGxlc3MgS2NvbmZp Zwo+Pj4gZGVwZW5kZW5jaWVzIEkgY2FtZSB0byB0aGUgY29uY2x1c2lvbiB0aGF0IEkgb25seSBh ZGQgb25lIHdoZXJlIGl0J3MKPj4+IG5lY2Vzc2FyeSB0byBjb21waWxlIHRoZSBkcml2ZXIuCj4+ Pgo+Pj4+IEkgc2FpZCBiZWZvcmUswqAgdm9wIGFuZCB2b3AyIGJhc2VkIHBsYXRmb3JtcyBib3Ro IGhhdmUgUk9DS0NISVBfQU5BTE9HSVhfRFAuCj4+PiBNYXliZSwgYnV0IHZvcDIgd2l0aCBST0NL Q0hJUF9BTkFMT0dJWF9EUCBkb2Vzbid0IGV2ZW4gd29yayBpbiB0aGUKPj4+IFJvY2tjaGlwIGRv d25zdHJlYW0ga2VybmVsLCBzbyBJIHdvbmRlciBob3cgcmVsZXZhbnQgdGhpcyB1c2VjYXNlIHJl YWxseQo+Pj4gaXMuCj4+Cj4+IE5vLCB0aGlzIGlzIG5vdCB0aGUgdHJ1dGguIFJvY2tjaGlwX0FO QUxPR0lYX0RQIG9mIGNvdXJzZSB3b3JrIHdpdGggdGhlCj4+IHZlbmRvciBrZXJuZWwuIFdlIGhh dmUgbWFueSByazM1NnggYmFzZWQgcHJvZHVjdHMgc2hpcHBlZCB3aXRoIGVkcC4KPj4gRXZlbiB0 aGUgVkdBIG91dHB1dCBpbnRlcmZhY2Ugb24gUkszNTY4X0VWQjEgaXMgZHJpdmVkIGJ5Cj4+IFJP Q0tDSElQX0FOQUxPR0lYX0RQIHdpdGggYSBSVEQyMTY2IGVEUCB0byBWR0EgY29udmVydAo+PiBj aGlwLgo+Pgo+Pgo+PiBTbyBob3cgZG8geW91IGdldCBjb25jbHVzaW9uIHRoYXQgUk9DS0NISVBf QU5BTE9HSVhfRFAgY2FuJ3Qgd29yayB3aXRoCj4+IHRoZSBSb2NrY2hpcCBkb3duc3RyZWFtIGtl cm5lbD8gSXMgaXQgYmVjYXVzZSB5b3UgY2FuJ3QgbWFrZSB0aGUgRFAgd29yayBvbgo+PiB5b3Vy IGJvYXJkPyBJZiBpdCBpcywgcGxlYXNlIGNvbnRhY3QgdGhlIHN1cHBsaWVyIHdobyBnYXZlIHlv dSB0aGUgYm9hcmQuCj4gSW4gdGhlIGRvd25zdHJlYW0ga2VybmVsIEkgaGF2ZSBhdmFpbGFibGUg KHdoaWNoIGlzIGEgNS4xMC42NikKPiBhbmFsb2dpeF9kcC1yb2NrY2hpcC5jIGNhbGxzIHJvY2tj aGlwX2RybV93YWl0X3ZhY3RfZW5kKCkgd2hpY2ggaXMKPiBpbXBsZW1lbnRlZCBpbiByb2NrY2hp cF9kcm1fdm9wLmMgYW5kIGFzc3VtZXMgdGhhdCB0aGUgcGFzc2VkIHN0cnVjdAo+IGRybV9jcnRj ICogY2FuIGJlIGNvbnZlcnRlZCB0byBhIHN0cnVjdCB2b3AgKi4gQmFzaWNhbGx5IGl0J3MgdGhl IHNhbWUKPiBzaXR1YXRpb24gd2UgaGF2ZSByaWdodCBub3cgd2l0aCB0aGUgbWFpbmxpbmUga2Vy bmVsLCBqdXN0IHRoYXQgdGhlCj4gbGlua2VyIGlzc3VlcyB3b24ndCBzaG93IHVwIGJlY2F1c2Ug dGhlIFZPUCBkcml2ZXIgY2FuJ3QgYmUgZGlzYWJsZWQKPiBpbiB0aGUgZG93bnN0cmVhbSBrZXJu ZWwuCgoKU28geW91IGp1ZGdlIFJPQ0tDSElQX0FOQUxPR0lYX0RQIGNhbid0IHdvcmsgYnkgdGhp cyhhcyB2b3AyIGRvZXNuJ3QgaGFzIApyb2NrY2hpcF9kcm1fd2FpdF92YWN0X2VuZCBpbnRlcmZh Y2UpPwoKTm8sIHlvdSBtYXkgbm90IGtub3cgY2xlYXJseSBhYm91dCB0aGlzIGZ1bmN0aW9uLCB0 aGlzIGZ1bmN0aW9uIGlzIHVzZWQgCmZvciBlRFAgUFNSLCB3aGljaCBpcyBhCgpvcHRpb25hbCBm dW5jdGlvbiwgdGhhdCBtZWFucyBub3QgZXZlcnkgZURQIHBhbmVsIGhhcyBQU1IgZnVuY3Rpb24o dGhpcyAKZnVuY3Rpb24gdXN1YWxseSBwYXJzZWQgZnJvbSBlZGlkKS4KClRoaXMgcmVhbGx5IG5v dCBtZWFucyB0aGFuIFJPQ0tDSElQX0FOQUxPR0lYX0RQIGNhbid0IHdvcmsuCgoKQW5kIHlvdXIg NS4xMCBkb3duc3RyZWFtIGtlcm5lbCBzZWVtcyBvdXQgb2YgZGF0ZWQuIFdlIGhhdmUgYWxyZWFk eSBtb3ZlIAp0aGlzIGZ1bmN0aW9uIG91dCBmcm9tIHJvY2tjaGlwX2RybV92b3AgdG8gcm9ja2No aXBfZHJtX2Rydi4KCgo+Pgo+PiBEbyB5b3UgaGF2ZSBhIFJLMzU2OF9FVkIxIHRoYXQgaGFzIGEg VkdBIG91dHB1dCBpbnRlcmZhY2Ugb24gYm9hcmQ/Cj4+Cj4+IElmIHlvdSBoYXZlIGl0LCBJIGNh biBvZmZlciB5b3UgaW1hZ2UgdG8gdmVyaWZ5IHRoZSBEUC4KPj4KPj4KPj4+PiBJZiB0aGlzIHBh dGNoIHdpbGwgY2F1c2UgdGhlIGNvbXBpbGUgZXJyb3IsIHBsZWFzZSBkbyBhIHJlYWwgZml4LCBu b3QgYQo+Pj4gSSBjYW4ndCwgYmVjYXVzZSBJIGRvbid0IGhhdmUgYW55IGhhcmR3YXJlIHRvIHRl c3QgdGhlIEFuYWxvZ2l4IERQIG9uIGEKPj4+IFZPUCBoYXJkd2FyZSwgYW5kIGdpdmVuIHRoYXQg QW5hbG9naXggRFAgaW4gY29uanVuY3Rpb24gd2l0aCBWT1AyIGhhcmR3YXJlIGlzCj4+PiBub3Qg ZXZlbiBzdXBwb3J0ZWQgaW4gdGhlIGRvd25zdHJlYW0gS2VybmVsIEkgYW0gbm90IHN1cmUgaWYg aXQncyByZWFsbHkKPj4+IHdvcnRoIGRvaW5nIHRoYXQuCj4+Cj4+IEFnYWluLCB0aGlzIGlzIG5v dCB0aGUgdHJ1dGgsIHNlZSBhYm92ZS4KPj4gSSBhbSBub3QgYXNrIHlvdSBzdXBwb3J0IHRoZSBS T0NLQ0hJUF9BTkFMT0dJWF9EUCBvbiB1cHN0cmVhbSwgSSBqdXN0Cj4+IHdhbnQgeW91IGNhbiBn aXZlIGEgYmV0dGVyIHNvbHV0aW9uIHdoZW4geW91IHBhdGNoIGNhdXNlIHRoZSBjb21waWxlIGVy cm9yLgo+PiBEaXNhYmxlIGEgbW9kdWxlIHdoZW4gaXQgY29uZmxpY3Qgd2l0aCB5b3VyIHBhdGNo IGlzIHRvbyByb3VnaC4KPiBJdCBkb2VzIG5vdCBjb25mbGljdCB3aXRoIG15IHBhdGNoLiBUaGUg ZGVwZW5kZW5jeSBvbmx5IG1lYW5zIHRoYXQgeW91IGNhbid0Cj4gZW5hYmxlIHRoZSBBbmFsb2dp eCBEUCBkcml2ZXIgd2hlbiB0aGUgVk9QIGRyaXZlciBpcyBkaXNhYmxlZC4gVGhhdAo+IGRvZXNu J3QgaHVydCwgYmVjYXVzZSBjdXJyZW50bHkgeW91IGNhbid0IGRvIGFueXRoaW5nIHdpdGggdGhl IEFuYWxvZ2l4Cj4gRFAgZHJpdmVyIHdpdGhvdXQgdGhlIFZPUCBkcml2ZXIuIFdpdGggdGhlIGFk ZGVkIGRlcGVuZGVuY3kgdGhlIEFuYWxvZ2l4IERQCj4gZHJpdmVyIGNhbiBzdGlsbCBiZSB1c2Vk IHdpdGggdGhlIFZPUCBkcml2ZXIsIGV2ZW4gd2hlbiB0aGUgVk9QMiBkcml2ZXIKPiBpcyBlbmFi bGVkLiBJIHJlYWxseSBjYW4ndCBzZWUgYSBwcm9ibGVtIHdpdGggdGhhdC4KPgo+IFNhc2NoYQo+ CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1h cm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5v cmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0t a2VybmVsCg== 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 E2554C433EF for ; Wed, 6 Apr 2022 12:06:22 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231513AbiDFMIU (ORCPT ); Wed, 6 Apr 2022 08:08:20 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42408 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232655AbiDFMHn (ORCPT ); Wed, 6 Apr 2022 08:07:43 -0400 Received: from mail-m17637.qiye.163.com (mail-m17637.qiye.163.com [59.111.176.37]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A3AF72A8680 for ; Wed, 6 Apr 2022 00:47:26 -0700 (PDT) Received: from [192.168.60.102] (unknown [103.29.142.67]) by mail-m17637.qiye.163.com (Hmail) with ESMTPA id 0C199980555; Wed, 6 Apr 2022 15:47:21 +0800 (CST) Message-ID: <52d602e9-088a-4c82-ab08-9f0a127d0e5f@rock-chips.com> Date: Wed, 6 Apr 2022 15:47:18 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH v9 20/23] drm/rockchip: Make VOP driver optional Content-Language: en-US To: Sascha Hauer Cc: dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org, kernel@pengutronix.de, Benjamin Gaignard , Michael Riesch , Sandy Huang , =?UTF-8?Q?Heiko_St=c3=bcbner?= , Peter Geis , Kever Yang References: <20220330063913.GW12181@pengutronix.de> <9619ce71-db59-d6cd-c254-2b67122fa245@rock-chips.com> <20220331070614.GD4012@pengutronix.de> <20220331081815.GF4012@pengutronix.de> <8aa9da47-d7ed-41bf-384c-103757c19fe2@rock-chips.com> <20220401125527.GM4012@pengutronix.de> <7b2630d8-0575-5d65-dd81-3ef336ad5ba7@rock-chips.com> <20220405090509.GP4012@pengutronix.de> <93001a4c-b009-202f-7b04-34e1a9e617ec@rock-chips.com> <20220406070403.GS4012@pengutronix.de> From: Andy Yan In-Reply-To: <20220406070403.GS4012@pengutronix.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-HM-Spam-Status: e1kfGhgUHx5ZQUtXWQgPGg8OCBgUHx5ZQUlOS1dZCBgUCR5ZQVlLVUtZV1 kWDxoPAgseWUFZKDYvK1lXWShZQUhPN1dZLVlBSVdZDwkaFQgSH1lBWUNOHhpWSkMeGh1LSEtMGE JMVRMBExYaEhckFA4PWVdZFhoPEhUdFFlBWU9LSFVKSktISkxVS1kG X-HM-Sender-Digest: e1kMHhlZQR0aFwgeV1kSHx4VD1lBWUc6NU06OCo6AT4MGUoCSQMjMyoT AS4aC0lVSlVKTU9CSUhKSU9PSUxPVTMWGhIXVRoVHwJVAhoVOwkUGBBWGBMSCwhVGBQWRVlXWRIL WUFZSktIVUlCVUpPSVVNTFlXWQgBWUFKSkhNQzcG X-HM-Tid: 0a7ffdd7a9d4d992kuws0c199980555 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org Hi: On 4/6/22 15:04, Sascha Hauer wrote: > On Wed, Apr 06, 2022 at 09:43:49AM +0800, Andy Yan wrote: >> Hi Sacha: >> >> On 4/5/22 17:05, Sascha Hauer wrote: >>> On Sat, Apr 02, 2022 at 09:25:33AM +0800, Andy Yan wrote: >>>> Hi Sascha: >>>> >>>> On 4/1/22 20:55, Sascha Hauer wrote: >>>>> On Thu, Mar 31, 2022 at 07:00:34PM +0800, Andy Yan wrote: >>>>>> Hi: >>>>>> >>>>>> On 3/31/22 16:18, Sascha Hauer wrote: >>>>>>> On Thu, Mar 31, 2022 at 03:20:37PM +0800, Andy Yan wrote: >>>>>>>> Hi Sascha: >>>>>>>> >>>>>>>> On 3/31/22 15:06, Sascha Hauer wrote: >>>>>>>>> On Wed, Mar 30, 2022 at 08:50:09PM +0800, Andy Yan wrote: >>>>>>>>>> Hi Sascha: >>>>>>>>>> >>>>>>>>>> On 3/30/22 14:39, Sascha Hauer wrote: >>>>>>>>>>> Hi Andy, >>>>>>>>>>> >>>>>>>>>>> On Tue, Mar 29, 2022 at 07:56:27PM +0800, Andy Yan wrote: >>>>>>>>>>>> Hi Sascha: >>>>>>>>>>>> >>>>>>>>>>>> On 3/28/22 23:11, Sascha Hauer wrote: >>>>>>>>>>>>> With upcoming VOP2 support VOP won't be the only choice anymore, so make >>>>>>>>>>>>> the VOP driver optional. >>>>>>>>>>>>> >>>>>>>>>>>>> Signed-off-by: Sascha Hauer >>>>>>>>>>>>> --- >>>>>>>>>>>>> drivers/gpu/drm/rockchip/Kconfig | 8 ++++++++ >>>>>>>>>>>>> drivers/gpu/drm/rockchip/Makefile | 3 ++- >>>>>>>>>>>>> drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 2 +- >>>>>>>>>>>>> 3 files changed, 11 insertions(+), 2 deletions(-) >>>>>>>>>>>>> >>>>>>>>>>>>> diff --git a/drivers/gpu/drm/rockchip/Kconfig b/drivers/gpu/drm/rockchip/Kconfig >>>>>>>>>>>>> index fa5cfda4e90e3..7d22e2997a571 100644 >>>>>>>>>>>>> --- a/drivers/gpu/drm/rockchip/Kconfig >>>>>>>>>>>>> +++ b/drivers/gpu/drm/rockchip/Kconfig >>>>>>>>>>>>> @@ -23,8 +23,16 @@ config DRM_ROCKCHIP >>>>>>>>>>>>> if DRM_ROCKCHIP >>>>>>>>>>>>> +config ROCKCHIP_VOP >>>>>>>>>>>>> + bool "Rockchip VOP driver" >>>>>>>>>>>>> + default y >>>>>>>>>>>>> + help >>>>>>>>>>>>> + This selects support for the VOP driver. You should enable it >>>>>>>>>>>>> + on all older SoCs up to RK3399. >>>>>>>>>>> That reminds me that I wanted to rephrase this. Will change in next >>>>>>>>>>> round. >>>>>>>>>>> >>>>>>>>>>>>> + >>>>>>>>>>>>> config ROCKCHIP_ANALOGIX_DP >>>>>>>>>>>>> bool "Rockchip specific extensions for Analogix DP driver" >>>>>>>>>>>>> + depends on ROCKCHIP_VOP >>>>>>>>>>>> Aanlogix dp is also on vop2 base soc such as  rk356x and rk3588. >>>>>>>>> BTW I just looked at the downstream driver. Here we have the same >>>>>>>>> situation that the analogix dp driver calls rockchip_drm_wait_vact_end() >>>>>>>>> which is implemented in the VOP driver, so when the analogix dp driver >>>>>>>>> is actually used on a VOP2 SoC then it is either used in a way that >>>>>>>>> rockchip_drm_wait_vact_end() will never be called or it explodes in all >>>>>>>>> colours. >>>>>>>>> >>>>>>>>>>> I added the dependency because analogix_dp-rockchip.c calls >>>>>>>>>>> rockchip_drm_wait_vact_end() which is implemented in the VOP driver, >>>>>>>>>>> so this driver currenty can't work with the VOP2 driver and can't >>>>>>>>>>> be linked without the VOP driver being present. >>>>>>>>>>> I'll add a few words to the commit message. >>>>>>>>>> Maybe a better direction is move rockchip_drm_wait_vact_end from the VOP >>>>>>>>>> driver to rockchip_drm_drv.c >>>>>>>>> I am not sure if that's really worth it. Yes, the direction might be the >>>>>>>>> right one, but I would really prefer when somebody does the change who >>>>>>>>> can test and confirm that the analogix dp really works with VOP2 in the >>>>>>>>> end. >>>>>>>> If follow this point, the current DW_MIPI also has not been tested for >>>>>>>> confirm that it >>>>>>>> >>>>>>>> can really work with VOP2, so you should also make it depends on >>>>>>>> ROCKCHIP_VOP. >>> Here you are suggesting to add even more Kconfig dependencies. >>> >>>>>>> Well at least I have patches here which make DW_MIPI work with VOP2 ;) >>>>>> But you DW_MIPI patches for rk356x didn't come. So this is not keep >>>>>> consistency with this point. >>>>>> >>>>>>> What about the others, like LVDS and RGB? >>>>>> Yes, we also have other interface , RK356X has LVDS/RGB/BT1120/BT656, RK3588 >>>>>> has BT1120/BT656, no LVDS or RGB. >>>>>> >>>>>>>> I think the current solution is just a workaround to make your patch pass >>>>>>>> the kernel compile >>>>>>> Indeed. >>>>>>> >>>>>>> I agree that it would be good to add a note somewhere which outputs >>>>>>> work with the VOP2 driver (currently only HDMI), but I wonder if Kconfig >>>>>>> dependencies is the right place for it, because only people who deliberately >>>>>>> disable VOP support will see this information. >>>>>>> Maybe we should rather add it to the Kconfig help text? >>>>>> If a device is supported for this soc, we will add dt node at the dtsi file. >>>>>> >>>>>> A Kconfig dependencies don't seems a good idea. >>> Here you say Kconfig dependencies are no good idea. >> >> Yes. It's not a good idea. So I don't want to see you use a Kcofig >> dependence >> >> to disable a module to avoid compile which introduced by your patch. >> >>>>> Ok, this means we can keep my current approach with just letting >>>>> ROCKCHIP_ANALOGIX_DP depend on ROCKCHIP_VOP to avoid having a non >>>> Excuse me? How do you get this conclusion ? >>> Given that you say that you want to have both more and less Kconfig >>> dependencies I came to the conclusion that I only add one where it's >>> necessary to compile the driver. >>> >>>> I said before,  vop and vop2 based platforms both have ROCKCHIP_ANALOGIX_DP. >>> Maybe, but vop2 with ROCKCHIP_ANALOGIX_DP doesn't even work in the >>> Rockchip downstream kernel, so I wonder how relevant this usecase really >>> is. >> >> No, this is not the truth. Rockchip_ANALOGIX_DP of course work with the >> vendor kernel. We have many rk356x based products shipped with edp. >> Even the VGA output interface on RK3568_EVB1 is drived by >> ROCKCHIP_ANALOGIX_DP with a RTD2166 eDP to VGA convert >> chip. >> >> >> So how do you get conclusion that ROCKCHIP_ANALOGIX_DP can't work with >> the Rockchip downstream kernel? Is it because you can't make the DP work on >> your board? If it is, please contact the supplier who gave you the board. > In the downstream kernel I have available (which is a 5.10.66) > analogix_dp-rockchip.c calls rockchip_drm_wait_vact_end() which is > implemented in rockchip_drm_vop.c and assumes that the passed struct > drm_crtc * can be converted to a struct vop *. Basically it's the same > situation we have right now with the mainline kernel, just that the > linker issues won't show up because the VOP driver can't be disabled > in the downstream kernel. So you judge ROCKCHIP_ANALOGIX_DP can't work by this(as vop2 doesn't has rockchip_drm_wait_vact_end interface)? No, you may not know clearly about this function, this function is used for eDP PSR, which is a optional function, that means not every eDP panel has PSR function(this function usually parsed from edid). This really not means than ROCKCHIP_ANALOGIX_DP can't work. And your 5.10 downstream kernel seems out of dated. We have already move this function out from rockchip_drm_vop to rockchip_drm_drv. >> >> Do you have a RK3568_EVB1 that has a VGA output interface on board? >> >> If you have it, I can offer you image to verify the DP. >> >> >>>> If this patch will cause the compile error, please do a real fix, not a >>> I can't, because I don't have any hardware to test the Analogix DP on a >>> VOP hardware, and given that Analogix DP in conjunction with VOP2 hardware is >>> not even supported in the downstream Kernel I am not sure if it's really >>> worth doing that. >> >> Again, this is not the truth, see above. >> I am not ask you support the ROCKCHIP_ANALOGIX_DP on upstream, I just >> want you can give a better solution when you patch cause the compile error. >> Disable a module when it conflict with your patch is too rough. > It does not conflict with my patch. The dependency only means that you can't > enable the Analogix DP driver when the VOP driver is disabled. That > doesn't hurt, because currently you can't do anything with the Analogix > DP driver without the VOP driver. With the added dependency the Analogix DP > driver can still be used with the VOP driver, even when the VOP2 driver > is enabled. I really can't see a problem with that. > > Sascha >