Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp54942pxb; Fri, 29 Oct 2021 05:45:43 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwnyrreyrfiutawpLoCnj+GIcIWn/gmA21n0ybGu0fc4iwqaayzHM8DwarYcsagmtp2T8/f X-Received: by 2002:a05:6402:1c1c:: with SMTP id ck28mr4574153edb.300.1635511543301; Fri, 29 Oct 2021 05:45:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1635511543; cv=none; d=google.com; s=arc-20160816; b=JUGhSkE0DSUI4dV0oEDZpmfQix0RCz+8/M26deFGvlVEyik95ZJvp+dZ5KG+DVsqkl pz7r89DwuNf21rTKWvRPztyNS2FoqlH8BpiXzoJehsPzu327FNCa2XwIAbV0p952OS5l LMap60wWrEH0M4drKqJz+f2anamA71H2CKk6DNUnIUqvm2TQ2yVVEPkwidPscFteLAQs LsmUkacloTDKBJJaN1/FYAeejLjX/dmnFjXCJnOBqf/1Xg6kWiPy4EXr3O/o26x+j9mp Uob/GCdCgFs+Uw5GWPvMQ2f/Jmmm1vlgmfcXn0jcgDycr0yH/mfunm4yvs92fGXvfNkL Letw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:references:cc :to:from:subject; bh=FrVV7xWiCnHsZi9ET93kNNFflvtCp9tM4/cgDpHi3dE=; b=BCV3Rl48QDobabq+39lpx1SS2jTANLdvgk/SbhphuWC4CT+PLPBKWAKml83orIXuaK T8HYCDwd39kT0TNt40BFLG7OmC4TyzQ/BjYBg6LoaI8zt2El765oeS3tk0kN7qZx4Yd2 TzS0kfqTMrPaTPv+Hb/aS5Ycz7NBbzU2W481wMCoUv2gAqcTNIR+qLwB1o5nq3jrqulB N9f8S0yMEe9jGT7g2triZjBEE4geqGeXB3724J8Ida52mt5GQZHQgI6cfwrYGJnNz1HN XiY84SPjh10+0fU9cs5JCjN0cw84dQ0czAX6jSPpgA2K/5/K/ib7GsUNBuUOAHaoPaaS taSA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=collabora.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id eb13si13166420edb.483.2021.10.29.05.45.17; Fri, 29 Oct 2021 05:45:43 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231519AbhJ2Mp1 (ORCPT + 99 others); Fri, 29 Oct 2021 08:45:27 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48978 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230134AbhJ2MpY (ORCPT ); Fri, 29 Oct 2021 08:45:24 -0400 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E2C1BC061570 for ; Fri, 29 Oct 2021 05:42:55 -0700 (PDT) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: kholk11) with ESMTPSA id 137AE1F45A17 Subject: Re: [PATCH] arm64: defconfig: enable regulator to fix mt8173 regression From: AngeloGioacchino Del Regno To: Adrian Ratiu , Catalin Marinas , Will Deacon , Matthias Brugger Cc: linux-mediatek@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernel@collabora.com, "kernelci.org bot" , Guillaume Tucker , Enric Balletbo Serra References: <20211011125301.3440033-1-adrian.ratiu@collabora.com> Message-ID: <03eb0fb9-f2bc-f22d-9c57-2d7d132a30c2@collabora.com> Date: Fri, 29 Oct 2021 14:42:51 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.13.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Il 19/10/21 16:38, AngeloGioacchino Del Regno ha scritto: > Il 11/10/21 14:53, Adrian Ratiu ha scritto: >> A regression was introduced on some mediatek boards starting with >> v5.15-rc1 in commit 109fd20601e2b ("arm64: dts: mediatek: mt8173: >> Add domain supply for mfg_async") which effectively changed the >> regulator from the always-on dummy to DA9211 without explicitely >> enabling it, causing failures like the these caught by KernelCI >> on Hana Chromebooks [1]: >> >> mtk-power-controller 10006000.syscon:power-controller: supply domain not found, >> using dummy regulator >> mtu3 11271000.usb: supply vbus not found, using dummy regulator >> xhci-mtk 11270000.usb: supply vbus not found, using dummy regulator >> >> There might be another bug linking these power domains in the >> mediatek PM driver, but that is a separate issue wich needs >> addressing, for now just fix the obvious regression due to the >> new regulator requirement. >> >> [1] https://github.com/kernelci/kernelci-project/issues/66 >> Reported-by: "kernelci.org bot" >> Cc: Guillaume Tucker >> Suggested-by: Enric Balletbo Serra >> Signed-off-by: Adrian Ratiu >> --- >> ? arch/arm64/configs/defconfig | 1 + >> ? 1 file changed, 1 insertion(+) >> >> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig >> index 156d96afbbfc..4901cc1213bb 100644 >> --- a/arch/arm64/configs/defconfig >> +++ b/arch/arm64/configs/defconfig >> @@ -616,6 +616,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=y >> ? CONFIG_REGULATOR_AXP20X=y >> ? CONFIG_REGULATOR_BD718XX=y >> ? CONFIG_REGULATOR_BD9571MWV=y >> +CONFIG_REGULATOR_DA9211=y >> ? CONFIG_REGULATOR_FAN53555=y >> ? CONFIG_REGULATOR_GPIO=y >> ? CONFIG_REGULATOR_HI6421V530=y >> > > Hello, > > I've been able to get a working Hana boot, with USB probed as early as possible, as > well solving that KernelCI failure (as now also the usb network works fine again). > > My proposal here, for which I have a patch that's almost ready, would be to enable > this regulator driver as a module instead (since Hana is the only device that's > using it), avoiding to increase the kernel image size for everyone. > > > Before pointing out my solution, let's first point out what's going on: > > In mt8173.dtsi, we have a power-controller node (mediatek,mt8173-power-controller), > under which all of the SoC's power domain nodes are defined. In this node, we have > both SCPD_DOMAIN_SUPPLY domains and "regular" ones. > > The difference between SCPD domains and the others is that the first ones require a > parent regulator, while the latter don't (power is supplied from some .. internal > supply? - either way, no parent vreg necessary/declared). > As a note, for now, the only two MediaTek SoCs that have a SCPD supply are MT8173 > and MT8183... and nothing else, as the others, including the newer ones seem to > have no such supplies (the only newer one upstream is MT8192 and has none). > > > My solution was to split the power-controller node in two: > 1. spm: power-controller@0 - contains all of the non-SCPD power domains > 2. spm_scpd: power-controller@1 - contains the SCPD power domains. > > This made me able to get a full boot without usb/usb-eth issues while enabling this > regulator as a module; this also requires us to change the > mediatek,power-controller.yaml binding to allow multiple instances of that driver, > which is anyway already permitted by the mtk-pm-domains driver itself. > > > Hence, this question comes up: how should we proceed? should we... > a. enable this regulator driver as module and split the power-controller in two; or > b. keep this commit enabling this driver built-in and still split the > ?? power-controller nodes; or > c. just enable this driver as built-in and not care about declaring two power > ?? controller nodes? > > Can you please give us an advice? > > Thank you, > - Angelo After a discussion on this topic, we chose to pursue option B, as enabling this regulator fixes a very bad regression. Splitting the power-controller nodes does require a bit of time due to some more research that has to be done on that topic. Adrian will follow with a v2 of this patch, adding a Fixes tag. Thanks everyone, - Angelo