diff options
Diffstat (limited to 'drivers/serial/sunhv.c')
| -rw-r--r-- | drivers/serial/sunhv.c | 14 |
1 files changed, 3 insertions, 11 deletions
diff --git a/drivers/serial/sunhv.c b/drivers/serial/sunhv.c index 8ff900b09811..be0fe152891b 100644 --- a/drivers/serial/sunhv.c +++ b/drivers/serial/sunhv.c | |||
| @@ -562,16 +562,10 @@ static int __devinit hv_probe(struct of_device *op, const struct of_device_id *m | |||
| 562 | 562 | ||
| 563 | port->dev = &op->dev; | 563 | port->dev = &op->dev; |
| 564 | 564 | ||
| 565 | sunhv_reg.minor = sunserial_current_minor; | 565 | err = sunserial_register_minors(&sunhv_reg, 1); |
| 566 | sunhv_reg.nr = 1; | ||
| 567 | |||
| 568 | err = uart_register_driver(&sunhv_reg); | ||
| 569 | if (err) | 566 | if (err) |
| 570 | goto out_free_con_read_page; | 567 | goto out_free_con_read_page; |
| 571 | 568 | ||
| 572 | sunhv_reg.tty_driver->name_base = sunhv_reg.minor - 64; | ||
| 573 | sunserial_current_minor += 1; | ||
| 574 | |||
| 575 | sunserial_console_match(&sunhv_console, op->node, | 569 | sunserial_console_match(&sunhv_console, op->node, |
| 576 | &sunhv_reg, port->line); | 570 | &sunhv_reg, port->line); |
| 577 | 571 | ||
| @@ -591,8 +585,7 @@ out_remove_port: | |||
| 591 | uart_remove_one_port(&sunhv_reg, port); | 585 | uart_remove_one_port(&sunhv_reg, port); |
| 592 | 586 | ||
| 593 | out_unregister_driver: | 587 | out_unregister_driver: |
| 594 | sunserial_current_minor -= 1; | 588 | sunserial_unregister_minors(&sunhv_reg, 1); |
| 595 | uart_unregister_driver(&sunhv_reg); | ||
| 596 | 589 | ||
| 597 | out_free_con_read_page: | 590 | out_free_con_read_page: |
| 598 | kfree(con_read_page); | 591 | kfree(con_read_page); |
| @@ -614,8 +607,7 @@ static int __devexit hv_remove(struct of_device *dev) | |||
| 614 | 607 | ||
| 615 | uart_remove_one_port(&sunhv_reg, port); | 608 | uart_remove_one_port(&sunhv_reg, port); |
| 616 | 609 | ||
| 617 | sunserial_current_minor -= 1; | 610 | sunserial_unregister_minors(&sunhv_reg, 1); |
| 618 | uart_unregister_driver(&sunhv_reg); | ||
| 619 | 611 | ||
| 620 | kfree(port); | 612 | kfree(port); |
| 621 | sunhv_port = NULL; | 613 | sunhv_port = NULL; |
