]> Git Repo - J-u-boot.git/blobdiff - drivers/serial/atmel_usart.c
Revert "Merge patch series "arm: dts: am62-beagleplay: Fix Beagleplay Ethernet""
[J-u-boot.git] / drivers / serial / atmel_usart.c
index f759ea8893d168d8c959dbd022315861b0ae9092..9827c006fa88b3df1944445917a5d5dc056e0ecc 100644 (file)
 #include <watchdog.h>
 #include <serial.h>
 #include <debug_uart.h>
+#include <asm/global_data.h>
 #include <linux/compiler.h>
 #include <linux/delay.h>
 
 #include <asm/io.h>
-#ifdef CONFIG_DM_SERIAL
+#if CONFIG_IS_ENABLED(DM_SERIAL)
 #include <asm/arch/atmel_serial.h>
 #endif
 #include <asm/arch/clk.h>
@@ -27,7 +28,7 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
-#ifndef CONFIG_DM_SERIAL
+#if !CONFIG_IS_ENABLED(DM_SERIAL)
 static void atmel_serial_setbrg_internal(atmel_usart3_t *usart, int id,
                                         int baudrate)
 {
@@ -71,13 +72,13 @@ static void atmel_serial_activate(atmel_usart3_t *usart)
 
 static void atmel_serial_setbrg(void)
 {
-       atmel_serial_setbrg_internal((atmel_usart3_t *)CONFIG_USART_BASE,
-                                    CONFIG_USART_ID, gd->baudrate);
+       atmel_serial_setbrg_internal((atmel_usart3_t *)CFG_USART_BASE,
+                                    CFG_USART_ID, gd->baudrate);
 }
 
 static int atmel_serial_init(void)
 {
-       atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_USART_BASE;
+       atmel_usart3_t *usart = (atmel_usart3_t *)CFG_USART_BASE;
 
        atmel_serial_init_internal(usart);
        serial_setbrg();
@@ -88,7 +89,7 @@ static int atmel_serial_init(void)
 
 static void atmel_serial_putc(char c)
 {
-       atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_USART_BASE;
+       atmel_usart3_t *usart = (atmel_usart3_t *)CFG_USART_BASE;
 
        if (c == '\n')
                serial_putc('\r');
@@ -99,16 +100,16 @@ static void atmel_serial_putc(char c)
 
 static int atmel_serial_getc(void)
 {
-       atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_USART_BASE;
+       atmel_usart3_t *usart = (atmel_usart3_t *)CFG_USART_BASE;
 
        while (!(readl(&usart->csr) & USART3_BIT(RXRDY)))
-                WATCHDOG_RESET();
+                schedule();
        return readl(&usart->rhr);
 }
 
 static int atmel_serial_tstc(void)
 {
-       atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_USART_BASE;
+       atmel_usart3_t *usart = (atmel_usart3_t *)CFG_USART_BASE;
        return (readl(&usart->csr) & USART3_BIT(RXRDY)) != 0;
 }
 
@@ -132,9 +133,7 @@ __weak struct serial_device *default_serial_console(void)
 {
        return &atmel_serial_drv;
 }
-#endif
-
-#ifdef CONFIG_DM_SERIAL
+#else
 enum serial_clk_type {
        CLK_TYPE_NORMAL = 0,
        CLK_TYPE_DBGU,
@@ -254,15 +253,13 @@ static int atmel_serial_enable_clk(struct udevice *dev)
 
        priv->usart_clk_rate = clk_rate;
 
-       clk_free(&clk);
-
        return 0;
 }
 #endif
 
 static int atmel_serial_probe(struct udevice *dev)
 {
-       struct atmel_serial_platdata *plat = dev->platdata;
+       struct atmel_serial_plat *plat = dev_get_plat(dev);
        struct atmel_serial_priv *priv = dev_get_priv(dev);
        int ret;
 #if CONFIG_IS_ENABLED(OF_CONTROL)
@@ -304,28 +301,28 @@ U_BOOT_DRIVER(serial_atmel) = {
        .id     = UCLASS_SERIAL,
 #if CONFIG_IS_ENABLED(OF_CONTROL)
        .of_match = atmel_serial_ids,
-       .platdata_auto_alloc_size = sizeof(struct atmel_serial_platdata),
+       .plat_auto      = sizeof(struct atmel_serial_plat),
 #endif
        .probe = atmel_serial_probe,
        .ops    = &atmel_serial_ops,
 #if !CONFIG_IS_ENABLED(OF_CONTROL)
        .flags = DM_FLAG_PRE_RELOC,
 #endif
-       .priv_auto_alloc_size   = sizeof(struct atmel_serial_priv),
+       .priv_auto      = sizeof(struct atmel_serial_priv),
 };
 #endif
 
 #ifdef CONFIG_DEBUG_UART_ATMEL
 static inline void _debug_uart_init(void)
 {
-       atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_DEBUG_UART_BASE;
+       atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_VAL(DEBUG_UART_BASE);
 
        _atmel_serial_init(usart, CONFIG_DEBUG_UART_CLOCK, CONFIG_BAUDRATE);
 }
 
 static inline void _debug_uart_putc(int ch)
 {
-       atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_DEBUG_UART_BASE;
+       atmel_usart3_t *usart = (atmel_usart3_t *)CONFIG_VAL(DEBUG_UART_BASE);
 
        while (!(readl(&usart->csr) & USART3_BIT(TXRDY)))
                ;
This page took 0.029623 seconds and 4 git commands to generate.