Re: [PATCH v2 3/3] dtc: Support character literals in bytestrings
From: Anton Staaf <hidden>
Date: 2011-09-08 16:02:33
On Thu, Sep 8, 2011 at 12:07 AM, Grant Likely [off-list ref] wrote:
On Thu, Sep 08, 2011 at 01:51:49PM +1000, David Gibson wrote:quoted
On Wed, Sep 07, 2011 at 04:15:40PM -0700, Anton Staaf wrote:quoted
With this patch the following property assignment: property = ['a' 2b '\r']; is equivalent to: property = [61 2b 0d];So, I still have some reservations about this syntax. It occurred to me: do you actually need to intermix character and hexbyte values that much? Could I suggest an alternate sytax as: property = 'a', [2b], 'r'; The new character literals sufficiently distinct not to cause problems here, and it maintains the , == bytestring append behaviour we already have. Thoughts?Does it matter much? I'm happy with either. Is there a downside to the first syntax?
I don't think it matters that much, though in my use case of encoding
a keyboard mapping table I do actually intermix character literals and
two character hex values a lot. In particular, I use 00 to indicate a
key that is not present in the scan matrix. I also use hex values
with the top bit set to indicate special characters, such as modifiers
or arrow keys. So I guess I have a slight preference for my original
syntax, which has another advantage of looking a bit more C-like.
Though I could certainly use the alternate syntax as well. One last
thought, the alternate syntax will require quite a few additional
commas and square brackets, most likely causing my tables to wrap and
thus get become even longer in the dts file.
Thanks,
Anton
g.