diff --git a/library/psa_crypto.c b/library/psa_crypto.c
index 4f75ee4..bd80144 100644
--- a/library/psa_crypto.c
+++ b/library/psa_crypto.c
@@ -996,7 +996,7 @@
 
 static void psa_abort_operations_using_key( psa_key_slot_t *slot )
 {
-    /*FIXME how to implement this?*/
+    /*TODO how to implement this?*/
     (void) slot;
 }
 
@@ -1043,7 +1043,7 @@
         if( status != PSA_SUCCESS )
         {
             (void) psa_crypto_stop_transaction( );
-            /* TOnogrepDO: destroy what can be destroyed anyway */
+            /* TODO: destroy what can be destroyed anyway */
             return( status );
         }
 
@@ -1069,7 +1069,7 @@
             status = status2;
         if( status != PSA_SUCCESS )
         {
-            /* TOnogrepDO: destroy what can be destroyed anyway */
+            /* TODO: destroy what can be destroyed anyway */
             return( status );
         }
     }
@@ -1194,7 +1194,7 @@
         case PSA_KEY_TYPE_RSA_KEY_PAIR:
         case PSA_KEY_TYPE_RSA_PUBLIC_KEY:
 #if defined(MBEDTLS_PSA_CRYPTO_SE_C)
-            /* TOnogrepDO: reporting the public exponent for opaque keys
+            /* TODO: reporting the public exponent for opaque keys
              * is not yet implemented. */
             if( psa_get_se_driver( slot->attr.lifetime, NULL, NULL ) )
                 break;
@@ -1669,7 +1669,7 @@
         return;
 
 #if defined(MBEDTLS_PSA_CRYPTO_SE_C)
-    /* TOnogrepDO: If the key has already been created in the secure
+    /* TODO: If the key has already been created in the secure
      * element, and the failure happened later (when saving metadata
      * to internal storage), we need to destroy the key in the secure
      * element. */
@@ -5894,7 +5894,7 @@
     {
         case PSA_CRYPTO_TRANSACTION_CREATE_KEY:
         case PSA_CRYPTO_TRANSACTION_DESTROY_KEY:
-            /* TOnogrepDO - fall through to the failure case until this
+            /* TODO - fall through to the failure case until this
              * is implemented */
         default:
             /* We found an unsupported transaction in the storage.
