Files
m241Neelima/vxworks-6.9/target/h/arch/simnt/private/adrSpaceArchLibP.h
T
2026-07-30 11:19:44 +05:30

84 lines
2.4 KiB
C

/* adrSpaceArchLibP.h - address space header file for x86_64 */
/*
* Copyright (c) 2010 Wind River Systems, Inc.
*
* The right to copy, distribute, modify or otherwise make use
* of this software may be licensed only pursuant to the terms
* of an applicable Wind River license agreement.
*/
/*
modification history
--------------------
01a,01feb10,elp created from x86_64 with 64-bit region definitions.
*/
#ifndef __INCadrSpaceArchLibPh
#define __INCadrSpaceArchLibPh
#ifdef __cplusplus
extern "C" {
#endif
/* defines */
/* virtual memory region definitions */
#define KERNEL_SYS_MEM_RGN_BASE \
(adrSpaceArchRgnBaseGet(ADR_SPACE_ARCH_KERNEL_SYS_MEM_RGN))
#define KERNEL_SYS_MEM_RGN_SIZE \
(adrSpaceArchRgnSizeGet(ADR_SPACE_ARCH_KERNEL_SYS_MEM_RGN))
#define KERNEL_VIRT_POOL_RGN_BASE \
(adrSpaceArchRgnBaseGet(ADR_SPACE_ARCH_KERNEL_VIRT_POOL_RGN))
#define KERNEL_VIRT_POOL_RGN_SIZE \
(adrSpaceArchRgnSizeGet(ADR_SPACE_ARCH_KERNEL_VIRT_POOL_RGN))
#define KERNEL_DIRECT_MAP_RGN_BASE \
(adrSpaceArchRgnBaseGet(ADR_SPACE_ARCH_KERNEL_DIRECT_MAP_RGN))
#define KERNEL_DIRECT_MAP_RGN_SIZE \
(adrSpaceArchRgnSizeGet(ADR_SPACE_ARCH_KERNEL_DIRECT_MAP_RGN))
#define SHARED_RGN_BASE \
(adrSpaceArchRgnBaseGet(ADR_SPACE_ARCH_SHARED_RGN))
#define SHARED_RGN_SIZE \
(adrSpaceArchRgnSizeGet(ADR_SPACE_ARCH_SHARED_RGN))
#define RTP_PRIVATE_RGN_BASE \
(adrSpaceArchRgnBaseGet(ADR_SPACE_ARCH_RTP_PRIV_RGN))
#define RTP_PRIVATE_RGN_SIZE \
(adrSpaceArchRgnSizeGet(ADR_SPACE_ARCH_RTP_PRIV_RGN))
#define ADR_SPACE_ARCH_RGN_NUM 5 /* number of regions */
/* typedefs */
typedef enum
{
ADR_SPACE_ARCH_KERNEL_SYS_MEM_RGN = 0,
ADR_SPACE_ARCH_KERNEL_VIRT_POOL_RGN = 1,
ADR_SPACE_ARCH_KERNEL_DIRECT_MAP_RGN = 2,
ADR_SPACE_ARCH_SHARED_RGN = 3,
ADR_SPACE_ARCH_RTP_PRIV_RGN = 4
} ADR_SPACE_ARCH_RGN_TYPE;
/* BSP configured values */
extern VIRT_ADDR sysKernelSysMemRgnBase;
extern size_t sysKernelSysMemRgnSize;
extern VIRT_ADDR sysRtpPrivMemRgnBase;
extern size_t sysRtpPrivMemRgnSize;
extern VIRT_ADDR sysSharedMemRgnBase;
extern size_t sysSharedMemRgnSize;
extern VIRT_ADDR sysKernelVirtPoolMemRgnBase;
extern size_t sysKernelVirtPoolMemRgnSize;
extern VIRT_ADDR adrSpaceArchRgnBaseGet (ADR_SPACE_ARCH_RGN_TYPE rgnType);
extern size_t adrSpaceArchRgnSizeGet (ADR_SPACE_ARCH_RGN_TYPE rgnType);
#ifdef __cplusplus
}
#endif
#endif /* __INCadrSpaceArchLibPh */