Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp1388420pxb; Thu, 28 Oct 2021 02:45:24 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyJxNIf0EKrEIfTIUOaoOjvL9RS5h47OR1xgdmxV83WCc6R2ux6Rwh+RbD7qNf4jGTB4li5 X-Received: by 2002:a17:90a:5b0d:: with SMTP id o13mr12040333pji.117.1635414324248; Thu, 28 Oct 2021 02:45:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1635414324; cv=none; d=google.com; s=arc-20160816; b=qTHYkmPuZbpBgk4hoMW2fbS6bHaqJuuexxkHuRPpitojax+vXMw9FbuW3Z4hI03YKr FIjvx9Wphvp9fU1MI/xjMBxmzwXKScaq4CDxKDn6UAIRVNBJ/EnFgBQq6hjjWfdvdmV2 Miy+453DJSVNissEiU67P1d1L/MsjkBs3DCtVSKuh1+n5wwYTtq5Uci4JBWt2J4fGl3m 3S9DkYJt/eMqLlHSNFesYp9kl9inoFqNAbItnw+Z57c7OxYxeGcGrup0JA5H1bKIkf9R DnwuxiLwTlZuQ1T2Di1FqQrhLw+yYZRCQQ2VAfbqxqw9BeDgwCPWFWbo1L/UE2lYJsgK f8kw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:to:references:message-id :content-transfer-encoding:cc:date:in-reply-to:from:subject :mime-version:dkim-signature; bh=6iZMXH9oQp7yfoBy6uIi23vCzU7CVARSRZrB+lxBmMs=; b=OGJCRIBrJW3SC6sQ8R4jIg17dvbDMlaQdFm19mUfinIXzUiBw7b2ZAjZeZ4U7foDvD rNLEj9p2lZ6SBpkrmDlUk2BXQl3LEH83Md5ZtJB76MHERkLcKtqYUq+nZTwo+vzpyojV GwJaPMLIi5+Shlvg/M9fTNuckWukyMy+poSdcIv4efVpXH/hfbfbXQGfgvXtCK5PzERb Hc2fq2ZLsRsRHxBwTPdTvZdyXRHeX6W/InSd3Tdchl4ero1q+/d0Ht6Lx83J3jYgzHHC hhQoKvKr7pCGHJO3SfRg3gL8JGH/5Ts2ihTXeqV4FfIcl50BNRLLm7h8oPkkJDbOWwNg 91pA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@goldelico.com header.s=strato-dkim-0002 header.b=FZn+S8gD; 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 e1si3363385pgs.450.2021.10.28.02.45.11; Thu, 28 Oct 2021 02:45:24 -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=@goldelico.com header.s=strato-dkim-0002 header.b=FZn+S8gD; 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 S230119AbhJ1Jqh (ORCPT + 99 others); Thu, 28 Oct 2021 05:46:37 -0400 Received: from mo4-p02-ob.smtp.rzone.de ([85.215.255.84]:26357 "EHLO mo4-p02-ob.smtp.rzone.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229835AbhJ1Jqe (ORCPT ); Thu, 28 Oct 2021 05:46:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1635414224; s=strato-dkim-0002; d=goldelico.com; h=To:References:Message-Id:Cc:Date:In-Reply-To:From:Subject:Cc:Date: From:Subject:Sender; bh=6iZMXH9oQp7yfoBy6uIi23vCzU7CVARSRZrB+lxBmMs=; b=FZn+S8gD2YPYYn87J3OXVr9jqnHP2npfLQYDRWWr/fYTuGczH6FqyqGOqTwwBBj3vL bnUZGvrJJMnuwdb0um+saJ7RdAvSe9nauVPr8YrW5gifoH1M9rSOVS6YyrCdaTcZ6BPY Yi89Kt04aSJgM54VnZrpmpW6O8NZavOuSQnxDuun0ZHr+xn5zTyOk7wR78g3Zk2uVvbQ mGKv7cs6Uvz1Ancsgl31p3Di1j6FU1FohOBZNQP4s3NUxn2ORPYunluavYdL9udthwoy 58PQcTTdizBNNX+oQmjqFKcru/GsKDbEI0IjdimXhXbv9ZP+QzM5QzSpL1WKjilkMB5I 1OeQ== Authentication-Results: strato.com; dkim=none X-RZG-AUTH: ":JGIXVUS7cutRB/49FwqZ7WcJeFKiMgPgp8VKxflSZ1P34KBj4Qpw9iZeHWElw4vtTA==" X-RZG-CLASS-ID: mo00 Received: from imac.fritz.box by smtp.strato.de (RZmta 47.34.1 DYNA|AUTH) with ESMTPSA id d01d1fx9S9hi5h2 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (curve X9_62_prime256v1 with 256 ECDH bits, eq. 3072 bits RSA)) (Client did not present a certificate); Thu, 28 Oct 2021 11:43:44 +0200 (CEST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.21\)) Subject: Re: [RFC] mmc: core: transplant ti,wl1251 quirks from to be retired omap_hsmmc From: "H. Nikolaus Schaller" In-Reply-To: <1EF25CD6-7801-4C15-AB4C-5F499948A653@goldelico.com> Date: Thu, 28 Oct 2021 11:43:43 +0200 Cc: Ulf Hansson , Avri Altman , Shawn Lin , Linus Walleij , Bean Huo , linux-mmc@vger.kernel.org, linux-kernel , Discussions about the Letux Kernel , kernel@pyra-handheld.com, Tony Lindgren , Linux-OMAP Content-Transfer-Encoding: quoted-printable Message-Id: <920CFF1F-475C-4403-B563-DDD144F7E52D@goldelico.com> References: <8ecc5c79c1dd0627d570ede31e18c860786cacca.1633519499.git.hns@goldelico.com> <470A96FD-DB24-4C32-BC9F-AE2F617FBF2D@goldelico.com> <2013308.OSlt1BDEiP@pc-42> <1EF25CD6-7801-4C15-AB4C-5F499948A653@goldelico.com> To: =?utf-8?B?SsOpcsO0bWUgUG91aWxsZXI=?= X-Mailer: Apple Mail (2.3445.104.21) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org > Am 28.10.2021 um 11:40 schrieb H. Nikolaus Schaller = : >=20 > Hi J=C3=A9r=C3=B4me, >=20 >> Am 28.10.2021 um 10:59 schrieb J=C3=A9r=C3=B4me Pouiller = : >>=20 >> Hi Nikolaus, >>=20 >> On Thursday 28 October 2021 09:08:50 CEST H. Nikolaus Schaller wrote: >>=20 >>>> Let me have a closer look - and for sure, I am willing to help if = needed. >>=20 >> I confirm it does not have the expected behavior. = !mmc_fixup_of_compatible_match() >> should be mmc_fixup_of_compatible_match(), sorry. >=20 > Ok, I see. >=20 > One more question: how can I specify "ti,wl1251" in some struct = mmc_fixup table? > Does it need another macro like MMC_FIXUP() or SDIO_FIXUP() to set the = .name > field? >=20 >>>=20 >>> Combining your suggestions we could do roughly: >>>=20 >>> in mmc_sdio_init_card(): >>>=20 >>> if (host->ops->init_card) >>> host->ops->init_card(host, card); >>> else >>> mmc_fixup_device(host, sdio_prepare_fixups_methods); >>=20 >> I think I mostly agree, but why you don't call mmc_fixup_device() if >> init_card is defined? (BTW, mmc_fixup_device() takes a card as >> first parameter) >=20 > Because I want to get rid of init_card. It is host specific and not = client > specific. Ah, on a second though we can do that independently. Either there is some init_card - or something in the fixup tables. Why not both... So the else clause is not needed. And you are right, the first parameter should be card`. >=20 >>=20 >>=20 >>> Next we need a location for the sdio_prepare_fixups_methods table = and functions. >>>=20 >>> For "ti,wl1251" we would then provide the entry in the table and a = function doing >>> the setup. But where should these be defined? Likely not in a header = file like >>> quirks.h? But there is no quirks.c. >>=20 >> I think you can place your function in drivers/mmc/core/card.h. There = are >> already add_quirk(), add_limit_rate_quirk(), add_quirk_mmc(), etc... >=20 > Ok. Would be some add_wl1251_quirk() then. >=20 > BR and thanks, > Nikolaus >=20