diff mbox

Patch: Fix N770 brf6150 bluetooth driver

Message ID 20090523184208.14202m390hgqxv28@lidskialf.net (mailing list archive)
State Accepted
Commit c9023d6fa335c5dc49d67c142a1bd78877829999
Headers show

Commit Message

Andrew de Quincey May 23, 2009, 5:42 p.m. UTC
This driver has the same problem as the cbus drivers - mismatch  
between platform_device and non-platform driver APIs.

Switching it to use platform_driver removes the random corruption and  
badness I was seeing on boot.

Comments

Tony Lindgren June 1, 2009, 11:13 p.m. UTC | #1
This patch has been applied to the linux-omap
by youw fwiendly patch wobot.

Initial commit ID (Likely to change): c9023d6fa335c5dc49d67c142a1bd78877829999

PatchWorks
http://patchwork.kernel.org/patch/25540/

Git (Likely to change, and takes a while to get mirrored)
http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-2.6.git;a=commit;h=c9023d6fa335c5dc49d67c142a1bd78877829999


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

commit e6dce93304c6c692e187b95eaea227cfe3cb3317
Author: Andrew de Quincey <adq@lidskialf.net>
Date:   Sat May 23 18:37:25 2009 +0100

    Fix brf6150.c platform_device breakage
    
    This driver has the mismatch between platform_devices and non-platform drivers.
    Switch it to use platform_driver as well.
    
    Signed-off-by: Andrew de Quincey <adq@lidskialf.net>

diff --git a/drivers/bluetooth/brf6150.c b/drivers/bluetooth/brf6150.c
index 211fa5e..f29caf5 100644
--- a/drivers/bluetooth/brf6150.c
+++ b/drivers/bluetooth/brf6150.c
@@ -90,9 +90,10 @@  static struct platform_device brf6150_device = {
 	}
 };
 
-static struct device_driver brf6150_driver = {
-	.name		= BT_DRIVER,
-	.bus		= &platform_bus_type,
+static struct platform_driver brf6150_driver = {
+	.driver = {
+		.name		= BT_DRIVER,
+	}
 };
 
 static inline void brf6150_outb(struct brf6150_info *info, unsigned int offset, u8 val)
@@ -1002,7 +1003,7 @@  static int __init brf6150_init(void)
 		goto cleanup_irq;
 	}
 	/* Register the driver with LDM */
-	if (driver_register(&brf6150_driver)) {
+	if (platform_driver_register(&brf6150_driver)) {
 		printk(KERN_WARNING "failed to register brf6150 driver\n");
 		platform_device_unregister(&brf6150_device);
 		err = -ENODEV;
@@ -1012,7 +1013,7 @@  static int __init brf6150_init(void)
 	if (brf6150_register_hdev(info) < 0) {
 		printk(KERN_WARNING "failed to register brf6150 hci device\n");
 		platform_device_unregister(&brf6150_device);
-		driver_unregister(&brf6150_driver);
+		platform_driver_unregister(&brf6150_driver);
 		goto cleanup_irq;
 	}