diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2006-06-22 22:12:03 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-06-24 02:15:28 -0400 |
commit | 690c8fd31f1e35985d0f35772fde514da59ec9d1 (patch) | |
tree | 8a5a0036b3780a9eb315ea2201a2562570de1ebe /include/asm-sparc64/parport.h | |
parent | de8d28b16f5614aeb12bb69c8f9a38578b8d3ada (diff) |
[SPARC64]: Use in-kernel PROM tree for EBUS and ISA.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/asm-sparc64/parport.h')
-rw-r--r-- | include/asm-sparc64/parport.h | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/include/asm-sparc64/parport.h b/include/asm-sparc64/parport.h index 56b5197d7898..d3895873e4c7 100644 --- a/include/asm-sparc64/parport.h +++ b/include/asm-sparc64/parport.h | |||
@@ -67,18 +67,17 @@ static __inline__ unsigned int get_dma_residue(unsigned int dmanr) | |||
67 | 67 | ||
68 | static int ebus_ecpp_p(struct linux_ebus_device *edev) | 68 | static int ebus_ecpp_p(struct linux_ebus_device *edev) |
69 | { | 69 | { |
70 | if (!strcmp(edev->prom_name, "ecpp")) | 70 | if (!strcmp(edev->prom_node->name, "ecpp")) |
71 | return 1; | 71 | return 1; |
72 | if (!strcmp(edev->prom_name, "parallel")) { | 72 | if (!strcmp(edev->prom_node->name, "parallel")) { |
73 | char compat[19]; | 73 | char *compat; |
74 | prom_getstring(edev->prom_node, | 74 | |
75 | "compatible", | 75 | compat = of_get_property(edev->prom_node, |
76 | compat, sizeof(compat)); | 76 | "compatible", NULL); |
77 | compat[18] = '\0'; | 77 | if (compat && |
78 | if (!strcmp(compat, "ecpp")) | 78 | (!strcmp(compat, "ecpp") || |
79 | return 1; | 79 | !strcmp(compat, "ns87317-ecpp") || |
80 | if (!strcmp(compat, "ns87317-ecpp") && | 80 | !strcmp(compat + 13, "ecpp"))) |
81 | !strcmp(compat + 13, "ecpp")) | ||
82 | return 1; | 81 | return 1; |
83 | } | 82 | } |
84 | return 0; | 83 | return 0; |
@@ -94,12 +93,12 @@ static int parport_isa_probe(int count) | |||
94 | struct sparc_isa_device *child; | 93 | struct sparc_isa_device *child; |
95 | unsigned long base; | 94 | unsigned long base; |
96 | 95 | ||
97 | if (strcmp(isa_dev->prom_name, "dma")) | 96 | if (strcmp(isa_dev->prom_node->name, "dma")) |
98 | continue; | 97 | continue; |
99 | 98 | ||
100 | child = isa_dev->child; | 99 | child = isa_dev->child; |
101 | while (child) { | 100 | while (child) { |
102 | if (!strcmp(child->prom_name, "parallel")) | 101 | if (!strcmp(child->prom_node->name, "parallel")) |
103 | break; | 102 | break; |
104 | child = child->next; | 103 | child = child->next; |
105 | } | 104 | } |