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 C8001C07E97 for ; Fri, 1 Dec 2023 14:09:10 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id A0F98897D4; Fri, 1 Dec 2023 14:09:09 +0000 (UTC) X-Greylist: delayed 40882 seconds by postgrey-1.36 at gabe; Fri, 01 Dec 2023 13:57:41 UTC Received: from out-179.mta1.migadu.com (out-179.mta1.migadu.com [95.215.58.179]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1B07810E8AD for ; Fri, 1 Dec 2023 13:57:40 +0000 (UTC) Message-ID: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1701439059; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=TpJd6OhPomyp5ChF2rTctC6wWRE0tLx+lrrgumMFAT8=; b=APm60MBJHMnUhRiRKzDRTK23FqD7Zh9GRI880BxjRs+qjL+MmWWRUQCsaA6MFa7BoqauHz QuMJU/oNucHzFVhcHfWh6vcrc/B7VtcarG+072r+Q3jvs7xfqtFECZsxGtghHtUIKgqdq5 Cg1kztA9PqCJNsJvgm1L6ByCEnqPUrM= Date: Fri, 1 Dec 2023 21:57:26 +0800 MIME-Version: 1.0 Subject: Re: [1/8] drm/plane-helper: Move drm_plane_helper_atomic_check() into udl To: Thomas Zimmermann , mripard@kernel.org, maarten.lankhorst@linux.intel.com, daniel@ffwll.ch, airlied@gmail.com References: <20231128104723.20622-2-tzimmermann@suse.de> <9a741d8d-a699-4fe8-af59-f90c91014d01@linux.dev> <038bc33b-1bc9-4dbc-bea3-d17a3d37abf0@suse.de> Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Sui Jingfeng In-Reply-To: <038bc33b-1bc9-4dbc-bea3-d17a3d37abf0@suse.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT X-Mailman-Approved-At: Fri, 01 Dec 2023 14:09:07 +0000 X-BeenThere: amd-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Discussion list for AMD gfx List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: amd-gfx@lists.freedesktop.org, javierm@redhat.com, dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, laurent.pinchart@ideasonboard.com, linux-arm-kernel@lists.infradead.org Errors-To: amd-gfx-bounces@lists.freedesktop.org Sender: "amd-gfx" Hi, On 2023/12/1 16:22, Thomas Zimmermann wrote: > Hi > > Am 01.12.23 um 03:36 schrieb Sui Jingfeng: >> Hi, >> >> >> On 2023/11/28 18:45, Thomas Zimmermann wrote: >>> The udl driver is the only caller of drm_plane_helper_atomic_check(). >>> Move the function into the driver. No functional changes. >>> >>> Signed-off-by: Thomas Zimmermann >>> --- >>>   drivers/gpu/drm/drm_plane_helper.c | 32 >>> ------------------------------ >>>   drivers/gpu/drm/udl/udl_modeset.c  | 19 ++++++++++++++++-- >>>   include/drm/drm_plane_helper.h     |  2 -- >>>   3 files changed, 17 insertions(+), 36 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/drm_plane_helper.c >>> b/drivers/gpu/drm/drm_plane_helper.c >>> index 5e95089676ff8..7982be4b0306d 100644 >>> --- a/drivers/gpu/drm/drm_plane_helper.c >>> +++ b/drivers/gpu/drm/drm_plane_helper.c >>> @@ -279,35 +279,3 @@ void drm_plane_helper_destroy(struct drm_plane >>> *plane) >>>       kfree(plane); >>>   } >>>   EXPORT_SYMBOL(drm_plane_helper_destroy); >>> - >>> -/** >>> - * drm_plane_helper_atomic_check() - Helper to check plane >>> atomic-state >>> - * @plane: plane to check >>> - * @state: atomic state object >>> - * >>> - * Provides a default plane-state check handler for planes whose >>> atomic-state >>> - * scale and positioning are not expected to change since the plane >>> is always >>> - * a fullscreen scanout buffer. >>> - * >>> - * This is often the case for the primary plane of simple >>> framebuffers. See >>> - * also drm_crtc_helper_atomic_check() for the respective >>> CRTC-state check >>> - * helper function. >>> - * >>> - * RETURNS: >>> - * Zero on success, or an errno code otherwise. >>> - */ >>> -int drm_plane_helper_atomic_check(struct drm_plane *plane, struct >>> drm_atomic_state *state) >>> -{ >>> -    struct drm_plane_state *new_plane_state = >>> drm_atomic_get_new_plane_state(state, plane); >>> -    struct drm_crtc *new_crtc = new_plane_state->crtc; >>> -    struct drm_crtc_state *new_crtc_state = NULL; >>> - >>> -    if (new_crtc) >>> -        new_crtc_state = drm_atomic_get_new_crtc_state(state, >>> new_crtc); >>> - >>> -    return drm_atomic_helper_check_plane_state(new_plane_state, >>> new_crtc_state, >>> -                           DRM_PLANE_NO_SCALING, >>> -                           DRM_PLANE_NO_SCALING, >>> -                           false, false); >>> -} >>> -EXPORT_SYMBOL(drm_plane_helper_atomic_check); >> >> >> Since this function is removed, does the comments of the >> drm_crtc_helper_atomic_check() >> function (in the drm_crtc_helper.c) need to update as well? I'm ask >> because I see the >> comments of the drm_crtc_helper_atomic_check() still referencing this >> function. > > Good point. I'll update that comment. Thanks for reviewing. > OK,  with this trivial problem solved: Acked-by: Sui Jingfeng > Best regards > Thomas > >> >> >>> diff --git a/drivers/gpu/drm/udl/udl_modeset.c >>> b/drivers/gpu/drm/udl/udl_modeset.c >>> index 40876bcdd79a4..7702359c90c22 100644 >>> --- a/drivers/gpu/drm/udl/udl_modeset.c >>> +++ b/drivers/gpu/drm/udl/udl_modeset.c >>> @@ -21,7 +21,6 @@ >>>   #include >>>   #include >>>   #include >>> -#include >>>   #include >>>   #include >>> @@ -261,6 +260,22 @@ static const uint64_t >>> udl_primary_plane_fmtmods[] = { >>>       DRM_FORMAT_MOD_INVALID >>>   }; >>> +static int udl_primary_plane_helper_atomic_check(struct drm_plane >>> *plane, >>> +                         struct drm_atomic_state *state) >>> +{ >>> +    struct drm_plane_state *new_plane_state = >>> drm_atomic_get_new_plane_state(state, plane); >>> +    struct drm_crtc *new_crtc = new_plane_state->crtc; >>> +    struct drm_crtc_state *new_crtc_state = NULL; >>> + >>> +    if (new_crtc) >>> +        new_crtc_state = drm_atomic_get_new_crtc_state(state, >>> new_crtc); >>> + >>> +    return drm_atomic_helper_check_plane_state(new_plane_state, >>> new_crtc_state, >>> +                           DRM_PLANE_NO_SCALING, >>> +                           DRM_PLANE_NO_SCALING, >>> +                           false, false); >>> +} >>> + >>>   static void udl_primary_plane_helper_atomic_update(struct >>> drm_plane *plane, >>>                              struct drm_atomic_state *state) >>>   { >>> @@ -296,7 +311,7 @@ static void >>> udl_primary_plane_helper_atomic_update(struct drm_plane *plane, >>>   static const struct drm_plane_helper_funcs >>> udl_primary_plane_helper_funcs = { >>>       DRM_GEM_SHADOW_PLANE_HELPER_FUNCS, >>> -    .atomic_check = drm_plane_helper_atomic_check, >>> +    .atomic_check = udl_primary_plane_helper_atomic_check, >>>       .atomic_update = udl_primary_plane_helper_atomic_update, >>>   }; >>> diff --git a/include/drm/drm_plane_helper.h >>> b/include/drm/drm_plane_helper.h >>> index 3a574e8cd22f4..75f9c4830564a 100644 >>> --- a/include/drm/drm_plane_helper.h >>> +++ b/include/drm/drm_plane_helper.h >>> @@ -26,7 +26,6 @@ >>>   #include >>> -struct drm_atomic_state; >>>   struct drm_crtc; >>>   struct drm_framebuffer; >>>   struct drm_modeset_acquire_ctx; >>> @@ -42,7 +41,6 @@ int drm_plane_helper_update_primary(struct >>> drm_plane *plane, struct drm_crtc *cr >>>   int drm_plane_helper_disable_primary(struct drm_plane *plane, >>>                        struct drm_modeset_acquire_ctx *ctx); >>>   void drm_plane_helper_destroy(struct drm_plane *plane); >>> -int drm_plane_helper_atomic_check(struct drm_plane *plane, struct >>> drm_atomic_state *state); >>>   /** >>>    * DRM_PLANE_NON_ATOMIC_FUNCS - Default plane functions for >>> non-atomic drivers > From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="APm60MBJ" Received: from out-175.mta1.migadu.com (out-175.mta1.migadu.com [95.215.58.175]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DF4DCA6 for ; Fri, 1 Dec 2023 05:57:40 -0800 (PST) Message-ID: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1701439059; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=TpJd6OhPomyp5ChF2rTctC6wWRE0tLx+lrrgumMFAT8=; b=APm60MBJHMnUhRiRKzDRTK23FqD7Zh9GRI880BxjRs+qjL+MmWWRUQCsaA6MFa7BoqauHz QuMJU/oNucHzFVhcHfWh6vcrc/B7VtcarG+072r+Q3jvs7xfqtFECZsxGtghHtUIKgqdq5 Cg1kztA9PqCJNsJvgm1L6ByCEnqPUrM= Date: Fri, 1 Dec 2023 21:57:26 +0800 Precedence: bulk X-Mailing-List: linux-renesas-soc@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Subject: Re: [1/8] drm/plane-helper: Move drm_plane_helper_atomic_check() into udl To: Thomas Zimmermann , mripard@kernel.org, maarten.lankhorst@linux.intel.com, daniel@ffwll.ch, airlied@gmail.com Cc: javierm@redhat.com, amd-gfx@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, laurent.pinchart@ideasonboard.com References: <20231128104723.20622-2-tzimmermann@suse.de> <9a741d8d-a699-4fe8-af59-f90c91014d01@linux.dev> <038bc33b-1bc9-4dbc-bea3-d17a3d37abf0@suse.de> Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Sui Jingfeng In-Reply-To: <038bc33b-1bc9-4dbc-bea3-d17a3d37abf0@suse.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT Hi, On 2023/12/1 16:22, Thomas Zimmermann wrote: > Hi > > Am 01.12.23 um 03:36 schrieb Sui Jingfeng: >> Hi, >> >> >> On 2023/11/28 18:45, Thomas Zimmermann wrote: >>> The udl driver is the only caller of drm_plane_helper_atomic_check(). >>> Move the function into the driver. No functional changes. >>> >>> Signed-off-by: Thomas Zimmermann >>> --- >>>   drivers/gpu/drm/drm_plane_helper.c | 32 >>> ------------------------------ >>>   drivers/gpu/drm/udl/udl_modeset.c  | 19 ++++++++++++++++-- >>>   include/drm/drm_plane_helper.h     |  2 -- >>>   3 files changed, 17 insertions(+), 36 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/drm_plane_helper.c >>> b/drivers/gpu/drm/drm_plane_helper.c >>> index 5e95089676ff8..7982be4b0306d 100644 >>> --- a/drivers/gpu/drm/drm_plane_helper.c >>> +++ b/drivers/gpu/drm/drm_plane_helper.c >>> @@ -279,35 +279,3 @@ void drm_plane_helper_destroy(struct drm_plane >>> *plane) >>>       kfree(plane); >>>   } >>>   EXPORT_SYMBOL(drm_plane_helper_destroy); >>> - >>> -/** >>> - * drm_plane_helper_atomic_check() - Helper to check plane >>> atomic-state >>> - * @plane: plane to check >>> - * @state: atomic state object >>> - * >>> - * Provides a default plane-state check handler for planes whose >>> atomic-state >>> - * scale and positioning are not expected to change since the plane >>> is always >>> - * a fullscreen scanout buffer. >>> - * >>> - * This is often the case for the primary plane of simple >>> framebuffers. See >>> - * also drm_crtc_helper_atomic_check() for the respective >>> CRTC-state check >>> - * helper function. >>> - * >>> - * RETURNS: >>> - * Zero on success, or an errno code otherwise. >>> - */ >>> -int drm_plane_helper_atomic_check(struct drm_plane *plane, struct >>> drm_atomic_state *state) >>> -{ >>> -    struct drm_plane_state *new_plane_state = >>> drm_atomic_get_new_plane_state(state, plane); >>> -    struct drm_crtc *new_crtc = new_plane_state->crtc; >>> -    struct drm_crtc_state *new_crtc_state = NULL; >>> - >>> -    if (new_crtc) >>> -        new_crtc_state = drm_atomic_get_new_crtc_state(state, >>> new_crtc); >>> - >>> -    return drm_atomic_helper_check_plane_state(new_plane_state, >>> new_crtc_state, >>> -                           DRM_PLANE_NO_SCALING, >>> -                           DRM_PLANE_NO_SCALING, >>> -                           false, false); >>> -} >>> -EXPORT_SYMBOL(drm_plane_helper_atomic_check); >> >> >> Since this function is removed, does the comments of the >> drm_crtc_helper_atomic_check() >> function (in the drm_crtc_helper.c) need to update as well? I'm ask >> because I see the >> comments of the drm_crtc_helper_atomic_check() still referencing this >> function. > > Good point. I'll update that comment. Thanks for reviewing. > OK,  with this trivial problem solved: Acked-by: Sui Jingfeng > Best regards > Thomas > >> >> >>> diff --git a/drivers/gpu/drm/udl/udl_modeset.c >>> b/drivers/gpu/drm/udl/udl_modeset.c >>> index 40876bcdd79a4..7702359c90c22 100644 >>> --- a/drivers/gpu/drm/udl/udl_modeset.c >>> +++ b/drivers/gpu/drm/udl/udl_modeset.c >>> @@ -21,7 +21,6 @@ >>>   #include >>>   #include >>>   #include >>> -#include >>>   #include >>>   #include >>> @@ -261,6 +260,22 @@ static const uint64_t >>> udl_primary_plane_fmtmods[] = { >>>       DRM_FORMAT_MOD_INVALID >>>   }; >>> +static int udl_primary_plane_helper_atomic_check(struct drm_plane >>> *plane, >>> +                         struct drm_atomic_state *state) >>> +{ >>> +    struct drm_plane_state *new_plane_state = >>> drm_atomic_get_new_plane_state(state, plane); >>> +    struct drm_crtc *new_crtc = new_plane_state->crtc; >>> +    struct drm_crtc_state *new_crtc_state = NULL; >>> + >>> +    if (new_crtc) >>> +        new_crtc_state = drm_atomic_get_new_crtc_state(state, >>> new_crtc); >>> + >>> +    return drm_atomic_helper_check_plane_state(new_plane_state, >>> new_crtc_state, >>> +                           DRM_PLANE_NO_SCALING, >>> +                           DRM_PLANE_NO_SCALING, >>> +                           false, false); >>> +} >>> + >>>   static void udl_primary_plane_helper_atomic_update(struct >>> drm_plane *plane, >>>                              struct drm_atomic_state *state) >>>   { >>> @@ -296,7 +311,7 @@ static void >>> udl_primary_plane_helper_atomic_update(struct drm_plane *plane, >>>   static const struct drm_plane_helper_funcs >>> udl_primary_plane_helper_funcs = { >>>       DRM_GEM_SHADOW_PLANE_HELPER_FUNCS, >>> -    .atomic_check = drm_plane_helper_atomic_check, >>> +    .atomic_check = udl_primary_plane_helper_atomic_check, >>>       .atomic_update = udl_primary_plane_helper_atomic_update, >>>   }; >>> diff --git a/include/drm/drm_plane_helper.h >>> b/include/drm/drm_plane_helper.h >>> index 3a574e8cd22f4..75f9c4830564a 100644 >>> --- a/include/drm/drm_plane_helper.h >>> +++ b/include/drm/drm_plane_helper.h >>> @@ -26,7 +26,6 @@ >>>   #include >>> -struct drm_atomic_state; >>>   struct drm_crtc; >>>   struct drm_framebuffer; >>>   struct drm_modeset_acquire_ctx; >>> @@ -42,7 +41,6 @@ int drm_plane_helper_update_primary(struct >>> drm_plane *plane, struct drm_crtc *cr >>>   int drm_plane_helper_disable_primary(struct drm_plane *plane, >>>                        struct drm_modeset_acquire_ctx *ctx); >>>   void drm_plane_helper_destroy(struct drm_plane *plane); >>> -int drm_plane_helper_atomic_check(struct drm_plane *plane, struct >>> drm_atomic_state *state); >>>   /** >>>    * DRM_PLANE_NON_ATOMIC_FUNCS - Default plane functions for >>> non-atomic drivers > 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 3CB02C4167B for ; Fri, 1 Dec 2023 13:58:24 +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=SHu9xWjWdQWZ7S1VR5uYNeKCYwO50tuGob+jT3dvM9o=; b=XWN94kNlG+VMK2 Gn3uR5smRTNhiPRl0axEBLEJf35F268delRjXDrpDZ3maf+dZB+IWCYWk0J/U4XX4KNVv09vgqN7l W1/4i0TwwDzb6GbnwOPxpAl4fpjlmZtoZTYNCyrLdA3+AVF7C7yacEXnWN9wlLn3Mi0BXml4fg23G l9zNH7gVgXNiwZmiZ7TEllEFVQgfGOZe0veUt7YXiBIE0j5M0V+6M6MVAJP8C7adBDdrv08g9JhG8 McReBypbYEq+PG2weskX5RiRCMiYUxTU6vmGShC7B2r+B7qrKi/iLDMvZiFuhlNIZVlVnkjX9wUZy erXDw589a1YT+/kPtSWA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1r941d-00DsJf-2B; Fri, 01 Dec 2023 13:57:49 +0000 Received: from out-176.mta1.migadu.com ([95.215.58.176]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1r941Z-00DsHp-3A for linux-arm-kernel@lists.infradead.org; Fri, 01 Dec 2023 13:57:48 +0000 Message-ID: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1701439059; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=TpJd6OhPomyp5ChF2rTctC6wWRE0tLx+lrrgumMFAT8=; b=APm60MBJHMnUhRiRKzDRTK23FqD7Zh9GRI880BxjRs+qjL+MmWWRUQCsaA6MFa7BoqauHz QuMJU/oNucHzFVhcHfWh6vcrc/B7VtcarG+072r+Q3jvs7xfqtFECZsxGtghHtUIKgqdq5 Cg1kztA9PqCJNsJvgm1L6ByCEnqPUrM= Date: Fri, 1 Dec 2023 21:57:26 +0800 MIME-Version: 1.0 Subject: Re: [1/8] drm/plane-helper: Move drm_plane_helper_atomic_check() into udl To: Thomas Zimmermann , mripard@kernel.org, maarten.lankhorst@linux.intel.com, daniel@ffwll.ch, airlied@gmail.com Cc: javierm@redhat.com, amd-gfx@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-arm-kernel@lists.infradead.org, laurent.pinchart@ideasonboard.com References: <20231128104723.20622-2-tzimmermann@suse.de> <9a741d8d-a699-4fe8-af59-f90c91014d01@linux.dev> <038bc33b-1bc9-4dbc-bea3-d17a3d37abf0@suse.de> Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Sui Jingfeng In-Reply-To: <038bc33b-1bc9-4dbc-bea3-d17a3d37abf0@suse.de> X-Migadu-Flow: FLOW_OUT X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231201_055746_431479_F5DB2397 X-CRM114-Status: GOOD ( 16.41 ) 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 SGksCgoKT24gMjAyMy8xMi8xIDE2OjIyLCBUaG9tYXMgWmltbWVybWFubiB3cm90ZToKPiBIaQo+ Cj4gQW0gMDEuMTIuMjMgdW0gMDM6MzYgc2NocmllYiBTdWkgSmluZ2Zlbmc6Cj4+IEhpLAo+Pgo+ Pgo+PiBPbiAyMDIzLzExLzI4IDE4OjQ1LCBUaG9tYXMgWmltbWVybWFubiB3cm90ZToKPj4+IFRo ZSB1ZGwgZHJpdmVyIGlzIHRoZSBvbmx5IGNhbGxlciBvZiBkcm1fcGxhbmVfaGVscGVyX2F0b21p Y19jaGVjaygpLgo+Pj4gTW92ZSB0aGUgZnVuY3Rpb24gaW50byB0aGUgZHJpdmVyLiBObyBmdW5j dGlvbmFsIGNoYW5nZXMuCj4+Pgo+Pj4gU2lnbmVkLW9mZi1ieTogVGhvbWFzIFppbW1lcm1hbm4g PHR6aW1tZXJtYW5uQHN1c2UuZGU+Cj4+PiAtLS0KPj4+IMKgIGRyaXZlcnMvZ3B1L2RybS9kcm1f cGxhbmVfaGVscGVyLmMgfCAzMiAKPj4+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ Pj4gwqAgZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfbW9kZXNldC5jwqAgfCAxOSArKysrKysrKysr KysrKysrLS0KPj4+IMKgIGluY2x1ZGUvZHJtL2RybV9wbGFuZV9oZWxwZXIuaMKgwqDCoMKgIHzC oCAyIC0tCj4+PiDCoCAzIGZpbGVzIGNoYW5nZWQsIDE3IGluc2VydGlvbnMoKyksIDM2IGRlbGV0 aW9ucygtKQo+Pj4KPj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lX2hl bHBlci5jIAo+Pj4gYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lX2hlbHBlci5jCj4+PiBpbmRl eCA1ZTk1MDg5Njc2ZmY4Li43OTgyYmU0YjAzMDZkIDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYwo+Pj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9w bGFuZV9oZWxwZXIuYwo+Pj4gQEAgLTI3OSwzNSArMjc5LDMgQEAgdm9pZCBkcm1fcGxhbmVfaGVs cGVyX2Rlc3Ryb3koc3RydWN0IGRybV9wbGFuZSAKPj4+ICpwbGFuZSkKPj4+IMKgwqDCoMKgwqAg a2ZyZWUocGxhbmUpOwo+Pj4gwqAgfQo+Pj4gwqAgRVhQT1JUX1NZTUJPTChkcm1fcGxhbmVfaGVs cGVyX2Rlc3Ryb3kpOwo+Pj4gLQo+Pj4gLS8qKgo+Pj4gLSAqIGRybV9wbGFuZV9oZWxwZXJfYXRv bWljX2NoZWNrKCkgLSBIZWxwZXIgdG8gY2hlY2sgcGxhbmUgCj4+PiBhdG9taWMtc3RhdGUKPj4+ IC0gKiBAcGxhbmU6IHBsYW5lIHRvIGNoZWNrCj4+PiAtICogQHN0YXRlOiBhdG9taWMgc3RhdGUg b2JqZWN0Cj4+PiAtICoKPj4+IC0gKiBQcm92aWRlcyBhIGRlZmF1bHQgcGxhbmUtc3RhdGUgY2hl Y2sgaGFuZGxlciBmb3IgcGxhbmVzIHdob3NlIAo+Pj4gYXRvbWljLXN0YXRlCj4+PiAtICogc2Nh bGUgYW5kIHBvc2l0aW9uaW5nIGFyZSBub3QgZXhwZWN0ZWQgdG8gY2hhbmdlIHNpbmNlIHRoZSBw bGFuZSAKPj4+IGlzIGFsd2F5cwo+Pj4gLSAqIGEgZnVsbHNjcmVlbiBzY2Fub3V0IGJ1ZmZlci4K Pj4+IC0gKgo+Pj4gLSAqIFRoaXMgaXMgb2Z0ZW4gdGhlIGNhc2UgZm9yIHRoZSBwcmltYXJ5IHBs YW5lIG9mIHNpbXBsZSAKPj4+IGZyYW1lYnVmZmVycy4gU2VlCj4+PiAtICogYWxzbyBkcm1fY3J0 Y19oZWxwZXJfYXRvbWljX2NoZWNrKCkgZm9yIHRoZSByZXNwZWN0aXZlIAo+Pj4gQ1JUQy1zdGF0 ZSBjaGVjawo+Pj4gLSAqIGhlbHBlciBmdW5jdGlvbi4KPj4+IC0gKgo+Pj4gLSAqIFJFVFVSTlM6 Cj4+PiAtICogWmVybyBvbiBzdWNjZXNzLCBvciBhbiBlcnJubyBjb2RlIG90aGVyd2lzZS4KPj4+ IC0gKi8KPj4+IC1pbnQgZHJtX3BsYW5lX2hlbHBlcl9hdG9taWNfY2hlY2soc3RydWN0IGRybV9w bGFuZSAqcGxhbmUsIHN0cnVjdCAKPj4+IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+Pj4gLXsK Pj4+IC3CoMKgwqAgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqbmV3X3BsYW5lX3N0YXRlID0gCj4+ PiBkcm1fYXRvbWljX2dldF9uZXdfcGxhbmVfc3RhdGUoc3RhdGUsIHBsYW5lKTsKPj4+IC3CoMKg wqAgc3RydWN0IGRybV9jcnRjICpuZXdfY3J0YyA9IG5ld19wbGFuZV9zdGF0ZS0+Y3J0YzsKPj4+ IC3CoMKgwqAgc3RydWN0IGRybV9jcnRjX3N0YXRlICpuZXdfY3J0Y19zdGF0ZSA9IE5VTEw7Cj4+ PiAtCj4+PiAtwqDCoMKgIGlmIChuZXdfY3J0YykKPj4+IC3CoMKgwqDCoMKgwqDCoCBuZXdfY3J0 Y19zdGF0ZSA9IGRybV9hdG9taWNfZ2V0X25ld19jcnRjX3N0YXRlKHN0YXRlLCAKPj4+IG5ld19j cnRjKTsKPj4+IC0KPj4+IC3CoMKgwqAgcmV0dXJuIGRybV9hdG9taWNfaGVscGVyX2NoZWNrX3Bs YW5lX3N0YXRlKG5ld19wbGFuZV9zdGF0ZSwgCj4+PiBuZXdfY3J0Y19zdGF0ZSwKPj4+IC3CoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIERSTV9QTEFO RV9OT19TQ0FMSU5HLAo+Pj4gLcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgRFJNX1BMQU5FX05PX1NDQUxJTkcsCj4+PiAtwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBmYWxzZSwgZmFsc2UpOwo+Pj4g LX0KPj4+IC1FWFBPUlRfU1lNQk9MKGRybV9wbGFuZV9oZWxwZXJfYXRvbWljX2NoZWNrKTsKPj4K Pj4KPj4gU2luY2UgdGhpcyBmdW5jdGlvbiBpcyByZW1vdmVkLCBkb2VzIHRoZSBjb21tZW50cyBv ZiB0aGUgCj4+IGRybV9jcnRjX2hlbHBlcl9hdG9taWNfY2hlY2soKQo+PiBmdW5jdGlvbiAoaW4g dGhlIGRybV9jcnRjX2hlbHBlci5jKSBuZWVkIHRvIHVwZGF0ZSBhcyB3ZWxsPyBJJ20gYXNrIAo+ PiBiZWNhdXNlIEkgc2VlIHRoZQo+PiBjb21tZW50cyBvZiB0aGUgZHJtX2NydGNfaGVscGVyX2F0 b21pY19jaGVjaygpIHN0aWxsIHJlZmVyZW5jaW5nIHRoaXMgCj4+IGZ1bmN0aW9uLgo+Cj4gR29v ZCBwb2ludC4gSSdsbCB1cGRhdGUgdGhhdCBjb21tZW50LiBUaGFua3MgZm9yIHJldmlld2luZy4K PgpPSyzCoCB3aXRoIHRoaXMgdHJpdmlhbCBwcm9ibGVtIHNvbHZlZDoKCgpBY2tlZC1ieTogU3Vp IEppbmdmZW5nIDxzdWlqaW5nZmVuZ0Bsb29uZ3Nvbi5jbj4KCgo+IEJlc3QgcmVnYXJkcwo+IFRo b21hcwo+Cj4+Cj4+Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3VkbC91ZGxfbW9k ZXNldC5jIAo+Pj4gYi9kcml2ZXJzL2dwdS9kcm0vdWRsL3VkbF9tb2Rlc2V0LmMKPj4+IGluZGV4 IDQwODc2YmNkZDc5YTQuLjc3MDIzNTljOTBjMjIgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL2dw dS9kcm0vdWRsL3VkbF9tb2Rlc2V0LmMKPj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS91ZGwvdWRs X21vZGVzZXQuYwo+Pj4gQEAgLTIxLDcgKzIxLDYgQEAKPj4+IMKgICNpbmNsdWRlIDxkcm0vZHJt X2dlbV9mcmFtZWJ1ZmZlcl9oZWxwZXIuaD4KPj4+IMKgICNpbmNsdWRlIDxkcm0vZHJtX2dlbV9z aG1lbV9oZWxwZXIuaD4KPj4+IMKgICNpbmNsdWRlIDxkcm0vZHJtX21vZGVzZXRfaGVscGVyX3Z0 YWJsZXMuaD4KPj4+IC0jaW5jbHVkZSA8ZHJtL2RybV9wbGFuZV9oZWxwZXIuaD4KPj4+IMKgICNp bmNsdWRlIDxkcm0vZHJtX3Byb2JlX2hlbHBlci5oPgo+Pj4gwqAgI2luY2x1ZGUgPGRybS9kcm1f dmJsYW5rLmg+Cj4+PiBAQCAtMjYxLDYgKzI2MCwyMiBAQCBzdGF0aWMgY29uc3QgdWludDY0X3Qg Cj4+PiB1ZGxfcHJpbWFyeV9wbGFuZV9mbXRtb2RzW10gPSB7Cj4+PiDCoMKgwqDCoMKgIERSTV9G T1JNQVRfTU9EX0lOVkFMSUQKPj4+IMKgIH07Cj4+PiArc3RhdGljIGludCB1ZGxfcHJpbWFyeV9w bGFuZV9oZWxwZXJfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgCj4+PiAqcGxhbmUsCj4+ PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN0cnVj dCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPj4+ICt7Cj4+PiArwqDCoMKgIHN0cnVjdCBkcm1f cGxhbmVfc3RhdGUgKm5ld19wbGFuZV9zdGF0ZSA9IAo+Pj4gZHJtX2F0b21pY19nZXRfbmV3X3Bs YW5lX3N0YXRlKHN0YXRlLCBwbGFuZSk7Cj4+PiArwqDCoMKgIHN0cnVjdCBkcm1fY3J0YyAqbmV3 X2NydGMgPSBuZXdfcGxhbmVfc3RhdGUtPmNydGM7Cj4+PiArwqDCoMKgIHN0cnVjdCBkcm1fY3J0 Y19zdGF0ZSAqbmV3X2NydGNfc3RhdGUgPSBOVUxMOwo+Pj4gKwo+Pj4gK8KgwqDCoCBpZiAobmV3 X2NydGMpCj4+PiArwqDCoMKgwqDCoMKgwqAgbmV3X2NydGNfc3RhdGUgPSBkcm1fYXRvbWljX2dl dF9uZXdfY3J0Y19zdGF0ZShzdGF0ZSwgCj4+PiBuZXdfY3J0Yyk7Cj4+PiArCj4+PiArwqDCoMKg IHJldHVybiBkcm1fYXRvbWljX2hlbHBlcl9jaGVja19wbGFuZV9zdGF0ZShuZXdfcGxhbmVfc3Rh dGUsIAo+Pj4gbmV3X2NydGNfc3RhdGUsCj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBEUk1fUExBTkVfTk9fU0NBTElORywKPj4+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIERSTV9QTEFO RV9OT19TQ0FMSU5HLAo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgZmFsc2UsIGZhbHNlKTsKPj4+ICt9Cj4+PiArCj4+PiDCoCBzdGF0aWMg dm9pZCB1ZGxfcHJpbWFyeV9wbGFuZV9oZWxwZXJfYXRvbWljX3VwZGF0ZShzdHJ1Y3QgCj4+PiBk cm1fcGxhbmUgKnBsYW5lLAo+Pj4gwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+Pj4g wqAgewo+Pj4gQEAgLTI5Niw3ICszMTEsNyBAQCBzdGF0aWMgdm9pZCAKPj4+IHVkbF9wcmltYXJ5 X3BsYW5lX2hlbHBlcl9hdG9taWNfdXBkYXRlKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAo+Pj4g wqAgc3RhdGljIGNvbnN0IHN0cnVjdCBkcm1fcGxhbmVfaGVscGVyX2Z1bmNzIAo+Pj4gdWRsX3By aW1hcnlfcGxhbmVfaGVscGVyX2Z1bmNzID0gewo+Pj4gwqDCoMKgwqDCoCBEUk1fR0VNX1NIQURP V19QTEFORV9IRUxQRVJfRlVOQ1MsCj4+PiAtwqDCoMKgIC5hdG9taWNfY2hlY2sgPSBkcm1fcGxh bmVfaGVscGVyX2F0b21pY19jaGVjaywKPj4+ICvCoMKgwqAgLmF0b21pY19jaGVjayA9IHVkbF9w cmltYXJ5X3BsYW5lX2hlbHBlcl9hdG9taWNfY2hlY2ssCj4+PiDCoMKgwqDCoMKgIC5hdG9taWNf dXBkYXRlID0gdWRsX3ByaW1hcnlfcGxhbmVfaGVscGVyX2F0b21pY191cGRhdGUsCj4+PiDCoCB9 Owo+Pj4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9wbGFuZV9oZWxwZXIuaCAKPj4+IGIv aW5jbHVkZS9kcm0vZHJtX3BsYW5lX2hlbHBlci5oCj4+PiBpbmRleCAzYTU3NGU4Y2QyMmY0Li43 NWY5YzQ4MzA1NjRhIDEwMDY0NAo+Pj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX3BsYW5lX2hlbHBl ci5oCj4+PiArKysgYi9pbmNsdWRlL2RybS9kcm1fcGxhbmVfaGVscGVyLmgKPj4+IEBAIC0yNiw3 ICsyNiw2IEBACj4+PiDCoCAjaW5jbHVkZSA8bGludXgvdHlwZXMuaD4KPj4+IC1zdHJ1Y3QgZHJt X2F0b21pY19zdGF0ZTsKPj4+IMKgIHN0cnVjdCBkcm1fY3J0YzsKPj4+IMKgIHN0cnVjdCBkcm1f ZnJhbWVidWZmZXI7Cj4+PiDCoCBzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHg7Cj4+PiBA QCAtNDIsNyArNDEsNiBAQCBpbnQgZHJtX3BsYW5lX2hlbHBlcl91cGRhdGVfcHJpbWFyeShzdHJ1 Y3QgCj4+PiBkcm1fcGxhbmUgKnBsYW5lLCBzdHJ1Y3QgZHJtX2NydGMgKmNyCj4+PiDCoCBpbnQg ZHJtX3BsYW5lX2hlbHBlcl9kaXNhYmxlX3ByaW1hcnkoc3RydWN0IGRybV9wbGFuZSAqcGxhbmUs Cj4+PiDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzdHJ1Y3Qg ZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggKmN0eCk7Cj4+PiDCoCB2b2lkIGRybV9wbGFuZV9oZWxw ZXJfZGVzdHJveShzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSk7Cj4+PiAtaW50IGRybV9wbGFuZV9o ZWxwZXJfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLCBzdHJ1Y3QgCj4+PiBk cm1fYXRvbWljX3N0YXRlICpzdGF0ZSk7Cj4+PiDCoCAvKioKPj4+IMKgwqAgKiBEUk1fUExBTkVf Tk9OX0FUT01JQ19GVU5DUyAtIERlZmF1bHQgcGxhbmUgZnVuY3Rpb25zIGZvciAKPj4+IG5vbi1h dG9taWMgZHJpdmVycwo+CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxp c3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0 aW5mby9saW51eC1hcm0ta2VybmVsCg==