/* * 第3回 TOPPERS活用アイデア・アプリケーション開発コンテスト * 松浦 光洋さんの「lwIP の移植」をベースにしました。 * http://www.toppers.jp/contest.html * * @(#) $Id: mem_pool.c 167 2016-03-08 11:37:45Z coas-nagasima $ */ //asp\doc\porting.txt //6.15.1より #include "kernel/kernel_impl.h" #include "tlsf.h" static tlsf_t tlsf_kmm; static pool_t pool_kmm; void initialize_kmm(void) { if ((kmm == NULL) || (kmmsz <= tlsf_size())) { tlsf_kmm = NULL; return; } tlsf_kmm = tlsf_create(kmm); if (tlsf_kmm == NULL) return; pool_kmm = tlsf_add_pool(tlsf_kmm, ((uint8_t *)kmm) + tlsf_size(), kmmsz - tlsf_size()); } void * kernel_malloc(SIZE size) { if (tlsf_kmm != NULL) { return tlsf_malloc(tlsf_kmm, size); } else { return(NULL); } } void kernel_free(void *ptr) { if (tlsf_kmm != NULL) { tlsf_free(tlsf_kmm, ptr); } }