From: Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: David Gibson <david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org>
Cc: Jon Loeliger <jdl-CYoMK+44s/E@public.gmane.org>,
devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Simon Glass <sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
Masahiro Yamada
<yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>
Subject: Re: [PATCH v2 3/3] fdt: Add functions to retrieve strings
Date: Tue, 29 Sep 2015 11:10:16 +0200 [thread overview]
Message-ID: <20150929091016.GC9460@ulmo.nvidia.com> (raw)
In-Reply-To: <20150929060041.GR19428-1s0os16eZneny3qCrzbmXA@public.gmane.org>
[-- Attachment #1: Type: text/plain, Size: 2186 bytes --]
On Tue, Sep 29, 2015 at 04:00:41PM +1000, David Gibson wrote:
> On Thu, Jul 16, 2015 at 01:10:21PM +0200, Thierry Reding wrote:
> > From: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> >
> > Given a device tree node, a property name and an index, the new function
> > fdt_get_string_index() will return in an output argument a pointer to
> > the index'th string in the property's value.
> >
> > The fdt_get_string() is a shortcut for the above with the index being 0.
> >
> > Signed-off-by: Thierry Reding <treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
> > ---
> > Changes in v2:
> > - handle non-NUL-terminated properties more gracefully
> > - improve documentation
> >
> > libfdt/fdt_ro.c | 37 +++++++++++++++++++++++++++++++++++++
> > libfdt/libfdt.h | 41 +++++++++++++++++++++++++++++++++++++++++
> > tests/strings.c | 32 ++++++++++++++++++++++++++++++++
> > 3 files changed, 110 insertions(+)
> >
> > diff --git a/libfdt/fdt_ro.c b/libfdt/fdt_ro.c
> > index 39b84b1cea60..4315815969b6 100644
> > --- a/libfdt/fdt_ro.c
> > +++ b/libfdt/fdt_ro.c
> > @@ -593,6 +593,43 @@ int fdt_find_string(const void *fdt, int nodeoffset, const char *property,
> > return -FDT_ERR_NOTFOUND;
> > }
> >
> > +int fdt_get_string_index(const void *fdt, int nodeoffset, const char *property,
> > + int index, const char **output)
>
> So, once again, I don't like the name. I'd prefer
> 'fdt_stringlist_get()'.
>
> I'm also not 100% behind the interface. In libfdt so far, we've
> mostly avoided the pattern of returning just an error code, with
> actual data returned via a pointer parameter.
>
> It's still a bit ugly, but to closer match the signature of existing
> functions like fdt_getprop_by_offset(), I'd prefer to see this return
> the output string directly (or NULL on error). Then add a *lenp
> parameter which will return either the string's length or an error
> code.
>
> The function is already determining the string's length, and there's a
> fair chance it could be useful to the caller.
Sounds like a better interface. I've implemented these changes and sent
out a v3.
Thanks,
Thierry
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
next prev parent reply other threads:[~2015-09-29 9:10 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-16 11:10 [PATCH v2 0/3] Add a couple of string-related functions Thierry Reding
[not found] ` <1437045021-4549-1-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-07-16 11:10 ` [PATCH v2 1/3] fdt: Add a function to count strings Thierry Reding
[not found] ` <1437045021-4549-2-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-09-29 5:53 ` David Gibson
[not found] ` <20150929055313.GP19428-1s0os16eZneny3qCrzbmXA@public.gmane.org>
2015-09-29 8:32 ` Thierry Reding
2015-07-16 11:10 ` [PATCH v2 2/3] fdt: Add a function to get the index of a string Thierry Reding
[not found] ` <1437045021-4549-3-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-09-29 5:54 ` David Gibson
[not found] ` <20150929055446.GQ19428-1s0os16eZneny3qCrzbmXA@public.gmane.org>
2015-09-29 8:32 ` Thierry Reding
2015-07-16 11:10 ` [PATCH v2 3/3] fdt: Add functions to retrieve strings Thierry Reding
[not found] ` <1437045021-4549-4-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2015-09-29 6:00 ` David Gibson
[not found] ` <20150929060041.GR19428-1s0os16eZneny3qCrzbmXA@public.gmane.org>
2015-09-29 9:10 ` Thierry Reding [this message]
2015-09-29 5:50 ` [PATCH v2 0/3] Add a couple of string-related functions David Gibson
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=20150929091016.GC9460@ulmo.nvidia.com \
--to=thierry.reding-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
--cc=david-xT8FGy+AXnRB3Ne2BGzF6laj5H9X9Tb+@public.gmane.org \
--cc=devicetree-compiler-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=jdl-CYoMK+44s/E@public.gmane.org \
--cc=sjg-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
--cc=yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.