From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754045AbdASRrm (ORCPT ); Thu, 19 Jan 2017 12:47:42 -0500 Received: from mail-sn1nam02on0044.outbound.protection.outlook.com ([104.47.36.44]:48254 "EHLO NAM02-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753526AbdASRrj (ORCPT ); Thu, 19 Jan 2017 12:47:39 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=David.Daney@cavium.com; Subject: Re: [PATCH v10 0/8] Cavium MMC driver To: Jan Glauber , Ulf Hansson References: <20161219121552.18316-1-jglauber@cavium.com> <20170119145041.GA11757@hardcore> CC: "linux-mmc@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "Steven J . Hill" From: David Daney Message-ID: <0f721117-24aa-cb69-56fe-0a48f9012852@caviumnetworks.com> Date: Thu, 19 Jan 2017 09:47:33 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 MIME-Version: 1.0 In-Reply-To: <20170119145041.GA11757@hardcore> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [50.233.148.156] X-ClientProxiedBy: BN1PR07CA0041.namprd07.prod.outlook.com (10.255.193.16) To BN4PR07MB2131.namprd07.prod.outlook.com (10.164.63.13) X-MS-Office365-Filtering-Correlation-Id: da645fc4-36ad-4bcd-ba09-08d44093411d X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:BN4PR07MB2131; X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2131;3:hOeBKinoiLQ/A3sTgFf9enMPBeMMdnsjtGaNSKxoB9jKW2hIIy+xFIFzzxk2S9l0VASYbzjDsYDjROQOkaLnpgjXxwcQcL2Tkez70Z0JlICnTpw1LJAnsklrcQmkKKHjUhsu8B9P/ie/t4DumIeOfQYPur+vry4yTcRSdHniH4lkjTvhvKvevJB+q6jtX+DGYonzTdO9rnPHgcR1MECNW5dI9QHoVeX6cidDh9xoupEvQ0YFfWOmtrrOXaJ6shdLxpHBLfjfeGNKQ9ehZXqiVw== X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2131;25:55vDoJBeFzuQq7HZygIhCpJc24q5vAqJbv9t+cSxuOljkdfi+8iePC38hSwvrjC3eu5uXGQbzQSO1nS0wzzNDGarhuok7WQhmc0El2ibFVR7i8ISf/E7TkmkY5GBNm5zM7dmhUafCKhxncYQLAIyoz28HKbfhCg+7KTaszRZfXC/2aemtn1GujGSTktiyTrPyZ1qwzucJRrKjXppzMWzmh1ECZ9WVXwat0JjHsvkib2RDjgKtsuXD3jt7qCPWnVesnWciln06g+jjoJMcEUZ/GMOhUQZrfKTsHLuQ1QyR44f+x2ZcQYm1uhr4odMA7AO6JRoWDpImHpUM8W2TfdnM8lkvYPtQAvDarkdzDxqbnZIiFTGhZHcflZ96uciOpZM1mAADxaM7bZkNC7Y0qqfCQrs/croYCXDTOrVjaEkyuzWJysFBAq7w+hYtWmlIV3gL/3z56wJU+z9R+BOxKVbah7DfaR1YxwW2+rqzgLU4+tI7VdE+BcjCf4Wgmd+DcZqe0Mydmi7JXOqCFXjebcf9tpld0a8tVFfpYGMMWAhVBABm1RPvkBCvSBb5yqnz+Z5dsggWSj4rn7MzGUXqbN/lJvJq3kOaT5NM0ndT9ADF/pePu7BU+9qYjwH9d051Ijn9Bcztrkc2U4FD4xTmxB5yQLGhY2VXt/AcIIG93NUr8PU58iaFHcJ9r2ApgWHg74V3M/lXn56zJ8s7HXvo3JYEML0ao4fSCLbdYFZgNCBXTKh1Sku+zJlO7wyRtrWW1FH X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2131;31:0VPlAfCU+3vhAvpK8i/JL2/HSrkA0uXnVDHQpylO6/Z6llvIzb/tZPgTskzR5T4tgkZh1lfCS/15uonri+ds7DY34yay636CVqRSiFSGbn82dgVo8OQPcHwozzICfkJAka3f0uPrJYNYHD0yl347P9lwm30htImJMU+gR2/4+ZmKpAMwFh6SyJuyAZ/GdziBWHzTi404oAJM8r+41rAgpWtBXKRQzEXDNlqQxC2nt1fvV+TojCb/jQrItosd+FcwHeiV+RaTFcIen6KY5UeDCQ==;20:mzaC9pxs0uLmoVrWu7bv3EOHBPxQ5vskn9o96WMBGULOfxv0fgyKTHSdOmbT9/1Nvf4PMhhNDuRLFVMonuxnwfKSCqriwv6m32W3CWQymA8PwqlCHjCd9ucSpxY66FggLkb9gCcquqRpbz/FFDkLmNOFdUJJRmHHT12AdzWRy8EYm9JA9KiKzObQtktr4oM1LZn4tGCjgsyV/Rj6/Cuejtxy4S9U4ucZDR7APtB1k+TQJ3h7M8rupZBmjd76mYVwXzSE5HQmaLSu9ihrflEw1cEBz0LA0xSy1UfKNd2rgm4EG+8SsY0Z5gC9Nb3HRG1814Lc2IDr5vOJwhRKZRAHrDiOUO9R1nYsu6KIJNizyAeE++v+C0lhqH+ZH89cl62X+kcsO4vdhcwt+BCZwgmH/6F86lsA1NmvFqPjBYeznCxZbW6rp2wP1JSIS0+aqXf95+DQscPGdvQ+SwIrFmqTllO11Cp2rg8w+uDB7F3bje6M4D8XbeW4tdJbnqeNHeAwppK3zHLt0r7tewVQsgGjECDBddLY9eU95U2eDvGRwkvfsiwCX9YQeFwfQXvmHA8ZTQpDx+FnRU/bUUZnPNvHKkGPVS2gqTdjK5O5T2xL45E= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041248)(20161123560025)(20161123558021)(20161123555025)(20161123562025)(20161123564025)(6072148);SRVR:BN4PR07MB2131;BCL:0;PCL:0;RULEID:;SRVR:BN4PR07MB2131; X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2131;4:p2dPC4rDcFMQKheJLOgY9iDgv0kGr6FBhQ0f/SYXEUok/LufW5dIjPicqrPIYcfM909sxljitodFKpGIj3j/QD3y5SNtxWDdKwFa3CoWoB2NMkyExnwGJvoBvg1UVqTzOuk0DaiST6TtbssW3JYIuFhSXSTHpuXEVVo5npV5PPJqiGgjt02UxaDTMVoZGrB9jwzMM8c1c+12C8QUceXXt04PyPlPFMorBTRWsxHOz96MLsu5juK/WgRo/sbICFxtBS6acmxn59/waR4uY8J5IEC7DzRvjQz/Cqh1vkmx/Os6tUr/le00poBSE616/orhPr9yp40dONdC6y8au42QqdNaEj6Bzh2seCfgNrR+EFklScZqVuZY1w9JbGqD3g5JhmQRmefUS78Lm8oEiwU3wrcFMA2BAMjScJajdD+FxVSi7E2eaAtRSKgtaNLOMzk+LHe8MUwOjNiGfO1dTP2d+Xe6KQK2IIBmhlSpIpLYArY4NBb4u5c/G2SEbFLmd4cMROAitHeuREozAjcUslhbayYoBoOs03OGNw92X9/l+RL6/2jZzA8mIy/gSpnhwD0qX/CULbcN03ybzDPYCcrtysHLzNaXwb9kMQYymKuX5P4= X-Forefront-PRVS: 0192E812EC X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(7916002)(39450400003)(377454003)(189002)(199003)(24454002)(57704003)(25786008)(6116002)(3846002)(53936002)(101416001)(106356001)(76176999)(54356999)(50986999)(53416004)(6486002)(92566002)(105586002)(229853002)(4001430100002)(230700001)(2906002)(42186005)(31686004)(4326007)(38730400001)(5660300001)(65826007)(2950100002)(42882006)(36756003)(6506006)(23746002)(54906002)(4001350100001)(69596002)(66066001)(107886002)(5001770100001)(47776003)(65956001)(65806001)(33646002)(97736004)(83506001)(81156014)(64126003)(50466002)(305945005)(81166006)(189998001)(7736002)(6512007)(31696002)(8676002)(68736007);DIR:OUT;SFP:1101;SCL:1;SRVR:BN4PR07MB2131;H:ddl.caveonetworks.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;BN4PR07MB2131;23:diahdz0/n/f4nDIDhf4Lx4xrpwmLvqqA/xo26?= =?Windows-1252?Q?IFFu25L7lhMR8tsR+PB6x5yhJ5PtiBi2pmN/zel4LhB9vIdlhIyFlM06?= =?Windows-1252?Q?QLyq9OQ1gONV9AOJ3DUysMKdkuD/1Ld0qgMJyMHkZ+wP2J8fnxAFW5Xl?= =?Windows-1252?Q?EoGSAMQuNvbJw3afR0x5c/pFTYewjgk6K1v1LmCZRV6s/dmgrY2HnpnB?= =?Windows-1252?Q?9JrB//lIPpa1vCPLTfGyDLKWXzvA3iNvvXGr+0YZHgWGD9rqKn+QKiF0?= =?Windows-1252?Q?JHopJmDhESvhWHRqeHhteFzUOeIKCLRG2FROIhFel/3hWaWdjcTEbGZk?= =?Windows-1252?Q?1x/VK22uQhmg0zQ3tD3xApTsQC5ZIAc2BFL4XkJGUk1Wgp6DlaIHihaO?= =?Windows-1252?Q?ElH1Qq/cXgDkn+0MHzjQRdFAxqo8vshAYh5OovG8mh5x5bj+GcXA47zw?= =?Windows-1252?Q?q7kjJOnwtOr+5QIZ6Z1q9jmfnvM3ov6dzg5UFaL6JZPlEMKaMST6CP2z?= =?Windows-1252?Q?sf0vgQFMh/M1lBsSGMfcbwvQNovKNkzB532BBhQHobKh7IAOx8c6wN8d?= =?Windows-1252?Q?vrKnPFJoYeWFqEarSVk17i6rzg/+1+Aeo5F/v2z3IWBQ9Fy5j475NpZd?= =?Windows-1252?Q?OYCP+cEndH3V30rUp1nzwwg/Hlx8fdjQkhAzTjsSdyTkHvev6B8WoY8+?= =?Windows-1252?Q?ZS15x3CSiwX1VkIAcawL4XL3o096WaxFsc7gy15wx4JRhRXGmcspv6xK?= =?Windows-1252?Q?eBR5tM5kIBGiJTFXnV8GE1YsG449/BmbToxBpiIFE19dnCmDuHbkhJaP?= =?Windows-1252?Q?I8cgeEIUDCP2hfJmYo/QdEVSQ0BcMrduSzsPxvrbiM+z6kniTWpTZxBk?= =?Windows-1252?Q?caeoohhmaktJSCPjDAgwZZp844oKBwU2bXxfxj1dZXORPTCC/MR2r+xC?= =?Windows-1252?Q?Iii8WKFGLhvxwy7I7WjRi5IK0nVMiiYgVN3TMw/jqkWUwAyQZR4PXe+J?= =?Windows-1252?Q?Sktq0OAZV8lwl5sAvxCasajW0bPD3GBHMtWAEhbVpwHQrWSz7QJrHBkd?= =?Windows-1252?Q?2KqYtCRJ1Vi3nq9kqlzDzTqPPDxP09kEAFnJJfZ8DLutsUQLEWPPf9LQ?= =?Windows-1252?Q?fPwVvQbHzQ6mKnbkT/oM2cCf9sH6DPsyBdbzN1Yn4SuDQtO3h45OJQbp?= =?Windows-1252?Q?KEhbm9AmZUPzg1zd8HqontIlB9zRs0rPh4ajE+IsTqyG6dn8365X+f9E?= =?Windows-1252?Q?/8IksxkTvoYwrlSXHq5mwcAjTlG4frwr57soMmqmiNbLeeEFbbJnqIYZ?= =?Windows-1252?Q?kR5qTo9KDmsINcKvKF1yXz1ZCrmJbdRtjiATN+3K2NMb7vsK74TQmWVt?= =?Windows-1252?Q?X3/JGiAbk25BTP0resJy0Tyv9+urOJLQO+OZgV1KINnAHLNyb0M8VR5V?= =?Windows-1252?Q?500MRucF3V92F0G8PDNmmlmLG4Qxig2hIvz/LNanTpWFLSTh/ZPKTzMu?= =?Windows-1252?Q?fnijIK05XDq6/knHzRqhewY8tiAWs9A571cGl4WFX42KgcJ8zA0oHLrl?= =?Windows-1252?Q?UUx6sqNndrVdrE=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2131;6:XN6CXOSDA4i8cV97eyCQ4KpRxtrIREDex7gNbfzaLAtbCNya2ECg4hlqPqMsr59/+bkBVFaUlwqn6x9U3y+F0S9DE4aTXFnofXsDcp5unYm1o9mCotimEGfSa2lm97TdgLYMAsV9DcahAkfqx8Tp/xwrIN4uU36YOc0Nl+/E7kzMaBTWfXUF7nDmoD7c+SgFMwvYzsHT5XCHUYhAVmSJ4AyjjtP8gL6hFsH7HfYLKMNycDjkeMDF7CXZFt9a42TzUM/lDkUtTpmh1bp66zZM8c2i1B8vqz6p2RBcPYjbE30/gob6P3iRfROT/g8515ha9ZTdnhfM2M9ivfnC31giQpIojytkd2JNwCG28w06OhE+KzVBmWRHzfgJoN09n61xO6aPG1OYluyKukukfsC2kb8szamxUTOGwenTAmCPbPs=;5:IlZJFdXrtjrZlfClbrLd+UevCL1vgJd0hRHBgssJwPZGspp69Rb2a/zJsG1c3Mf9PO3iQhJKLjZJqwRby9mpvrsPT2GGBajjXq2I1zRSgH+Fe/48wT4SqOJe7muL8+FnnAiiBR3cGWJottkA3/7ff01bqDS1q/NdE/SN7JRYw7g=;24:fV1O//LET3aYbt3V5239Nngduk6WS9se2MV6yFimLaxmHEhEAN0A/ystf3HfZMnZg4OCywBmwUB4jiCQJ9qjFlge4es99WzbD09WIYGKJ7U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2131;7:0VLu4+Iu3MtXOz+w2bgKedh54E7B5G7ZYRbUxdrQ2fpfgEw0mq6xt3MpDiATJXAt0GTcjckl5CB+kdK8+/acRQXzdE0HgDD/V12AujMl+vkWDIFQVVzj8ouCztYk8ZwmYPotxsEY11kdT3rjiCSuD++t9250t6KmGdrFqEX2eQ9wCtba/tfg+Wy1ixczD7119veRls/6WSQuJE/XfDi6dUN9NTQZBtWeFm8uVkVh3bFsG8O2Z/JZAtuvDia1ZvCYDnEdm0uys8ao7sDqKOxKCb8ibz+VBhynRqBlrQpGTzMSiIBVsnGvpVfQdDx9HkotTrB2OUaC3t1cqPrU16cteOWr93ZkQ/JbrfvSvhFo+RkVNiBKcIMEN8rWYVQNkkXSwkO94h6DBsLRtmxUIhIypYhEq+4Bb56ZNFNtttZiDncmw5SLNbw/AiYSnZi5lQojmsQ6/EpmEum/LAn6up7+mw== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Jan 2017 17:47:35.7665 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN4PR07MB2131 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 01/19/2017 06:50 AM, Jan Glauber wrote: [...] > >> 4) GPIO powers should be modelled as GPIO regulators. I believe we >> have discussed this earlier as well (I don't really recall in detail >> about the last things). It gives us the opportunity to via the >> regulator framework to find out the supported voltage levels. This is >> the generic method which is used by mmc drivers, you need to adopt to >> this as well. > > I've added a fixed regulator to DT: > > vcc_3v3: regulator-vcc_3v3 { > compatible = "regulator-fixed"; > regulator-name = "VCC_3V3"; Very minor point not really directly related to the MMC driver: "VCC_3V3" implies a general purpose supply for many things on the board. This is not the case for these boards. The "regulator" controls power only to eMMC and SD devices, so a name that conveys that function should be invented. Actually on some boards GPIO 8 doesn't even control a regulator, but instead only activates a bus isolator on the control and data signals to the eMMC and SD devices. In this case we would be using the regulator framework only because the code is already there and it happens to work, not because we actually have a regulator. > regulator-min-microvolt = <3300000>; > regulator-max-microvolt = <3300000>; > > gpio = <&gpio_6_0 8 0>; > /* enable-gpio = <&gpio_6_0 8 0>; */ > enable-active-high; > }; > > This seems to enable the gpio. Is this sufficient or do I need the > gpio-regulator? > Does the "regulator-fixed" allow us to properly turn it on and off? If not, we may have to switch to "gpio-regulator". Which ever is simplest should be used. [...]