32x: drc: mmap dram+rom for direct dereference
[libpicofe.git] / linux / plat.c
index d777f23..492007c 100644 (file)
@@ -4,6 +4,7 @@
 #include <sys/time.h>
 #include <time.h>
 #include <unistd.h>
+#include <sys/mman.h>
 
 #include "../common/plat.h"
 
@@ -108,3 +109,21 @@ int plat_wait_event(int *fds_hnds, int count, int timeout_ms)
        return ret;
 }
 
+void *plat_mmap(unsigned long addr, size_t size)
+{
+       void *req, *ret;
+       req = (void *)addr;
+       ret = mmap(req, size, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_ANONYMOUS, -1, 0);
+       if (ret == MAP_FAILED)
+               return NULL;
+       if (ret != req)
+               printf("warning: mmaped to %p, requested %p\n", ret, req);
+
+       return ret;
+}
+
+void plat_munmap(void *ptr, size_t size)
+{
+       munmap(ptr, size);
+}
+