Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
 4.0.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
thread.h File Reference

Go to the source code of this file.

Data Structures

struct  x86_tss64
 

Macros

#define X86_THREAD_FLAG_ALL   0x01 /* _thread_arch.flags: entire state saved */
 
#define X86_KERNEL_CS_32   0x08 /* 32-bit kernel code */
 
#define X86_KERNEL_DS_32   0x10 /* 32-bit kernel data */
 
#define X86_KERNEL_CS   0x18 /* 64-bit kernel code */
 
#define X86_KERNEL_DS   0x20 /* 64-bit kernel data */
 
#define X86_USER_CS_32   0x28 /* 32-bit user data (unused) */
 
#define X86_USER_DS   0x30 /* 64-bit user mode data */
 
#define X86_USER_CS   0x38 /* 64-bit user mode code */
 
#define X86_STAR_UPPER   ((X86_USER_CS_32 << 16) | X86_KERNEL_CS)
 
#define X86_KERNEL_CPU0_TR   0x40 /* 64-bit task state segment */
 
#define X86_KERNEL_CPU1_TR   0x50 /* 64-bit task state segment */
 
#define X86_KERNEL_CPU2_TR   0x60 /* 64-bit task state segment */
 
#define X86_KERNEL_CPU3_TR   0x70 /* 64-bit task state segment */
 
#define X86_FXSAVE_SIZE   512 /* size and alignment of buffer ... */
 
#define X86_FXSAVE_ALIGN   16 /* ... for FXSAVE/FXRSTOR ops */
 
#define X86_MXCSR_SANE   0x1f80
 

Typedefs

typedef struct x86_tss64 x86_tss64_t
 

Macro Definition Documentation

◆ X86_FXSAVE_ALIGN

#define X86_FXSAVE_ALIGN   16 /* ... for FXSAVE/FXRSTOR ops */

◆ X86_FXSAVE_SIZE

#define X86_FXSAVE_SIZE   512 /* size and alignment of buffer ... */

◆ X86_KERNEL_CPU0_TR

#define X86_KERNEL_CPU0_TR   0x40 /* 64-bit task state segment */

◆ X86_KERNEL_CPU1_TR

#define X86_KERNEL_CPU1_TR   0x50 /* 64-bit task state segment */

◆ X86_KERNEL_CPU2_TR

#define X86_KERNEL_CPU2_TR   0x60 /* 64-bit task state segment */

◆ X86_KERNEL_CPU3_TR

#define X86_KERNEL_CPU3_TR   0x70 /* 64-bit task state segment */

◆ X86_KERNEL_CS

#define X86_KERNEL_CS   0x18 /* 64-bit kernel code */

◆ X86_KERNEL_CS_32

#define X86_KERNEL_CS_32   0x08 /* 32-bit kernel code */

◆ X86_KERNEL_DS

#define X86_KERNEL_DS   0x20 /* 64-bit kernel data */

◆ X86_KERNEL_DS_32

#define X86_KERNEL_DS_32   0x10 /* 32-bit kernel data */

◆ X86_MXCSR_SANE

#define X86_MXCSR_SANE   0x1f80

◆ X86_STAR_UPPER

#define X86_STAR_UPPER   ((X86_USER_CS_32 << 16) | X86_KERNEL_CS)

◆ X86_THREAD_FLAG_ALL

#define X86_THREAD_FLAG_ALL   0x01 /* _thread_arch.flags: entire state saved */

◆ X86_USER_CS

#define X86_USER_CS   0x38 /* 64-bit user mode code */

◆ X86_USER_CS_32

#define X86_USER_CS_32   0x28 /* 32-bit user data (unused) */

◆ X86_USER_DS

#define X86_USER_DS   0x30 /* 64-bit user mode data */

Typedef Documentation

◆ x86_tss64_t

typedef struct x86_tss64 x86_tss64_t