/*
 * @file hv_vos_BaseArch.h
 * @brief Header file of base arch.
 *
 * @verbatim
 * ==============================================================================
 *                        ##### How to use #####
 * ==============================================================================
 * (+) Use ()
 *
 * @endverbatim
 * @author HiView SoC Software Team
 * @version 1.0.0
 * @date 2023-03-01
 */

#ifndef _HV_VOS_ARCH_RISC_H
#define _HV_VOS_ARCH_RISC_H

#include <string.h>
#include <stdlib.h>
#include <stdarg.h>
#include <stddef.h>
#include <errno.h>
#include <time.h>
#include <unistd.h>
#include <sys/time.h>
#include <sys/times.h>
#include <mips/cpu.h>
#include <sys/types.h>
#include <sys/stat.h>

#define INLINE static inline

typedef unsigned long long HV_VOS_IRQ_T;

#define HV_SWAP32(x) __bswap32(x)

#define HV_SWAP16(x) __bswap16(x)

#define DECLARE_ALIGNED(n, type, v)      type __attribute__ ((aligned (n))) v

#define HV_PHY_ADDR(addr) ((intptr_t)((addr) | 0xA0000000))

#endif


