diff options
author | Andres Salomon <dilinger@queued.net> | 2010-11-12 01:42:06 -0500 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2011-01-03 22:02:06 -0500 |
commit | 4a3a255289e7e322b8044286cce85031990f888a (patch) | |
tree | 60afe5f0fc76b2b4edb5374023806e26fc50fb4a /arch/sparc | |
parent | 301a3da358b4af84915f575479e4f0885be47b73 (diff) |
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: Andres Salomon <dilinger@queued.net>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'arch/sparc')
-rw-r--r-- | arch/sparc/kernel/auxio_32.c | 2 | ||||
-rw-r--r-- | arch/sparc/kernel/starfire.c | 2 | ||||
-rw-r--r-- | arch/sparc/prom/init_32.c | 2 | ||||
-rw-r--r-- | arch/sparc/prom/init_64.c | 4 | ||||
-rw-r--r-- | arch/sparc/prom/tree_32.c | 19 | ||||
-rw-r--r-- | arch/sparc/prom/tree_64.c | 18 |
6 files changed, 24 insertions, 23 deletions
diff --git a/arch/sparc/kernel/auxio_32.c b/arch/sparc/kernel/auxio_32.c index 35f48837871a..8505e0ac78ba 100644 --- a/arch/sparc/kernel/auxio_32.c +++ b/arch/sparc/kernel/auxio_32.c | |||
@@ -121,7 +121,7 @@ void __init auxio_power_probe(void) | |||
121 | node = prom_searchsiblings(node, "obio"); | 121 | node = prom_searchsiblings(node, "obio"); |
122 | node = prom_getchild(node); | 122 | node = prom_getchild(node); |
123 | node = prom_searchsiblings(node, "power"); | 123 | node = prom_searchsiblings(node, "power"); |
124 | if (node == 0 || node == -1) | 124 | if (node == 0 || (s32)node == -1) |
125 | return; | 125 | return; |
126 | 126 | ||
127 | /* Map the power control register. */ | 127 | /* Map the power control register. */ |
diff --git a/arch/sparc/kernel/starfire.c b/arch/sparc/kernel/starfire.c index a4446c0fb7a1..82281a566bb8 100644 --- a/arch/sparc/kernel/starfire.c +++ b/arch/sparc/kernel/starfire.c | |||
@@ -24,7 +24,7 @@ int this_is_starfire = 0; | |||
24 | void check_if_starfire(void) | 24 | void check_if_starfire(void) |
25 | { | 25 | { |
26 | phandle ssnode = prom_finddevice("/ssp-serial"); | 26 | phandle ssnode = prom_finddevice("/ssp-serial"); |
27 | if (ssnode != 0 && ssnode != -1) | 27 | if (ssnode != 0 && (s32)ssnode != -1) |
28 | this_is_starfire = 1; | 28 | this_is_starfire = 1; |
29 | } | 29 | } |
30 | 30 | ||
diff --git a/arch/sparc/prom/init_32.c b/arch/sparc/prom/init_32.c index d342dba4dd54..0a601b300639 100644 --- a/arch/sparc/prom/init_32.c +++ b/arch/sparc/prom/init_32.c | |||
@@ -60,7 +60,7 @@ void __init prom_init(struct linux_romvec *rp) | |||
60 | prom_nodeops = romvec->pv_nodeops; | 60 | prom_nodeops = romvec->pv_nodeops; |
61 | 61 | ||
62 | prom_root_node = prom_getsibling(0); | 62 | prom_root_node = prom_getsibling(0); |
63 | if((prom_root_node == 0) || (prom_root_node == -1)) | 63 | if ((prom_root_node == 0) || ((s32)prom_root_node == -1)) |
64 | prom_halt(); | 64 | prom_halt(); |
65 | 65 | ||
66 | if((((unsigned long) prom_nodeops) == 0) || | 66 | if((((unsigned long) prom_nodeops) == 0) || |
diff --git a/arch/sparc/prom/init_64.c b/arch/sparc/prom/init_64.c index 3ff911e7d25b..200528bb0994 100644 --- a/arch/sparc/prom/init_64.c +++ b/arch/sparc/prom/init_64.c | |||
@@ -35,14 +35,14 @@ void __init prom_init(void *cif_handler, void *cif_stack) | |||
35 | prom_cif_init(cif_handler, cif_stack); | 35 | prom_cif_init(cif_handler, cif_stack); |
36 | 36 | ||
37 | prom_chosen_node = prom_finddevice(prom_chosen_path); | 37 | prom_chosen_node = prom_finddevice(prom_chosen_path); |
38 | if (!prom_chosen_node || prom_chosen_node == -1) | 38 | if (!prom_chosen_node || (s32)prom_chosen_node == -1) |
39 | prom_halt(); | 39 | prom_halt(); |
40 | 40 | ||
41 | prom_stdin = prom_getint(prom_chosen_node, "stdin"); | 41 | prom_stdin = prom_getint(prom_chosen_node, "stdin"); |
42 | prom_stdout = prom_getint(prom_chosen_node, "stdout"); | 42 | prom_stdout = prom_getint(prom_chosen_node, "stdout"); |
43 | 43 | ||
44 | node = prom_finddevice("/openprom"); | 44 | node = prom_finddevice("/openprom"); |
45 | if (!node || node == -1) | 45 | if (!node || (s32)node == -1) |
46 | prom_halt(); | 46 | prom_halt(); |
47 | 47 | ||
48 | prom_getstring(node, "version", prom_version, sizeof(prom_version)); | 48 | prom_getstring(node, "version", prom_version, sizeof(prom_version)); |
diff --git a/arch/sparc/prom/tree_32.c b/arch/sparc/prom/tree_32.c index 535e2e69ac1d..f1d0734c245e 100644 --- a/arch/sparc/prom/tree_32.c +++ b/arch/sparc/prom/tree_32.c | |||
@@ -40,11 +40,11 @@ phandle prom_getchild(phandle node) | |||
40 | { | 40 | { |
41 | phandle cnode; | 41 | phandle cnode; |
42 | 42 | ||
43 | if (node == -1) | 43 | if ((s32)node == -1) |
44 | return 0; | 44 | return 0; |
45 | 45 | ||
46 | cnode = __prom_getchild(node); | 46 | cnode = __prom_getchild(node); |
47 | if (cnode == 0 || cnode == -1) | 47 | if (cnode == 0 || (s32)cnode == -1) |
48 | return 0; | 48 | return 0; |
49 | 49 | ||
50 | return cnode; | 50 | return cnode; |
@@ -72,11 +72,11 @@ phandle prom_getsibling(phandle node) | |||
72 | { | 72 | { |
73 | phandle sibnode; | 73 | phandle sibnode; |
74 | 74 | ||
75 | if (node == -1) | 75 | if ((s32)node == -1) |
76 | return 0; | 76 | return 0; |
77 | 77 | ||
78 | sibnode = __prom_getsibling(node); | 78 | sibnode = __prom_getsibling(node); |
79 | if (sibnode == 0 || sibnode == -1) | 79 | if (sibnode == 0 || (s32)sibnode == -1) |
80 | return 0; | 80 | return 0; |
81 | 81 | ||
82 | return sibnode; | 82 | return sibnode; |
@@ -231,7 +231,7 @@ char *__prom_nextprop(phandle node, char * oprop) | |||
231 | /* buffer is unused argument, but as v9 uses it, we need to have the same interface */ | 231 | /* buffer is unused argument, but as v9 uses it, we need to have the same interface */ |
232 | char *prom_firstprop(phandle node, char *bufer) | 232 | char *prom_firstprop(phandle node, char *bufer) |
233 | { | 233 | { |
234 | if (node == 0 || node == -1) | 234 | if (node == 0 || (s32)node == -1) |
235 | return ""; | 235 | return ""; |
236 | 236 | ||
237 | return __prom_nextprop(node, ""); | 237 | return __prom_nextprop(node, ""); |
@@ -244,7 +244,7 @@ EXPORT_SYMBOL(prom_firstprop); | |||
244 | */ | 244 | */ |
245 | char *prom_nextprop(phandle node, char *oprop, char *buffer) | 245 | char *prom_nextprop(phandle node, char *oprop, char *buffer) |
246 | { | 246 | { |
247 | if (node == 0 || node == -1) | 247 | if (node == 0 || (s32)node == -1) |
248 | return ""; | 248 | return ""; |
249 | 249 | ||
250 | return __prom_nextprop(node, oprop); | 250 | return __prom_nextprop(node, oprop); |
@@ -278,7 +278,7 @@ phandle prom_finddevice(char *name) | |||
278 | if (d != s + 3 && (!*d || *d == '/') | 278 | if (d != s + 3 && (!*d || *d == '/') |
279 | && d <= s + 3 + 8) { | 279 | && d <= s + 3 + 8) { |
280 | node2 = node; | 280 | node2 = node; |
281 | while (node2 && node2 != -1) { | 281 | while (node2 && (s32)node2 != -1) { |
282 | if (prom_getproperty (node2, "reg", (char *)reg, sizeof (reg)) > 0) { | 282 | if (prom_getproperty (node2, "reg", (char *)reg, sizeof (reg)) > 0) { |
283 | if (which_io == reg[0].which_io && phys_addr == reg[0].phys_addr) { | 283 | if (which_io == reg[0].which_io && phys_addr == reg[0].phys_addr) { |
284 | node = node2; | 284 | node = node2; |
@@ -286,7 +286,7 @@ phandle prom_finddevice(char *name) | |||
286 | } | 286 | } |
287 | } | 287 | } |
288 | node2 = prom_getsibling(node2); | 288 | node2 = prom_getsibling(node2); |
289 | if (!node2 || node2 == -1) | 289 | if (!node2 || (s32)node2 == -1) |
290 | break; | 290 | break; |
291 | node2 = prom_searchsiblings(prom_getsibling(node2), nbuf); | 291 | node2 = prom_searchsiblings(prom_getsibling(node2), nbuf); |
292 | } | 292 | } |
@@ -339,6 +339,7 @@ phandle prom_inst2pkg(int inst) | |||
339 | node = (*romvec->pv_v2devops.v2_inst2pkg)(inst); | 339 | node = (*romvec->pv_v2devops.v2_inst2pkg)(inst); |
340 | restore_current(); | 340 | restore_current(); |
341 | spin_unlock_irqrestore(&prom_lock, flags); | 341 | spin_unlock_irqrestore(&prom_lock, flags); |
342 | if (node == -1) return 0; | 342 | if ((s32)node == -1) |
343 | return 0; | ||
343 | return node; | 344 | return node; |
344 | } | 345 | } |
diff --git a/arch/sparc/prom/tree_64.c b/arch/sparc/prom/tree_64.c index d93660048376..92204c3800b5 100644 --- a/arch/sparc/prom/tree_64.c +++ b/arch/sparc/prom/tree_64.c | |||
@@ -43,10 +43,10 @@ inline phandle prom_getchild(phandle node) | |||
43 | { | 43 | { |
44 | phandle cnode; | 44 | phandle cnode; |
45 | 45 | ||
46 | if (node == -1) | 46 | if ((s32)node == -1) |
47 | return 0; | 47 | return 0; |
48 | cnode = __prom_getchild(node); | 48 | cnode = __prom_getchild(node); |
49 | if (cnode == -1) | 49 | if ((s32)cnode == -1) |
50 | return 0; | 50 | return 0; |
51 | return cnode; | 51 | return cnode; |
52 | } | 52 | } |
@@ -56,10 +56,10 @@ inline phandle prom_getparent(phandle node) | |||
56 | { | 56 | { |
57 | phandle cnode; | 57 | phandle cnode; |
58 | 58 | ||
59 | if (node == -1) | 59 | if ((s32)node == -1) |
60 | return 0; | 60 | return 0; |
61 | cnode = prom_node_to_node("parent", node); | 61 | cnode = prom_node_to_node("parent", node); |
62 | if (cnode == -1) | 62 | if ((s32)cnode == -1) |
63 | return 0; | 63 | return 0; |
64 | return cnode; | 64 | return cnode; |
65 | } | 65 | } |
@@ -76,10 +76,10 @@ inline phandle prom_getsibling(phandle node) | |||
76 | { | 76 | { |
77 | phandle sibnode; | 77 | phandle sibnode; |
78 | 78 | ||
79 | if (node == -1) | 79 | if ((s32)node == -1) |
80 | return 0; | 80 | return 0; |
81 | sibnode = __prom_getsibling(node); | 81 | sibnode = __prom_getsibling(node); |
82 | if (sibnode == -1) | 82 | if ((s32)sibnode == -1) |
83 | return 0; | 83 | return 0; |
84 | 84 | ||
85 | return sibnode; | 85 | return sibnode; |
@@ -240,7 +240,7 @@ inline char *prom_firstprop(phandle node, char *buffer) | |||
240 | unsigned long args[7]; | 240 | unsigned long args[7]; |
241 | 241 | ||
242 | *buffer = 0; | 242 | *buffer = 0; |
243 | if (node == -1) | 243 | if ((s32)node == -1) |
244 | return buffer; | 244 | return buffer; |
245 | 245 | ||
246 | args[0] = (unsigned long) prom_nextprop_name; | 246 | args[0] = (unsigned long) prom_nextprop_name; |
@@ -266,7 +266,7 @@ inline char *prom_nextprop(phandle node, const char *oprop, char *buffer) | |||
266 | unsigned long args[7]; | 266 | unsigned long args[7]; |
267 | char buf[32]; | 267 | char buf[32]; |
268 | 268 | ||
269 | if (node == -1) { | 269 | if ((s32)node == -1) { |
270 | *buffer = 0; | 270 | *buffer = 0; |
271 | return buffer; | 271 | return buffer; |
272 | } | 272 | } |
@@ -369,7 +369,7 @@ inline phandle prom_inst2pkg(int inst) | |||
369 | p1275_cmd_direct(args); | 369 | p1275_cmd_direct(args); |
370 | 370 | ||
371 | node = (int) args[4]; | 371 | node = (int) args[4]; |
372 | if (node == -1) | 372 | if ((s32)node == -1) |
373 | return 0; | 373 | return 0; |
374 | return node; | 374 | return node; |
375 | } | 375 | } |