Split mbedtls_ccm_init() -> setkey()
diff --git a/include/mbedtls/ccm.h b/include/mbedtls/ccm.h
index 7ee3a37..894794d 100644
--- a/include/mbedtls/ccm.h
+++ b/include/mbedtls/ccm.h
@@ -42,6 +42,15 @@
 mbedtls_ccm_context;
 
 /**
+ * \brief           Initialize CCM context (just makes references valid)
+ *                  Makes the context ready for mbedtls_ccm_setkey() or
+ *                  mbedtls_ccm_free().
+ *
+ * \param ctx       CCM context to initialize
+ */
+void mbedtls_ccm_init( mbedtls_ccm_context *ctx );
+
+/**
  * \brief           CCM initialization (encryption and decryption)
  *
  * \param ctx       CCM context to be initialized
@@ -51,8 +60,10 @@
  *
  * \return          0 if successful, or a cipher specific error code
  */
-int mbedtls_ccm_init( mbedtls_ccm_context *ctx, mbedtls_cipher_id_t cipher,
-              const unsigned char *key, unsigned int keysize );
+int mbedtls_ccm_setkey( mbedtls_ccm_context *ctx,
+                        mbedtls_cipher_id_t cipher,
+                        const unsigned char *key,
+                        unsigned int keysize );
 
 /**
  * \brief           Free a CCM context and underlying cipher sub-context