]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/arm/mach-omap1/serial.c
Merge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa...
[linux-2.6-omap-h63xx.git] / arch / arm / mach-omap1 / serial.c
index 528691d5cb51ed76899041c6285774ae2d608bd6..842090b148f16157d23e103cb49add2f61b9b3f3 100644 (file)
@@ -121,6 +121,13 @@ void __init omap_serial_init(void)
                serial_platform_data[1].irq = INT_730_UART_MODEM_IRDA_2;
        }
 
+       if (cpu_is_omap850()) {
+               serial_platform_data[0].regshift = 0;
+               serial_platform_data[1].regshift = 0;
+               serial_platform_data[0].irq = INT_850_UART_MODEM_1;
+               serial_platform_data[1].irq = INT_850_UART_MODEM_IRDA_2;
+       }
+
        if (cpu_is_omap15xx()) {
                serial_platform_data[0].uartclk = OMAP1510_BASE_BAUD * 16;
                serial_platform_data[1].uartclk = OMAP1510_BASE_BAUD * 16;
@@ -244,22 +251,22 @@ static void __init omap_serial_set_port_wakeup(int gpio_nr)
 {
        int ret;
 
-       ret = omap_request_gpio(gpio_nr);
+       ret = gpio_request(gpio_nr, "UART wake");
        if (ret < 0) {
                printk(KERN_ERR "Could not request UART wake GPIO: %i\n",
                       gpio_nr);
                return;
        }
-       omap_set_gpio_direction(gpio_nr, 1);
-       ret = request_irq(OMAP_GPIO_IRQ(gpio_nr), &omap_serial_wake_interrupt,
+       gpio_direction_input(gpio_nr);
+       ret = request_irq(gpio_to_irq(gpio_nr), &omap_serial_wake_interrupt,
                          IRQF_TRIGGER_RISING, "serial wakeup", NULL);
        if (ret) {
-               omap_free_gpio(gpio_nr);
+               gpio_free(gpio_nr);
                printk(KERN_ERR "No interrupt for UART wake GPIO: %i\n",
                       gpio_nr);
                return;
        }
-       enable_irq_wake(OMAP_GPIO_IRQ(gpio_nr));
+       enable_irq_wake(gpio_to_irq(gpio_nr));
 }
 
 static int __init omap_serial_wakeup_init(void)