summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk@arm.linux.org.uk>2012-10-22 13:05:22 +0100
committerroot <root@cubox.(none)>2012-10-22 14:57:04 +0100
commitbf64f87bbae91c7a4b77ecb0b892906335e054ea (patch)
treed406fe0cc5d975850a7d941ea0167a72de1c0027
parent75843921f1aff8f5221f7ac7df19a897db94eb6f (diff)
Remove bmm_dma_memcpy() and bmm_dma_sync()
-rw-r--r--Makefile.am4
-rw-r--r--bmm_lib.c32
-rw-r--r--bmm_lib.h2
-rw-r--r--bmm_lib_priv.h2
-rw-r--r--bmm_test.c137
-rw-r--r--configure.ac6
6 files changed, 6 insertions, 177 deletions
diff --git a/Makefile.am b/Makefile.am
index c7f124b..c135cb7 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -3,8 +3,8 @@ AM_CFLAGS = $(WARN_CFLAGS)
libbmm_la_LTLIBRARIES = libbmm.la
libbmm_ladir = $(libdir)
-libbmm_la_LDFLAGS = -avoid-version -no-undefined -shrext .so.@ABI_VERSION@ \
- -export-symbols-regex "bmm_*"
+libbmm_la_LDFLAGS = -no-undefined -export-symbols-regex "bmm_*" \
+ -version-info @ABI_VERSION@:@ABI_REVISION@:@ABI_AGE@
libbmm_la_SOURCES = bmm_lib.c bmm_lib_priv.h
libbmm_laincludedir = $(includedir)
diff --git a/bmm_lib.c b/bmm_lib.c
index 433dbef..073b213 100644
--- a/bmm_lib.c
+++ b/bmm_lib.c
@@ -303,38 +303,6 @@ void bmm_flush_cache(void *vaddr, int dir)
ioctl(bmm_fd, BMM_FLUSH_CACHE, &io);
}
-void *bmm_dma_memcpy(void *dest, const void *src, size_t n)
-{
- int ret;
- ioctl_arg_t io;
-
- if(bmm_init() < 0)
- return 0;
-
- io.input = (unsigned long)src;
- io.output = (unsigned long)dest;
- io.length = (unsigned long)n;
- io.arg = 0;
- ret = ioctl(bmm_fd, BMM_DMA_MEMCPY, &io);
- if(ret < 0)
- return 0;
-
- return dest;
-}
-
-void bmm_dma_sync()
-{
- ioctl_arg_t io;
-
- if(bmm_init() < 0)
- return;
-
- io.input = 0;
- io.output = 0;
- io.arg = 0;
- ioctl(bmm_fd, BMM_DMA_SYNC, &io);
-}
-
void bmm_flush_cache_range(void *start, size_t size, int direction)
{
ioctl_arg_t io;
diff --git a/bmm_lib.h b/bmm_lib.h
index 90c8893..6190088 100644
--- a/bmm_lib.h
+++ b/bmm_lib.h
@@ -54,8 +54,6 @@ unsigned long bmm_get_total_space();
unsigned long bmm_get_free_space();
unsigned long bmm_get_allocated_space();
void bmm_flush_cache(void *vaddr, int dir);
-void *bmm_dma_memcpy(void *dest, const void *src, size_t n); /* Obsolete */
-void bmm_dma_sync(); /* Obsolete */
void bmm_flush_cache_range(void *start, size_t size, int direction);
void bmm_flush_user(void *start, long size, int direction);
void bmm_dump(); /* for debugging */
diff --git a/bmm_lib_priv.h b/bmm_lib_priv.h
index ea71ffa..9b92681 100644
--- a/bmm_lib_priv.h
+++ b/bmm_lib_priv.h
@@ -35,8 +35,6 @@ typedef struct {
#define BMM_GET_TOTAL_SPACE _IOWR(BMEM_IOCTL_MAGIC, 7, ioctl_arg_t)
#define BMM_GET_FREE_SPACE _IOWR(BMEM_IOCTL_MAGIC, 8, ioctl_arg_t)
#define BMM_FLUSH_CACHE _IOWR(BMEM_IOCTL_MAGIC, 9, ioctl_arg_t)
-#define BMM_DMA_MEMCPY _IOWR(BMEM_IOCTL_MAGIC, 10, ioctl_arg_t)
-#define BMM_DMA_SYNC _IOWR(BMEM_IOCTL_MAGIC, 11, ioctl_arg_t)
#define BMM_CONSISTENT_SYNC _IOWR(BMEM_IOCTL_MAGIC, 12, ioctl_arg_t)
#define BMM_DUMP _IOWR(BMEM_IOCTL_MAGIC, 13, ioctl_arg_t)
#define BMM_GET_ALLOCATED_SPACE _IOWR(BMEM_IOCTL_MAGIC, 14, ioctl_arg_t)
diff --git a/bmm_test.c b/bmm_test.c
index 27b2dd1..34e4559 100644
--- a/bmm_test.c
+++ b/bmm_test.c
@@ -110,124 +110,6 @@ int test_bmm_malloc(unsigned long size, int attr)
free_size1 != free_size3);
}
-int test_bmm_dma_memcpy(unsigned long size)
-{
- char *src;
- char *dst;
- unsigned long i;
- unsigned long free_size1;
- unsigned long free_size2;
- unsigned long free_size3;
- int ret = 0;
-
- PRINT_TEST_NAME;
-
- free_size1 = bmm_get_free_space();
- src = bmm_malloc(size, BMM_ATTR_DEFAULT);
- dst = bmm_malloc(size, BMM_ATTR_DEFAULT);
- memset(src, 0, size);
- memset(dst, 0, size);
- free_size2 = bmm_get_free_space();
- if(src == NULL) {
- printf("\tno enough memory\n");
- return -1;
- }
- if(dst == NULL) {
- printf("\tno enough memory\n");
- bmm_free(src);
- return -2;
- }
- for(i=0; i<size; i++)
- src[i] = dst[size-i-1] = i;
- bmm_flush_cache(src, BMM_DMA_TO_DEVICE);
- bmm_flush_cache(dst, BMM_DMA_TO_DEVICE);
- bmm_dma_memcpy(dst, src, size);
- bmm_dma_sync();
- bmm_flush_cache(dst, BMM_DMA_FROM_DEVICE);
- for(i=0; i<size; i++) {
- if(src[i] != dst[i]) {
- ret--;
- if(debug)
- printf("\t[%ld]: %d != %d\n", i, src[i], dst[i]);
- else
- break;
- }
- }
-
- bmm_free(src);
- bmm_free(dst);
- free_size3 = bmm_get_free_space();
-
- printf("\tbmm_dma_memcpy(%ld/%ld) = %d\n", size, i, ret);
- printf("\tbmm_get_free_space() return %ldKB %ldKB %ldKB\n",
- free_size1/1024, free_size2/1024, free_size3/1024);
-
- if(ret)
- return ret;
-
- return (free_size1 - free_size2 != size << 1 || free_size1 != free_size3);
-}
-
-int test_bmm_dma_memcpy_range(unsigned long size)
-{
- char *src;
- char *dst;
- unsigned long i, offset;
- unsigned long free_size1;
- unsigned long free_size2;
- unsigned long free_size3;
- int ret = 0;
-
- PRINT_TEST_NAME;
-
- free_size1 = bmm_get_free_space();
- src = bmm_malloc(size, BMM_ATTR_DEFAULT);
- dst = bmm_malloc(size, BMM_ATTR_DEFAULT);
- memset(src, 0, size);
- memset(dst, 0, size);
- free_size2 = bmm_get_free_space();
- if(src == NULL) {
- printf("\tno enough memory\n");
- return -1;
- }
- if(dst == NULL) {
- printf("\tno enough memory\n");
- bmm_free(src);
- return -2;
- }
- for(i=0; i<size; i++)
- src[i] = dst[size-i-1] = i;
- for(offset=0; offset+size/2<size && offset<8096; offset+=128) {
- bmm_flush_cache_range(src+offset, size/2, BMM_DMA_TO_DEVICE);
- bmm_flush_cache_range(dst+offset, size/2, BMM_DMA_TO_DEVICE);
- bmm_dma_memcpy(dst+offset, src+offset, size/2);
- bmm_dma_sync();
- bmm_flush_cache_range(dst+offset, size/2, BMM_DMA_FROM_DEVICE);
- for(i=offset; i<size/2; i++) {
- if(src[i] != dst[i]) {
- ret--;
- if(debug)
- printf("\t[%ld]: %d != %d\n", i, src[i], dst[i]);
- else
- break;
- }
- }
- }
-
- bmm_free(src);
- bmm_free(dst);
- free_size3 = bmm_get_free_space();
-
- printf("\tbmm_dma_memcpy(%ld/%ld) = %d\n", size, i, ret);
- printf("\tbmm_get_free_space() return %ldKB %ldKB %ldKB\n",
- free_size1/1024, free_size2/1024, free_size3/1024);
-
- if(ret)
- return ret;
-
- return (free_size1 - free_size2 != size << 1 || free_size1 != free_size3);
-}
-
long gettickcount(void)
{
struct timeval g_tv;
@@ -425,25 +307,6 @@ int main(int argc, char * argv[])
PRINT_TEST_RESULT(ret);
}
-#if 0
- n = 128;
- for(i=1; i<=n; i++) {
- ret = test_bmm_dma_memcpy(i*4096);
- PRINT_TEST_RESULT(ret);
- }
-
- n = 4;
- for(i=1; i<=n; i++) {
- ret = test_bmm_dma_memcpy(i*1024*1024);
- PRINT_TEST_RESULT(ret);
- }
-
- n = 128;
- for(i=1; i<=n; i++) {
- ret = test_bmm_dma_memcpy_range(i*4096);
- PRINT_TEST_RESULT(ret);
- }
-#endif
n = 1;
ret = test_bmm_flush_user(n*1024*1024);
PRINT_TEST_RESULT(ret);
diff --git a/configure.ac b/configure.ac
index d8cbe23..5ff577b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,15 +1,17 @@
AC_PREREQ([2.63])
-AC_INIT([libbmm], [1.0.0], [], [libbmm])
+AC_INIT([libbmm], [1.1.0], [], [libbmm])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([1.10 foreign dist-bzip2])
AM_MAINTAINER_MODE([enable])
-ABI_VERSION=0u
+ABI_VERSION=1
ABI_REVISION=1
+ABI_AGE=0
AC_SUBST(ABI_VERSION)
AC_SUBST(ABI_REVISION)
+AC_SUBST(ABI_AGE)
# Enable quiet compiles on automake 1.11.
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])