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 5FCAEC54FC6 for ; Wed, 28 Aug 2024 14:00:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:In-Reply-To:Content-Type: MIME-Version:References:Message-ID:Subject:Cc:To:From:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=EFqVGeHJhN7wq7x4S1yeJZ6zpXfyurzID6BfMG7GKt8=; b=SIWG08v9vV/pVsx/bPN/ZrqtpL UOBY77v/yrWT17zB8ICt9u6hhTgJ+T3d9GL3j6VUUKFWhKnB7p8VbcxA9ufRtxbuvTenNaPFX2jue +kqJ6VfYR0kcRrtjW5hrC+FF52pw7Y22oKwebeA1oD0BfoZH0J9ne/2N3l8xjJxkC0AekqHzwjdwb BIbvJU9socAXHZFVA1fOUhqHu6UOQ43nrQJZjoI062orTH/86bgxoWCsC6mel9E6jpMtEkoqhjYJx WhaWRjKI9CzjHuZBpiQfHJDeILXXVVE3pVmJCkZxIHB6bw18AGGWyozVakfyGjcKcIsQEv9DH9WIr ib3TZTkA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sjJE4-0000000FdiW-1Ryl; Wed, 28 Aug 2024 14:00:44 +0000 Received: from mail-wm1-x330.google.com ([2a00:1450:4864:20::330]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1sjI6C-0000000FNq3-2iPJ for linux-arm-kernel@lists.infradead.org; Wed, 28 Aug 2024 12:48:34 +0000 Received: by mail-wm1-x330.google.com with SMTP id 5b1f17b1804b1-42819654737so57163005e9.1 for ; Wed, 28 Aug 2024 05:48:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; t=1724849311; x=1725454111; darn=lists.infradead.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=EFqVGeHJhN7wq7x4S1yeJZ6zpXfyurzID6BfMG7GKt8=; b=ixAFbv/phGLkmpkhbcKULTF6x8cH57nD3vUqR1qZZY2YMcV8fSyW1VapwXRlvjgpzs 85tmaTHwb0UQiQ/LrewcXqx1pJspqA7ljwYYGXtOymostFJH01sSNbeLgmQdWSnYZJUi bMdnCKkoMMNyYG/OuiL4XVfuQaP1l6Zvj/Z4I= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1724849311; x=1725454111; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=EFqVGeHJhN7wq7x4S1yeJZ6zpXfyurzID6BfMG7GKt8=; b=wjlGgQkv3xVRWBMX7IoGCgPlHZnx74gvtzcpVQGa/KccuSj55ddcepE6vPyP0vRSpQ vjazX4H4UqDLG6QDBVX/9EXl0sDMeiBybzmV8gibOxd/fDwFvYOfseJyBA8azqmHmsyr Dr+r2EDKDQUHa9ZUBJoJEpyX2QbQHDrib73H+O6WPkHHSnE4Q6QanIvGMomStYS6qetV ZZds3WjuezMId3pmx/2VzQORbDBFl+MO9kF0ddhNMVke3ISteC9i+opWMFDlpg8PdAaE UjcadDju60v4Uz/ayC36nt3GFxyKzCMnc6DLzTSaZR2ZcJBKhhreolXciGoRKXecBDnb Y3zg== X-Forwarded-Encrypted: i=1; AJvYcCU4EN2Nz44u76Gz4WrTMVdFYV6WRrhl8O6ZMu8qn7E/salMlL80oLe0TccZbli0MvJHikP8XcQByfHvkVgRxOXu@lists.infradead.org X-Gm-Message-State: AOJu0YxBOglXJ02nD96Jd0gxq73blTxC88fpway8gjQYTyaCmXNQet6M /OKef4hN6pYaBI1E/5VhVDMSyMI8xrbBmScONmZpN3tHlK7ukpThCK3VVsMmAA4= X-Google-Smtp-Source: AGHT+IGwJ6gk8liZgMOYtWuY6fVH82jdYY1IsW2X0cvvs14wPbFWW/L6yjXhPtffKOBhX6Xha0Vt3A== X-Received: by 2002:a05:600c:3b94:b0:429:e6bb:a436 with SMTP id 5b1f17b1804b1-42acd55654fmr124825975e9.9.1724849311092; Wed, 28 Aug 2024 05:48:31 -0700 (PDT) Received: from phenom.ffwll.local ([2a02:168:57f4:0:5485:d4b2:c087:b497]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-42ba640402asm20863755e9.41.2024.08.28.05.48.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Aug 2024 05:48:30 -0700 (PDT) Date: Wed, 28 Aug 2024 14:48:28 +0200 From: Daniel Vetter To: Jani Nikula Cc: dri-devel@lists.freedesktop.org, Philipp Zabel , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Shawn Guo , Sascha Hauer , Pengutronix Kernel Team , Fabio Estevam , imx@lists.linux.dev, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH 5/6] drm/ipuv3/parallel: convert to struct drm_edid Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Operating-System: Linux phenom 6.9.12-amd64 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240828_054832_714666_907BD764 X-CRM114-Status: GOOD ( 25.78 ) 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: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Thu, Aug 22, 2024 at 08:42:51PM +0300, Jani Nikula wrote: > Prefer the struct drm_edid based functions for storing the EDID and > updating the connector. > > Signed-off-by: Jani Nikula > > --- > > Cc: Philipp Zabel > Cc: Maarten Lankhorst > Cc: Maxime Ripard > Cc: Thomas Zimmermann > Cc: Shawn Guo > Cc: Sascha Hauer > Cc: Pengutronix Kernel Team > Cc: Fabio Estevam > Cc: dri-devel@lists.freedesktop.org > Cc: imx@lists.linux.dev > Cc: linux-arm-kernel@lists.infradead.org > --- > drivers/gpu/drm/imx/ipuv3/parallel-display.c | 14 +++++++++----- > 1 file changed, 9 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/imx/ipuv3/parallel-display.c b/drivers/gpu/drm/imx/ipuv3/parallel-display.c > index 55dedd73f528..91d7808a2d8d 100644 > --- a/drivers/gpu/drm/imx/ipuv3/parallel-display.c > +++ b/drivers/gpu/drm/imx/ipuv3/parallel-display.c > @@ -34,7 +34,7 @@ struct imx_parallel_display_encoder { > > struct imx_parallel_display { > struct device *dev; > - void *edid; > + const struct drm_edid *drm_edid; > u32 bus_format; > u32 bus_flags; > struct drm_display_mode mode; > @@ -62,9 +62,9 @@ static int imx_pd_connector_get_modes(struct drm_connector *connector) > if (num_modes > 0) > return num_modes; > > - if (imxpd->edid) { > - drm_connector_update_edid_property(connector, imxpd->edid); > - num_modes = drm_add_edid_modes(connector, imxpd->edid); > + if (imxpd->drm_edid) { > + drm_edid_connector_update(connector, imxpd->drm_edid); > + num_modes = drm_edid_connector_add_modes(connector); > } > > if (np) { > @@ -331,7 +331,7 @@ static int imx_pd_probe(struct platform_device *pdev) > > edidp = of_get_property(np, "edid", &edid_len); > if (edidp) > - imxpd->edid = devm_kmemdup(dev, edidp, edid_len, GFP_KERNEL); > + imxpd->drm_edid = drm_edid_alloc(edidp, edid_len); Randomly wondering whether drm_edid_alloc should at least sanity check the edid size ... but for another time. On this: Reviewed-by: Daniel Vetter > > ret = of_property_read_string(np, "interface-pix-fmt", &fmt); > if (!ret) { > @@ -355,7 +355,11 @@ static int imx_pd_probe(struct platform_device *pdev) > > static void imx_pd_remove(struct platform_device *pdev) > { > + struct imx_parallel_display *imxpd = platform_get_drvdata(pdev); > + > component_del(&pdev->dev, &imx_pd_ops); > + > + drm_edid_free(imxpd->drm_edid); > } > > static const struct of_device_id imx_pd_dt_ids[] = { > -- > 2.39.2 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch