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 X-Spam-Level: X-Spam-Status: No, score=-8.6 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED,USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DC89BC282C0 for ; Wed, 23 Jan 2019 22:22:06 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id A170F21872 for ; Wed, 23 Jan 2019 22:22:06 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="jgEuhTxM" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726977AbfAWWWE (ORCPT ); Wed, 23 Jan 2019 17:22:04 -0500 Received: from perceval.ideasonboard.com ([213.167.242.64]:51816 "EHLO perceval.ideasonboard.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726152AbfAWWWE (ORCPT ); Wed, 23 Jan 2019 17:22:04 -0500 Received: from pendragon.ideasonboard.com (dfj612yhrgyx302h3jwwy-3.rev.dnainternet.fi [IPv6:2001:14ba:21f5:5b00:ce28:277f:58d7:3ca4]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 9A8B523F; Wed, 23 Jan 2019 23:22:01 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1548282121; bh=9A3f5OSG15SIiC6YnoKy7rcj+n56dcYwYo6pOD3aktE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=jgEuhTxMABK2ccyzsvieAN5IpNYKJPgGfnm7Tdz/WDrGKf+wcCW/j7bQX9QUstc3A jFzYc1zXFTMQaaEWraiRlK4adj3Ye+6KxlPVM0BtzNQ1hEDvfRSnRcg0hD61NTlrZ3 LGplkUoFUSX/3ai9lbMr10pJi3p6OxF/0F8v9ICc= Date: Thu, 24 Jan 2019 00:22:00 +0200 From: Laurent Pinchart To: Dmitry Torokhov Cc: Lukas Wunner , Ronald =?utf-8?B?VHNjaGFsw6Ry?= , Andrzej Hajda , Inki Dae , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org, linux-input@vger.kernel.org Subject: Re: [PATCH] drm/bridge: sil_sii8620: depend on INPUT instead of selecting it. Message-ID: <20190123222200.GF4675@pendragon.ideasonboard.com> References: <20190122141311.10445-1-ronald@innovation.ch> <20190123084556.gsospl6joh53qnzs@wunner.de> <20190123220342.GC179701@dtor-ws> <20190123221735.GE4675@pendragon.ideasonboard.com> <20190123222105.GF179701@dtor-ws> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20190123222105.GF179701@dtor-ws> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello Dmity, On Wed, Jan 23, 2019 at 02:21:05PM -0800, Dmitry Torokhov wrote: > On Thu, Jan 24, 2019 at 12:17:35AM +0200, Laurent Pinchart wrote: > > On Wed, Jan 23, 2019 at 02:03:42PM -0800, Dmitry Torokhov wrote: > >> On Wed, Jan 23, 2019 at 09:45:56AM +0100, Lukas Wunner wrote: > >>> On Tue, Jan 22, 2019 at 06:13:11AM -0800, Ronald Tschalär wrote: > >>>> commit d6abe6df706c66d803e6dd4fe98c1b6b7f125a56 (drm/bridge: > >>>> sil_sii8620: do not have a dependency of RC_CORE) added a dependency on > >>>> INPUT. However, this causes problems with other drivers, in particular > >>>> an input driver that depends on MFD_INTEL_LPSS_PCI (to be added in a > >>>> future commit): > >>>> > >>>> drivers/clk/Kconfig:9:error: recursive dependency detected! > >>>> drivers/clk/Kconfig:9: symbol COMMON_CLK is selected by MFD_INTEL_LPSS > >>>> drivers/mfd/Kconfig:566: symbol MFD_INTEL_LPSS is selected by MFD_INTEL_LPSS_PCI > >>>> drivers/mfd/Kconfig:580: symbol MFD_INTEL_LPSS_PCI is implied by KEYBOARD_APPLESPI > >>>> drivers/input/keyboard/Kconfig:73: symbol KEYBOARD_APPLESPI depends on INPUT > >>>> drivers/input/Kconfig:8: symbol INPUT is selected by DRM_SIL_SII8620 > >>>> drivers/gpu/drm/bridge/Kconfig:83: symbol DRM_SIL_SII8620 depends on DRM_BRIDGE > >>>> drivers/gpu/drm/bridge/Kconfig:1: symbol DRM_BRIDGE is selected by DRM_PL111 > >>>> drivers/gpu/drm/pl111/Kconfig:1: symbol DRM_PL111 depends on COMMON_CLK > >>>> > >>>> According to the docs, select should only be used for non-visible > >>>> symbols. Furthermore almost all other references to INPUT throughout the > >>>> kernel config are depends, not selects. Hence this change. > >> > >> I think this is not as cut and dry. We should be able to select needed > >> subsystems (such as INPUT, USB, etc) even if they are user visible. > > > > Semantically, maybe, but given the current state of Kconfig this results > > in a recursive dependencies nightmare. It's a no-go. > > > >> User, when enabling a piece of hardware, does not need to know ultimate > >> details of all subsystems the driver might need ti function. > >> > >> It looks like one of the drivers implies MFD_INTEL_LPSS_PCI, maybe > >> treating imply the same as select when detecting circular dependency is > >> wrong as we are allowed to deselect implied dependencies? > >> > >>>> > >>>> CC: Inki Dae > >>>> CC: Andrzej Hajda > >>>> Signed-off-by: Ronald Tschalär > >>> > >>> Reviewed-by: Lukas Wunner > >>> > >>> I think this needs to be merged through the input tree as a prerequisite > >>> for the applespi.c driver (keyboard + touchpad driver for 2015+ MacBook, > >>> MacBook Air and MacBook Pro which uses SPI instead of USB) to avoid > >>> breaking the build. Adding Dmitry. > >> > >> I have no idea what applespi.c is (it is definitely not in my tree), so > >> I think it should be merged through the same tree that the original > >> commit was introduced through. > >> > >>>> --- > >>>> drivers/gpu/drm/bridge/Kconfig | 2 +- > >>>> 1 file changed, 1 insertion(+), 1 deletion(-) > >>>> > >>>> diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig > >>>> index 2fee47b0d50b..eabedc83f25c 100644 > >>>> --- a/drivers/gpu/drm/bridge/Kconfig > >>>> +++ b/drivers/gpu/drm/bridge/Kconfig > >>>> @@ -83,9 +83,9 @@ config DRM_PARADE_PS8622 > >>>> config DRM_SIL_SII8620 > >>>> tristate "Silicon Image SII8620 HDMI/MHL bridge" > >>>> depends on OF > >>>> + depends on INPUT > >>>> select DRM_KMS_HELPER > >>>> imply EXTCON > >>>> - select INPUT > >>>> select RC_CORE > >> > >> Keeping "select RC_CORE" is wrong though, as the driver appears to be > >> working find without RC. Maybe it should be stubbed out? > > > > It should definitely not be select'ed as it's a user-visible symbol. My > > preference would be to simply revert d6abe6df706c. If we want (and can) > > work without RC core then it should be stubbed out. > > > > Commit d6abe6df706c states > > > > And some boards not using remote controller device don't really > > need to know that RC_CORE config should be enabled to use sil_sii8620 > > driver only for HDMI. > > > > The same reasoning applies to INPUT, if we agree that depending on > > RC_CORE is confusing for users, then depending on INPUT is confusing as > > well. There's not reason to apply different standards to INPUT and > > RC_CORE, depending on one and selecting the other doesn't make much > > sense. > > OK, so revert + patch to stub out RC calls? That works for me (and I > still say it should go through the same tree that introduced > d6abe6df706c). Yes, that sounds good to me. -- Regards, Laurent Pinchart