Received: by 10.223.185.116 with SMTP id b49csp1041677wrg; Wed, 21 Feb 2018 11:03:55 -0800 (PST) X-Google-Smtp-Source: AH8x227BS83kmHhtENNhf4SbGz7wT62iVSniRRSHTGin6ZcfX43JkuPUG7d4jaK4oZEjFfdHfGkM X-Received: by 2002:a17:902:6e01:: with SMTP id u1-v6mr4007961plk.12.1519239835538; Wed, 21 Feb 2018 11:03:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1519239835; cv=none; d=google.com; s=arc-20160816; b=MmXjrThzzHjBN/IPsqFK6ciZzIrQ1qn4hzBJPK7tMiBOFRai4juw7CD8NxrEwjCzRf v64Tpcl32sXhE1BJ+nUTrNlURVTdNn6FNN2JfrJhsO/uFH93dFeYN/nX3Dny92boKNrD wQwrbYfRrARwIHWAlIWTdoRCC7SLu4VeJW2zGhXn/K2AnatjxDSORNsbIFhegp+Yld8v mxg/0iD/H4m6GqGaiRTTRqyIFaNQXbUmEADZYz/NF3LrVrx2DOxKCxdsMJXi5Z76tqUc 13msHaAANULrcFUtCRh4JwQja8Vy5Wvq2loP0AHg92hGPLm6xhubPobN9ghqgECGA5wR EYGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:organisation:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=6R01OKEm8TdFH1hdsWXQxFfH4AyyUbpvgX3VdIzLT64=; b=CDucPQfsivRlbzqkbhngX4B4wkszBCIQPhs3JWAjiCDbYu2Mx5lXgF0XgBpMMCqkz+ 7SiEtoPNQtfBkHZSavkbtygXV5S17NiUxv3n5KFI5ZnchFfXCXxp7MXLL8ZTqpvE6OlK Sxzsswfn7m/SuTOP79r2e2xEk6lKkI8EnWIXdgPwnIybipTjsUT68vFPw2Qvz8xsFO23 m9aX+SWN1EpzKnP3vMX817FmAiQyYZHZv7TeEbleR6byPHMljCsTOpcgmPcyN4dbIRWe lJrASYzMVeAvKdKp4PQFYcMk1Df5GYwmmlxjlQmS0Z5wYQOkchUV4Yc+FX/9ey23QcmR 1I2w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@verge.net.au header.s=mail header.b=rN95R0kt; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j15si179423pgt.354.2018.02.21.11.03.41; Wed, 21 Feb 2018 11:03:55 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@verge.net.au header.s=mail header.b=rN95R0kt; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S936350AbeBUQjc (ORCPT + 99 others); Wed, 21 Feb 2018 11:39:32 -0500 Received: from kirsty.vergenet.net ([202.4.237.240]:55417 "EHLO kirsty.vergenet.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932674AbeBUQja (ORCPT ); Wed, 21 Feb 2018 11:39:30 -0500 Received: from penelope.horms.nl (unknown [217.111.208.18]) by kirsty.vergenet.net (Postfix) with ESMTPA id 75D3C25B7CC; Thu, 22 Feb 2018 03:39:27 +1100 (AEDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=verge.net.au; s=mail; t=1519231167; bh=FIl+1UEHCeFgzrK6j4LJbPBL5/11o+fz5eZxVYlKAYE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=rN95R0ktFl2hkLcChhcdvJ72wwF/hvIM48jcuNc0twlDE+KaVpue0obwmHzKks2ig gqwQDwvdpGpvJrsb3aauNYl2ajYzT9SESm6zVxR6fyIeZNdxv1o9+2o+25IZG+ogMw AJuubqHZA1yNfJGr57b1CVF/kEuLJeRF73NSv9vE= Received: by penelope.horms.nl (Postfix, from userid 7100) id 6B3D2E21507; Wed, 21 Feb 2018 17:39:25 +0100 (CET) Date: Wed, 21 Feb 2018 17:39:25 +0100 From: Simon Horman To: Laurent Pinchart Cc: dri-devel@lists.freedesktop.org, linux-renesas-soc@vger.kernel.org, Rob Herring , Frank Rowand , Matt Porter , Koen Kooi , Guenter Roeck , Marek Vasut , Wolfram Sang , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-i2c@vger.kernel.org, Pantelis Antoniou Subject: Re: [PATCH v4 00/16] R-Car DU: Convert LVDS code to bridge driver Message-ID: <20180221163924.cikog34sqr6aggyk@verge.net.au> References: <20180220231046.32638-1-laurent.pinchart+renesas@ideasonboard.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180220231046.32638-1-laurent.pinchart+renesas@ideasonboard.com> Organisation: Horms Solutions BV User-Agent: NeoMutt/20170113 (1.7.2) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Feb 21, 2018 at 01:10:30AM +0200, Laurent Pinchart wrote: > Hello, > > This patch series addresses a design mistake that dates back from the initial > DU support. Support for the LVDS encoders, which are IP cores separate from > the DU, was bundled in the DU driver. Worse, both the DU and LVDS were > described through a single DT node. > > To fix the, patches 01/16 and 02/16 define new DT bindings for the LVDS > encoders, and deprecate their description inside the DU bindings. To retain > backward compatibility with existing DT, patches 03/16 to 08/16 then patch the > device tree at runtime to convert the legacy bindings to the new ones. > > With the DT side addressed, patch 09/16 converts the LVDS support code to a > separate bridge driver. Patches 11/16 to 16/16 then update all the device tree > sources to the new DU and LVDS encoders bindings. > > I decided to go for live DT patching in patch 08/16 because implementing > support for both the legacy and new bindings in the driver would have been > very intrusive, and prevented further cleanups. This version relies more > heavily on overlays to avoid touching the internals of the OF core compared to > v2, even if manual fixes to the device tree are still needed. > > Compared to v3, this series uses the OF changeset API to update properties > instead of accessing the internals of the property structure. This removes the > local implementation of functions to look up nodes by path and update > properties. In order to do this, I pulled in Pantelis' patch series titled > "[PATCH v2 0/5] of: dynamic: Changesets helpers & fixes" at Rob's request, and > rebased it while taking two small review comments into account. > > Rob, I'd like this series to be merged in v4.17. As the changeset helpers are > now a dependency, I'd need you to merge them early (ideally on top of > v4.16-rc1) and provide a stable branch, or get your ack to merge them through > Dave's tree if they don't conflict with what you have and will queue for > v4.17. > > This version also drops the small fix to the Porter board device tree that has > been queued for v4.17 already. > > Compared to v2, the biggest change is in patch 03/16. Following Rob's and > Frank's reviews it was clear that modifying the unflattened DT structure of > the overlay before applying it wasn't popular. I have thus decided to use one > overlay source per SoC to move as much of the DT changes to the overlay as > possible, and only perform manual modifications (that are still needed as some > of the information is board-specific) on the system DT after applying the > overlay. As a result the overlay is parsed and applied without being modified. > > Compared to v1, this series update the r8a7792 and r8a7794 device tree sources > and incorporate review feedback as described by the changelogs of individual > patches. > > > Laurent Pinchart (11): > dt-bindings: display: renesas: Add R-Car LVDS encoder DT bindings > dt-bindings: display: renesas: Deprecate LVDS support in the DU > bindings > drm: rcar-du: Fix legacy DT to create LVDS encoder nodes > drm: rcar-du: Convert LVDS encoder code to bridge driver > ARM: dts: r8a7790: Convert to new LVDS DT bindings > ARM: dts: r8a7791: Convert to new LVDS DT bindings > ARM: dts: r8a7792: Convert to new DU DT bindings > ARM: dts: r8a7793: Convert to new LVDS DT bindings > ARM: dts: r8a7794: Convert to new DU DT bindings > arm64: dts: renesas: r8a7795: Convert to new LVDS DT bindings > arm64: dts: renesas: r8a7796: Convert to new LVDS DT bindings I have marked the dts patches above as deferred as they depend on the driver changes not to cause a regression. Please repost them or otherwise ping me once the driver dependencies are present in an rc release. I am assuming that the other patches in this series are not targeted at the renesas tree. > > Pantelis Antoniou (5): > of: dynamic: Add __of_node_dupv() > of: changesets: Introduce changeset helper methods > of: changeset: Add of_changeset_node_move method > of: unittest: changeset helpers > i2c: demux: Use changeset helpers for clarity ...