Browse Source

sparc: Clean arch-specific code in prom_common.c

prom_nextprop() and prom_firstprop() have slightly different calling
conventions in 32 and 64 bit SPARC.

prom_common.c uses a ifdef guard to ensure that these functions are
called correctly.

Adjust code to eliminate this ifdef by using a calling convention that
is compatible with both 32 and 64 bit SPARC.

Signed-off-by: Julian Calaby <julian.calaby@gmail.com>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Julian Calaby 16 years ago
parent
commit
47cd5265ea
1 changed files with 3 additions and 11 deletions
  1. 3 11
      arch/sparc/kernel/prom_common.c

+ 3 - 11
arch/sparc/kernel/prom_common.c

@@ -155,20 +155,12 @@ static struct property * __init build_one_prop(phandle node, char *prev,
 		p->value = prom_early_alloc(special_len);
 		p->value = prom_early_alloc(special_len);
 		memcpy(p->value, special_val, special_len);
 		memcpy(p->value, special_val, special_len);
 	} else {
 	} else {
-#ifdef CONFIG_SPARC32
-		if (prev == NULL) {
-			name = prom_firstprop(node, NULL);
-		} else {
-			name = prom_nextprop(node, prev, NULL);
-		}
-#else
 		if (prev == NULL) {
 		if (prev == NULL) {
-			prom_firstprop(node, p->name);
+			name = prom_firstprop(node, p->name);
 		} else {
 		} else {
-			prom_nextprop(node, prev, p->name);
+			name = prom_nextprop(node, prev, p->name);
 		}
 		}
-		name = p->name;
-#endif
+
 		if (strlen(name) == 0) {
 		if (strlen(name) == 0) {
 			tmp = p;
 			tmp = p;
 			return NULL;
 			return NULL;