Received: by 2002:a05:6a10:a841:0:0:0:0 with SMTP id d1csp783656pxy; Wed, 28 Apr 2021 14:11:58 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxd42T/w6567+5AvlfutG3f/3KjDgpcLhwwcAfx95u8aGOCqzUKRraYE7838k2pSBmgWVIG X-Received: by 2002:aa7:cd90:: with SMTP id x16mr13938538edv.182.1619644318702; Wed, 28 Apr 2021 14:11:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619644318; cv=none; d=google.com; s=arc-20160816; b=ybxOlOWVOMpejE3HPLyfvPV85Mzu3PC8MbLc2d9y52K4kaFCMfTxthMcrqpkm7JaG/ 1y5xMav4VvpwzrYUaDb2sS6uV02FGhZ7sAdkXi7aHtry8RViSoCXR/5v3TVL5Bov6zpU 0FJD2F9PHH3LaeLoSWRU6T279/jpALDe1EmHz9NTwESlj3nT6TM+F8v/d5uknzbZkC9g vqiRKLQsk4pQvpn6Lyt71BSK9LMViFwEKAhz1hATaZmDMWsbA+jlnsD2u9w15i0Hv+Oz 1pYuRYsvo9gBmcE9Tkef48QUa0EAkl/8cWf3CmcSenHJGmEFd5/wiBBJrHeckno2zs6q h40w== 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:from:references :cc:to:subject:dkim-signature; bh=wMabVH0ExtCWX2/wFa5+AtEFnFN0QYvKQkf+hCG3bPg=; b=eAur/3bsKDTAJ+bD+qTBqiCt7IfXNw3FofZechPia5F/fSpOEHy3NwHNgxxWTAgxhU lyCQ3v4Jqd8ZynNdUUyuyACtwFnUeDLauRmtBs/2EXnGPrN5kFnrk70VPks1wv8+RpV9 BFx7hlrI2g8V7g0Xo99NEI9LmA3RdO52+LlnB/GFc6PQ/TnWm+Q0QcU5wKUVEOOHBM0X S/Qr4q/uCC/B6SPY3KQrRIQfzXjkVK9hAgk6xkMfL+d5OkRU7ZQALzA0anww1A2MWh06 SMtXGHkIVsMes38yVbFS2ixHPJBgOROIOeHEhaW42ZPFgpcefn1lC4sdGWhu7LMeAvhC VZlQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=u490ivj9; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id eb13si953360edb.314.2021.04.28.14.11.33; Wed, 28 Apr 2021 14:11:58 -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; dkim=pass header.i=@gmail.com header.s=20161025 header.b=u490ivj9; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229939AbhD1VDv (ORCPT + 99 others); Wed, 28 Apr 2021 17:03:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36738 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229624AbhD1VDv (ORCPT ); Wed, 28 Apr 2021 17:03:51 -0400 Received: from mail-pj1-x102a.google.com (mail-pj1-x102a.google.com [IPv6:2607:f8b0:4864:20::102a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3510CC06138A; Wed, 28 Apr 2021 14:03:04 -0700 (PDT) Received: by mail-pj1-x102a.google.com with SMTP id z6-20020a17090a1706b0290155e8a752d8so1289247pjd.4; Wed, 28 Apr 2021 14:03:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=wMabVH0ExtCWX2/wFa5+AtEFnFN0QYvKQkf+hCG3bPg=; b=u490ivj9sdEMW+0Yl2DMwSEvsCDhomynsFqu2mbdCpByf64F3TXMEG/ZWwDikzr3Xr vaCTDQHx/V+JaOOUYVg7NZ8rTKFTQn2UOVhZArEFXMxrInJ6WQauLGgPwUk/f1B8NOzs rJCYHOBanXAETJdr9Mt6V+H1t41UKZTFBwAJSa2FQ8OYlp0wuqsquEuHJ6iRgmTPFeVI xAAsHoXF4xoleJPGKc+RSDRf+ugiQ/gUDJVQuihvHyXKZdWn7clxrUSeywKLUlRSyyal bxGogFAD97XUA7mo5N5gXuxvFLBWfXwdepO5STnbNpyRNe3JICcOp2gMT9lQ9RFtALYf DdMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=wMabVH0ExtCWX2/wFa5+AtEFnFN0QYvKQkf+hCG3bPg=; b=EzmUEs/etPdhEpLCA7KULG3qQn7GOgFIxlUdSJQKOhtOCWGJ4XwwpCk8qSn3+ZykTR qfkKt62JWJTYS5bGPiM1CjivFOVlnGF1dTUfY1Q5jwkrGOXSAYYW93/uvlbIcrz3a45k HKONXgHCUy0I9hYPBRxim9/wk3gruRVlV494ATgBC2KNC24tpyX5WmYfg+8dJl4vioA6 nwkiaJoKsZgqawPGUyhaJQGsQSP+caWhW+kwBkvA3mZs5P9Px6KRmFpx06+rS1RgGszD QTg7KB+3OtfaOKL6uvA4CshEejxN0gVE+LWCCY76LAdRkG0VN1eFjHSbHbq5PAyBuBlK k1MA== X-Gm-Message-State: AOAM530iDEVt7Ao0Exm0LbhQGfG9rONeCFVTAWt3xPNjZyt1895IqR86 5XpMPn56f2qdNsQNls4esG0= X-Received: by 2002:a17:90a:5602:: with SMTP id r2mr7103814pjf.60.1619643783543; Wed, 28 Apr 2021 14:03:03 -0700 (PDT) Received: from [10.230.29.202] ([192.19.223.252]) by smtp.gmail.com with ESMTPSA id n39sm515076pfv.51.2021.04.28.14.03.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 28 Apr 2021 14:03:02 -0700 (PDT) Subject: Re: [PATCH v5 0/2] ata: ahci_brcm: Fix use of BCM7216 reset controller To: Bjorn Helgaas , Jim Quinlan Cc: Jim Quinlan , linux-pci@vger.kernel.org, Nicolas Saenz Julienne , bcm-kernel-feedback-list@broadcom.com, Florian Fainelli , Hans de Goede , Jens Axboe , Jim Quinlan , linux-arm-kernel@lists.infradead.org, linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org, linux-rpi-kernel@lists.infradead.org, Lorenzo Pieralisi , Rob Herring , Amjad Ouled-Ameur , Philipp Zabel References: <20210428205319.GA429792@bjorn-Precision-5520> From: Florian Fainelli Message-ID: Date: Wed, 28 Apr 2021 14:03:00 -0700 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0 Thunderbird/78.10.0 MIME-Version: 1.0 In-Reply-To: <20210428205319.GA429792@bjorn-Precision-5520> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 4/28/2021 1:53 PM, Bjorn Helgaas wrote: > [+cc Amjad, Philipp: possible issue with 557acb3d2cd9 ("reset: make > shared pulsed reset controls re-triggerable") below; report at > https://lore.kernel.org/linux-ide/20210428200058.GA366202@bjorn-Precision-5520/] > > On Wed, Apr 28, 2021 at 04:34:00PM -0400, Jim Quinlan wrote: >> On Wed, Apr 28, 2021 at 4:01 PM Bjorn Helgaas wrote: >>> On Fri, Mar 12, 2021 at 03:45:53PM -0500, Jim Quinlan wrote: >>>> v5 -- Improved (I hope) commit description (Bjorn). >>>> -- Rnamed error labels (Krzyszt). >>>> -- Fixed typos. >>>> >>>> v4 -- does not rely on a pending commit, unlike v3. >>>> >>>> v3 -- discard commit from v2; instead rely on the new function >>>> reset_control_rearm provided in a recent commit [1] applied >>>> to reset/next. >>>> -- New commit to correct pcie-brcmstb.c usage of a reset controller >>>> to use reset/rearm verses deassert/assert. >>>> >>>> v2 -- refactor rescal-reset driver to implement assert/deassert rather than >>>> reset because the reset call only fires once per lifetime and we need >>>> to reset after every resume from S2 or S3. >>>> -- Split the use of "ahci" and "rescal" controllers in separate fields >>>> to keep things simple. >>>> >>>> v1 -- original >>>> >>>> Jim Quinlan (2): >>>> ata: ahci_brcm: Fix use of BCM7216 reset controller >>>> PCI: brcmstb: Use reset/rearm instead of deassert/assert >>>> >>>> drivers/ata/ahci_brcm.c | 46 +++++++++++++-------------- >>>> drivers/pci/controller/pcie-brcmstb.c | 19 +++++++---- >>>> 2 files changed, 36 insertions(+), 29 deletions(-) >>> >>> Tripped over these errors while build testing with the .config below. >>> This is on the pci/brcmstb branch from >>> git://git.kernel.org/pub/scm/linux/kernel/git/lpieralisi/pci.git >>> >>> Dropping the pci/brcmstb branch while we get this figured out. This will >>> remove the following commits: >>> >>> a24fd1d6469f ("PCI: brcmstb: Use reset/rearm instead of deassert/assert") >>> 92b9cb55a9b6 ("ata: ahci_brcm: Fix use of BCM7216 reset controller") >>> b5d9209d5083 ("PCI: brcmstb: Fix error return code in brcm_pcie_probe()") >> >> Hi Bjorn, >> >> I believe the problem is that the commit >> >> 557acb3d2cd9c82de19f944f6cc967a347735385 >> "reset: make shared pulsed reset controls re-triggerable" >> >> defined reset_control_rearm() for the CONFIG_RESET_CONTROLLER=y case >> but forgot to define an empty function for the unset case. Your test >> .config has this CONFIG unset. >> >> Would you like me to resubmit this with an additional commit that >> fixes this? > > The fix could be a patch along those lines, or it could be a Kconfig > change that makes this config impossible. I didn't look deeper to see > what makes sense. But I don't think the fix should be "manually avoid > this configuration." > > It looks like 557acb3d2cd9 ("reset: make shared pulsed reset controls > re-triggerable") appeared in v5.11, so if a patch is the right thing, > it should probably be marked for stable ("v5.11+"). All of the other reset controller API have inline stubs when CONFIG_RESET_CONTROLLER is disabled, not having one for reset_control_rearm() seems like an oversight (easy to make since if you introduce the API you obviously needed it and did not consider the case where it may not be available). I agree this would be stable material. -- Florian