mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-12 07:37:31 -04:00
DeviceTree fixes for 3.7
A handful of fixes: - a fix for dtc from upstream - sparse fixes in DeviceTree code - stub of_get_child_by_name for !OF builds -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQEcBAABAgAGBQJQgCc2AAoJEMhvYp4jgsXiIdQIAKKph1glOZ6KVa80c12iR+fy lSUKi6ZGr1C/AmAiknzYRTsF1ouw02ySD2Z1AsaQsnEHU9S5jUO7qgTohS30p7zg RfEh/646bOOc+l6LvT1jEJJNwmyLyJjtWqFtJf/QBcxsLNkJciEoHfcss05GYEIu H8NGWYVEhngC1vmTmlYQ9xDjA+YGQ2OEVqMSxFDf6K+5uJqMpvSNNenC6TeHK6iP /+fMnpKyU3EFzIO0r+AF4crIlJzTbrJQFJPrOZySthQhaqJPfvKVsHA20TOeYADP 7po8Km9zWGBqY19Ied6ZzdLm6qg1LTOGWVFlRICL0AUP9OPmmUT6p9OZRceKT1Q= =MTRP -----END PGP SIGNATURE----- Merge tag 'dt-fixes-for-3.7' of git://sources.calxeda.com/kernel/linux Pull DeviceTree fixes from Rob Herring: "A handful of fixes: - a fix for dtc from upstream - sparse fixes in DeviceTree code - stub of_get_child_by_name for !OF builds" * tag 'dt-fixes-for-3.7' of git://sources.calxeda.com/kernel/linux: dtc: fix for_each_*() to skip first object if deleted of/platform: sparse fix of/irq: sparse fixes of/address: sparse fixes of: add stub of_get_child_by_name for non-OF builds
This commit is contained in:
commit
bab58350e5
7 changed files with 39 additions and 54 deletions
|
|
@ -161,51 +161,27 @@ struct node {
|
|||
struct label *labels;
|
||||
};
|
||||
|
||||
static inline struct label *for_each_label_next(struct label *l)
|
||||
{
|
||||
do {
|
||||
l = l->next;
|
||||
} while (l && l->deleted);
|
||||
|
||||
return l;
|
||||
}
|
||||
|
||||
#define for_each_label(l0, l) \
|
||||
for ((l) = (l0); (l); (l) = for_each_label_next(l))
|
||||
|
||||
#define for_each_label_withdel(l0, l) \
|
||||
for ((l) = (l0); (l); (l) = (l)->next)
|
||||
|
||||
static inline struct property *for_each_property_next(struct property *p)
|
||||
{
|
||||
do {
|
||||
p = p->next;
|
||||
} while (p && p->deleted);
|
||||
|
||||
return p;
|
||||
}
|
||||
|
||||
#define for_each_property(n, p) \
|
||||
for ((p) = (n)->proplist; (p); (p) = for_each_property_next(p))
|
||||
#define for_each_label(l0, l) \
|
||||
for_each_label_withdel(l0, l) \
|
||||
if (!(l)->deleted)
|
||||
|
||||
#define for_each_property_withdel(n, p) \
|
||||
for ((p) = (n)->proplist; (p); (p) = (p)->next)
|
||||
|
||||
static inline struct node *for_each_child_next(struct node *c)
|
||||
{
|
||||
do {
|
||||
c = c->next_sibling;
|
||||
} while (c && c->deleted);
|
||||
|
||||
return c;
|
||||
}
|
||||
|
||||
#define for_each_child(n, c) \
|
||||
for ((c) = (n)->children; (c); (c) = for_each_child_next(c))
|
||||
#define for_each_property(n, p) \
|
||||
for_each_property_withdel(n, p) \
|
||||
if (!(p)->deleted)
|
||||
|
||||
#define for_each_child_withdel(n, c) \
|
||||
for ((c) = (n)->children; (c); (c) = (c)->next_sibling)
|
||||
|
||||
#define for_each_child(n, c) \
|
||||
for_each_child_withdel(n, c) \
|
||||
if (!(c)->deleted)
|
||||
|
||||
void add_label(struct label **labels, char *label);
|
||||
void delete_labels(struct label **labels);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue