From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933413AbdDGMBS (ORCPT ); Fri, 7 Apr 2017 08:01:18 -0400 Received: from mailout4.w1.samsung.com ([210.118.77.14]:62231 "EHLO mailout4.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932601AbdDGMBI (ORCPT ); Fri, 7 Apr 2017 08:01:08 -0400 X-AuditID: cbfec7f1-f796e6d00000116b-f2-58e77f81c3aa Subject: Re: [PATCH v5 04/12] drm: bridge: analogix: Destroy connector & encoder when unbinding To: Jeffy Chen , linux-kernel@vger.kernel.org Cc: Marek Vasut , Tomeu Vizoso , briannorris@chromium.org, dianders@chromium.org, dri-devel@lists.freedesktop.org, tfiga@chromium.org, zyw@rock-chips.com, Yakir Yang From: Andrzej Hajda Message-id: <59da511f-5243-fffb-f366-a51807b04a20@samsung.com> Date: Fri, 07 Apr 2017 14:01:03 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-version: 1.0 In-reply-to: <1491481885-13775-5-git-send-email-jeffy.chen@rock-chips.com> Content-type: text/plain; charset=utf-8 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrNKsWRmVeSWpSXmKPExsWy7djP87qN9c8jDA5sULHY9PE9q8XZZQfZ LK58fc9m8f3GWTaLC/tPM1lc3jWHzeJNWyOjxefWf2wWfWsvsVnMf7CD2YHLY3bDRRaPHXeX MHrMm3WCxWPnrLvsHve7jzN5/J21n8Xj8ya5APYoLpuU1JzMstQifbsErozVnZ9YC5r5Ktad /crWwHiJu4uRk0NCwERif/cJFghbTOLCvfVsXYxcHEICSxklej+tZoRwPjNK7G1ZygjT8Xd3 IwtEYhmjxPvFW5khnGeMEvO6nrB3MXJwCAskShx8KQfSICLgIXH+ymEmkBpmgbeMEnOvrmEG SbAJaEr83XyTDaSeV8BO4skHbZAwi4CqxM0H08FOEhWIkLg+ZwvYYl4BQYkfk++BxTkFvCTO PHjLCmIzA4158WUSC4QtL7F5zVuweyQELrFL/J+6iQlkvoSArMSmA8wQD7hIXJ2/gwnCFpZ4 dXwLO4QtI3F5cjcLRG83o8Sn/hPsEM4URol/H2ZAdVtLHD5+EWozn8SkbdOZIRbwSnS0CUGU eEhsOfMQqtxRYuqk79DQusso8X/aWpYJjPKzkDw0C8kTs5A8sYCReRWjSGppcW56arGRXnFi bnFpXrpecn7uJkZgEjr97/jHHYzvT1gdYhTgYFTi4fV4/CRCiDWxrLgy9xCjBAezkgjv0drn EUK8KYmVValF+fFFpTmpxYcYpTlYlMR5uU5dixASSE8sSc1OTS1ILYLJMnFwSjUwXpkty17L WLWmu4hB4P42k29++3yVKi6/yL7paRs57enhNcnTbf85ifvyv82NXNzfUrsq4MHxi71J3peX SBo6Jy/Yuo1VULa6Vj1gQsqLwp2sU3uO2np7zg/bZeaQZ7FWLV6pMvXAC+XVia9VN/yyz1t8 Pizk3XMjlajVcmLCrO/mzV+SwlioxFKckWioxVxUnAgAaX4NmD4DAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrOIsWRmVeSWpSXmKPExsVy+t/xy7pT659HGBz+LmSx6eN7Vouzyw6y WVz5+p7N4vuNs2wWF/afZrK4vGsOm8WbtkZGi8+t/9gs+tZeYrOY/2AHswOXx+yGiyweO+4u YfSYN+sEi8fOWXfZPe53H2fy+DtrP4vH501yAexRbjYZqYkpqUUKqXnJ+SmZeem2SqEhbroW Sgp5ibmptkoRur4hQUoKZYk5pUCekQEacHAOcA9W0rdLcMtY3fmJtaCZr2Ld2a9sDYyXuLsY OTkkBEwk/u5uZIGwxSQu3FvPBmILCSxhlLj3rq6LkQvIfsYosenELKYuRg4OYYFEiYMv5UBq RAQ8JM5fOcwEUXOXUeJJ+xl2EIdZ4C2jxKfTqxhBqtgENCX+br7JBtLMK2An8eSDNkiYRUBV 4uaD6WCLRQUiJB527mIHsXkFBCV+TL4HFucU8JI48+AtK0grs4C6xJQpuSBhZgF5ic1r3jJP YBSYhaRjFkLVLCRVCxiZVzGKpJYW56bnFhvpFSfmFpfmpesl5+duYgRG4rZjP7fsYOx6F3yI UYCDUYmHd8HTJxFCrIllxZW5hxglOJiVRHiP1j6PEOJNSaysSi3Kjy8qzUktPsRoCvTCRGYp 0eR8YJLIK4k3NDE0tzQ0MrawMDcyUhLnnfrhSriQQHpiSWp2ampBahFMHxMHp1QD47qLAesu vp6yt3v59S1FHwrCQoXLWrgrTpXvm6Bpq+MuIWc3vfGO1+bpByuSkzP/Za/Njw/LrTa6l5y4 2TCW/dEWhteHamJuv5OKF2nUefutRzZTMzgk76Op9QHBF0kXK3sEJTrubDaVuPKrIveJ/Oa6 VxyXFb++dGQ//MLy0F9Vx2dR574HK7EUZyQaajEXFScCADl9hdTaAgAA X-MTR: 20000000000000000@CPGS X-CMS-MailID: 20170407120105eucas1p2dc12eb632b027129845c3188318bb273 X-Msg-Generator: CA X-Sender-IP: 182.198.249.180 X-Local-Sender: =?UTF-8?B?QW5kcnplaiBIYWpkYRtTUlBPTC1LZXJuZWwgKFRQKRvsgrw=?= =?UTF-8?B?7ISx7KCE7J6QG1NlbmlvciBTb2Z0d2FyZSBFbmdpbmVlcg==?= X-Global-Sender: =?UTF-8?B?QW5kcnplaiBIYWpkYRtTUlBPTC1LZXJuZWwgKFRQKRtTYW1z?= =?UTF-8?B?dW5nIEVsZWN0cm9uaWNzG1NlbmlvciBTb2Z0d2FyZSBFbmdpbmVlcg==?= X-Sender-Code: =?UTF-8?B?QzEwG0VIURtDMTBDRDAyQ0QwMjczOTI=?= CMS-TYPE: 201P X-HopCount: 7 X-CMS-RootMailID: 20170406232740epcas2p41dd575b4e156a3d69bc6056e5a54c106 X-RootMTR: 20170406232740epcas2p41dd575b4e156a3d69bc6056e5a54c106 References: <1491481885-13775-1-git-send-email-jeffy.chen@rock-chips.com> <1491481885-13775-5-git-send-email-jeffy.chen@rock-chips.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 06.04.2017 14:31, Jeffy Chen wrote: > Normally we do this in drm_mode_config_cleanup. But: > 1/ analogix dp's connector is allocated in bind, and freed after unbind. > So we need to destroy it in unbind to avoid further access. > 2/ the drm bridge is attached in bind, and detached in encoder cleanup. > So we need to destroy encoder in unbind. > > Signed-off-by: Jeffy Chen In general drm core should free drm resources, doing it in component can hurt some day. Maybe it would be good to move some stuff from bind/unbind to probe/remove if necessary, to allow connector and encoder to live little bit longer, and be destroyed by drm core. This is just suggestion, I am not familiar enough with the driver to make stronger statements :) Reviewed-by: Andrzej Hajda -- Regards Andrzej > --- > > Changes in v5: None > Changes in v4: > Address Andrzej Hajda 's comments. > > Changes in v3: None > Changes in v2: None > > drivers/gpu/drm/bridge/analogix/analogix_dp_core.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > index d05ade4..4c758ed 100644 > --- a/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > +++ b/drivers/gpu/drm/bridge/analogix/analogix_dp_core.c > @@ -1439,6 +1439,8 @@ void analogix_dp_unbind(struct device *dev, struct device *master, > struct analogix_dp_device *dp = dev_get_drvdata(dev); > > analogix_dp_bridge_disable(dp->bridge); > + dp->connector.funcs->destroy(&dp->connector); > + dp->encoder->funcs->destroy(dp->encoder); > > if (dp->plat_data->panel) { > if (drm_panel_unprepare(dp->plat_data->panel)) From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrzej Hajda Subject: Re: [PATCH v5 04/12] drm: bridge: analogix: Destroy connector & encoder when unbinding Date: Fri, 07 Apr 2017 14:01:03 +0200 Message-ID: <59da511f-5243-fffb-f366-a51807b04a20@samsung.com> References: <1491481885-13775-1-git-send-email-jeffy.chen@rock-chips.com> <1491481885-13775-5-git-send-email-jeffy.chen@rock-chips.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mailout4.w1.samsung.com (mailout4.w1.samsung.com [210.118.77.14]) by gabe.freedesktop.org (Postfix) with ESMTPS id 62B8C89467 for ; Fri, 7 Apr 2017 12:01:10 +0000 (UTC) Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout4.w1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0OO100GP8G1U4V80@mailout4.w1.samsung.com> for dri-devel@lists.freedesktop.org; Fri, 07 Apr 2017 13:01:06 +0100 (BST) In-reply-to: <1491481885-13775-5-git-send-email-jeffy.chen@rock-chips.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Jeffy Chen , linux-kernel@vger.kernel.org Cc: Marek Vasut , Tomeu Vizoso , briannorris@chromium.org, dianders@chromium.org, dri-devel@lists.freedesktop.org, tfiga@chromium.org, zyw@rock-chips.com, Yakir Yang List-Id: dri-devel@lists.freedesktop.org T24gMDYuMDQuMjAxNyAxNDozMSwgSmVmZnkgQ2hlbiB3cm90ZToKPiBOb3JtYWxseSB3ZSBkbyB0 aGlzIGluIGRybV9tb2RlX2NvbmZpZ19jbGVhbnVwLiBCdXQ6Cj4gMS8gYW5hbG9naXggZHAncyBj b25uZWN0b3IgaXMgYWxsb2NhdGVkIGluIGJpbmQsIGFuZCBmcmVlZCBhZnRlciB1bmJpbmQuCj4g U28gd2UgbmVlZCB0byBkZXN0cm95IGl0IGluIHVuYmluZCB0byBhdm9pZCBmdXJ0aGVyIGFjY2Vz cy4KPiAyLyB0aGUgZHJtIGJyaWRnZSBpcyBhdHRhY2hlZCBpbiBiaW5kLCBhbmQgZGV0YWNoZWQg aW4gZW5jb2RlciBjbGVhbnVwLgo+IFNvIHdlIG5lZWQgdG8gZGVzdHJveSBlbmNvZGVyIGluIHVu YmluZC4KPgo+IFNpZ25lZC1vZmYtYnk6IEplZmZ5IENoZW4gPGplZmZ5LmNoZW5Acm9jay1jaGlw cy5jb20+CgpJbiBnZW5lcmFsIGRybSBjb3JlIHNob3VsZCBmcmVlIGRybSByZXNvdXJjZXMsIGRv aW5nIGl0IGluIGNvbXBvbmVudCBjYW4KaHVydCBzb21lIGRheS4gTWF5YmUgaXQgd291bGQgYmUg Z29vZCB0byBtb3ZlIHNvbWUgc3R1ZmYgZnJvbQpiaW5kL3VuYmluZCB0byBwcm9iZS9yZW1vdmUg aWYgbmVjZXNzYXJ5LCB0byBhbGxvdyBjb25uZWN0b3IgYW5kIGVuY29kZXIKdG8gbGl2ZSBsaXR0 bGUgYml0IGxvbmdlciwgYW5kIGJlIGRlc3Ryb3llZCBieSBkcm0gY29yZS4gVGhpcyBpcyBqdXN0 CnN1Z2dlc3Rpb24sIEkgYW0gbm90IGZhbWlsaWFyIGVub3VnaCB3aXRoIHRoZSBkcml2ZXIgdG8g bWFrZSBzdHJvbmdlcgpzdGF0ZW1lbnRzIDopCgpSZXZpZXdlZC1ieTogQW5kcnplaiBIYWpkYSA8 YS5oYWpkYUBzYW1zdW5nLmNvbT4KCiAtLQpSZWdhcmRzCkFuZHJ6ZWoKCgo+IC0tLQo+Cj4gQ2hh bmdlcyBpbiB2NTogTm9uZQo+IENoYW5nZXMgaW4gdjQ6Cj4gQWRkcmVzcyBBbmRyemVqIEhhamRh IDxhLmhhamRhQHNhbXN1bmcuY29tPidzIGNvbW1lbnRzLgo+Cj4gQ2hhbmdlcyBpbiB2MzogTm9u ZQo+IENoYW5nZXMgaW4gdjI6IE5vbmUKPgo+ICBkcml2ZXJzL2dwdS9kcm0vYnJpZGdlL2FuYWxv Z2l4L2FuYWxvZ2l4X2RwX2NvcmUuYyB8IDIgKysKPiAgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKQo+Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgv YW5hbG9naXhfZHBfY29yZS5jIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hbmFsb2dpeC9hbmFs b2dpeF9kcF9jb3JlLmMKPiBpbmRleCBkMDVhZGU0Li40Yzc1OGVkIDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9icmlkZ2UvYW5hbG9naXgvYW5hbG9naXhfZHBfY29yZS5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9hbmFsb2dpeC9hbmFsb2dpeF9kcF9jb3JlLmMKPiBAQCAt MTQzOSw2ICsxNDM5LDggQEAgdm9pZCBhbmFsb2dpeF9kcF91bmJpbmQoc3RydWN0IGRldmljZSAq ZGV2LCBzdHJ1Y3QgZGV2aWNlICptYXN0ZXIsCj4gIAlzdHJ1Y3QgYW5hbG9naXhfZHBfZGV2aWNl ICpkcCA9IGRldl9nZXRfZHJ2ZGF0YShkZXYpOwo+ICAKPiAgCWFuYWxvZ2l4X2RwX2JyaWRnZV9k aXNhYmxlKGRwLT5icmlkZ2UpOwo+ICsJZHAtPmNvbm5lY3Rvci5mdW5jcy0+ZGVzdHJveSgmZHAt PmNvbm5lY3Rvcik7Cj4gKwlkcC0+ZW5jb2Rlci0+ZnVuY3MtPmRlc3Ryb3koZHAtPmVuY29kZXIp Owo+ICAKPiAgCWlmIChkcC0+cGxhdF9kYXRhLT5wYW5lbCkgewo+ICAJCWlmIChkcm1fcGFuZWxf dW5wcmVwYXJlKGRwLT5wbGF0X2RhdGEtPnBhbmVsKSkKCgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZl bEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFp bG1hbi9saXN0aW5mby9kcmktZGV2ZWwK