From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S941414AbcJZW2f (ORCPT ); Wed, 26 Oct 2016 18:28:35 -0400 Received: from mail-co1nam03on0132.outbound.protection.outlook.com ([104.47.40.132]:63120 "EHLO NAM03-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S935622AbcJZW23 (ORCPT ); Wed, 26 Oct 2016 18:28:29 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=zach.brown@ni.com; Date: Wed, 26 Oct 2016 17:28:12 -0500 From: Zach Brown To: Adrian Hunter CC: , , , , , Subject: Re: [RFC v2 2/2] mmc: sdhci: Ignore capability register when it comes to speeds and use DT binding instead when sdhci-cap-speed-modes-broken is set. Message-ID: <20161026222811.GA24391@zach-desktop> References: <1477085715-30213-1-git-send-email-zach.brown@ni.com> <1477085715-30213-3-git-send-email-zach.brown@ni.com> <20161024154820.GA16144@zach-desktop> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) X-Originating-IP: [130.164.62.11] X-ClientProxiedBy: DM5PR15CA0018.namprd15.prod.outlook.com (10.173.207.156) To MWHPR04MB0625.namprd04.prod.outlook.com (10.172.166.138) X-MS-Office365-Filtering-Correlation-Id: 3941cdf5-4fd9-4cd9-ec8d-08d3fdef6835 X-Microsoft-Exchange-Diagnostics: 1;MWHPR04MB0625;2:9zKUBn6FXi/WvYiSo+mvwM0/ehfrSzPVONdD16XHMwRs37d2EXr19+dwLxRg6O1in8vDsl/Iqi0vQoHK9W2CwJxZUBLwp9znfGO+BSGFn3sICy2R2oYD6yd16BN3+AuGlypg4jWxwyb6YolfkAeu+iDq8ypWA2n2chZaYealQJd+bwvaLrIlZk6nsHd+qhakxz5KoAKyHs5b4PuVXUExWA==;3:IIhrPkwXvKsgg68hfAMzwCYtioxkHWygceVPTfXYJXwV/oWuD5K14wN1AOP/3Q0k2gxpkffidHdjBoJLoWJ8aCYGjHFPwEj36ZfHWEtdG020uOwgkUkqUegDQx7Cal+4Z09EtUeDFpZNFqI7UhsfZg== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:MWHPR04MB0625; X-Microsoft-Exchange-Diagnostics: 1;MWHPR04MB0625;25:cpq6ynQH+/3pSY5Jm32jB9UvIKKbE4vha74EVcBrLF6ZV9scgzdemJoRDoJN2aHVFxBMcyt2Y3gLwGkaFqUdEtGsAzgrdOIHJ4H7XQTOh8iy3JuSJqtCBLdDy8ZEfd+f54mGddemsJxvZNQ5EnfCw39ImSzX4/7E1+x7ykogF/8+boU+PIUn2elnoMRljCgTZRhPxR4ef1doWrKTtnHRJepkUvKVLn0Y8yI+YYpF5yn9DMxmISF54qQaU8pD24PzFh37Nhl5XcQ4dFH1gSuJNupMq8nIaPvl7iihvroyPXjf6t/BdpSkjVG+IqNqxJ8fKPlSCtXZleF89BT32eaerOC10P+74SHgeAd6dnbw/i60AgMUsCbeD/jndhbgjHz6Q6PjBpqxfM/o38EHxj+cCfz1yWvgBjdui/8+MWLKeTG8iQdtG0IQCOG5d5k4uSDYyJfdaSC4j4NG8H1KkODodZM6FKFk7+E4PhuxBQcurhw9tSkQZhZUt1o2yDjCWqEx+5FMSq4G5Kw3eQf/eVNuy8D+/ogZ0uV9FL9gI3SIPemZ5I/j+kAPbUEmctbK4KQ5BVqt/jUb6YeEth2s+bsS5coth/PLiO//ojkxpYJLliWNfGCITf4Dosbm5Ya9snCj1cj628jCKgFQqsv2/W6It20MGmRvpwITUiiRkQF6jzTNFoE0CKHAoiqApd2NSdGbtDpD5FbW/kVFK4fGVc3TbvImsO0lFl5jvGlTmmaurFshDdR38PJdiPlEIsKgg6e/ X-Microsoft-Exchange-Diagnostics: 1;MWHPR04MB0625;31:eAU7Yq6ot7un31yr5lccHbzyJQa3Z0I/fgs/aTdexXpKRKvfwaKUXXkn+g0fYnQ02HTJXlbdsAoD549fuH/e87t2JyAIuPIR31yBmO+hrGN3JOBCKOY/Xk3FTGcvADTeAohmBgNJwqDhseVW70otuHyGx5DnNk6sJh+oLRLOthDxa0MOq3Yf5V10/URvMoTvoaVLOsbnBhzymLEpoHtG+mdcu79ry/Royjbd8GOW367z07F4uWX7jx5JM14Mxi1BcHhdP5TtMprn6FDhZ18b8w==;20:wdDEbOQEvdrzDwNg60v4NfY/u66EtkeRwpnq0D4AGuFpYZI544MfNjG/9GJ6vxagRrKcCQlX80zEneuyULWgu6/SeA9+0YWGlZ/rr9/xNrczNarPFEQd4adH5UtnTPzAucSTl5WWUB4s5f7vV4plXQknnGQYmA7tzwfKxt8y9lr/U+0YBPJ/+OXee7c81eUKJ9TuyHaKnjdVKfLypgk7AMdVqCFbcC0KHCIgcT57IAX0Yvb+jICos41SIjRwCwUrDl2SpdLtMoIJN5GN4BkJ7PFNjTd9YuQ3CO9PS/bLdQcpDr++PEqipuBikuzS9arHGWNetUTBzvwvcTTqyNQAcWrrL+5Jbl0sPWSfbxJe6BPyDLNNHIRUceU6p3BKvzTGKf0W5/GN9rwsFXYRRxm9G3XfDkgXfBgXxkCGimYj5Bpw5W+CwfziGsNtFHSsoJf2kiVZzyd+ltCzxIQQmMd+jDqC//jDDJRsk6NmSGa5cXfO/DxR8i+IrCsODjqNa/anyMORFDt0w8XsjYW3bVu/4WrQSVQQhy9crK0C5ilkQCktFlJybVfHlk+66/mMuPtBSGwkVM8AQhyHtqCnZUL9eSxcbmtMNFwNiTAwLOR07i8= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(145744241990776); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046);SRVR:MWHPR04MB0625;BCL:0;PCL:0;RULEID:;SRVR:MWHPR04MB0625; X-Microsoft-Exchange-Diagnostics: 1;MWHPR04MB0625;4:/CGnx/rCSqejp34+QBSW4q1IxpnZphE67M6lOxydu8sQwqgS+ROemHLYmQiHKBwNafPmhu9TeBJ8MzaGNASTw3yNCgS0GP22GR3DMRJwDZMxMHiMMAZdWmQskq+5JH6OE5vDpMWJd71GrZPChnE+ngELi/c7SRweTTpe7vO/aUwKBdmUAxz/1f7x/zGhwGQBPY2LjCKOapYx4LEcPyB88qEvJQYTco8+yamfbDyBfQVGv33UYMhtycK1NnBkqtKzix7nz+MMH/LFiz4BHlLYbQb1K9WwxpYlCQKb8zGm3BuDlGEWIts3KTMgaCxeRvMOILMpIMliuW7cCG4ivX60wtr0epzKRttJ0l7VbUJ1fCIeuIuyC/BeGezOzJDrP6Bw4lg3C/a1O1XwS5o4JjMsXdDihb5Cte7HFdri/vdKlmJ6i46rOwrV66i8o0lWLAIt/i+14+81OkQ9X5w5qs2/9g== X-Forefront-PRVS: 0107098B6C X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(7916002)(199003)(24454002)(189002)(92566002)(50466002)(86362001)(66066001)(101416001)(68736007)(7736002)(33716001)(47776003)(305945005)(83506001)(7846002)(106356001)(97736004)(105586002)(46406003)(5660300001)(6116002)(9686002)(586003)(77096005)(4001350100001)(33656002)(81156014)(19580405001)(19580395003)(230783001)(93886004)(54356999)(110136003)(4326007)(189998001)(50986999)(1076002)(76176999)(97756001)(42186005)(6666003)(2950100002)(6916009)(23726003)(81166006)(2906002)(8676002)(3846002)(18370500001)(107986001);DIR:OUT;SFP:1102;SCL:1;SRVR:MWHPR04MB0625;H:zach-desktop;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;MWHPR04MB0625;23:IRDUR2AypSeVE9UzVUP7hflYYRJGNFW6vPHB9pbYt?= =?us-ascii?Q?Pxnzn/nEXlkesa9XJYnQAHJmY11OL2R+HJLv3tt6SZKh+rXmEjhGyB07FOgX?= =?us-ascii?Q?BgKolGLUtBSBGiw2RUUeSb06icDdAVt7FNRI3PBHd30J2reCtDjlUeqYyhuS?= =?us-ascii?Q?3g8CQksJCXxwjGv2Cvhwgm6fxLUiN2dU7DwLIWPgw5vLLdCmlAmKy6o3mzwO?= =?us-ascii?Q?CDanZdlgCCRvqrMkwSJituW3Jr+U9YSQJf01Yqdswkwg9aNxVhBUH6h8bNtY?= =?us-ascii?Q?djMFFoL1MZ5balbAD3JtPDMuiDMj7DQ5uSENXaVfHm2xUtOb6uhEwClQE0w9?= =?us-ascii?Q?3E0aTomeKRYmynLlgBFSjDuJabLHtVgr/YDfKj/YAfPIvYts5rENO1Yk/T3P?= =?us-ascii?Q?tJS7EYmzM1ftAIiP6km0jDbZC0RwdoDfeo0RVgPJ24gAhvNFs6i2oX5/rhh2?= =?us-ascii?Q?TdiB0BmS0EJfQTBqDA6mayQBRv/CgPVotkUy+cPapsS7VUbdc/ljg0zO0iF1?= =?us-ascii?Q?VZk2p+MYav4XtgLTRjWrSk0wNBBgGnFC5RO5xBT/MRJ6EqQf24jNfzgQ+fpU?= =?us-ascii?Q?TtvicfpfM3QuMMoOQe6GRN/a+zsiAYyPU4T2zSmQgQjjPdE8zp6xspxROPDK?= =?us-ascii?Q?XWGfI1iDb4r5mQEoq6IpCtiqliwqX+GjnBUaYgy4zyE6VqcgqJk8PnmKu4yO?= =?us-ascii?Q?hfO17UEUzu3z1nEV2aGshZ7vOuQWwcJP59INPOOgR6ngzMNfFA+fvEkR9hK6?= =?us-ascii?Q?DmsbNDDElnJPIXKqV3WNAC0iuA/OywFjT6KEEq0B3CCCXSno12gi5viG3XVK?= =?us-ascii?Q?cbbQSq6ukcaFvTSDMNFUSbHoB3h4AK7PknU/QC+YsbWYPllYrBQoUvZfvN1k?= =?us-ascii?Q?Ax2ulcGQNT4JAc3t3LpLqyz3Vl28q7kgpVjMrbLW/uGkfYgENqv8+P67TZw1?= =?us-ascii?Q?RYLEr+omLCTOs6e5zXut5d9oyNWDS77CH2YIT5wFVr9Ea84lZqxq1ytBkqbN?= =?us-ascii?Q?AaXP2tPaoXbvKSBArjdP8EsRc1pZH2qjb5U81TpqKFI3rpjBvR8pwXSBl+fb?= =?us-ascii?Q?CayAujaG6HF73KfVMQVaB0slmmaLPfH5dv18bg4xjgEiPmmKl+o1sMakiCCM?= =?us-ascii?Q?RGhLy7Hab+epAhqF0qs48pflQQGod243RoJ/KPanld0qaT5MuieXxpguVR1y?= =?us-ascii?Q?RGlJ5Rov4U8XrRbmyb3IXOuckcxR59mK3TQFmWUFhmCGy02Nq8JDvVjrMrmS?= =?us-ascii?Q?XLjBSM2kovOqhqKN442j1EvnOIzz+J9NLbG9+7I?= X-Microsoft-Exchange-Diagnostics: 1;MWHPR04MB0625;6:oof9sK9W7lWwrap4YJcLbyKbtZBgxQ+sRp6EQLxIYjLPYpCvv0+ng9X0GYoSBWJE9Z9ssbFpVYZ4qa3hopmKGPdRwTZmTMy91e9rHKrSJ7M7HkP3OJ0misR6UXGzWaTDIeWNWzd23b+9eu+7XOZRUOYGpS/AcmOXVDQhkKMDgxsLMG6y2gZ4eAsK6otkkL1uJWP72HKV6Vy3891BGOKOO35vccAFHszJYMVdyhth8B1MoFUdZFFbo79O9QYZf7ddfG9QkaxMzl2GxqPvG+FX9tFOFJdCJcwy2qbExDSyztE7kv1UA7gV+aREUJ49mH+y;5:5NY/fIVEMfwTy2TKoueHsiZsnO6pr8FgaFDZyWNVDMx9onQv4TVPesYNEkMjioYBbdMSw4OR8SgNFSAh1puKld8MKBOeVu9FlNzYeE+X9PK1lokFKV7/v5JY1uQKwuNSLHujXIh1761k2+rB9VTTwUk2wcIw36tYgujJrGM6tf0=;24:zFHpJoP85V9eU14G1AXXNhfvrzGHWBW3Sh6aosRDTcaNF3M2W0N4rCczr3k82Q+Ru3zaaVWsfBInWwe5zQvONSHno/HsanGcwUC4ppQ9FQM=;7:0VHQK5/ScDDGtkH7b8GxFxXP8YSVwCznPbZb9iIAAH8pSbyyDkeSHPS3b0qxmAhrzp3lzG9J2mr0d7aOAkI/UPy76gR8rwrPX4Y2FSeuRaZfrjGJHrGgACjHvBx0rmijMZ4+SlM7b/p0TBKZYuDBb3geuVuAk1RmzN8r2yQmXN8rIV23uJNTHt4IuLfp90LDXsgiYQ713cC5832ftrFc1SoRKEnnWajAMVEZTJHMTMhT+fNhvMIEFKi7MZbpovMdUEsdR/iaJxh+m08gEOxIcfScMF6cDA5SJlQQe+G64DplLWrQ/kut6W/uPyEpuzNpaN/VCB16iOq2BpYFiIAu6C1QGPCZJE5Zj4qdWoNkuFc= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: ni.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2016 22:28:27.0472 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR04MB0625 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Oct 25, 2016 at 02:30:25PM +0300, Adrian Hunter wrote: > On 24/10/16 18:48, Zach Brown wrote: > > On Mon, Oct 24, 2016 at 10:34:46AM +0300, Adrian Hunter wrote: > >> On 22/10/16 00:35, Zach Brown wrote: > >>> When the sdhci-cap-speed-modes-broken DT property is set, the driver > >>> will ignore the bits of the capability registers that correspond to > >>> speed modes. > >>> > >>> Signed-off-by: Zach Brown > >>> --- > >>> drivers/mmc/host/sdhci.c | 10 ++++++++++ > >>> 1 file changed, 10 insertions(+) > >>> > >>> diff --git a/drivers/mmc/host/sdhci.c b/drivers/mmc/host/sdhci.c > >>> index 1e25b01..59c62d3 100644 > >>> --- a/drivers/mmc/host/sdhci.c > >>> +++ b/drivers/mmc/host/sdhci.c > >>> @@ -22,6 +22,7 @@ > >>> #include > >>> #include > >>> #include > >>> +#include > >>> > >>> #include > >>> > >>> @@ -3013,10 +3014,19 @@ void __sdhci_read_caps(struct sdhci_host *host, u16 *ver, u32 *caps, u32 *caps1) > >>> > >>> host->caps = caps ? *caps : sdhci_readl(host, SDHCI_CAPABILITIES); > >>> > >>> + if (of_property_read_bool(mmc_dev(host->mmc)->of_node, > >>> + "sdhci-cap-speed-modes-broken")) > >> > >> It rather begs the question: if you are going to do something sdhci > >> specific, why not just read the whole of the caps register from DT? > >> > > > > Throwing out the whole of the caps register seems like overkill. Also > > What about 2 values: one for the 64-bit caps register and one for a 64-bit > mask of bits to override. That way you can select which bits to override > and what to override them to. > I like this idea. I sent a RFC of it. > > there are some things set by the caps that are not available in the DT. > > For example, SDHCI_CAN_64BIT is set by the cap register and is used in > > sdhci_setup_host to set host->flags SDHCI_USE_64_BIT_DMA. > > Not sure what you mean. > Your suggestion addresses my concern. So it's not an issue.