]> git.baikalelectronics.ru Git - arm-tf.git/commitdiff
SDEI: Fix return value of reset calls
authorJeenu Viswambharan <jeenu.viswambharan@arm.com>
Thu, 30 Nov 2017 10:25:10 +0000 (10:25 +0000)
committerJeenu Viswambharan <jeenu.viswambharan@arm.com>
Wed, 6 Dec 2017 08:37:13 +0000 (08:37 +0000)
At present, both SDEI_PRIVATE_RESET and SDEI_SHARED_RESET returns
SDEI_PENDING if they fail to unregister an event. The SDEI specification
however requires that the APIs return SDEI_EDENY in these cases. This
patch fixes the return codes for the reset APIs.

Change-Id: Ic14484c91fa8396910387196c256d1ff13d03afd
Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>
services/std_svc/sdei/sdei_main.c

index 2f08c8ba915392de46c0d41fb7c2cf92b6ae736d..1969307fd7601077a13747e6021c534cf9ad6541 100644 (file)
@@ -795,7 +795,7 @@ static int sdei_private_reset(void)
                 */
                ret = sdei_event_unregister(map->ev_num);
                if ((ret == SDEI_EPEND) && (final_ret == 0))
-                       final_ret = ret;
+                       final_ret = SDEI_EDENY;
        }
 
        return final_ret;
@@ -817,7 +817,7 @@ static int sdei_shared_reset(void)
                 */
                ret = sdei_event_unregister(map->ev_num);
                if ((ret == SDEI_EPEND) && (final_ret == 0))
-                       final_ret = ret;
+                       final_ret = SDEI_EDENY;
        }
 
        if (final_ret != 0)