Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #ifndef _SPARC64_HVTRAP_H
0003 #define _SPARC64_HVTRAP_H
0004 
0005 #ifndef __ASSEMBLY__
0006 
0007 #include <linux/types.h>
0008 
0009 struct hvtramp_mapping {
0010     __u64       vaddr;
0011     __u64       tte;
0012 };
0013 
0014 struct hvtramp_descr {
0015     __u32           cpu;
0016     __u32           num_mappings;
0017     __u64           fault_info_va;
0018     __u64           fault_info_pa;
0019     __u64           thread_reg;
0020     struct hvtramp_mapping  maps[1];
0021 };
0022 
0023 void hv_cpu_startup(unsigned long hvdescr_pa);
0024 
0025 #endif
0026 
0027 #define HVTRAMP_DESCR_CPU       0x00
0028 #define HVTRAMP_DESCR_NUM_MAPPINGS  0x04
0029 #define HVTRAMP_DESCR_FAULT_INFO_VA 0x08
0030 #define HVTRAMP_DESCR_FAULT_INFO_PA 0x10
0031 #define HVTRAMP_DESCR_THREAD_REG    0x18
0032 #define HVTRAMP_DESCR_MAPS      0x20
0033 
0034 #define HVTRAMP_MAPPING_VADDR       0x00
0035 #define HVTRAMP_MAPPING_TTE     0x08
0036 #define HVTRAMP_MAPPING_SIZE        0x10
0037 
0038 #endif /* _SPARC64_HVTRAP_H */