Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp2005873imm; Sat, 13 Oct 2018 08:12:17 -0700 (PDT) X-Google-Smtp-Source: ACcGV6140/Y2YD7ElDzIMn7iPmHVdgXuolXtd2BXGWtelQQJoqJ/LdyTdJEOyt0eg75B/XoTYdC2 X-Received: by 2002:a62:9402:: with SMTP id m2-v6mr10612716pfe.255.1539443537207; Sat, 13 Oct 2018 08:12:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1539443537; cv=none; d=google.com; s=arc-20160816; b=kf4p/s9Jdl7whING39+Qn1cIu+fETVCY7sBi26enbucbIwaf1gq7BbaKyWX1BfkER2 TqK7V0SeQuGKScvEvoaAQjj6c35ZG48vuj9tmQQsjzFURcArvytMpBjpCuxDWmthg7f1 D1AvHqB/rQDaycqhEx49QtcOfn6aFqH5/OhAfIbVlIhNOTGOxhnMOvZ1zJEpxmuATVmG bopD/Fzh8mafyo0TDGRCdeaWsJ7C5Yq19cu/7xqz30/2kBMZfAh7aLeaLIg1pA/EJQoK zmQ2jlB6WPyCmeAjkp8N+q3BSz3uV3I7HM2uxvNJggekqIIO30cUoW3V8j3XoD7lhVqN f6Kw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:in-reply-to :mime-version:user-agent:date:message-id:from:cc:references:to :subject; bh=RZQYcp7f9VZ/q7MQzUmi1PJjneggw/min/SS6k6BaY8=; b=nSWtCnWaTbWarT/jeNoUMpIgsBSKCtEcOiwdDy71WPtKX0JaocBOTglIf0OQ6cHuIL 8I6asl1ozu1i+9enp9y3ZkopPJb1N1MMEnLfqRrQMyWeG+Lb/tMwn01zKsB2o7BumWNo H3jII/06S1ID0Z6IvU5hfpJh8kDA35CKwODcvpzTRABDLrctUjxyrfyz05aEOArqNXNR EH73XV72GS8JxHfW61aYeqzS/OHxWYe4Qcw1Nk44KUbzrSNxwf9tcEigNnpCLQXm33JT ChhNTiGT0oEc8zqMJM4mCVYp8SWEfllH9STEt2IU/8QmspGXBc3bpkhRlndwV4aTXq3R JWkw== ARC-Authentication-Results: i=1; mx.google.com; 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 64-v6si4530150plk.257.2018.10.13.08.12.02; Sat, 13 Oct 2018 08:12:17 -0700 (PDT) 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; 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 S1726996AbeJMWsD (ORCPT + 99 others); Sat, 13 Oct 2018 18:48:03 -0400 Received: from relay1.mentorg.com ([192.94.38.131]:42704 "EHLO relay1.mentorg.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726292AbeJMWsC (ORCPT ); Sat, 13 Oct 2018 18:48:02 -0400 Received: from nat-ies.mentorg.com ([192.94.31.2] helo=SVR-IES-MBX-04.mgc.mentorg.com) by relay1.mentorg.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-SHA384:256) id 1gBLYk-0003TZ-69 from Vladimir_Zapolskiy@mentor.com ; Sat, 13 Oct 2018 08:10:30 -0700 Received: from [137.202.108.125] (137.202.0.90) by SVR-IES-MBX-04.mgc.mentorg.com (139.181.222.4) with Microsoft SMTP Server (TLS) id 15.0.1320.4; Sat, 13 Oct 2018 16:10:25 +0100 Subject: Re: [PATCH 4/7] mfd: ds90ux9xx: add TI DS90Ux9xx de-/serializer MFD driver To: Laurent Pinchart References: <20181008211205.2900-1-vz@mleia.com> <506c03d7-7986-44dd-3290-92d16a8106ad@mentor.com> <4a807a53-1592-a895-f140-54e7acc473b3@ideasonboard.com> <3599186.afdMBtdL0k@avalon> CC: , Lee Jones , Vladimir Zapolskiy , Linus Walleij , Rob Herring , Marek Vasut , Wolfram Sang , , , , From: Vladimir Zapolskiy Message-ID: <369ef3ac-6f68-c450-713f-762b1c5cd5c9@mentor.com> Date: Sat, 13 Oct 2018 18:10:25 +0300 User-Agent: Mozilla/5.0 (X11; Linux i686; rv:45.0) Gecko/20100101 Icedove/45.2.0 MIME-Version: 1.0 In-Reply-To: <3599186.afdMBtdL0k@avalon> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [137.202.0.90] X-ClientProxiedBy: svr-ies-mbx-01.mgc.mentorg.com (139.181.222.1) To SVR-IES-MBX-04.mgc.mentorg.com (139.181.222.4) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Laurent, On 10/12/2018 04:01 PM, Laurent Pinchart wrote: > Hello Vladimir, > > On Friday, 12 October 2018 14:47:52 EEST Kieran Bingham wrote: >> On 12/10/18 11:58, Vladimir Zapolskiy wrote: [snip] >> Essentially they are multi purpose buses - which do not yet have a home. >> We have used media as a home because of our use case. >> >> The use case whether they transfer frames from a camera or to a display >> are of course closely related, but ultimately covered by two separate >> subsystems at the pixel level (DRM vs V4L, or other for other data) >> >> Perhaps as they are buses - on a level with USB or I2C (except they can >> of course carry I2C or Serial as well as 'bi-directional video' etc ), >> they are looking for their own subsystem. >> >> Except I don't think we don't want to add a new subsystem for just one >> (or two) devices... > > I'm not sure a new subsystem is needed. As you've noted there's an overlap > between drivers/media/ and drivers/gpu/drm/ in terms of supported hardware. > We even have a devices supported by two drivers, one in drivers/media/ and > one in drivers/gpu/drm/ (I'm thinking about the adv7511 in particular). > This is a well known issue, and so far nothing has been done in mainline > to try and solve it. I agree that there's an overlap between drivers/media/ and drivers/gpu/drm/, formally a hypothetical (sic!) DS90Ux9xx video bridge cell driver should be added into both subsystems also, and the actual driver of two should be selected in runtime. I call such a driver 'hypothetical', because in fact I don't have it, and I'm not so sure that its existence is justified, but that's only because DS90Ux9xx video bridge functionality is _transparent_, it does not have any controls literally, but it is a pure luck eventually. So, as I've stated in my cover letter, I can misuse yours 'lvds-encoder' driver only for the purpose of establishing a mediated link between an LVDS controller and a panel over a serializer-deserializer pair. > Trying to find another home in drivers/mfd/ to escape from the problem isn't a > good solution in my opinion. The best option from a Linux point of view would > be to unify V4L2 and DRM/KMS when it comes to bridge support, but that's a > long way down the road (I won't complain if you want to give it a go though > :-)). I return you a wider smile :) > As your use cases are display, focused, I would propose to start with > drivers/gpu/drm/bridge/, and leave the problem of camera support for first > person who will have such a use case. Frankly speaking I would like to start from copy-pasting your 'lvds-encoder' driver into an 'absolutely-transparent-video-bridge' driver with no LVDS or 'encoder' specifics, adding just a new compatible may suffice, if the driver is renamed/redefined. PS, I remember I owe you a reference OF snippet of data path to a panel. -- Best wishes, Vladimir