Browse Source

chore(cherrymp): add license

sakumisu 1 year ago
parent
commit
cb6a0c2ad6
2 changed files with 22 additions and 2 deletions
  1. 9 1
      third_party/cherrymp/chry_mempool.c
  2. 13 1
      third_party/cherrymp/chry_mempool.h

+ 9 - 1
third_party/cherrymp/chry_mempool.c

@@ -1,3 +1,8 @@
+/*
+ * Copyright (c) 2024, sakumisu
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ */
 #include "chry_mempool.h"
 
 int chry_mempool_create(struct chry_mempool *pool, void *block, uint32_t block_size, uint32_t block_count)
@@ -8,7 +13,10 @@ int chry_mempool_create(struct chry_mempool *pool, void *block, uint32_t block_s
     ringbuf = usb_osal_malloc(sizeof(uintptr_t) * block_count);
     memset(ringbuf, 0, sizeof(uintptr_t) * block_count);
 
-    chry_ringbuffer_init(&pool->rb, ringbuf, sizeof(uintptr_t) * block_count);
+    if (chry_ringbuffer_init(&pool->rb, ringbuf, sizeof(uintptr_t) * block_count) == -1) {
+        usb_osal_free(ringbuf);
+        return -1;
+    }
 
     for (uint32_t i = 0; i < block_count; i++) {
         addr = ((uintptr_t)block + i * block_size);

+ 13 - 1
third_party/cherrymp/chry_mempool.h

@@ -1,7 +1,11 @@
+/*
+ * Copyright (c) 2024, sakumisu
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ */
 #ifndef CHRY_MEMPOOL_H
 #define CHRY_MEMPOOL_H
 
-#include "usb_config.h"
 #include "usb_osal.h"
 #include "chry_ringbuffer.h"
 
@@ -10,10 +14,18 @@ struct chry_mempool {
     usb_osal_mq_t mq;
 };
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 int chry_mempool_create(struct chry_mempool *pool, void *block, uint32_t block_size, uint32_t block_count);
 uintptr_t *chry_mempool_alloc(struct chry_mempool *pool);
 int chry_mempool_free(struct chry_mempool *pool, uintptr_t *item);
 int chry_mempool_send(struct chry_mempool *pool, uintptr_t *item);
 int chry_mempool_recv(struct chry_mempool *pool, uintptr_t **item, uint32_t timeout);
 
+#ifdef __cplusplus
+}
+#endif
+
 #endif