linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Timur Tabi <timur@freescale.com>
To: Grant Likely <grant.likely@secretlab.ca>
Cc: Scott Wood <scottwood@freescale.com>,
	Mitch Bradley <wmb@firmworks.com>,
	devicetree-discuss@lists.ozlabs.org, linuxppc-dev@ozlabs.org
Subject: Re: [PATCH] powerpc/fsl: add device tree binding for QE firmware
Date: Thu, 25 Mar 2010 17:19:56 -0500	[thread overview]
Message-ID: <4BABE18C.4030302@freescale.com> (raw)
In-Reply-To: <fa686aa41003251454y94f787fva07c5c73fc2d7874@mail.gmail.com>

Grant Likely wrote:

> No, this isn't off in the weeds.  I concede the point of needing to
> store firmware in a separate node, but I still don't agree with the
> argument that it needs to be anything more than an anonymous named
> blob.

I still don't understand what's so *bad* about having some kind of binding documentation and a compatible property for this node.  Yes, I understand that compatible==device argument, but do we really have to be so strict about it?  I would like to be able to use the built-in OF functions in the kernel to validate the node (e.g. of_device_is_compatible).

And yes, I just realized the irony of using a function called of_device_is_compatible to test a node for something that isn't a device.  I'd prefer if you just ... overlooked that.

>  The fact that another node references it implicitly defines the
> format the blob needs to be in.  If the blob format changes, then in
> practice the existing binding is no longer compatible because older
> drivers just won't work.

Not necessarily.  There could be a new format for the microcode, or some new instructions for how to upload the microcode, and the driver could use the compatible format to learn how to process the microcode.  This would isolate all of the microcode-isms to the blob node.

>  It probably doesn't justify creation of a
> new compatible value, but I would handle firmware in a different
> format with a different property name to reference it.

I think it would be nicer if the property name could stay the same.  Then I wouldn't need to modify the property if I'm trying to upload a different kind of firmware.  I could then do this in the DTS:

qe@e0080000 {
	compatible = "fsl,qe";
	fsl,firmware-phandle = <&qe_firmware>;
	...
}	

qe_firmware:qe-firmware {
}

See how the qe-firmware node is blank?  It's just a placeholder for the firmware.  U-Boot would then just need to update that node when it embeds the microcode.  It would not need to modify the qe@e0080000 node.

-- 
Timur Tabi
Linux kernel developer at Freescale

  reply	other threads:[~2010-03-25 22:20 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-23 21:42 [PATCH] powerpc/fsl: add device tree binding for QE firmware Timur Tabi
2010-03-24  6:07 ` Grant Likely
2010-03-24 12:05   ` Timur Tabi
2010-03-24 17:00     ` Segher Boessenkool
2010-03-24 17:07       ` Grant Likely
2010-03-24 17:31         ` Timur Tabi
2010-03-24 18:10           ` Grant Likely
2010-03-24 18:21             ` Mitch Bradley
2010-03-24 18:25             ` Timur Tabi
2010-03-24 18:24           ` M. Warner Losh
2010-03-24 18:31             ` Timur Tabi
2010-03-25  1:49           ` Segher Boessenkool
2010-03-25 14:42             ` Timur Tabi
2010-03-25 16:10               ` Grant Likely
2010-03-25 16:34                 ` Scott Wood
2010-03-25 16:46                   ` Timur Tabi
2010-03-26 18:23                     ` Rafal Jaworowski
2010-03-25 23:53               ` M. Warner Losh
2010-03-26  0:22                 ` Timur Tabi
2010-03-25 15:16             ` Scott Wood
2010-03-25 15:29               ` Mitch Bradley
2010-03-25 16:16                 ` Grant Likely
2010-03-25 16:36                   ` Timur Tabi
2010-03-25 16:50                     ` Scott Wood
2010-03-25 16:59                     ` Grant Likely
2010-03-25 17:03                       ` Timur Tabi
2010-03-25 17:35                         ` Grant Likely
2010-03-25 18:05                           ` Timur Tabi
2010-03-25 19:53                           ` Scott Wood
2010-03-25 20:04                             ` Timur Tabi
2010-03-25 21:54                               ` Grant Likely
2010-03-25 22:19                                 ` Timur Tabi [this message]
2010-03-25 21:39                             ` Grant Likely
2010-03-25 22:47                               ` Scott Wood
2010-03-25 21:22                       ` David Gibson
2010-03-26  1:26                     ` Grant Likely
2010-03-26 15:17                       ` Timur Tabi
2010-03-26 18:20                         ` Grant Likely
2010-03-26 18:39                           ` Timur Tabi
2010-03-26 18:44                             ` Grant Likely
2010-03-26 18:48                               ` Timur Tabi
2010-03-26 18:56                                 ` Grant Likely
2010-03-26 18:58                                 ` Mitch Bradley
2010-03-26 19:07                                   ` Grant Likely
2010-03-26 18:48                             ` Mitch Bradley
2010-03-24 18:27         ` Scott Wood

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4BABE18C.4030302@freescale.com \
    --to=timur@freescale.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=grant.likely@secretlab.ca \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=scottwood@freescale.com \
    --cc=wmb@firmworks.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).