From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758464AbcEFOeQ (ORCPT ); Fri, 6 May 2016 10:34:16 -0400 Received: from smtp.domeneshop.no ([194.63.252.55]:39714 "EHLO smtp.domeneshop.no" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758072AbcEFOeP (ORCPT ); Fri, 6 May 2016 10:34:15 -0400 Subject: Re: [PATCH 4/4] drm/panel: Add helper for simple panel connector To: Thierry Reding , treding@nvidia.com, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org References: <1462454674-2246-1-git-send-email-noralf@tronnes.org> <1462454674-2246-5-git-send-email-noralf@tronnes.org> <20160506140347.GB4641@ulmo.ba.sec> <20160506140816.GD27098@phenom.ffwll.local> <20160506141532.GC4641@ulmo.ba.sec> From: =?UTF-8?Q?Noralf_Tr=c3=b8nnes?= Cc: Daniel Vetter Message-ID: Date: Fri, 6 May 2016 16:34:08 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.0 MIME-Version: 1.0 In-Reply-To: <20160506141532.GC4641@ulmo.ba.sec> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Den 06.05.2016 16:15, skrev Thierry Reding: > On Fri, May 06, 2016 at 04:08:16PM +0200, Daniel Vetter wrote: >> On Fri, May 06, 2016 at 04:03:47PM +0200, Thierry Reding wrote: >>> On Thu, May 05, 2016 at 03:24:34PM +0200, Noralf Trønnes wrote: >>>> Add function to create a simple connector for a panel. >>> I'm not sure I see the usefulness of this. Typically you'd attach a >>> panel to an encoder/connector, in which case you already have the >>> connector. >>> >>> Perhaps it would become more obvious why we need this if you posted >>> patches that show where this is used? >> The other helpers give you a simple drm pipeline with plane, crtc & >> encoder all baked into on drm_simple_pipeline structure. The only thing >> variable you have to hook up to that is the drm_connector. And I think for >> dead-simple panels avoiding the basic boilerplate in that does indeed make >> some sense. > Avoiding boilerplate is good, but I have a difficult time envisioning > how you might want to use this. At the same time I'm asking myself how > we know that this helper is any good if we haven't seen it used anywhere > and actually see the boilerplate go away. I pulled out the patches from the tinydrm patchset that would go into drm core and helpers. I'm not very good at juggling many patches around in various version and getting it right. I'm doing development in the downstream Raspberry Pi repo on 4.5 to get all the pi drivers, and then apply it on linux-next... This is the tinydrm patch that will use it: https://lists.freedesktop.org/archives/dri-devel/2016-April/104502.html Extract: +int tinydrm_display_pipe_init(struct tinydrm_device *tdev, + const uint32_t *formats, unsigned int format_count) +{ + struct drm_device *dev = tdev->base; + struct drm_connector *connector; + int ret; + + connector = drm_simple_kms_panel_connector_create(dev, &tdev->panel, + DRM_MODE_CONNECTOR_VIRTUAL); + if (IS_ERR(connector)) + return PTR_ERR(connector); + + ret = drm_simple_display_pipe_init(dev, &tdev->pipe, + &tinydrm_display_pipe_funcs, + formats, format_count, + connector); + + return ret; +} +EXPORT_SYMBOL(tinydrm_display_pipe_init); drm_simple_kms_panel_connector_create() changed name when Daniel suggested it be moved to drm_panel.c or drm_panel_helper.c. Noralf.