Implement some memory-related utility functions.
Change-Id: I54948ee7ffa03b9f9a994b3e96a893074ce9e6d1
diff --git a/services/server/env/fuchsia/osfunc.cc b/services/server/env/fuchsia/osfunc.cc
index 850adc4..baa12f9 100644
--- a/services/server/env/fuchsia/osfunc.cc
+++ b/services/server/env/fuchsia/osfunc.cc
@@ -30,6 +30,10 @@
#include <shared_mutex>
+#include <zircon/syscalls.h>
+
+#include "magma_util/macros.h"
+
extern "C" {
#include "log2.h"
#include "osfunc.h"
@@ -87,9 +91,9 @@
IMG_UINT32
OSCPUCacheAttributeSize(IMG_DCACHE_ATTRIBUTE eCacheAttribute)
{
- NOT_IMPLEMENTED();
- return 0;
+ return zx_system_get_dcache_line_size();
}
+
IMG_UINT32
OSVSScanf(IMG_CHAR *pStr, const IMG_CHAR *pszFormat, ...)
{
@@ -318,22 +322,20 @@
size_t
OSGetPageSize(void)
{
- NOT_IMPLEMENTED();
- return 0;
+ return magma::page_size();
}
size_t
OSGetPageShift(void)
{
- NOT_IMPLEMENTED();
- return 0;
+ return magma::page_shift();
}
size_t
OSGetPageMask(void)
{
- NOT_IMPLEMENTED();
- return 0;
+ // Lower bits set.
+ return magma::page_size() - 1;
}
size_t