]> git.karo-electronics.de Git - karo-tx-uboot.git/blobdiff - board/lart/flash.c
Timer: Fix misuse of ARM *timer_masked() functions outside arch/arm
[karo-tx-uboot.git] / board / lart / flash.c
index 29a331eff790cce3d8026719e571940792a302d2..408c88498e5ad8f3c66fa577263e2cb4a571d132 100644 (file)
@@ -250,6 +250,7 @@ int flash_erase (flash_info_t *info, int s_first, int s_last)
     ulong result;
     int iflag, cflag, prot, sect;
     int rc = ERR_OK;
+    ulong start;
 
     /* first look for protection bits */
 
@@ -291,7 +292,7 @@ int flash_erase (flash_info_t *info, int s_first, int s_last)
        printf("Erasing sector %2d ... ", sect);
 
        /* arm simple, non interrupt dependent timer */
-       reset_timer_masked();
+       start = get_timer(0);
 
        if (info->protect[sect] == 0)
        {       /* not protected */
@@ -305,7 +306,7 @@ int flash_erase (flash_info_t *info, int s_first, int s_last)
            do
            {
                /* check timeout */
-               if (get_timer_masked() > CONFIG_SYS_FLASH_ERASE_TOUT)
+               if (get_timer(start) > CONFIG_SYS_FLASH_ERASE_TOUT)
                {
                    *addr = PUZZLE_TO_FLASH(CMD_SUSPEND);
                    result = BIT_TIMEOUT;
@@ -354,6 +355,7 @@ static int write_word (flash_info_t *info, ulong dest, ulong data)
     ulong result;
     int rc = ERR_OK;
     int cflag, iflag;
+    ulong start;
 
     /* Check if Flash is (sufficiently) erased
      */
@@ -377,13 +379,13 @@ static int write_word (flash_info_t *info, ulong dest, ulong data)
     *addr = data;
 
     /* arm simple, non interrupt dependent timer */
-    reset_timer_masked();
+    start = get_timer(0);
 
     /* wait until flash is ready */
     do
     {
        /* check timeout */
-       if (get_timer_masked() > CONFIG_SYS_FLASH_ERASE_TOUT)
+       if (get_timer(start) > CONFIG_SYS_FLASH_ERASE_TOUT)
        {
            *addr = PUZZLE_TO_FLASH(CMD_SUSPEND);
            result = BIT_TIMEOUT;