//void __init msm8974_bt_init(struct device *dev)
void __init msm8974_bt_init(void)
{
    int err = 0;
#ifdef CONFIG_MACH_MONTBLANC
    int rc = 0;
    pr_err("[BT] msm8974_bt_init(%d)\n", system_rev);

    if (system_rev < 2) {
        rc = gpio_request(get_gpio_hwrev(BTWIFI_LDO_EN), "btwifi_ldoen_gpio");
        if (unlikely(rc)) {
            pr_err("[BT] BTWIFI_LDO_EN request failed.\n");
            //return;
        }
        gpio_direction_output(get_gpio_hwrev(BTWIFI_LDO_EN), 0);
        //usleep_range(20000, 20000);
        gpio_set_value(get_gpio_hwrev(BTWIFI_LDO_EN), 1);
    }
#endif
#ifdef BT_LPM_ENABLE
    gpio_rev_init();
    err = platform_device_register(&msm_bluesleep_device);
    if (err) {
        pr_err("[BT] failed to register Bluesleep device.\n");
        return;
    }
#endif

    platform_add_devices(jf_bt_devs, ARRAY_SIZE(jf_bt_devs));
}
示例#2
0
static int __init bcm4334_bluetooth_init(void)
{
#ifdef BT_LPM_ENABLE
	gpio_rev_init();
	platform_device_register(&msm_bluesleep_device);
#endif
	return platform_driver_register(&bcm4334_bluetooth_platform_driver);
}
void __init apq8064_bt_init(void)
{
	#ifdef BT_LPM_ENABLE
	gpio_rev_init();
	platform_device_register(&msm_bluesleep_device);
    #endif

	platform_add_devices(jf_bt_devs, ARRAY_SIZE(jf_bt_devs));
}
static int __init bcm4354_bluetooth_init(void)
{
#ifdef BT_LPM_ENABLE
		gpio_rev_init();
		platform_device_register(&msm_bluesleep_device);
#endif
	
		platform_add_devices(jf_bt_devs, ARRAY_SIZE(jf_bt_devs));

    return platform_driver_register(&bcm4354_bluetooth_platform_driver);
}