diff options
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/common/locomo.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/arm/common/locomo.c b/arch/arm/common/locomo.c index 41f12658c8b4..30ab1c3e1d4d 100644 --- a/arch/arm/common/locomo.c +++ b/arch/arm/common/locomo.c | |||
@@ -651,15 +651,15 @@ __locomo_probe(struct device *me, struct resource *mem, int irq) | |||
651 | return ret; | 651 | return ret; |
652 | } | 652 | } |
653 | 653 | ||
654 | static void __locomo_remove(struct locomo *lchip) | 654 | static int locomo_remove_child(struct device *dev, void *data) |
655 | { | 655 | { |
656 | struct list_head *l, *n; | 656 | device_unregister(dev); |
657 | 657 | return 0; | |
658 | list_for_each_safe(l, n, &lchip->dev->children) { | 658 | } |
659 | struct device *d = list_to_dev(l); | ||
660 | 659 | ||
661 | device_unregister(d); | 660 | static void __locomo_remove(struct locomo *lchip) |
662 | } | 661 | { |
662 | device_for_each_child(lchip->dev, NULL, locomo_remove_child); | ||
663 | 663 | ||
664 | if (lchip->irq != NO_IRQ) { | 664 | if (lchip->irq != NO_IRQ) { |
665 | set_irq_chained_handler(lchip->irq, NULL); | 665 | set_irq_chained_handler(lchip->irq, NULL); |