static void __init ventana_setup_bluesleep(void) { platform_device_register(&ventana_bluesleep_device); bluesleep_setup_uart_port(&tegra_uartc_device); tegra_gpio_enable(TEGRA_GPIO_PU6); tegra_gpio_enable(TEGRA_GPIO_PU1); return; }
static noinline void __init cardhu_setup_bluesleep(void) { platform_device_register(&cardhu_bluesleep_device); bluesleep_setup_uart_port(&tegra_uartc_device); tegra_gpio_enable(TEGRA_GPIO_PU6); tegra_gpio_enable(TEGRA_GPIO_PU1); return; }
static noinline void __init tegra_setup_bluesleep(void) { struct platform_device *pDev = NULL; struct resource *res; pDev = platform_device_alloc("bluesleep", 0); if (!pDev) { pr_err("unable to allocate platform device for bluesleep"); goto fail; } res = kzalloc(sizeof(struct resource)*3, GFP_KERNEL); if (!res) { pr_err("unable to allocate resource for bluesleep\n"); goto fail; } res[0].name = "gpio_host_wake"; res[0].start = TEGRA_GPIO_PU6; res[0].end = TEGRA_GPIO_PU6; res[0].flags = IORESOURCE_IO; res[1].name = "gpio_ext_wake"; res[1].start = TEGRA_GPIO_PU1; res[1].end = TEGRA_GPIO_PU1; res[1].flags = IORESOURCE_IO; res[2].name = "host_wake"; res[2].start = gpio_to_irq(TEGRA_GPIO_PU6); res[2].end = gpio_to_irq(TEGRA_GPIO_PU6); res[2].flags = IORESOURCE_IRQ; if (platform_device_add_resources(pDev, res, 3)) { pr_err("unable to add resources to bluesleep device\n"); goto fail; } if (platform_device_add(pDev)) { pr_err("unable to add bluesleep device\n"); goto fail; } bluesleep_setup_uart_port(&tegra_uart[2]); fail: if (pDev) return; }