Received: by 2002:a05:6a10:2726:0:0:0:0 with SMTP id ib38csp5629014pxb; Mon, 28 Mar 2022 15:11:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzJ5vAtml+qg+MHp5r1Io+xbNFwUH5VXytvl8uUwwmmLBQ9f/acSyvgQwJVAcG7+Bu0N8U7 X-Received: by 2002:a05:6871:694:b0:dd:a43e:fc9f with SMTP id l20-20020a056871069400b000dda43efc9fmr614071oao.225.1648505491991; Mon, 28 Mar 2022 15:11:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1648505491; cv=none; d=google.com; s=arc-20160816; b=zm+cYqRFRUIijh5hOa95QVUE2KXbimwEtN9ADhYuDUOAtrjRpBEbzQaIjM/nhG2gdq qoUN9IchHVCykLXsLOExLj7QaLTKXHx23GObOToQkEtxEOcGyVSqS3sPGzr4RiyuZER/ H5x31qovbO7K8FuGr+fIFUz6Vd4D5gwialovVcoe5izjDFkej6rWoLuBPpnUyKKENxzZ iiQiJF4wlXXex/CcZSIOIEWU2TbQohXCRz3jjiUyOob4GY5VCXIAWQYEZoom44B8SMXe l3ckxoqB9r2WGIugU6IeMeAABLrUtzwTiPKjCYNPLEuu4zeU+gu8Wkwwq01Rhtuh1zuq 0v6A== 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=wbmtuFgYk21OVybrhPNThf688k7OlnshZ2rECopA1sQ=; b=evU0yla1duBLSJJJ7FkiWqYArPnkfCtsGc3KsbkQkjvJt0ZZaIh7G8DQAaqOUHMHNj VWD2+iDtfAJXfj2wXqX4nsZaY0Y4Up+3xkUz1yJK3p1TsALzVjVgAVdQqSK2NpK9h/o9 JkoHhIlp8DlF92FLec0/dt9A6Wfat6baB1XlHjGO6vLetffdYjUl600G94mYcGpojg5q GHPw40+oB0RCCA0kWBh/M1/jj35TkbYpQcKW8Jb9/9fQFlVk9EYD668/tt4/EnroKS/X 4IOIxqUuL9otdRfE40tzUbuJnZjJB8GBS7TSo+koGYmB0xF06qLA7qnaIO71/yeZaOuR 78hw== 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:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [2620:137:e000::1:18]) by mx.google.com with ESMTPS id b2-20020a4a8782000000b003244bc5df36si10747646ooi.50.2022.03.28.15.11.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Mar 2022 15:11:31 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) client-ip=2620:137:e000::1:18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 4CEC31637CF; Mon, 28 Mar 2022 14:31:38 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242080AbiC1Ly4 (ORCPT + 99 others); Mon, 28 Mar 2022 07:54:56 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40684 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S241514AbiC1Lyq (ORCPT ); Mon, 28 Mar 2022 07:54:46 -0400 Received: from mail-ed1-f52.google.com (mail-ed1-f52.google.com [209.85.208.52]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 16712377D0; Mon, 28 Mar 2022 04:49:22 -0700 (PDT) Received: by mail-ed1-f52.google.com with SMTP id a17so16574175edm.9; Mon, 28 Mar 2022 04:49:22 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=wbmtuFgYk21OVybrhPNThf688k7OlnshZ2rECopA1sQ=; b=DUus5YkXMkLwPHuMSYWpSbAzEXKGC7Ax8I4gLTBEAU+OOe7y2W8iqUcJvefaKdlUrI cTo/YO6lFVWMCYHS8k3iPDCUO8bSrg1kjG5dIHkXlsRGeClBuJgjmN2agwAlK9XSljKm 2/2wRWSwgojkS5EjDMg6E4PPrQe4Z7chakGYt4qow8Ep4l+VJn7JyO+Ag0S2t+fjwCYL c44IJDiWb9QMSWWamjJFA7ZgY96yZNmd/NQ1SKXSchyOPI1EwOa9CebK+IfF2CN/g4/q SfrXLM41BhL8N1BkC10jatnFv3FTUOkRCOHldzmL50CbUg8QveVEI2Mnzl11ogKOVpeJ x6gA== X-Gm-Message-State: AOAM533/LymGBHtkiU11xyP+BtzLsdrzWp2jVPVZnAr8hNECH7hRtK5h /hoi9Zi9srLYcJmeQeKVLC4= X-Received: by 2002:a05:6402:3488:b0:419:172c:e287 with SMTP id v8-20020a056402348800b00419172ce287mr15585663edc.87.1648468160467; Mon, 28 Mar 2022 04:49:20 -0700 (PDT) Received: from [192.168.0.162] (xdsl-188-155-201-27.adslplus.ch. [188.155.201.27]) by smtp.googlemail.com with ESMTPSA id f3-20020a056402004300b004162aa024c0sm6850041edu.76.2022.03.28.04.49.19 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 28 Mar 2022 04:49:19 -0700 (PDT) Message-ID: <5c24c12b-3a12-1e18-9f03-2c54cad30bf9@kernel.org> Date: Mon, 28 Mar 2022 13:49:18 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.5.0 Subject: Re: [PATCH 3/5] arm64: dts: imx8mp: Enable HS400-ES Content-Language: en-US To: Ahmad Fatoum , Adam Ford , Krzysztof Kozlowski Cc: linux-mmc , devicetree , Ulf Hansson , Fabio Estevam , Shawn Guo , Sascha Hauer , Adam Ford-BE , Haibo Chen , Linux Kernel Mailing List , Rob Herring , NXP Linux Team , Pengutronix Kernel Team , arm-soc References: <20220327123835.28329-1-aford173@gmail.com> <20220327123835.28329-3-aford173@gmail.com> <74e74ea8-1554-bf08-b0ea-36e77259cb18@pengutronix.de> From: Krzysztof Kozlowski In-Reply-To: <74e74ea8-1554-bf08-b0ea-36e77259cb18@pengutronix.de> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, NICE_REPLY_A,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no 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 On 28/03/2022 13:09, Ahmad Fatoum wrote: > Hello Adam, > > On 28.03.22 12:47, Adam Ford wrote: >> On Mon, Mar 28, 2022 at 2:20 AM Ahmad Fatoum wrote: >>> >>> Hello Adam, >>> >>> On 27.03.22 14:38, Adam Ford wrote: >>>> The SDHC controller in the imx8mp has the same controller >>>> as the imx8mm which supports HS400-ES. Change the compatible >>>> fallback to imx8mm to enable it. >>> >>> I believe that's a shortcoming of the Linux driver, which should explicitly list >>> fsl,imx8mp-usdhc in its compatibles and enable HS400-ES for it. >>> >>> I find dropping compatibles problematic, because like Linux matching >>> fsl,imx8mm-usdhc, but not fsl,imx8mp-usdhc, other software may match >>> fsl,imx7d-usdhc, but not fsl,imx8[mp]-usdhc. >>> >>> I'd prefer that either the kernel driver gains extra compatibles or that >>> the DTS lists extra compatibles and we refrain from dropping existing >>> (correct) ones. >>> >> >> I would argue that imx7d is not correct since the IP blocks between >> imx7d and imx8mm have different flags/quirks. One of which includes >> HS400-ES, but there are other differences as well. > > The DTS currently says that an fsl,imx7d-usdhc is a subset of an > fsl,imx8mm-usdhc. So a driver could treat both HW the exact same > by focusing on the i.MX7D parts. Linux apparently did exactly > that so far. Is this not accurate? > > >>> What do you think? >> >> From my understanding of the fallback compatibility strings is to >> avoid having to add more and more compatible strings to the drivers >> when they do not serve a functional purpose. Based On a conversation >> with Krzysztof [1], he suggested we update the YAML file based on the >> fallback, but he wanted NXP to give their feedback as to what the >> right fallback strings should be. Haibo from NXP sent me a hierarchy >> [1] which is what I used to update the YAML file. Based on the YAML >> file, the fallback in each DTSI file was updated to ensure the use of >> the proper IP block. > > Myself I am in favor of moving to three compatibles instead of dropping one. > For some theoretical fsl,imx8mf-usdhc that's supposed to be exactly the same > as a fsl,imx8mm-usdhc, I don't mind omitting the fsl,imx7d-usdhc compatible, > but for existing device trees, this may introduce needless potential breakage > for other software that also uses Linux device trees. > Affecting existing users is indeed a concern with this approach, because in-kernel DTS might be used in other projects as well. I still cannot find here the answer whether fsl,imx8mm-usdhc is actually compatible with fsl,imx7d-usdhc. It's not about driver, but about hardware and programming model. imx8mm can support additional features and still be compatible with imx7d. However if any flags of imx7d are actually not valid for imx8mm, then it's different case. Best regards, Krzysztof