of: Use vargs in __of_node_alloc

The overlay code needs to construct a new full_name from the parent name
and the node name, but the current method has to allocate and then free
an temporary string which is wasteful. Fix this problem by using vargs
to pass in a format and arguments into __of_node_alloc().

At the same time remove the allocflags argument to __of_node_alloc().
The only users all use GFP_KERNEL, so there is no need to provide it as
an option. If there is ever a need later it can be added back.

Signed-off-by: Grant Likely <grant.likely@linaro.org>
This commit is contained in:
Grant Likely
2014-11-14 15:33:07 +00:00
parent 66e6a5a1fc
commit ef8bbd73a7
3 changed files with 12 additions and 12 deletions

View File

@@ -61,7 +61,7 @@ static inline int of_property_notify(int action, struct device_node *np,
* own the devtree lock or work on detached trees only.
*/
struct property *__of_prop_dup(const struct property *prop, gfp_t allocflags);
struct device_node *__of_node_alloc(const char *full_name, gfp_t allocflags);
__printf(1, 2) struct device_node *__of_node_alloc(const char *fmt, ...);
extern const void *__of_get_property(const struct device_node *np,
const char *name, int *lenp);