Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp653771pxb; Thu, 19 Nov 2020 10:18:25 -0800 (PST) X-Google-Smtp-Source: ABdhPJyJv1EP6owaymLQx059162s4Ei5w0oWiFigFQycP5VAc11UQ1cit8TRLjFcr5qGQEGIdTJy X-Received: by 2002:a17:906:b01:: with SMTP id u1mr30644778ejg.427.1605809905111; Thu, 19 Nov 2020 10:18:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1605809905; cv=none; d=google.com; s=arc-20160816; b=viXrYttWSak/jQLlc91dd5TVPB2h8tD6sMuSK7lnd+BabDw7qIxeDKrwYsgmo6r+id TCPFXqGg7/xuYZSsz+4W9+egdm16KQaf/8M+6ks1ssz2xwCbJAjbpBKRAuKNZMT/o5rW yAqwem0Qh1VpRMg5drEfNMSjGdqNlDEnDep1nhmQvfoiurj6NYHyPM+gsReShd91Dizk j8YtxNqbv20QculAW69Bvc0qdqVzs8q4v1XsrI99P9Q/9x5J14Z9MZ7XcVcwcx93uT7w Rs5Q9u1oEMMmO7VzYcJx4LUzR8eIcSXZcYFdL64u5ihd6KsSdgQRaohnhcYHD4oxVA/K CJng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:date:message-id:in-reply-to:subject :cc:to:from:user-agent:references:dkim-signature; bh=i+JS9nIAw+GECBNSoIwtkPpHIDmmFYQRGIixkpNJ1pw=; b=dsUbtc/BZ5OHTZpksIe7UDTs5EaLf29mZOwpoIHkW8dyuQUw8pUjr/s/hTaUWYlW+o UjYw+6QjgY7ujNgYbJypz7w+4Ipt1b/+Jg/Byi+hVNzrVe6UkCuoV7WTN5z8moLoWqWw IL5iass/VEABPXk6JbhTykG68SB7Ns3Kq8csTAacdCusq8LydhfwGFPemtWRGxplT5tu BmKDiXvoMOPZJgdWXliOI1kXCDDIQrWdQHgFpZbHu9LJtJgcM9vkjmTHaPqjwfIh40In mVNXAfDoZOLiS42JFrdl6R+nl9AXBwZ3NHaRzEK5oXjQh00cpdedEWXKLBC9oijyy5vq DMBw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=zg6rI6Fj; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id mc11si307040ejb.154.2020.11.19.10.18.00; Thu, 19 Nov 2020 10:18:25 -0800 (PST) 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; dkim=pass header.i=@baylibre-com.20150623.gappssmtp.com header.s=20150623 header.b=zg6rI6Fj; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727923AbgKSSNQ (ORCPT + 99 others); Thu, 19 Nov 2020 13:13:16 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42148 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727117AbgKSSNQ (ORCPT ); Thu, 19 Nov 2020 13:13:16 -0500 Received: from mail-wr1-x442.google.com (mail-wr1-x442.google.com [IPv6:2a00:1450:4864:20::442]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9293FC0613CF for ; Thu, 19 Nov 2020 10:13:14 -0800 (PST) Received: by mail-wr1-x442.google.com with SMTP id 23so7424973wrc.8 for ; Thu, 19 Nov 2020 10:13:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=baylibre-com.20150623.gappssmtp.com; s=20150623; h=references:user-agent:from:to:cc:subject:in-reply-to:message-id :date:mime-version; bh=i+JS9nIAw+GECBNSoIwtkPpHIDmmFYQRGIixkpNJ1pw=; b=zg6rI6FjWtx5yXqCC3eLHjTWvBWBjg1h2q5QYfvH2FmSPWi64lw4J4yqCKxsAOikhQ tzatBgAynf2r72trUribQ+sF17eI4FYvcxa6wH6GTY+rt81q/N2RItEeLEuAENcle01k CHhlKNpdsW5aUypWfT1vJf47i2TaWTh0MkkO0lkx/nIaS4Zdi1r9aytKDGORWIyWXO3a CBGnycWSk3Md5BGDVTtO+X/7KV3EoZbKHyPjnGiAVFWa+H4eZfZmWs1IRG8f7gq+LCO5 5M1rbmYd8wXa76/+VCuj1+MRTu+6hoHfG/+LhHOvw+FqGKBPFelQ+JjKXQUJR++G70Zc uwZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:message-id:date:mime-version; bh=i+JS9nIAw+GECBNSoIwtkPpHIDmmFYQRGIixkpNJ1pw=; b=T41CflAfOVuW+FgIx+nE5wt0/hl1laZgO6F1eItRt9P26So6qh2q1cBZgpmD0nTplA ai8vgVpNdcvQDLWsRAfF/GaCmXzbwNGMZ8ymtQZ2qDn88g5AyZx0qlL+l6xhhqLCIjJ8 oEglyE3+VUPRjaO5vdT8dof/re/3uNUJUQ1AxL6SvI9WS0k2myPu+K1Vw/BJkFbKdADJ R3qo/s19BiCgQcgkwQq7CFg0WPd0O8AYClGLaw+o9wi0c6eIbv8zZ0Cnwp+RkYBknu8V NYJfFiBJFl4p9k70/MQ5q8acaFL57bB3wGLybYiLIlBI7UyXW791SBi6YHmm5q/73/hI iWzA== X-Gm-Message-State: AOAM532VSxra2bsoflw4QLCchnpIoW9+2qULzu3/wyv/yARija8XxhLJ ihiET2QX0rSE+UBoZ3BV+cVGKA== X-Received: by 2002:a5d:4bc7:: with SMTP id l7mr12495950wrt.105.1605809593341; Thu, 19 Nov 2020 10:13:13 -0800 (PST) Received: from localhost (253.35.17.109.rev.sfr.net. [109.17.35.253]) by smtp.gmail.com with ESMTPSA id 90sm1029734wrl.60.2020.11.19.10.13.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Nov 2020 10:13:12 -0800 (PST) References: <5fb5e094.1c69fb81.a2014.2e62@mx.google.com> <630e00e83cdd07ee5a0eaba9d3479554@kernel.org> <3f54de27-0fef-c5a1-8991-0a0614c90667@baylibre.com> User-agent: mu4e 1.4.10; emacs 27.1 From: Jerome Brunet To: Guillaume Tucker , Marc Zyngier , Neil Armstrong Cc: kernelci-results@groups.io, Kevin Hilman , linux-arm-kernel@lists.infradead.org, linux-amlogic@lists.infradead.org, Martin Blumenstingl , David Airlie , Daniel Vetter , dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: Re: next/master bisection: baseline.dmesg.emerg on meson-gxbb-p200 In-reply-to: Message-ID: <1jr1op8bbc.fsf@starbuckisacylon.baylibre.com> Date: Thu, 19 Nov 2020 19:13:11 +0100 MIME-Version: 1.0 Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu 19 Nov 2020 at 19:04, Guillaume Tucker wrote: > Hi Marc, > > On 19/11/2020 11:58, Marc Zyngier wrote: >> On 2020-11-19 10:26, Neil Armstrong wrote: >>> On 19/11/2020 11:20, Marc Zyngier wrote: >>>> On 2020-11-19 08:50, Guillaume Tucker wrote: >>>>> Please see the automated bisection report below about some kernel >>>>> errors on meson-gxbb-p200. >>>>> >>>>> Reports aren't automatically sent to the public while we're >>>>> trialing new bisection features on kernelci.org, however this one >>>>> looks valid. >>>>> >>>>> The bisection started with next-20201118 but the errors are still >>>>> present in next-20201119. Details for this regression: >>>>> >>>>> https://kernelci.org/test/case/id/5fb6196bfd0127fd68d8d902/ >>>>> >>>>> The first error is: >>>>> >>>>> [ 14.757489] Internal error: synchronous external abort: 96000210 >>>>> [#1] PREEMPT SMP >>>> >>>> Looks like yet another clock ordering setup. I guess different Amlogic >>>> platforms have slightly different ordering requirements. >>>> >>>> Neil, do you have any idea of which platform requires which ordering? >>>> The variability in DT and platforms is pretty difficult to follow (and >>>> I don't think I have such board around). >>> >>> The requirements should be the same, here the init was done before calling >>> dw_hdmi_probe to be sure the clocks and internals resets were deasserted. >>> But since you boot from u-boot already enabling these, it's already active. >>> >>> The solution would be to revert and do some check in meson_dw_hdmi_init() to >>> check if already enabled and do nothing. >> >> A better fix seems to be this, which makes it explicit that there is >> a dependency between some of the registers accessed from meson_dw_hdmi_init() >> and the iahb clock. >> >> Guillaume, can you give this a go on your failing box? > > I confirm it solves the problem. Please add this to your fix > patch if it's OK with you: > > Reported-by: "kernelci.org bot" > Tested-by: Guillaume Tucker > > > For the record, it passed all the tests when applied on top of > the "bad" revision found by the bisection: > > http://lava.baylibre.com:10080/scheduler/alljobs?search=v5.10-rc3-1021-gb8668a2e5ea1 > > and the exact same test on the "bad" revision without the fix > consistently showed the error: > > http://lava.baylibre.com:10080/scheduler/job/374176 > > > Thanks, > Guillaume > > >> diff --git a/drivers/gpu/drm/meson/meson_dw_hdmi.c b/drivers/gpu/drm/meson/meson_dw_hdmi.c >> index 7f8eea494147..52af8ba94311 100644 >> --- a/drivers/gpu/drm/meson/meson_dw_hdmi.c >> +++ b/drivers/gpu/drm/meson/meson_dw_hdmi.c >> @@ -146,6 +146,7 @@ struct meson_dw_hdmi { >> struct reset_control *hdmitx_ctrl; >> struct reset_control *hdmitx_phy; >> struct clk *hdmi_pclk; >> + struct clk *iahb_clk; >> struct clk *venci_clk; >> struct regulator *hdmi_supply; >> u32 irq_stat; >> @@ -1033,6 +1034,13 @@ static int meson_dw_hdmi_bind(struct device *dev, struct device *master, >> } >> clk_prepare_enable(meson_dw_hdmi->hdmi_pclk); >> >> + meson_dw_hdmi->iahb_clk = devm_clk_get(dev, "iahb"); >> + if (IS_ERR(meson_dw_hdmi->iahb_clk)) { >> + dev_err(dev, "Unable to get iahb clk\n"); >> + return PTR_ERR(meson_dw_hdmi->iahb_clk); >> + } >> + clk_prepare_enable(meson_dw_hdmi->iahb_clk); If you guys are going ahead with this fix, this call to clk_prepare_enable() needs to be balanced with clk_disable_unprepare() somehow >> + >> meson_dw_hdmi->venci_clk = devm_clk_get(dev, "venci"); >> if (IS_ERR(meson_dw_hdmi->venci_clk)) { >> dev_err(dev, "Unable to get venci clk\n"); >> @@ -1071,6 +1079,8 @@ static int meson_dw_hdmi_bind(struct device *dev, struct device *master, >> >> encoder->possible_crtcs = BIT(0); >> >> + meson_dw_hdmi_init(meson_dw_hdmi); >> + >> DRM_DEBUG_DRIVER("encoder initialized\n"); >> >> /* Bridge / Connector */ >> @@ -1095,8 +1105,6 @@ static int meson_dw_hdmi_bind(struct device *dev, struct device *master, >> if (IS_ERR(meson_dw_hdmi->hdmi)) >> return PTR_ERR(meson_dw_hdmi->hdmi); >> >> - meson_dw_hdmi_init(meson_dw_hdmi); >> - >> next_bridge = of_drm_find_bridge(pdev->dev.of_node); >> if (next_bridge) >> drm_bridge_attach(encoder, next_bridge, >> >>