Commit 4a3a2552 authored by Andres Salomon's avatar Andres Salomon Committed by Grant Likely

sparc: explicitly cast negative phandle checks to s32

When we switched sparc from using 'int's to 'phandle's (which is a u32), we
neglected to do anything with the various checks for -1.  For those tests,
explicitly cast the phandles to s32.
Signed-off-by: default avatarAndres Salomon <dilinger@queued.net>
Acked-by: default avatarDavid S. Miller <davem@davemloft.net>
Signed-off-by: default avatarGrant Likely <grant.likely@secretlab.ca>
parent 301a3da3
...@@ -121,7 +121,7 @@ void __init auxio_power_probe(void) ...@@ -121,7 +121,7 @@ void __init auxio_power_probe(void)
node = prom_searchsiblings(node, "obio"); node = prom_searchsiblings(node, "obio");
node = prom_getchild(node); node = prom_getchild(node);
node = prom_searchsiblings(node, "power"); node = prom_searchsiblings(node, "power");
if (node == 0 || node == -1) if (node == 0 || (s32)node == -1)
return; return;
/* Map the power control register. */ /* Map the power control register. */
......
...@@ -24,7 +24,7 @@ int this_is_starfire = 0; ...@@ -24,7 +24,7 @@ int this_is_starfire = 0;
void check_if_starfire(void) void check_if_starfire(void)
{ {
phandle ssnode = prom_finddevice("/ssp-serial"); phandle ssnode = prom_finddevice("/ssp-serial");
if (ssnode != 0 && ssnode != -1) if (ssnode != 0 && (s32)ssnode != -1)
this_is_starfire = 1; this_is_starfire = 1;
} }
......
...@@ -60,7 +60,7 @@ void __init prom_init(struct linux_romvec *rp) ...@@ -60,7 +60,7 @@ void __init prom_init(struct linux_romvec *rp)
prom_nodeops = romvec->pv_nodeops; prom_nodeops = romvec->pv_nodeops;
prom_root_node = prom_getsibling(0); prom_root_node = prom_getsibling(0);
if((prom_root_node == 0) || (prom_root_node == -1)) if ((prom_root_node == 0) || ((s32)prom_root_node == -1))
prom_halt(); prom_halt();
if((((unsigned long) prom_nodeops) == 0) || if((((unsigned long) prom_nodeops) == 0) ||
......
...@@ -35,14 +35,14 @@ void __init prom_init(void *cif_handler, void *cif_stack) ...@@ -35,14 +35,14 @@ void __init prom_init(void *cif_handler, void *cif_stack)
prom_cif_init(cif_handler, cif_stack); prom_cif_init(cif_handler, cif_stack);
prom_chosen_node = prom_finddevice(prom_chosen_path); prom_chosen_node = prom_finddevice(prom_chosen_path);
if (!prom_chosen_node || prom_chosen_node == -1) if (!prom_chosen_node || (s32)prom_chosen_node == -1)
prom_halt(); prom_halt();
prom_stdin = prom_getint(prom_chosen_node, "stdin"); prom_stdin = prom_getint(prom_chosen_node, "stdin");
prom_stdout = prom_getint(prom_chosen_node, "stdout"); prom_stdout = prom_getint(prom_chosen_node, "stdout");
node = prom_finddevice("/openprom"); node = prom_finddevice("/openprom");
if (!node || node == -1) if (!node || (s32)node == -1)
prom_halt(); prom_halt();
prom_getstring(node, "version", prom_version, sizeof(prom_version)); prom_getstring(node, "version", prom_version, sizeof(prom_version));
......
...@@ -40,11 +40,11 @@ phandle prom_getchild(phandle node) ...@@ -40,11 +40,11 @@ phandle prom_getchild(phandle node)
{ {
phandle cnode; phandle cnode;
if (node == -1) if ((s32)node == -1)
return 0; return 0;
cnode = __prom_getchild(node); cnode = __prom_getchild(node);
if (cnode == 0 || cnode == -1) if (cnode == 0 || (s32)cnode == -1)
return 0; return 0;
return cnode; return cnode;
...@@ -72,11 +72,11 @@ phandle prom_getsibling(phandle node) ...@@ -72,11 +72,11 @@ phandle prom_getsibling(phandle node)
{ {
phandle sibnode; phandle sibnode;
if (node == -1) if ((s32)node == -1)
return 0; return 0;
sibnode = __prom_getsibling(node); sibnode = __prom_getsibling(node);
if (sibnode == 0 || sibnode == -1) if (sibnode == 0 || (s32)sibnode == -1)
return 0; return 0;
return sibnode; return sibnode;
...@@ -231,7 +231,7 @@ char *__prom_nextprop(phandle node, char * oprop) ...@@ -231,7 +231,7 @@ char *__prom_nextprop(phandle node, char * oprop)
/* buffer is unused argument, but as v9 uses it, we need to have the same interface */ /* buffer is unused argument, but as v9 uses it, we need to have the same interface */
char *prom_firstprop(phandle node, char *bufer) char *prom_firstprop(phandle node, char *bufer)
{ {
if (node == 0 || node == -1) if (node == 0 || (s32)node == -1)
return ""; return "";
return __prom_nextprop(node, ""); return __prom_nextprop(node, "");
...@@ -244,7 +244,7 @@ EXPORT_SYMBOL(prom_firstprop); ...@@ -244,7 +244,7 @@ EXPORT_SYMBOL(prom_firstprop);
*/ */
char *prom_nextprop(phandle node, char *oprop, char *buffer) char *prom_nextprop(phandle node, char *oprop, char *buffer)
{ {
if (node == 0 || node == -1) if (node == 0 || (s32)node == -1)
return ""; return "";
return __prom_nextprop(node, oprop); return __prom_nextprop(node, oprop);
...@@ -278,7 +278,7 @@ phandle prom_finddevice(char *name) ...@@ -278,7 +278,7 @@ phandle prom_finddevice(char *name)
if (d != s + 3 && (!*d || *d == '/') if (d != s + 3 && (!*d || *d == '/')
&& d <= s + 3 + 8) { && d <= s + 3 + 8) {
node2 = node; node2 = node;
while (node2 && node2 != -1) { while (node2 && (s32)node2 != -1) {
if (prom_getproperty (node2, "reg", (char *)reg, sizeof (reg)) > 0) { if (prom_getproperty (node2, "reg", (char *)reg, sizeof (reg)) > 0) {
if (which_io == reg[0].which_io && phys_addr == reg[0].phys_addr) { if (which_io == reg[0].which_io && phys_addr == reg[0].phys_addr) {
node = node2; node = node2;
...@@ -286,7 +286,7 @@ phandle prom_finddevice(char *name) ...@@ -286,7 +286,7 @@ phandle prom_finddevice(char *name)
} }
} }
node2 = prom_getsibling(node2); node2 = prom_getsibling(node2);
if (!node2 || node2 == -1) if (!node2 || (s32)node2 == -1)
break; break;
node2 = prom_searchsiblings(prom_getsibling(node2), nbuf); node2 = prom_searchsiblings(prom_getsibling(node2), nbuf);
} }
...@@ -339,6 +339,7 @@ phandle prom_inst2pkg(int inst) ...@@ -339,6 +339,7 @@ phandle prom_inst2pkg(int inst)
node = (*romvec->pv_v2devops.v2_inst2pkg)(inst); node = (*romvec->pv_v2devops.v2_inst2pkg)(inst);
restore_current(); restore_current();
spin_unlock_irqrestore(&prom_lock, flags); spin_unlock_irqrestore(&prom_lock, flags);
if (node == -1) return 0; if ((s32)node == -1)
return 0;
return node; return node;
} }
...@@ -43,10 +43,10 @@ inline phandle prom_getchild(phandle node) ...@@ -43,10 +43,10 @@ inline phandle prom_getchild(phandle node)
{ {
phandle cnode; phandle cnode;
if (node == -1) if ((s32)node == -1)
return 0; return 0;
cnode = __prom_getchild(node); cnode = __prom_getchild(node);
if (cnode == -1) if ((s32)cnode == -1)
return 0; return 0;
return cnode; return cnode;
} }
...@@ -56,10 +56,10 @@ inline phandle prom_getparent(phandle node) ...@@ -56,10 +56,10 @@ inline phandle prom_getparent(phandle node)
{ {
phandle cnode; phandle cnode;
if (node == -1) if ((s32)node == -1)
return 0; return 0;
cnode = prom_node_to_node("parent", node); cnode = prom_node_to_node("parent", node);
if (cnode == -1) if ((s32)cnode == -1)
return 0; return 0;
return cnode; return cnode;
} }
...@@ -76,10 +76,10 @@ inline phandle prom_getsibling(phandle node) ...@@ -76,10 +76,10 @@ inline phandle prom_getsibling(phandle node)
{ {
phandle sibnode; phandle sibnode;
if (node == -1) if ((s32)node == -1)
return 0; return 0;
sibnode = __prom_getsibling(node); sibnode = __prom_getsibling(node);
if (sibnode == -1) if ((s32)sibnode == -1)
return 0; return 0;
return sibnode; return sibnode;
...@@ -240,7 +240,7 @@ inline char *prom_firstprop(phandle node, char *buffer) ...@@ -240,7 +240,7 @@ inline char *prom_firstprop(phandle node, char *buffer)
unsigned long args[7]; unsigned long args[7];
*buffer = 0; *buffer = 0;
if (node == -1) if ((s32)node == -1)
return buffer; return buffer;
args[0] = (unsigned long) prom_nextprop_name; args[0] = (unsigned long) prom_nextprop_name;
...@@ -266,7 +266,7 @@ inline char *prom_nextprop(phandle node, const char *oprop, char *buffer) ...@@ -266,7 +266,7 @@ inline char *prom_nextprop(phandle node, const char *oprop, char *buffer)
unsigned long args[7]; unsigned long args[7];
char buf[32]; char buf[32];
if (node == -1) { if ((s32)node == -1) {
*buffer = 0; *buffer = 0;
return buffer; return buffer;
} }
...@@ -369,7 +369,7 @@ inline phandle prom_inst2pkg(int inst) ...@@ -369,7 +369,7 @@ inline phandle prom_inst2pkg(int inst)
p1275_cmd_direct(args); p1275_cmd_direct(args);
node = (int) args[4]; node = (int) args[4];
if (node == -1) if ((s32)node == -1)
return 0; return 0;
return node; return node;
} }
......
...@@ -467,7 +467,7 @@ static int jsflash_init(void) ...@@ -467,7 +467,7 @@ static int jsflash_init(void)
node = prom_getchild(prom_root_node); node = prom_getchild(prom_root_node);
node = prom_searchsiblings(node, "flash-memory"); node = prom_searchsiblings(node, "flash-memory");
if (node != 0 && node != -1) { if (node != 0 && (s32)node != -1) {
if (prom_getproperty(node, "reg", if (prom_getproperty(node, "reg",
(char *)&reg0, sizeof(reg0)) == -1) { (char *)&reg0, sizeof(reg0)) == -1) {
printk("jsflash: no \"reg\" property\n"); printk("jsflash: no \"reg\" property\n");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment