diff options
Diffstat (limited to 'drivers/serial')
-rw-r--r-- | drivers/serial/mpc52xx_uart.c | 7 | ||||
-rw-r--r-- | drivers/serial/of_serial.c | 4 | ||||
-rw-r--r-- | drivers/serial/pmac_zilog.c | 8 |
3 files changed, 10 insertions, 9 deletions
diff --git a/drivers/serial/mpc52xx_uart.c b/drivers/serial/mpc52xx_uart.c index 8d24cd521056..35f8b86cc78f 100644 --- a/drivers/serial/mpc52xx_uart.c +++ b/drivers/serial/mpc52xx_uart.c | |||
@@ -257,9 +257,10 @@ mpc52xx_uart_shutdown(struct uart_port *port) | |||
257 | { | 257 | { |
258 | struct mpc52xx_psc __iomem *psc = PSC(port); | 258 | struct mpc52xx_psc __iomem *psc = PSC(port); |
259 | 259 | ||
260 | /* Shut down the port, interrupt and all */ | 260 | /* Shut down the port. Leave TX active if on a console port */ |
261 | out_8(&psc->command,MPC52xx_PSC_RST_RX); | 261 | out_8(&psc->command,MPC52xx_PSC_RST_RX); |
262 | out_8(&psc->command,MPC52xx_PSC_RST_TX); | 262 | if (!uart_console(port)) |
263 | out_8(&psc->command,MPC52xx_PSC_RST_TX); | ||
263 | 264 | ||
264 | port->read_status_mask = 0; | 265 | port->read_status_mask = 0; |
265 | out_be16(&psc->mpc52xx_psc_imr,port->read_status_mask); | 266 | out_be16(&psc->mpc52xx_psc_imr,port->read_status_mask); |
@@ -1069,7 +1070,7 @@ mpc52xx_uart_of_enumerate(void) | |||
1069 | continue; | 1070 | continue; |
1070 | 1071 | ||
1071 | /* Is a particular device number requested? */ | 1072 | /* Is a particular device number requested? */ |
1072 | devno = get_property(np, "port-number", NULL); | 1073 | devno = of_get_property(np, "port-number", NULL); |
1073 | mpc52xx_uart_of_assign(of_node_get(np), devno ? *devno : -1); | 1074 | mpc52xx_uart_of_assign(of_node_get(np), devno ? *devno : -1); |
1074 | } | 1075 | } |
1075 | 1076 | ||
diff --git a/drivers/serial/of_serial.c b/drivers/serial/of_serial.c index 336d0f4580d9..7ffdaeaf0545 100644 --- a/drivers/serial/of_serial.c +++ b/drivers/serial/of_serial.c | |||
@@ -29,8 +29,8 @@ static int __devinit of_platform_serial_setup(struct of_device *ofdev, | |||
29 | int ret; | 29 | int ret; |
30 | 30 | ||
31 | memset(port, 0, sizeof *port); | 31 | memset(port, 0, sizeof *port); |
32 | spd = get_property(np, "current-speed", NULL); | 32 | spd = of_get_property(np, "current-speed", NULL); |
33 | clk = get_property(np, "clock-frequency", NULL); | 33 | clk = of_get_property(np, "clock-frequency", NULL); |
34 | if (!clk) { | 34 | if (!clk) { |
35 | dev_warn(&ofdev->dev, "no clock-frequency property set\n"); | 35 | dev_warn(&ofdev->dev, "no clock-frequency property set\n"); |
36 | return -ENODEV; | 36 | return -ENODEV; |
diff --git a/drivers/serial/pmac_zilog.c b/drivers/serial/pmac_zilog.c index be8d75721a85..0fa9f6761763 100644 --- a/drivers/serial/pmac_zilog.c +++ b/drivers/serial/pmac_zilog.c | |||
@@ -1450,14 +1450,14 @@ no_dma: | |||
1450 | /* | 1450 | /* |
1451 | * Detect port type | 1451 | * Detect port type |
1452 | */ | 1452 | */ |
1453 | if (device_is_compatible(np, "cobalt")) | 1453 | if (of_device_is_compatible(np, "cobalt")) |
1454 | uap->flags |= PMACZILOG_FLAG_IS_INTMODEM; | 1454 | uap->flags |= PMACZILOG_FLAG_IS_INTMODEM; |
1455 | conn = get_property(np, "AAPL,connector", &len); | 1455 | conn = of_get_property(np, "AAPL,connector", &len); |
1456 | if (conn && (strcmp(conn, "infrared") == 0)) | 1456 | if (conn && (strcmp(conn, "infrared") == 0)) |
1457 | uap->flags |= PMACZILOG_FLAG_IS_IRDA; | 1457 | uap->flags |= PMACZILOG_FLAG_IS_IRDA; |
1458 | uap->port_type = PMAC_SCC_ASYNC; | 1458 | uap->port_type = PMAC_SCC_ASYNC; |
1459 | /* 1999 Powerbook G3 has slot-names property instead */ | 1459 | /* 1999 Powerbook G3 has slot-names property instead */ |
1460 | slots = get_property(np, "slot-names", &len); | 1460 | slots = of_get_property(np, "slot-names", &len); |
1461 | if (slots && slots->count > 0) { | 1461 | if (slots && slots->count > 0) { |
1462 | if (strcmp(slots->name, "IrDA") == 0) | 1462 | if (strcmp(slots->name, "IrDA") == 0) |
1463 | uap->flags |= PMACZILOG_FLAG_IS_IRDA; | 1463 | uap->flags |= PMACZILOG_FLAG_IS_IRDA; |
@@ -1471,7 +1471,7 @@ no_dma: | |||
1471 | of_find_node_by_name(NULL, "i2c-modem"); | 1471 | of_find_node_by_name(NULL, "i2c-modem"); |
1472 | if (i2c_modem) { | 1472 | if (i2c_modem) { |
1473 | const char* mid = | 1473 | const char* mid = |
1474 | get_property(i2c_modem, "modem-id", NULL); | 1474 | of_get_property(i2c_modem, "modem-id", NULL); |
1475 | if (mid) switch(*mid) { | 1475 | if (mid) switch(*mid) { |
1476 | case 0x04 : | 1476 | case 0x04 : |
1477 | case 0x05 : | 1477 | case 0x05 : |