util: os_misc: add Fuchsia support

v2: cleaner detect os check (robclark@)

Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Acked-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/29539>
This commit is contained in:
C Stout 2024-06-04 10:42:41 -07:00 committed by Marge Bot
parent d6096ce8c8
commit 2a3f53bd3b

View file

@ -68,6 +68,9 @@
# include <kernel/OS.h>
#elif DETECT_OS_WINDOWS
# include <windows.h>
#elif DETECT_OS_FUCHSIA
#include <unistd.h>
#include <zircon/syscalls.h>
#else
#error unexpected platform in os_sysinfo.c
#endif
@ -311,6 +314,9 @@ os_get_total_physical_memory(uint64_t *size)
ret = GlobalMemoryStatusEx(&status);
*size = status.ullTotalPhys;
return (ret == true);
#elif DETECT_OS_FUCHSIA
*size = zx_system_get_physmem();
return true;
#else
#error unexpected platform in os_misc.c
return false;
@ -381,7 +387,7 @@ os_get_available_system_memory(uint64_t *size)
bool
os_get_page_size(uint64_t *size)
{
#if DETECT_OS_POSIX && !DETECT_OS_APPLE && !DETECT_OS_HAIKU
#if DETECT_OS_POSIX_LITE && !DETECT_OS_APPLE && !DETECT_OS_HAIKU
const long page_size = sysconf(_SC_PAGE_SIZE);
if (page_size <= 0)