Received: by 2002:a05:6a10:7420:0:0:0:0 with SMTP id hk32csp151621pxb; Tue, 15 Feb 2022 10:13:13 -0800 (PST) X-Google-Smtp-Source: ABdhPJzyd06VQlQMN3+aRocbNbHA2WD2D35xmonrfDoHpWNSVRIoOTEve11obzru5O9vYltSAS+6 X-Received: by 2002:a17:90a:6e47:b0:1b9:1154:6635 with SMTP id s7-20020a17090a6e4700b001b911546635mr5842764pjm.118.1644948793697; Tue, 15 Feb 2022 10:13:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644948793; cv=none; d=google.com; s=arc-20160816; b=xHd/DZzFA/ZGm6YUTLHLdXsJnNIIXfzhazILBHV0hnZyB2ieY2NJTge8YHIdTncDYc yfgwNyNUWL+v9pmpmg8rQoUdsGMUT5W99bMkkOnJ+UIvxg3Epi55hJdO31fswrgmMjhD W/GmV/S782D8qAPH/6esE2TKNgss9gWD0BXKs9nJSktce24ZDDqTPan0HuOHTxGqX3Eo kvYkkTxoBOM4e+DYBWWId7xTZ+DBFBjyGAx3GcKw3bWI7ilh0C+al0NXXh417US1sTLx acySMbQOIrnikU+w0r0UR6kO+dIYMOqp/kpgFCuUUE0KiPTfsEAs1RXnFsFRo/xeOa4u t1mQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=LS4hPgd7dV04rjAhHdHjssJIYOoUsBWIO9kqkvLn6xc=; b=ZDexDy2oW/aRe8dh/pId/OwnYhtjHIKuiVDEqd+MVpcxb++I/49Ff5W90vioT7qVYp jSoclHjHvjlioa4NLxby1d5LxbAxr4/MY0DYvYZ6JWpe9vbEeO2ljhNj70DxgqOWJWuo n5YiaOY37gRu397ZHHkl1bGuCD3DxJqWC3WoF0QIV1aAV6E8ibSaRCnv0HYmypphT9IU irYI7EsSMj55uiDCpz9/6EYzRxShaMpH4bxTrBcIeRlnJ9cCk20e4M9yj5PguRLEda4U qvrbwCeokvvbxFE1KsSqI5DK7+uWTwv9WEHEilp3byZsxJjPBh2MOwCx1qVhotONVBBU 2HZA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id v189si10523676pfb.7.2022.02.15.10.12.56; Tue, 15 Feb 2022 10:13:13 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237669AbiBOM2O (ORCPT + 99 others); Tue, 15 Feb 2022 07:28:14 -0500 Received: from mxb-00190b01.gslb.pphosted.com ([23.128.96.19]:36490 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233510AbiBOM2M (ORCPT ); Tue, 15 Feb 2022 07:28:12 -0500 Received: from mx1.molgen.mpg.de (mx3.molgen.mpg.de [141.14.17.11]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 73246107D13; Tue, 15 Feb 2022 04:28:01 -0800 (PST) Received: from [192.168.0.2] (ip5f5aee0e.dynamic.kabel-deutschland.de [95.90.238.14]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) (Authenticated sender: pmenzel) by mx.molgen.mpg.de (Postfix) with ESMTPSA id 8CB0161EA1928; Tue, 15 Feb 2022 13:27:59 +0100 (CET) Message-ID: Date: Tue, 15 Feb 2022 13:27:59 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.6.0 Subject: Re: [PATCH 1/2] ahci: Add Green Sardine vendor ID as board_ahci_mobile Content-Language: en-US To: Hans de Goede , Mario Limonciello Cc: linux-ide@vger.kernel.org, LKML , Damien Le Moal , Nehal-bakulchandra Shah References: <20211112201539.17377-1-mario.limonciello@amd.com> <960946b8-8f73-9f81-735a-64e5cc555a9c@molgen.mpg.de> <6c846941-151d-e8a5-3ce8-a392b97186a8@molgen.mpg.de> <6e7678ba-1d56-155f-f5b7-3257bbd0d929@redhat.com> From: Paul Menzel In-Reply-To: <6e7678ba-1d56-155f-f5b7-3257bbd0d929@redhat.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,NICE_REPLY_A, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Dear Hans, Am 15.02.22 um 12:43 schrieb Hans de Goede: > On 2/15/22 08:05, Paul Menzel wrote: >> Am 14.02.22 um 17:07 schrieb Limonciello, Mario: >> >>> +Hans >>> >>>> (For the records, is part of Linux since 5.16-rc2 (commit 1527f69204fe).) >>>> >>>> Am 12.11.21 um 21:15 schrieb Mario Limonciello: >>>>> AMD requires that the SATA controller be configured for devsleep in order >>>>> for S0i3 entry to work properly. >>>>> >>>>> commit b1a9585cc396 ("ata: ahci: Enable DEVSLP by default on x86 with >>>>> SLP_S0") sets up a kernel policy to enable devsleep on Intel mobile >>>>> platforms that are using s0ix.  Add the PCI ID for the SATA controller in >>>>> Green Sardine platforms to extend this policy by default for AMD based >>>>> systems using s0i3 as well. >>>>> >>>>> Cc: Nehal-bakulchandra Shah >>>>> BugLink: >>>> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugz >>>> illa.kernel.org%2Fshow_bug.cgi%3Fid%3D214091&data=04%7C01%7Cm >>>> ario.limonciello%40amd.com%7Ca32a202d437544cd2cbb08d9ef9112c0%7C3d >>>> d8961fe4884e608e11a82d994e183d%7C0%7C0%7C637804228648002522%7CU >>>> nknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI >>>> 6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=CbfImBnwc8uV1L5QRBuV >>>> PLkP72wpS9yif1UbUwykhNI%3D&reserved=0 >> >> You have to love Microsoft Outlook. >> >>>>> Signed-off-by: Mario Limonciello >>>>> --- >>>>>    drivers/ata/ahci.c | 1 + >>>>>    1 file changed, 1 insertion(+) >>>>> >>>>> diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c >>>>> index d60f34718b5d..1e1167e725a4 100644 >>>>> --- a/drivers/ata/ahci.c >>>>> +++ b/drivers/ata/ahci.c >>>>> @@ -438,6 +438,7 @@ static const struct pci_device_id ahci_pci_tbl[] = { >>>>>        /* AMD */ >>>>>        { PCI_VDEVICE(AMD, 0x7800), board_ahci }, /* AMD Hudson-2 */ >>>>>        { PCI_VDEVICE(AMD, 0x7900), board_ahci }, /* AMD CZ */ >>>>> +    { PCI_VDEVICE(AMD, 0x7901), board_ahci_mobile }, /* AMD Green Sardine */ >>>> >>>> Aren't 0x7900 and 0x7901 the same device only in different modes? I >>>> wonder, why different boards and different comments are used. >>> >>> No they aren't the same device in different modes. >>> >>> Reference: >>> https://www.amd.com/en/support/tech-docs/processor-programming-reference-ppr-for-amd-family-19h-model-51h-revision-a1 >>> Page 33 has a table. >> >> That table misses 0x7900h. (Where can I find it?) coreboot has 0x7900 defined for Cezanne: >> >>     src/include/device/pci_ids.h:#define PCI_DEVICE_ID_AMD_CZ_SATA  0x7900 >>     src/soc/amd/stoneyridge/include/soc/pci_devs.h: * SATA_IDE_IDEVID              0x7900 >> >> The PCI database too [3]: >> >>> FCH SATA Controller [IDE mode] >> >> >>>> Additionally, the device 0x7901 is also present in desktop systems like >>>> Dell OptiPlex 5055 and MSI B350 MORTAR. Is `board_ahci_mobile` the right >>>> board then? Or should the flag `AHCI_HFLAG_IS_MOBILE` be renamed to >>>> avoid confusion? >>> >>> Are you having a problem or just want clarity in the enum definition? >> >> It’s more about clarity, and understanding the two different entries. >> >>> This was introduced by Hans in commit ebb82e3c79d2a to set LPM policy properly >>> for a number of mobile devices. >>> >>> My opinion here is that the policy being for "mobile" devices only is short sighted as power >>> consumption policy on desktops is also relevant as OEMs ship desktops that need to meet >>> various power regulations for those too. >>> >>> So I would be in the camp for renaming the flags. >> >> Why can’t the LPM policy, if available(?), not be set for `board_ahci` by default, so `board_ahci_mobile` could be removed? > > When I added this, which was around the Haswell / Broadwell times, enabling > LPM on mobile devices was not so much important for the direct power-saving, > but to allow the entire package (integrated southbridge-ish) to go to deeper > sleep (aka PC) states. > > Without this laptops would drain their batteries much faster, but at the same > time there were reports of LPM causing crashes and data corruption on some > systems, also see the list of ATA ids with a ATA_HORKAGE_NOLPM flag in > drivers/ata/libata-core.c . Which was added and grown over time to allow > enabling LPM by default without causing regressions. This seems to be related to the hard driver though, and not the chipset? > So when adding support for enabling LPM modes by default, to get the > desired power-savings by default I tried to do this on a minimal set of > devices, to avoid causing regressions. > > Another factor here is that in some cases LPM related issues went away > after either BIOS or disk/ssd firmware updates. So the motherboard firmware > is also a factor here and enabling LPM by default on non laptop(ish) > motherboards has never been tested. > > Also enabling some of the deeper LPM modes comes at a latency cost which > may be undesirable at servers. Note this just sets the initial default > LPM mode, this can always be changed by userspace later. Thank you for the elaborate explanation. What do you suggest in regards the 1022:7901, present in laptops and desktop systems? >>>>>        /* AMD is using RAID class only for ahci controllers */ >>>>>        { PCI_VENDOR_ID_AMD, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID, >>>>>          PCI_CLASS_STORAGE_RAID << 8, 0xffffff, board_ahci }, Kind regards, Paul >> [1]: https://review.coreboot.org/10418 >> [2]: https://review.coreboot.org/20200 >> [3]: https://pci-ids.ucw.cz/read/PC/1022/7900