Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753378AbbF3PtU (ORCPT ); Tue, 30 Jun 2015 11:49:20 -0400 Received: from mail-bn1on0057.outbound.protection.outlook.com ([157.56.110.57]:62688 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751496AbbF3PtJ (ORCPT ); Tue, 30 Jun 2015 11:49:09 -0400 Authentication-Results: spf=fail (sender IP is 66.35.236.236) smtp.mailfrom=opensource.altera.com; gmail.com; dkim=none (message not signed) header.d=none; Authentication-Results: topic.nl; dkim=none (message not signed) header.d=none; Message-ID: <5592B8FE.3050601@opensource.altera.com> Date: Tue, 30 Jun 2015 10:42:54 -0500 From: Graham Moore User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130329 Thunderbird/17.0.5 MIME-Version: 1.0 To: Mike Looijmans CC: , , , , , Subject: Re: [PATCH] mtd: spi-nor: Only set Micron quad-read mode when controller in 4-lane TX mode References: <1435663042-25425-1-git-send-email-mike.looijmans@topic.nl> In-Reply-To: <1435663042-25425-1-git-send-email-mike.looijmans@topic.nl> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [64.129.157.38] X-ClientProxiedBy: SN1PR07CA0006.namprd07.prod.outlook.com (25.162.170.144) To BL2PR03MB436.namprd03.prod.outlook.com (10.141.92.26) X-Microsoft-Exchange-Diagnostics-untrusted: 1;BL2PR03MB436;2:TVGq0XcAlRKw5Yi3cPtvNN2wwNH8YbrMvOrvLqUiVy4PBLBwpI/3d/4ENp+WD8O2;3:48CeJlfZxQjfB1LRV7zpG0FQtw/KX56L7EFFSpc1hthSBPytPgeNmMP1Vbko2JkeJD+IY73boWBLqO1ptwb3IkVnUlSUGpYfl6A65xVB71g0Nl51uo1LPCmpsdXYgWgJmuaHthiEjkZ+bMF5Op4NHg==;25:ZZSGgyJY9PAky8ISx4YFGecCjgQoc/+SiAYGRPVd6QjfEfERns7HGb8t6pHCA/7CoMWOldAvP14CMOLF8Vlnha5/W3KrTPXJvcVSYQsh7lCjCDGxLFU91upBQS9ZlmukJnPH6jyXr8pwVOhAMo6Z6RncdSFjsWGcF1cnQyeN8RckbP8Db3A+/ob99REsERaPphWEEprUmki+LInjCnBCRiO5QHp3K6J3rC+AlzpEC/8cv9Y2TcSt+MBm17YUv3YCjAc6ilCIA8GhgZLADMXOfA==;20:cP5OWPQT8BUG2PJ+TvzNSpzgifmnfjff72OEq6qWL8GZ+eeLHmk2rK9RmYYZxuRaQa5bN5Nod44w3npjF09JGwzTD7vjpDpbvioSAK90hgadtN1LqGB4z+ldI2ndyZIK1SIX480aq8bM55P1yphOgFkvaXysUjBAcdQn9p+CFqs= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BL2PR03MB436;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BL2PR03MB114;UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BL2PR03MB305; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:;UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:BL2PR03MB436;BCL:0;PCL:0;RULEID:;SRVR:BL2PR03MB436;BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:BL2PR03MB114;BCL:0;PCL:0;RULEID:;SRVR:BL2PR03MB114; X-Microsoft-Exchange-Diagnostics-untrusted: 1;BL2PR03MB436;4:yg/aj/uzTRdkFljC97FfTsVRh+5R1IQ65eRfrbuJPCPJdgt3C0/kSIHsGwzstz50sgEzrPjVRwQpvPp+wamfV1YdYL7/GrEIwXb/xZBcYKP3DIljDowKs28XbTo0fv/+HvBIRtZr2nOOPJ0sdeQkmN08KR2G20EpnzhFjuQEM7ptK0c+pgufHAEri5i6dqX4+41NVcEZmoSB/b0EKVq5YXOIKFy4mQp1rzMX9AuFoFjK03MJNOxj4bbUBW4Pj9mDUIVVqpefr/CDDPuQ78cqSpPovJmFXsYNYlq0yHjtHkk= X-Forefront-PRVS: 06237E4555 X-Forefront-Antispam-Report-Untrusted: SFV:NSPM;SFS:(10009020)(6009001)(6049001)(51704005)(479174004)(377454003)(24454002)(54356999)(4001350100001)(77096005)(23756003)(64126003)(87976001)(92566002)(47776003)(2950100001)(50986999)(83506001)(86362001)(50466002)(65806001)(46102003)(33656002)(80316001)(110136002)(5001960100002)(66066001)(189998001)(59896002)(19580405001)(87266999)(65956001)(76176999)(40100003)(62966003)(65816999)(42186005)(19580395003)(122386002)(77156002)(7059030);DIR:OUT;SFP:1101;SCL:1;SRVR:BL2PR03MB436;H:[137.57.160.195];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics-untrusted: =?iso-8859-1?Q?1;BL2PR03MB436;23:SnECmjtf2YU6gsgGewp3MN/dJsSTimkTbOsxsO9G?= =?iso-8859-1?Q?NpufVCZ8YZGe5C2PJOEAF2HRwp9dP1yNkidM4ipIIdCzyplUaIzOXzGKeF?= =?iso-8859-1?Q?2ICwXzwbHlguDfDSocg6hPL57Si/ppv2IOF49LmVKTTADj1xeopIsbnhAR?= =?iso-8859-1?Q?endDX+z9o/Ou06pCH6NB5n++L982Rj6xHOIsmBCX6lm4eVBFbbxJ3aabCc?= =?iso-8859-1?Q?tf3CJaQydat6EYJmpMq4y2140FqGnPxzKBuO5Twc6y3VbmD0g4odnM2xqa?= =?iso-8859-1?Q?QNHvk2bhlYWY0+t5ZdIVdiJkvJO17jieXWsxJZY7Jp//yu8Djn2FDIgYAa?= =?iso-8859-1?Q?5aAvXy1F2ZtKfQdvStuppfYjZBBQn42Hm8hCQiPpb3WzvaXhO1iXQJ4s+Y?= =?iso-8859-1?Q?wGzdls5rDKoeolKPXyq6Gz4LGHBQCNw4k0qWv5cbfBMVOQ1bGhUbiTUDn8?= =?iso-8859-1?Q?td2EmtI5WK07iV2+hG29iteb6WMp804Vzv80s7MuCRwUeRwO/8yRQN50UG?= =?iso-8859-1?Q?MPNHqFT6+olGAritxZ3apL7Ci3ymAMIcbopzvvi4qrD1faZUtAa2WLSRT6?= =?iso-8859-1?Q?Qzplfv6uEJ8TjklIrqhnYIj+8fH0qaN8DxKLsrKbP0VJ3cHu7f7PuBv/eV?= =?iso-8859-1?Q?GLZkqf/kXBPy8vz38QEv6ykAsAxbUrSSq0bkIdDft7DBHSYIpQPCdygPES?= =?iso-8859-1?Q?3inhH6wKZWMEoTHHC2lNtkB9Hjm5qpyqDLJmKaFUOTmO8XePQUps1OvGqV?= =?iso-8859-1?Q?HboTV5R3mFHQIqfw8hI8HjZOPjc1pe36CCBXVuYFVQf07PqOfHoLb+VIHH?= =?iso-8859-1?Q?f8ig/oao4LAU51Bq6NOIuN3QjyjwH3d3xHuT72WQKbzu8HscCgD1PbNbWw?= =?iso-8859-1?Q?EpTM3Pl4bmXXDiJ1juzz9AEH+HtVdEJ603U8Mta2TZfGwyFFOSzZ92hPpv?= =?iso-8859-1?Q?1OZf5EbwiYK+qsEQn4YNKGzNHs+mb6z1enn1BKTLjwO/IAAfULjA7hOYLE?= =?iso-8859-1?Q?n4D2ZP9OKwAAWqsEM6R3Mu1PX/rZtvXQg++VRRKWL0/2mfEzy164NDyAZX?= =?iso-8859-1?Q?/POo7GwCQ7hkGimAjn1G478Te+3AsqNgNbVYuyhfU=3D?= X-Microsoft-Exchange-Diagnostics-untrusted: 1;BL2PR03MB436;5:EAIPktBYWeL9q4Dzmh0FBL3h2qIs8sIAU76nIuW6UQRbT2bZi3zz1du5iC5r+1nscxwPeyBZwV3guxe+gKZngrajatDRDFmOxWVID5NRO4F8wWbmGLodv4+kraM+ORKLEdOYDAdKXuv3AgBL3wUFuw==;24:wArwFM4tt2QEDAKUcVsq9gTN1so3YKGG5KW4c1Dw0X+M+BxnOqPjQ3E9jmjaxk9AKhMVZ/bH8l2HKaIY1xsGa4FYZi+ubV0h+8TItVP7m+s=;20:Nb3ToYDyDFKuRg5j/m+JMUP6YvvJdQi9U/qHZLCnSJQcBBdT4qog1siujECBDezv+KXuhnGaxdEKLbmwN0RXa0LWdbTJSzBiZ7nlIa9MM4oaJyZh4HVIktQYaq4Hi75iHc5wpsc33mjf/HaKcAX6wAMyrVvYujUGp/bVllsE2JM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL2PR03MB436 X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: BN1BFFO11FD044.protection.gbl X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11FD044;1:Zyj0JrTi65d3Af/fA2S+fY9rXk/qswcfbxUXQgS2Km99sKKn/kyI3TNrTKB40tzjheLaf8SpQPKQmeN6mRlhCCMr2ezheGRaU1uvG+xHpf7+zahosFJc3XcL36Qpt6EAsBsTqdlB6fScuhqCgj+VgvWuFQEWuFnWmE+S9GHliOxKOFieKd7MMhVH72tdoHGEAoAmZC0Dk+P8yLTq7iF2+rAWhhbrpK0HSYoHijnjZln8ppRQ9EDWv4Tifc3cbiuwCNabbh5LbBK9LKUqaX+9TbXQChZ2friUjitjZEGiuWX+RD2u2BzH/sDfxJNxxARmvy+C8y1ywBxUFBtUOYX1kg== X-Forefront-Antispam-Report: CIP:66.35.236.236;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(339900001)(199003)(377454003)(189002)(479174004)(51704005)(24454002)(105606002)(122386002)(86362001)(40100003)(6806004)(106466001)(46102003)(5001960100002)(62966003)(77156002)(50986999)(90366008)(54356999)(76176999)(23756003)(64126003)(47776003)(87266999)(65816999)(16796002)(83506001)(110136002)(19580405001)(19580395003)(80316001)(85426001)(87936001)(33656002)(92566002)(4001350100001)(50466002)(59896002)(2950100001)(5001920100001)(77096005)(189998001)(65806001)(65956001)(66066001)(7099028)(7059030);DIR:OUT;SFP:1101;SCL:1;SRVR:BL2PR03MB114;H:sj-itexedge04.altera.priv.altera.com;FPR:;SPF:Fail;MLV:sfv;A:0;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BL2PR03MB114;2:2vPu+87eCWB1ohDbxt0dbuARSNX1Ep6CwUeQszUYx3Ot0LDxN3mLBFRYQxFUdZQS;3:NXujtB5CXzdlIwhnrq0+3HIkFBJYC6ylKMZKJbnJwT2pv/Zrkw2dmddkjHp4ActKU7nD2lJIHstS0AEQCIwT1PB1vhTZpcTVynOxBTDU/Qdeit5jbzY5m/HfU2MROms1ZKXtBTfxTwSpNRLgo4FuOpOJC+7gQwppzPsKx4deZLjf0Ep6bTNzVc5DtFqqxClHOR5eQnjYkaBImzPfC+WHRzTDcPz7sR+BtMljPYnrir4=;25:vKEw9ZBY/H2E9+6Fi1QnAGf4ObNvW5du2IyPg3Yo4C/0utATNmCxBrU8nD2YPSN4Ag/4yV4jt7LuiHHYXcnGF2nfbqazTIcgDmfkRf4Wa/Lq2RrIz5gb/c1IoWrzOLRT+DZtZ+ggp9GMbTxkETUiSbVg1jEu2BkWR4oxzLA2biqYi+6BlcWZCGcUV/VQliPYVa/cQHyXAUHZH814RNlGg4+Gr/ppCyw5snfSav0LVMkvaw4fsR8i+47cxn3sOefG;20:ONctuFbT+w16vkp+nZsLTGzyXFuA/URiS+XcOSY28vFyxpzMcqednSFHzNL0g4zP8UdDdsWtv6oUdEjHhjN7qC5nVoXKkkmsMKLtsWDV6obGsuSv072Np9c08JkymC3sHyiHgQKZD07+XPM7o5k2u1k7NJFJGxArnpt22ZMONKQ= X-Microsoft-Exchange-Diagnostics: 1;BL2PR03MB114;4:Mg4PAz7R/2iAt7F8vc4dZDPDaNlDOvUcHEvAa6CnnBLkjTwg6jHR/XRqZxcCvCEfw/YjlOrds6I3VTgjq1DJgKX02NKA5ojiZWoRqlMmFBFBE5xpqrG9e4OyQ9lJdEeQWC0/rG/ufVGxWS+whvodJYnamS1QfbQ6XPjemxZtkLCEXlYa/Q5nTTQZWM596q3XHIlTIeppdAcy/U3ruiwg8q0uXS2x6r5uoZ3RF3/7MQtAx+GuUfFyTwaj8NYEpozksMV7BxpVMFhuvvrSMmMiKD4X1E7lUDO8i7AI5vPcEiE= X-Forefront-PRVS: 06237E4555 X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1;BL2PR03MB114;23:1pA8MktwCgExEj7DN6VRevPYYbwZ4ncjuyP5/JhW?= =?iso-8859-1?Q?qWImKdc/yQhxQvfXQrOY2ntyrcAFDKSqGVVISo6Ez/ZU2liz0h2FGxY1Yc?= =?iso-8859-1?Q?bO/+Ue+JNyhWaIDs9/S8kjwwZpjF3GKGthxGdw0/x3Q6PbsGVk1cYkJbXf?= =?iso-8859-1?Q?kU0pN8kP2lKM5X7BqRtotpqNrNbQtCcvWXt7DbPdQ2efK1ihWhIZtRuKP6?= =?iso-8859-1?Q?75YFt/XguFHfCH0C9jSSpZtPXf/wjE6OI0HnLjMaGAVw/fo7tOIEnO45cR?= =?iso-8859-1?Q?r9jEcpDkydWibE5PgpY5qFQ7a1+jwiy1ssmPLBHUU6lXYUTkgKPlPmI9sf?= =?iso-8859-1?Q?HSIINC6dj85XGtVMOmaJbPnSVGP1F2D1KbY6OGpxm/E8SJwT4dqJmI8jr6?= =?iso-8859-1?Q?57Jj1U/Ky4vCQgqcj6nmKY1kArxewqN2zNYFy/FkGRPWABWt5PF3SEWtHO?= =?iso-8859-1?Q?8LuZTY3wx386SFmqeTbCecEs8+91Fpo4dXunwJlX9mX5vNxsTsSZm0dDhf?= =?iso-8859-1?Q?8tY6HuDW1NBQP/okjWgFSWcKkJzhTtLCz+jY70Id4uKWQtjTmd5I0Vk3r0?= =?iso-8859-1?Q?UGbBlF/eW89Bl2J/gmzhSdcHo2ot0hj7cZ4zdXqvkwMLmikApbrNL45G4l?= =?iso-8859-1?Q?8E1fOZw0hp29SZOyxWtif8eonZjd7P+9ibJqujnue4zFZFtiUkU8h/pyZA?= =?iso-8859-1?Q?WWW6gQXvhcBJ4zpBMfKjNBR/dZYwycIQuVU/mWquoug6wE1tVlO6KaREP4?= =?iso-8859-1?Q?C2DM2NUWV89xwR8pTVftYFx4YyDH1kyGZRIZzyZ4xuzJIH4qOTh6CrRiPH?= =?iso-8859-1?Q?TkIbVNzwYtINnD4B2VHUghrPq5O6tqBWODNjtRBdQLVWanFnkqqLGcrpM0?= =?iso-8859-1?Q?vwgJXErF0olRCIcIvqyEfX8CVmW+JohrkoTUj1hrbzdS0v0lIYwKHYyj5z?= =?iso-8859-1?Q?K3PJM6eSA2OCb45/U0X4hAu47hgzJrSymfp5C3QScHXGBietFWUs0ASW+M?= =?iso-8859-1?Q?ssraxu9nvOf47Dxj8gp/r78pdwYv8AooEfy/ksR1jpvBBa9YSFptiLVra0?= =?iso-8859-1?Q?S9u9e4X323TW3zcomfQrgioqlI4MnInX6BjSfR4BWae9fcP1Uq6Zhns/Z3?= =?iso-8859-1?Q?mdcSo693nbhuP8l0PcFpUdB7NpMubDRVDABeXep39S6+VhzQRJVlhNklCx?= =?iso-8859-1?Q?BalrTST1pfZyNU1EA/KhlB4wjkHtEi3+A0uPBIcP7066Ulhm30pURIX9SM?= =?iso-8859-1?Q?30XRly2MdMVeT2IbDZtUswhMF6QRHuu/n+PYVzFvMSQwZVy+76jBf3XzCJ?= =?iso-8859-1?Q?S9XysgfwzwhaK3B8+czDsh?= X-Microsoft-Exchange-Diagnostics: 1;BL2PR03MB114;5:gbkn/Bp8fmskOJFYzuH5wlA+uHDGXKGBTB1ZG6g+7pxWJsp1FEPEQ0UOu8vcLYXQIGrVnwtMerHi4XrEtfwHbSI+Uhjizh1cWP8xQg/8dzXzEYu8/EH85Fwbcpr6aLVcLpM4c0bLdXKG2lkecG6azw==;24:CbFOgPXXkJMRBDlDISvfRKjEmaOp0v8lVtrPoOqzAmOzX/b1M2oR0f+qc0ckNGJhdyxcH0BvVomLidiTO7oQZpHFDapmz6mXmSCLNcXYTWM=;20:QrRijYpwMghIfR4Ltt4NyQEE25JA6ybJj00ZUZ4vDEtim/ptBaKJAqUMcUOHuNL9cdkiWy0sAtARx1LmkdzxXELbDso9rkhekPVmYM8ZlRDj6Zj/vlZ1c0418PaSw4oaQ5o8kd56nvBGqhfWtS5Pl8yeN4o+c9dL9aqmpWSUX8o= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jun 2015 15:48:30.4176 (UTC) X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fbd72e03-d4a5-4110-adce-614d51f2077a;Ip=[66.35.236.236];Helo=[sj-itexedge04.altera.priv.altera.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL2PR03MB114 X-Microsoft-Exchange-Diagnostics: 1;BL2PR03MB305;2:kPpys8ZttXrUkOOjGr1RigYyYdiast8aRXQ0vQiBA0x2LPwli21Qi8J4jUFEb0La;3:p+mOJQ/2nFu/lh38waf4CtNSJzqkJbzHQ0l8WoGy+AaTQ17kFVAY/h1t/kzZlfhPa7zqpI3chnzftcEChb14jp+0gbcfuYSYwlEGFUe87WDtA2LJok0P8P713bftClCTYrnWr7GyATGZsvoUJM/lHvKHsPNexCtgCqOPokVQmkOTyGVDpyG2WVbxATWfIfe6assJRa6hiy7yMvvx8GALKbRIiNh0DJykXnEfW5UgNPw=;23:3DkeT6qkicODoznEbwXMSHJgqCwA9mnEWn95mfvDUDzP+4A0yF/CA6vv5eIlUuZ4fnrCbFRULp99Ka6KyGU0SnHX8FoysguTUrWWCqr2bUH7WPblWtFQ+hXnM4NJ6BK8phJtEAtylKsLpfuoQvYP9o1ig1G7o1E9qn8UYn3sAtemgchXId0LCyB94DDF5dkmNiQUWiIFYY7jwX5lFu2aRQGA1IvmUyaeGhFiwKQwOkxPKOJS2a27WspIgqVAKBoK X-OriginatorOrg: opensource.altera.com Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1942 Lines: 47 On 06/30/2015 06:17 AM, Mike Looijmans wrote: > Micron QUAD mode expects command, address and data on 4 lanes instead of just > one for command (extended SPI mode). This requires the controller to be in a > special mode, so check first if the controller could be in that mode. If a > controller does not have the SPI_TX_QUAD mode set, this setting has no chance > of being valid at all, so don't try to enable it then, and just keep using > the extended SPI mode. > > Tested on a Zynq 7000 with a n25q256a flash chip, this failed to function > because of the introduction of: > "driver:mtd:spi-nor: Add quad I/O support for Micron spi nor" > This commit sets QUAD mode for most Micron chips without asking the controller > whether it's possible to do so, and without telling the controller that a > different mode is required, so it couldn't work. > > Signed-off-by: Mike Looijmans > --- > drivers/mtd/spi-nor/spi-nor.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/mtd/spi-nor/spi-nor.c b/drivers/mtd/spi-nor/spi-nor.c > index e8f6131..10ba94f 100644 > --- a/drivers/mtd/spi-nor/spi-nor.c > +++ b/drivers/mtd/spi-nor/spi-nor.c > @@ -1398,6 +1398,8 @@ static int set_quad_mode(struct spi_nor *nor, struct flash_info *info) > } > return status; > case CFI_MFR_ST: > + if (!(nor->spi->mode & SPI_TX_QUAD)) > + return 0; This is a great idea, but what codebase are you working from? My l2-mtd tree doesn't have a 'spi' member of spi_nor, and this case statement is around line 977, not 1398. > status = micron_quad_enable(nor); > if (status) { > dev_err(nor->dev, "Micron quad-read not enabled\n"); > Regards, Graham -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/