Received: by 2002:a05:6500:1b41:b0:1fb:d597:ff75 with SMTP id cz1csp361265lqb; Tue, 4 Jun 2024 13:42:32 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCUP8ckG5U9X/jyebMaV/pmiDWct87Df/fkFJNP2JeuQfWBRudi4OyxNEk1LRBiDh3aH3Z53sJgAy+dZemOrZJwNONehFBXcKAsIkfFNTA== X-Google-Smtp-Source: AGHT+IHDvLFyPdOYcfv36ZjEaGcstSIuHfEcjwGmT+oE3TZV15K5BvlfjJkvaUqwCYSN8H9x5WlO X-Received: by 2002:a05:6a21:6d8b:b0:1b2:a8e3:4a28 with SMTP id adf61e73a8af0-1b2b6ed99f3mr917164637.16.1717533752081; Tue, 04 Jun 2024 13:42:32 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1717533752; cv=pass; d=google.com; s=arc-20160816; b=Z6gpHQid7pcEL8bjV6GA0cJennN/DSWGIc69PYee8AjjPyV3Cy5GqPhQsScPTrYB2t etjcUqcXn9G5V3BZVA8dJI6Qdf1V/jXLIFW3dzApBgmJV0ayi4wNP5zpg2WhNdOpa31N +22no2FSxIumsBORydNpwu+fNoNUfoA4oWlzbRHPH5NYbrwgvc57NLHZ7rcd1mxfHNWX vGckjygUqImjh2sSJbUkUFin5I7i8GPOn65bBL+z3zM7AiBF4TKXWq8zEnkj1+b/ER8t xx6CirzGinoHcsyaCQEnsJCeDDILa9/Hcl+5ODROGTuVxN4n6O21ycekIkiP9XMYLf4U nHrA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:message-id:subject:cc :to:from:date:dkim-signature:dkim-signature; bh=Dk4sfgI36ZWaPJ+eBS/GI/TZ8w55X9bgUEDY5cQtdtU=; fh=GfxYdUUnf1b28cP12DaclX7VW8sIQe6o2l1QwV4fb1I=; b=e7Vc6PTmLbzLQEs3eisc0KFixaCp/1g4mk8aweaLJSo4kn4xcJes1DSRgvMUqMSl3P QhTCJlehBFcBq+hx2QZJB60m1UDwq4UF8vZfWwoI1yI1OQLFryPA8bpHyf+upGKO6c5l Dpi14dqR6IVJduxefd/gOYFTZVsUD5d1e/cnRpyWHadS9rXi09nroD83l7oeCtoLrgK7 Gu55CGxx+yp3B2EOGlE8V7vqcIemZZZaYzxA7LYav+sZymGH+t5qnufB0pASV35OJkUu rSRxCpGzdJmz2+ivppZ37LdsoI5JlaTQSF8ef8bjL8Top2NrCiguu1muYGg8tmF79mOq rugQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@ravnborg.org header.s=rsa1 header.b=N61vra7C; dkim=neutral (no key) header.i=@ravnborg.org header.s=ed1; arc=pass (i=1 dkim=pass dkdomain=ravnborg.org); spf=pass (google.com: domain of linux-kernel+bounces-201356-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-201356-linux.lists.archive=gmail.com@vger.kernel.org" Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id 41be03b00d2f7-6c3540fb3edsi2464094a12.161.2024.06.04.13.42.31 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 04 Jun 2024 13:42:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-201356-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@ravnborg.org header.s=rsa1 header.b=N61vra7C; dkim=neutral (no key) header.i=@ravnborg.org header.s=ed1; arc=pass (i=1 dkim=pass dkdomain=ravnborg.org); spf=pass (google.com: domain of linux-kernel+bounces-201356-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-201356-linux.lists.archive=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id B8561282D16 for ; Tue, 4 Jun 2024 20:42:31 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 3232F14B977; Tue, 4 Jun 2024 20:42:25 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ravnborg.org header.i=@ravnborg.org header.b="N61vra7C"; dkim=permerror (0-bit key) header.d=ravnborg.org header.i=@ravnborg.org header.b="r4JvKN3M" Received: from mailrelay1-1.pub.mailoutpod3-cph3.one.com (mailrelay1-1.pub.mailoutpod3-cph3.one.com [46.30.211.240]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 55EEB1350FD for ; Tue, 4 Jun 2024 20:42:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=46.30.211.240 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717533744; cv=none; b=lHxOH/1RsFivC/DS57Vlg8xefso7DuMaSV/MFgIFbjFnID96vllBUL5zXeyan38zGDXRjiLWYahr8Z5cWcCJI4+oOjB8/JRzZbOM9pdPS9/VXUCvRmHLB37aOMsLDF62ca/tKFTMGps/pdamrbpyLEHvl3M5pUw+WGjToN8PlkE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1717533744; c=relaxed/simple; bh=1dWSYg0dVf/rqsLrOmw8N6/UvJ03wpNFLYhrom2Lml0=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=QCk7zTw4zuVu0owWMdk7wMSnOwESBA8Bup9r44G9FXg5Sx0b8/732scmuSlDsZUu3j6x8vXxZ++Jj8MYm+pR2RI/JZqnRupmZbj6bLp0tv//DP7FBUWt17R7YRq6/3qUh2E0xkFM9SFFbJLbWGo1lRLeHos2gIq5PvAkvwz2/0c= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ravnborg.org; spf=none smtp.mailfrom=ravnborg.org; dkim=pass (2048-bit key) header.d=ravnborg.org header.i=@ravnborg.org header.b=N61vra7C; dkim=permerror (0-bit key) header.d=ravnborg.org header.i=@ravnborg.org header.b=r4JvKN3M; arc=none smtp.client-ip=46.30.211.240 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ravnborg.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=ravnborg.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ravnborg.org; s=rsa1; h=in-reply-to:content-type:mime-version:references:message-id:subject:cc:to: from:date:from; bh=Dk4sfgI36ZWaPJ+eBS/GI/TZ8w55X9bgUEDY5cQtdtU=; b=N61vra7CHLZfKe5uIUlYx3GQv9YGIc7bLyEhl3+9zNcLfrg/064TgGMDdyq/ZA10mlYXb06vgNF0h qwxtSmeWRmsmmd3wrCCBBvUY+SFythORAs9pyE4otLatq0n/0MIHh8STbOiAKmU9DUOex9d1E4YSfX x8KwPBxjY/1bPXa3W4ZVzNJZE8vyRU4ysM0VrCOe55RkF7hCRcl+V9ySXs0kbLERYnt8ZjSy6kIePK 853Zbg7dZnTvyDX2GrBxleUad6prFsi1lEZKiKL68eW9CCm5QisalqofZTtORQWuI1bSEXtwK7zLcI Xu0tUkNa02dSjD3QS04pgnpBnbZ1OSQ== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ravnborg.org; s=ed1; h=in-reply-to:content-type:mime-version:references:message-id:subject:cc:to: from:date:from; bh=Dk4sfgI36ZWaPJ+eBS/GI/TZ8w55X9bgUEDY5cQtdtU=; b=r4JvKN3MaF/e09yO6vz7gW/+Vs/xVKV1CvUIVwJnko5Bqds84IFN0/PUeYg4Zdo1itqPMmJMDSrRa fTI/wgXCg== X-HalOne-ID: c619a21d-22b2-11ef-9886-bf3d7f4c9d3b Received: from ravnborg.org (2-105-16-150-cable.dk.customer.tdc.net [2.105.16.150]) by mailrelay1.pub.mailoutpod3-cph3.one.com (Halon) with ESMTPSA id c619a21d-22b2-11ef-9886-bf3d7f4c9d3b; Tue, 04 Jun 2024 20:41:12 +0000 (UTC) Date: Tue, 4 Jun 2024 22:41:10 +0200 From: Sam Ravnborg To: Cristian Ciocaltea Cc: Andrzej Hajda , Neil Armstrong , Robert Foss , Laurent Pinchart , Jonas Karlman , Jernej Skrabec , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Daniel Vetter , Sandy Huang , Heiko =?iso-8859-1?Q?St=FCbner?= , Andy Yan , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Mark Yao , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-rockchip@lists.infradead.org, devicetree@vger.kernel.org, kernel@collabora.com, Alexandre ARNOUD , Luis de Arquer , Algea Cao Subject: Re: [PATCH 13/14] drm/bridge: synopsys: Add DW HDMI QP TX controller driver Message-ID: <20240604204110.GA84949@ravnborg.org> References: <20240601-b4-rk3588-bridge-upstream-v1-0-f6203753232b@collabora.com> <20240601-b4-rk3588-bridge-upstream-v1-13-f6203753232b@collabora.com> <20240601143226.GA2003970@ravnborg.org> <59519381-2729-4839-9882-65a981a0c551@collabora.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <59519381-2729-4839-9882-65a981a0c551@collabora.com> Hi Cristian. On Tue, Jun 04, 2024 at 10:32:04PM +0300, Cristian Ciocaltea wrote: > Hi Sam, > > On 6/1/24 5:32 PM, Sam Ravnborg wrote: > > Hi Cristian, > > > > a few drive-by comments below. > > > > Sam > > > > > >> + > >> +static const struct drm_connector_funcs dw_hdmi_qp_connector_funcs = { > >> + .fill_modes = drm_helper_probe_single_connector_modes, > >> + .detect = dw_hdmi_connector_detect, > >> + .destroy = drm_connector_cleanup, > >> + .force = dw_hdmi_qp_connector_force, > >> + .reset = drm_atomic_helper_connector_reset, > >> + .atomic_duplicate_state = drm_atomic_helper_connector_duplicate_state, > >> + .atomic_destroy_state = drm_atomic_helper_connector_destroy_state, > >> +}; > >> + > >> +static int dw_hdmi_qp_bridge_attach(struct drm_bridge *bridge, > >> + enum drm_bridge_attach_flags flags) > >> +{ > >> + struct dw_hdmi *hdmi = bridge->driver_private; > >> + > >> + if (flags & DRM_BRIDGE_ATTACH_NO_CONNECTOR) > >> + return drm_bridge_attach(bridge->encoder, hdmi->next_bridge, > >> + bridge, flags); > >> + > >> + return dw_hdmi_connector_create(hdmi, &dw_hdmi_qp_connector_funcs); > >> +} > > > > Are there any users left that requires the display driver to create the > > connector? > > In other words - could this driver fail if DRM_BRIDGE_ATTACH_NO_CONNECTOR > > is not passed and drop dw_hdmi_connector_create()? > > > > I did not try to verify this - just a naive question. > > I've just tested this and it doesn't work - dw_hdmi_connector_create() > is still needed. Hmm, seems the display driver or some other bridge driver fails to support "DRM_BRIDGE_ATTACH_NO_CONNECTOR". what other drivers are involved? Note that my comments here should be seen as potential future improvements, and do not block the patch from being used. Sam