diff --git a/include/mbedtls/platform.h b/include/mbedtls/platform.h
index a9ff7e4..29b80cd 100644
--- a/include/mbedtls/platform.h
+++ b/include/mbedtls/platform.h
@@ -289,6 +289,10 @@
 #endif /* MBEDTLS_ENTROPY_NV_SEED */
 
 #if !defined(MBEDTLS_PLATFORM_SETUP_ALT)
+struct mbedtls_platform_context {
+    char dummy; /**< Placeholder member as empty structs are not portable */
+};
+
 typedef struct mbedtls_platform_context mbedtls_platform_context;
 #else
 #include "platform_alt.h"
@@ -316,23 +320,6 @@
  */
 void mbedtls_platform_teardown( mbedtls_platform_context *ctx );
 
-/**
- * \brief   Internal function to perform any platform initialisation operations
- *          Only exposed to allow overriding it, see MBEDTLS_PLATFORM_SETUP_ALT
- *
- * \param   ctx     mbed TLS context
- *
- * \return  0 if successful
- */
-int mbedtls_internal_platform_setup( mbedtls_platform_context *ctx );
-/**
- * \brief   Internal function to perform any platform teardown operations
- *          Only exposed to allow overriding it, see MBEDTLS_PLATFORM_SETUP_ALT
- *
- * \param   ctx     mbed TLS context
- */
-void mbedtls_internal_platform_teardown( mbedtls_platform_context *ctx );
-
 #ifdef __cplusplus
 }
 #endif
diff --git a/library/platform.c b/library/platform.c
index 2ac67cb..f739f2f 100644
--- a/library/platform.c
+++ b/library/platform.c
@@ -304,21 +304,11 @@
 #endif /* MBEDTLS_PLATFORM_NV_SEED_ALT */
 #endif /* MBEDTLS_ENTROPY_NV_SEED */
 
-int mbedtls_platform_setup( mbedtls_platform_context *ctx )
-{
-    return( mbedtls_internal_platform_setup( ctx ) );
-}
-
-void mbedtls_platform_teardown( mbedtls_platform_context *ctx )
-{
-    mbedtls_internal_platform_teardown( ctx );
-}
-
 #if !defined(MBEDTLS_PLATFORM_SETUP_ALT)
 /*
- * Placeholder internal platform setup that does nothing by default
+ * Placeholder platform setup that does nothing by default
  */
-int mbedtls_internal_platform_setup( mbedtls_platform_context *ctx )
+int mbedtls_platform_setup( mbedtls_platform_context *ctx )
 {
     (void)ctx;
 
@@ -326,9 +316,9 @@
 }
 
 /*
- * Placeholder internal platform teardown that does nothing by default
+ * Placeholder platform teardown that does nothing by default
  */
-void mbedtls_internal_platform_teardown( mbedtls_platform_context *ctx )
+void mbedtls_platform_teardown( mbedtls_platform_context *ctx )
 {
     (void)ctx;
 }
