of: Minor simplification for the of_parse_phandles_with_args()
Anton Vorontsov [Fri, 5 Dec 2008 08:15:39 +0000 (08:15 +0000)]
By using 'list++' in the beginning we can simplify the code a
little bit.

Suggested-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>

drivers/of/base.c

index 4f884a3..cf04d4d 100644 (file)
@@ -547,14 +547,12 @@ int of_parse_phandles_with_args(struct device_node *np, const char *list_name,
                const u32 *cells;
                const phandle *phandle;
 
-               phandle = list;
-               args = list + 1;
+               phandle = list++;
+               args = list;
 
                /* one cell hole in the list = <>; */
-               if (!*phandle) {
-                       list++;
+               if (!*phandle)
                        goto next;
-               }
 
                node = of_find_node_by_phandle(*phandle);
                if (!node) {
@@ -570,8 +568,7 @@ int of_parse_phandles_with_args(struct device_node *np, const char *list_name,
                        goto err1;
                }
 
-               /* Next phandle is at offset of one phandle cell + #cells */
-               list += 1 + *cells;
+               list += *cells;
                if (list > list_end) {
                        pr_debug("%s: insufficient arguments length\n",
                                 np->full_name);