diff --git a/docs/3.0-migration-guide.md b/docs/3.0-migration-guide.md
index 90d7877..1b24c41 100644
--- a/docs/3.0-migration-guide.md
+++ b/docs/3.0-migration-guide.md
@@ -191,6 +191,20 @@
 library, only in binary form) or RFC 7919 (also available in the library) or
 other trusted sources instead.
 
+### Deprecated functions were removed from hashing modules
+
+Modules: MD5, SHA1, SHA256, SHA512, MD.
+
+- The functions `mbedtls_xxx_starts_ret()`, `mbedtls_xxx_update_ret()`,
+  `mbedtls_xxx_finish_ret()` and `mbedtls_xxx_ret()` were renamed to replace
+  the corresponding functions without `_ret` appended. Please call the name without `_ret` appended and check the return value.
+- The function `mbedtls_md_init_ctx()` was removed; please use
+  `mbedtls_md_setup()` instead.
+- The functions `mbedtls_xxx_process()` were removed. You normally don't need
+  to call that from application code. However if you do (or if you want to
+  provide your own version of that function), please use
+  `mbedtls_internal_xxx_process()` instead, and check the return value.
+
 ### Change `MBEDTLS_ECP_FIXED_POINT_OPTIM` behavior
 
 The option `MBEDTLS_ECP_FIXED_POINT_OPTIM` now increases code size and it does
@@ -246,20 +260,6 @@
 Please also refer to the section [Low-level crypto](#low-level-crypto) for
 changes that could sit in either category.
 
-### Deprecated functions were removed from hashing modules
-
-Modules: MD5, SHA1, SHA256, SHA512, MD.
-
-- The functions `mbedtls_xxx_starts_ret()`, `mbedtls_xxx_update_ret()`,
-  `mbedtls_xxx_finish_ret()` and `mbedtls_xxx_ret()` were renamed to replace
-  the corresponding functions without `_ret` appended. Please call the name without `_ret` appended and check the return value.
-- The function `mbedtls_md_init_ctx()` was removed; please use
-  `mbedtls_md_setup()` instead.
-- The functions `mbedtls_xxx_process()` were removed. You normally don't need
-  to call that from application code. However if you do (or if you want to
-  provide your own version of that function), please use
-  `mbedtls_internal_xxx_process()` instead, and check the return value.
-
 ### Remove 3DES ciphersuites
 
 This change does not affect users using default settings for 3DES in `mbedtls_config.h`
