From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Warren Subject: Re: [PATCH] of: support an enumerated-bus compatible value Date: Mon, 02 Jul 2012 16:26:57 -0600 Message-ID: <4FF22031.3060206@wwwdotorg.org> References: <1340924755-31447-1-git-send-email-swarren@wwwdotorg.org> <4FF0A6B6.8040902@gmail.com> <4FF1C567.4060809@wwwdotorg.org> <4FF1D8F9.9040005@firmworks.com> <4FF1DDBD.9050106@wwwdotorg.org> <4FF1EA1A.9030307@firmworks.com> <4FF1F955.6030204@wwwdotorg.org> <6BC22F77-77D7-45DF-821A-6CA2DBADEA59@kernel.crashing.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <6BC22F77-77D7-45DF-821A-6CA2DBADEA59-XVmvHMARGAS8U2dJNN8I7kB+6BGkLq7r@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: devicetree-discuss-bounces+gldd-devicetree-discuss=m.gmane.org-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org Sender: "devicetree-discuss" To: Segher Boessenkool Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org List-Id: devicetree@vger.kernel.org On 07/02/2012 03:44 PM, Segher Boessenkool wrote: >> But don't get too hung up on regulators; there are plenty of other >> devices that can exist in DT that aren't memory-mapped; GPIO-keys, >> aggregate sound complexes, perhaps WiFi/rfkill nodes, etc. All are >> affected by the same DT representation issue. > > So what is the issue? You have some node (the "bus node") under which > you have the "regulator@0", "frobnicator@1" etc. nodes. You refer to > these device nodes by phandle always, you cannot programmatically > control those devices (otherwise, they should be child node of a *real* > bus node). The bus node does not represent any device at all, and no > device driver can ever do anything with it; it should not have a > "compatible" property either. Without the "bus" node having a compatible property, nothing will recurse into it to instantiate the devices that the child nodes represent; the fact that they're reference by phandle doesn't instantiate the device, just references it.