diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/char/hvc_iseries.c | 2 | ||||
-rw-r--r-- | drivers/char/hvc_vio.c | 2 | ||||
-rw-r--r-- | drivers/char/hvcs.c | 2 | ||||
-rw-r--r-- | drivers/net/ps3_gelic_net.c | 22 | ||||
-rw-r--r-- | drivers/net/ps3_gelic_wireless.c | 6 | ||||
-rw-r--r-- | drivers/rapidio/rio-scan.c | 43 | ||||
-rw-r--r-- | drivers/rapidio/rio-sysfs.c | 6 | ||||
-rw-r--r-- | drivers/scsi/ps3rom.c | 10 | ||||
-rw-r--r-- | drivers/serial/of_serial.c | 2 | ||||
-rw-r--r-- | drivers/serial/ucc_uart.c | 19 | ||||
-rw-r--r-- | drivers/usb/host/ehci-ps3.c | 4 | ||||
-rw-r--r-- | drivers/usb/host/ohci-ps3.c | 4 |
12 files changed, 72 insertions, 50 deletions
diff --git a/drivers/char/hvc_iseries.c b/drivers/char/hvc_iseries.c index 449727b6166d..936d05bf37fa 100644 --- a/drivers/char/hvc_iseries.c +++ b/drivers/char/hvc_iseries.c | |||
@@ -241,7 +241,7 @@ static int __devexit hvc_vio_remove(struct vio_dev *vdev) | |||
241 | static struct vio_driver hvc_vio_driver = { | 241 | static struct vio_driver hvc_vio_driver = { |
242 | .id_table = hvc_driver_table, | 242 | .id_table = hvc_driver_table, |
243 | .probe = hvc_vio_probe, | 243 | .probe = hvc_vio_probe, |
244 | .remove = hvc_vio_remove, | 244 | .remove = __devexit_p(hvc_vio_remove), |
245 | .driver = { | 245 | .driver = { |
246 | .name = hvc_driver_name, | 246 | .name = hvc_driver_name, |
247 | .owner = THIS_MODULE, | 247 | .owner = THIS_MODULE, |
diff --git a/drivers/char/hvc_vio.c b/drivers/char/hvc_vio.c index bd62dc86b47d..c72b994652ac 100644 --- a/drivers/char/hvc_vio.c +++ b/drivers/char/hvc_vio.c | |||
@@ -113,7 +113,7 @@ static int __devexit hvc_vio_remove(struct vio_dev *vdev) | |||
113 | static struct vio_driver hvc_vio_driver = { | 113 | static struct vio_driver hvc_vio_driver = { |
114 | .id_table = hvc_driver_table, | 114 | .id_table = hvc_driver_table, |
115 | .probe = hvc_vio_probe, | 115 | .probe = hvc_vio_probe, |
116 | .remove = hvc_vio_remove, | 116 | .remove = __devexit_p(hvc_vio_remove), |
117 | .driver = { | 117 | .driver = { |
118 | .name = hvc_driver_name, | 118 | .name = hvc_driver_name, |
119 | .owner = THIS_MODULE, | 119 | .owner = THIS_MODULE, |
diff --git a/drivers/char/hvcs.c b/drivers/char/hvcs.c index 7d64e4230e66..266b858b8f85 100644 --- a/drivers/char/hvcs.c +++ b/drivers/char/hvcs.c | |||
@@ -868,7 +868,7 @@ static int __devexit hvcs_remove(struct vio_dev *dev) | |||
868 | static struct vio_driver hvcs_vio_driver = { | 868 | static struct vio_driver hvcs_vio_driver = { |
869 | .id_table = hvcs_driver_table, | 869 | .id_table = hvcs_driver_table, |
870 | .probe = hvcs_probe, | 870 | .probe = hvcs_probe, |
871 | .remove = hvcs_remove, | 871 | .remove = __devexit_p(hvcs_remove), |
872 | .driver = { | 872 | .driver = { |
873 | .name = hvcs_driver_name, | 873 | .name = hvcs_driver_name, |
874 | .owner = THIS_MODULE, | 874 | .owner = THIS_MODULE, |
diff --git a/drivers/net/ps3_gelic_net.c b/drivers/net/ps3_gelic_net.c index 2b38f39924a6..d1a5fb4d6acb 100644 --- a/drivers/net/ps3_gelic_net.c +++ b/drivers/net/ps3_gelic_net.c | |||
@@ -214,9 +214,10 @@ static void gelic_card_free_chain(struct gelic_card *card, | |||
214 | * | 214 | * |
215 | * returns 0 on success, <0 on failure | 215 | * returns 0 on success, <0 on failure |
216 | */ | 216 | */ |
217 | static int gelic_card_init_chain(struct gelic_card *card, | 217 | static int __devinit gelic_card_init_chain(struct gelic_card *card, |
218 | struct gelic_descr_chain *chain, | 218 | struct gelic_descr_chain *chain, |
219 | struct gelic_descr *start_descr, int no) | 219 | struct gelic_descr *start_descr, |
220 | int no) | ||
220 | { | 221 | { |
221 | int i; | 222 | int i; |
222 | struct gelic_descr *descr; | 223 | struct gelic_descr *descr; |
@@ -407,7 +408,7 @@ rewind: | |||
407 | * | 408 | * |
408 | * returns 0 on success, < 0 on failure | 409 | * returns 0 on success, < 0 on failure |
409 | */ | 410 | */ |
410 | static int gelic_card_alloc_rx_skbs(struct gelic_card *card) | 411 | static int __devinit gelic_card_alloc_rx_skbs(struct gelic_card *card) |
411 | { | 412 | { |
412 | struct gelic_descr_chain *chain; | 413 | struct gelic_descr_chain *chain; |
413 | int ret; | 414 | int ret; |
@@ -1422,8 +1423,8 @@ static const struct net_device_ops gelic_netdevice_ops = { | |||
1422 | * | 1423 | * |
1423 | * fills out function pointers in the net_device structure | 1424 | * fills out function pointers in the net_device structure |
1424 | */ | 1425 | */ |
1425 | static void gelic_ether_setup_netdev_ops(struct net_device *netdev, | 1426 | static void __devinit gelic_ether_setup_netdev_ops(struct net_device *netdev, |
1426 | struct napi_struct *napi) | 1427 | struct napi_struct *napi) |
1427 | { | 1428 | { |
1428 | netdev->watchdog_timeo = GELIC_NET_WATCHDOG_TIMEOUT; | 1429 | netdev->watchdog_timeo = GELIC_NET_WATCHDOG_TIMEOUT; |
1429 | /* NAPI */ | 1430 | /* NAPI */ |
@@ -1443,7 +1444,8 @@ static void gelic_ether_setup_netdev_ops(struct net_device *netdev, | |||
1443 | * gelic_ether_setup_netdev initializes the net_device structure | 1444 | * gelic_ether_setup_netdev initializes the net_device structure |
1444 | * and register it. | 1445 | * and register it. |
1445 | **/ | 1446 | **/ |
1446 | int gelic_net_setup_netdev(struct net_device *netdev, struct gelic_card *card) | 1447 | int __devinit gelic_net_setup_netdev(struct net_device *netdev, |
1448 | struct gelic_card *card) | ||
1447 | { | 1449 | { |
1448 | int status; | 1450 | int status; |
1449 | u64 v1, v2; | 1451 | u64 v1, v2; |
@@ -1491,7 +1493,7 @@ int gelic_net_setup_netdev(struct net_device *netdev, struct gelic_card *card) | |||
1491 | * the card and net_device structures are linked to each other | 1493 | * the card and net_device structures are linked to each other |
1492 | */ | 1494 | */ |
1493 | #define GELIC_ALIGN (32) | 1495 | #define GELIC_ALIGN (32) |
1494 | static struct gelic_card *gelic_alloc_card_net(struct net_device **netdev) | 1496 | static struct gelic_card * __devinit gelic_alloc_card_net(struct net_device **netdev) |
1495 | { | 1497 | { |
1496 | struct gelic_card *card; | 1498 | struct gelic_card *card; |
1497 | struct gelic_port *port; | 1499 | struct gelic_port *port; |
@@ -1542,7 +1544,7 @@ static struct gelic_card *gelic_alloc_card_net(struct net_device **netdev) | |||
1542 | return card; | 1544 | return card; |
1543 | } | 1545 | } |
1544 | 1546 | ||
1545 | static void gelic_card_get_vlan_info(struct gelic_card *card) | 1547 | static void __devinit gelic_card_get_vlan_info(struct gelic_card *card) |
1546 | { | 1548 | { |
1547 | u64 v1, v2; | 1549 | u64 v1, v2; |
1548 | int status; | 1550 | int status; |
@@ -1616,7 +1618,7 @@ static void gelic_card_get_vlan_info(struct gelic_card *card) | |||
1616 | /** | 1618 | /** |
1617 | * ps3_gelic_driver_probe - add a device to the control of this driver | 1619 | * ps3_gelic_driver_probe - add a device to the control of this driver |
1618 | */ | 1620 | */ |
1619 | static int ps3_gelic_driver_probe(struct ps3_system_bus_device *dev) | 1621 | static int __devinit ps3_gelic_driver_probe(struct ps3_system_bus_device *dev) |
1620 | { | 1622 | { |
1621 | struct gelic_card *card; | 1623 | struct gelic_card *card; |
1622 | struct net_device *netdev; | 1624 | struct net_device *netdev; |
diff --git a/drivers/net/ps3_gelic_wireless.c b/drivers/net/ps3_gelic_wireless.c index 4f3ada622f9b..b6b3ca9bdb21 100644 --- a/drivers/net/ps3_gelic_wireless.c +++ b/drivers/net/ps3_gelic_wireless.c | |||
@@ -2442,7 +2442,7 @@ static const struct iw_handler_def gelic_wl_wext_handler_def = { | |||
2442 | #endif | 2442 | #endif |
2443 | }; | 2443 | }; |
2444 | 2444 | ||
2445 | static struct net_device *gelic_wl_alloc(struct gelic_card *card) | 2445 | static struct net_device * __devinit gelic_wl_alloc(struct gelic_card *card) |
2446 | { | 2446 | { |
2447 | struct net_device *netdev; | 2447 | struct net_device *netdev; |
2448 | struct gelic_port *port; | 2448 | struct gelic_port *port; |
@@ -2722,7 +2722,7 @@ static struct ethtool_ops gelic_wl_ethtool_ops = { | |||
2722 | .set_rx_csum = gelic_net_set_rx_csum, | 2722 | .set_rx_csum = gelic_net_set_rx_csum, |
2723 | }; | 2723 | }; |
2724 | 2724 | ||
2725 | static void gelic_wl_setup_netdev_ops(struct net_device *netdev) | 2725 | static void __devinit gelic_wl_setup_netdev_ops(struct net_device *netdev) |
2726 | { | 2726 | { |
2727 | struct gelic_wl_info *wl; | 2727 | struct gelic_wl_info *wl; |
2728 | wl = port_wl(netdev_priv(netdev)); | 2728 | wl = port_wl(netdev_priv(netdev)); |
@@ -2738,7 +2738,7 @@ static void gelic_wl_setup_netdev_ops(struct net_device *netdev) | |||
2738 | /* | 2738 | /* |
2739 | * driver probe/remove | 2739 | * driver probe/remove |
2740 | */ | 2740 | */ |
2741 | int gelic_wl_driver_probe(struct gelic_card *card) | 2741 | int __devinit gelic_wl_driver_probe(struct gelic_card *card) |
2742 | { | 2742 | { |
2743 | int ret; | 2743 | int ret; |
2744 | struct net_device *netdev; | 2744 | struct net_device *netdev; |
diff --git a/drivers/rapidio/rio-scan.c b/drivers/rapidio/rio-scan.c index 3b78540288c7..45415096c294 100644 --- a/drivers/rapidio/rio-scan.c +++ b/drivers/rapidio/rio-scan.c | |||
@@ -263,15 +263,21 @@ static void rio_route_set_ops(struct rio_dev *rdev) | |||
263 | * device to the RIO device list. Creates the generic sysfs nodes | 263 | * device to the RIO device list. Creates the generic sysfs nodes |
264 | * for an RIO device. | 264 | * for an RIO device. |
265 | */ | 265 | */ |
266 | static void __devinit rio_add_device(struct rio_dev *rdev) | 266 | static int __devinit rio_add_device(struct rio_dev *rdev) |
267 | { | 267 | { |
268 | device_add(&rdev->dev); | 268 | int err; |
269 | |||
270 | err = device_add(&rdev->dev); | ||
271 | if (err) | ||
272 | return err; | ||
269 | 273 | ||
270 | spin_lock(&rio_global_list_lock); | 274 | spin_lock(&rio_global_list_lock); |
271 | list_add_tail(&rdev->global_list, &rio_devices); | 275 | list_add_tail(&rdev->global_list, &rio_devices); |
272 | spin_unlock(&rio_global_list_lock); | 276 | spin_unlock(&rio_global_list_lock); |
273 | 277 | ||
274 | rio_create_sysfs_dev_files(rdev); | 278 | rio_create_sysfs_dev_files(rdev); |
279 | |||
280 | return 0; | ||
275 | } | 281 | } |
276 | 282 | ||
277 | /** | 283 | /** |
@@ -294,13 +300,14 @@ static struct rio_dev __devinit *rio_setup_device(struct rio_net *net, | |||
294 | struct rio_mport *port, u16 destid, | 300 | struct rio_mport *port, u16 destid, |
295 | u8 hopcount, int do_enum) | 301 | u8 hopcount, int do_enum) |
296 | { | 302 | { |
303 | int ret = 0; | ||
297 | struct rio_dev *rdev; | 304 | struct rio_dev *rdev; |
298 | struct rio_switch *rswitch; | 305 | struct rio_switch *rswitch = NULL; |
299 | int result, rdid; | 306 | int result, rdid; |
300 | 307 | ||
301 | rdev = kzalloc(sizeof(struct rio_dev), GFP_KERNEL); | 308 | rdev = kzalloc(sizeof(struct rio_dev), GFP_KERNEL); |
302 | if (!rdev) | 309 | if (!rdev) |
303 | goto out; | 310 | return NULL; |
304 | 311 | ||
305 | rdev->net = net; | 312 | rdev->net = net; |
306 | rio_mport_read_config_32(port, destid, hopcount, RIO_DEV_ID_CAR, | 313 | rio_mport_read_config_32(port, destid, hopcount, RIO_DEV_ID_CAR, |
@@ -343,23 +350,16 @@ static struct rio_dev __devinit *rio_setup_device(struct rio_net *net, | |||
343 | rio_mport_read_config_32(port, destid, hopcount, | 350 | rio_mport_read_config_32(port, destid, hopcount, |
344 | RIO_SWP_INFO_CAR, &rdev->swpinfo); | 351 | RIO_SWP_INFO_CAR, &rdev->swpinfo); |
345 | rswitch = kmalloc(sizeof(struct rio_switch), GFP_KERNEL); | 352 | rswitch = kmalloc(sizeof(struct rio_switch), GFP_KERNEL); |
346 | if (!rswitch) { | 353 | if (!rswitch) |
347 | kfree(rdev); | 354 | goto cleanup; |
348 | rdev = NULL; | ||
349 | goto out; | ||
350 | } | ||
351 | rswitch->switchid = next_switchid; | 355 | rswitch->switchid = next_switchid; |
352 | rswitch->hopcount = hopcount; | 356 | rswitch->hopcount = hopcount; |
353 | rswitch->destid = destid; | 357 | rswitch->destid = destid; |
354 | rswitch->route_table = kzalloc(sizeof(u8)* | 358 | rswitch->route_table = kzalloc(sizeof(u8)* |
355 | RIO_MAX_ROUTE_ENTRIES(port->sys_size), | 359 | RIO_MAX_ROUTE_ENTRIES(port->sys_size), |
356 | GFP_KERNEL); | 360 | GFP_KERNEL); |
357 | if (!rswitch->route_table) { | 361 | if (!rswitch->route_table) |
358 | kfree(rdev); | 362 | goto cleanup; |
359 | rdev = NULL; | ||
360 | kfree(rswitch); | ||
361 | goto out; | ||
362 | } | ||
363 | /* Initialize switch route table */ | 363 | /* Initialize switch route table */ |
364 | for (rdid = 0; rdid < RIO_MAX_ROUTE_ENTRIES(port->sys_size); | 364 | for (rdid = 0; rdid < RIO_MAX_ROUTE_ENTRIES(port->sys_size); |
365 | rdid++) | 365 | rdid++) |
@@ -390,10 +390,19 @@ static struct rio_dev __devinit *rio_setup_device(struct rio_net *net, | |||
390 | rio_init_dbell_res(&rdev->riores[RIO_DOORBELL_RESOURCE], | 390 | rio_init_dbell_res(&rdev->riores[RIO_DOORBELL_RESOURCE], |
391 | 0, 0xffff); | 391 | 0, 0xffff); |
392 | 392 | ||
393 | rio_add_device(rdev); | 393 | ret = rio_add_device(rdev); |
394 | if (ret) | ||
395 | goto cleanup; | ||
394 | 396 | ||
395 | out: | ||
396 | return rdev; | 397 | return rdev; |
398 | |||
399 | cleanup: | ||
400 | if (rswitch) { | ||
401 | kfree(rswitch->route_table); | ||
402 | kfree(rswitch); | ||
403 | } | ||
404 | kfree(rdev); | ||
405 | return NULL; | ||
397 | } | 406 | } |
398 | 407 | ||
399 | /** | 408 | /** |
diff --git a/drivers/rapidio/rio-sysfs.c b/drivers/rapidio/rio-sysfs.c index 97a147f050d6..ba742e82c57d 100644 --- a/drivers/rapidio/rio-sysfs.c +++ b/drivers/rapidio/rio-sysfs.c | |||
@@ -214,9 +214,11 @@ static struct bin_attribute rio_config_attr = { | |||
214 | */ | 214 | */ |
215 | int rio_create_sysfs_dev_files(struct rio_dev *rdev) | 215 | int rio_create_sysfs_dev_files(struct rio_dev *rdev) |
216 | { | 216 | { |
217 | sysfs_create_bin_file(&rdev->dev.kobj, &rio_config_attr); | 217 | int err = 0; |
218 | 218 | ||
219 | return 0; | 219 | err = sysfs_create_bin_file(&rdev->dev.kobj, &rio_config_attr); |
220 | |||
221 | return err; | ||
220 | } | 222 | } |
221 | 223 | ||
222 | /** | 224 | /** |
diff --git a/drivers/scsi/ps3rom.c b/drivers/scsi/ps3rom.c index ca0dd33497ec..db90caf43f42 100644 --- a/drivers/scsi/ps3rom.c +++ b/drivers/scsi/ps3rom.c | |||
@@ -299,7 +299,7 @@ static irqreturn_t ps3rom_interrupt(int irq, void *data) | |||
299 | return IRQ_HANDLED; | 299 | return IRQ_HANDLED; |
300 | } | 300 | } |
301 | 301 | ||
302 | host = dev->sbd.core.driver_data; | 302 | host = ps3_system_bus_get_drvdata(&dev->sbd); |
303 | priv = shost_priv(host); | 303 | priv = shost_priv(host); |
304 | cmd = priv->curr_cmd; | 304 | cmd = priv->curr_cmd; |
305 | 305 | ||
@@ -387,7 +387,7 @@ static int __devinit ps3rom_probe(struct ps3_system_bus_device *_dev) | |||
387 | } | 387 | } |
388 | 388 | ||
389 | priv = shost_priv(host); | 389 | priv = shost_priv(host); |
390 | dev->sbd.core.driver_data = host; | 390 | ps3_system_bus_set_drvdata(&dev->sbd, host); |
391 | priv->dev = dev; | 391 | priv->dev = dev; |
392 | 392 | ||
393 | /* One device/LUN per SCSI bus */ | 393 | /* One device/LUN per SCSI bus */ |
@@ -407,7 +407,7 @@ static int __devinit ps3rom_probe(struct ps3_system_bus_device *_dev) | |||
407 | 407 | ||
408 | fail_host_put: | 408 | fail_host_put: |
409 | scsi_host_put(host); | 409 | scsi_host_put(host); |
410 | dev->sbd.core.driver_data = NULL; | 410 | ps3_system_bus_set_drvdata(&dev->sbd, NULL); |
411 | fail_teardown: | 411 | fail_teardown: |
412 | ps3stor_teardown(dev); | 412 | ps3stor_teardown(dev); |
413 | fail_free_bounce: | 413 | fail_free_bounce: |
@@ -418,12 +418,12 @@ fail_free_bounce: | |||
418 | static int ps3rom_remove(struct ps3_system_bus_device *_dev) | 418 | static int ps3rom_remove(struct ps3_system_bus_device *_dev) |
419 | { | 419 | { |
420 | struct ps3_storage_device *dev = to_ps3_storage_device(&_dev->core); | 420 | struct ps3_storage_device *dev = to_ps3_storage_device(&_dev->core); |
421 | struct Scsi_Host *host = dev->sbd.core.driver_data; | 421 | struct Scsi_Host *host = ps3_system_bus_get_drvdata(&dev->sbd); |
422 | 422 | ||
423 | scsi_remove_host(host); | 423 | scsi_remove_host(host); |
424 | ps3stor_teardown(dev); | 424 | ps3stor_teardown(dev); |
425 | scsi_host_put(host); | 425 | scsi_host_put(host); |
426 | dev->sbd.core.driver_data = NULL; | 426 | ps3_system_bus_set_drvdata(&dev->sbd, NULL); |
427 | kfree(dev->bounce_buf); | 427 | kfree(dev->bounce_buf); |
428 | return 0; | 428 | return 0; |
429 | } | 429 | } |
diff --git a/drivers/serial/of_serial.c b/drivers/serial/of_serial.c index 54483cd3529e..02406ba6da1c 100644 --- a/drivers/serial/of_serial.c +++ b/drivers/serial/of_serial.c | |||
@@ -67,7 +67,7 @@ static int __devinit of_platform_serial_setup(struct of_device *ofdev, | |||
67 | port->type = type; | 67 | port->type = type; |
68 | port->uartclk = *clk; | 68 | port->uartclk = *clk; |
69 | port->flags = UPF_SHARE_IRQ | UPF_BOOT_AUTOCONF | UPF_IOREMAP | 69 | port->flags = UPF_SHARE_IRQ | UPF_BOOT_AUTOCONF | UPF_IOREMAP |
70 | | UPF_FIXED_PORT; | 70 | | UPF_FIXED_PORT | UPF_FIXED_TYPE; |
71 | port->dev = &ofdev->dev; | 71 | port->dev = &ofdev->dev; |
72 | /* If current-speed was set, then try not to change it. */ | 72 | /* If current-speed was set, then try not to change it. */ |
73 | if (spd) | 73 | if (spd) |
diff --git a/drivers/serial/ucc_uart.c b/drivers/serial/ucc_uart.c index 7de66c06b05d..e945e780b5c9 100644 --- a/drivers/serial/ucc_uart.c +++ b/drivers/serial/ucc_uart.c | |||
@@ -681,22 +681,27 @@ static void qe_uart_init_ucc(struct uart_qe_port *qe_port) | |||
681 | out_be16(&uccup->rccm, 0xc0ff); | 681 | out_be16(&uccup->rccm, 0xc0ff); |
682 | 682 | ||
683 | /* Configure the GUMR registers for UART */ | 683 | /* Configure the GUMR registers for UART */ |
684 | if (soft_uart) | 684 | if (soft_uart) { |
685 | /* Soft-UART requires a 1X multiplier for TX */ | 685 | /* Soft-UART requires a 1X multiplier for TX */ |
686 | clrsetbits_be32(&uccp->gumr_l, | 686 | clrsetbits_be32(&uccp->gumr_l, |
687 | UCC_SLOW_GUMR_L_MODE_MASK | UCC_SLOW_GUMR_L_TDCR_MASK | | 687 | UCC_SLOW_GUMR_L_MODE_MASK | UCC_SLOW_GUMR_L_TDCR_MASK | |
688 | UCC_SLOW_GUMR_L_RDCR_MASK, | 688 | UCC_SLOW_GUMR_L_RDCR_MASK, |
689 | UCC_SLOW_GUMR_L_MODE_UART | UCC_SLOW_GUMR_L_TDCR_1 | | 689 | UCC_SLOW_GUMR_L_MODE_UART | UCC_SLOW_GUMR_L_TDCR_1 | |
690 | UCC_SLOW_GUMR_L_RDCR_16); | 690 | UCC_SLOW_GUMR_L_RDCR_16); |
691 | else | 691 | |
692 | clrsetbits_be32(&uccp->gumr_h, UCC_SLOW_GUMR_H_RFW, | ||
693 | UCC_SLOW_GUMR_H_TRX | UCC_SLOW_GUMR_H_TTX); | ||
694 | } else { | ||
692 | clrsetbits_be32(&uccp->gumr_l, | 695 | clrsetbits_be32(&uccp->gumr_l, |
693 | UCC_SLOW_GUMR_L_MODE_MASK | UCC_SLOW_GUMR_L_TDCR_MASK | | 696 | UCC_SLOW_GUMR_L_MODE_MASK | UCC_SLOW_GUMR_L_TDCR_MASK | |
694 | UCC_SLOW_GUMR_L_RDCR_MASK, | 697 | UCC_SLOW_GUMR_L_RDCR_MASK, |
695 | UCC_SLOW_GUMR_L_MODE_UART | UCC_SLOW_GUMR_L_TDCR_16 | | 698 | UCC_SLOW_GUMR_L_MODE_UART | UCC_SLOW_GUMR_L_TDCR_16 | |
696 | UCC_SLOW_GUMR_L_RDCR_16); | 699 | UCC_SLOW_GUMR_L_RDCR_16); |
697 | 700 | ||
698 | clrsetbits_be32(&uccp->gumr_h, UCC_SLOW_GUMR_H_RFW, | 701 | clrsetbits_be32(&uccp->gumr_h, |
699 | UCC_SLOW_GUMR_H_TRX | UCC_SLOW_GUMR_H_TTX); | 702 | UCC_SLOW_GUMR_H_TRX | UCC_SLOW_GUMR_H_TTX, |
703 | UCC_SLOW_GUMR_H_RFW); | ||
704 | } | ||
700 | 705 | ||
701 | #ifdef LOOPBACK | 706 | #ifdef LOOPBACK |
702 | clrsetbits_be32(&uccp->gumr_l, UCC_SLOW_GUMR_L_DIAG_MASK, | 707 | clrsetbits_be32(&uccp->gumr_l, UCC_SLOW_GUMR_L_DIAG_MASK, |
@@ -706,7 +711,7 @@ static void qe_uart_init_ucc(struct uart_qe_port *qe_port) | |||
706 | UCC_SLOW_GUMR_H_CDS); | 711 | UCC_SLOW_GUMR_H_CDS); |
707 | #endif | 712 | #endif |
708 | 713 | ||
709 | /* Enable rx interrupts and clear all pending events. */ | 714 | /* Disable rx interrupts and clear all pending events. */ |
710 | out_be16(&uccp->uccm, 0); | 715 | out_be16(&uccp->uccm, 0); |
711 | out_be16(&uccp->ucce, 0xffff); | 716 | out_be16(&uccp->ucce, 0xffff); |
712 | out_be16(&uccp->udsr, 0x7e7e); | 717 | out_be16(&uccp->udsr, 0x7e7e); |
@@ -765,6 +770,10 @@ static void qe_uart_init_ucc(struct uart_qe_port *qe_port) | |||
765 | cecr_subblock = ucc_slow_get_qe_cr_subblock(qe_port->ucc_num); | 770 | cecr_subblock = ucc_slow_get_qe_cr_subblock(qe_port->ucc_num); |
766 | qe_issue_cmd(QE_INIT_TX_RX, cecr_subblock, | 771 | qe_issue_cmd(QE_INIT_TX_RX, cecr_subblock, |
767 | QE_CR_PROTOCOL_UNSPECIFIED, 0); | 772 | QE_CR_PROTOCOL_UNSPECIFIED, 0); |
773 | } else { | ||
774 | cecr_subblock = ucc_slow_get_qe_cr_subblock(qe_port->ucc_num); | ||
775 | qe_issue_cmd(QE_INIT_TX_RX, cecr_subblock, | ||
776 | QE_CR_PROTOCOL_UART, 0); | ||
768 | } | 777 | } |
769 | } | 778 | } |
770 | 779 | ||
diff --git a/drivers/usb/host/ehci-ps3.c b/drivers/usb/host/ehci-ps3.c index eecd2a0680a2..93f7035d00a1 100644 --- a/drivers/usb/host/ehci-ps3.c +++ b/drivers/usb/host/ehci-ps3.c | |||
@@ -77,7 +77,7 @@ static const struct hc_driver ps3_ehci_hc_driver = { | |||
77 | .port_handed_over = ehci_port_handed_over, | 77 | .port_handed_over = ehci_port_handed_over, |
78 | }; | 78 | }; |
79 | 79 | ||
80 | static int ps3_ehci_probe(struct ps3_system_bus_device *dev) | 80 | static int __devinit ps3_ehci_probe(struct ps3_system_bus_device *dev) |
81 | { | 81 | { |
82 | int result; | 82 | int result; |
83 | struct usb_hcd *hcd; | 83 | struct usb_hcd *hcd; |
@@ -225,7 +225,7 @@ static int ps3_ehci_remove(struct ps3_system_bus_device *dev) | |||
225 | return 0; | 225 | return 0; |
226 | } | 226 | } |
227 | 227 | ||
228 | static int ps3_ehci_driver_register(struct ps3_system_bus_driver *drv) | 228 | static int __init ps3_ehci_driver_register(struct ps3_system_bus_driver *drv) |
229 | { | 229 | { |
230 | return firmware_has_feature(FW_FEATURE_PS3_LV1) | 230 | return firmware_has_feature(FW_FEATURE_PS3_LV1) |
231 | ? ps3_system_bus_driver_register(drv) | 231 | ? ps3_system_bus_driver_register(drv) |
diff --git a/drivers/usb/host/ohci-ps3.c b/drivers/usb/host/ohci-ps3.c index 1d56259c5db1..700950455f4d 100644 --- a/drivers/usb/host/ohci-ps3.c +++ b/drivers/usb/host/ohci-ps3.c | |||
@@ -75,7 +75,7 @@ static const struct hc_driver ps3_ohci_hc_driver = { | |||
75 | #endif | 75 | #endif |
76 | }; | 76 | }; |
77 | 77 | ||
78 | static int ps3_ohci_probe(struct ps3_system_bus_device *dev) | 78 | static int __devinit ps3_ohci_probe(struct ps3_system_bus_device *dev) |
79 | { | 79 | { |
80 | int result; | 80 | int result; |
81 | struct usb_hcd *hcd; | 81 | struct usb_hcd *hcd; |
@@ -224,7 +224,7 @@ static int ps3_ohci_remove(struct ps3_system_bus_device *dev) | |||
224 | return 0; | 224 | return 0; |
225 | } | 225 | } |
226 | 226 | ||
227 | static int ps3_ohci_driver_register(struct ps3_system_bus_driver *drv) | 227 | static int __init ps3_ohci_driver_register(struct ps3_system_bus_driver *drv) |
228 | { | 228 | { |
229 | return firmware_has_feature(FW_FEATURE_PS3_LV1) | 229 | return firmware_has_feature(FW_FEATURE_PS3_LV1) |
230 | ? ps3_system_bus_driver_register(drv) | 230 | ? ps3_system_bus_driver_register(drv) |