1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __NVIF_CL0080_H__ 3 #define __NVIF_CL0080_H__ 4 5 struct nv_device_v0 { 6 __u8 version; 7 __u8 pad01[7]; 8 __u64 device; /* device identifier, ~0 for client default */ 9 }; 10 11 #define NV_DEVICE_V0_INFO 0x00 12 #define NV_DEVICE_V0_TIME 0x01 13 14 struct nv_device_info_v0 { 15 __u8 version; 16 #define NV_DEVICE_INFO_V0_IGP 0x00 17 #define NV_DEVICE_INFO_V0_PCI 0x01 18 #define NV_DEVICE_INFO_V0_AGP 0x02 19 #define NV_DEVICE_INFO_V0_PCIE 0x03 20 #define NV_DEVICE_INFO_V0_SOC 0x04 21 __u8 platform; 22 __u16 chipset; /* from NV_PMC_BOOT_0 */ 23 __u8 revision; /* from NV_PMC_BOOT_0 */ 24 #define NV_DEVICE_INFO_V0_TNT 0x01 25 #define NV_DEVICE_INFO_V0_CELSIUS 0x02 26 #define NV_DEVICE_INFO_V0_KELVIN 0x03 27 #define NV_DEVICE_INFO_V0_RANKINE 0x04 28 #define NV_DEVICE_INFO_V0_CURIE 0x05 29 #define NV_DEVICE_INFO_V0_TESLA 0x06 30 #define NV_DEVICE_INFO_V0_FERMI 0x07 31 #define NV_DEVICE_INFO_V0_KEPLER 0x08 32 #define NV_DEVICE_INFO_V0_MAXWELL 0x09 33 #define NV_DEVICE_INFO_V0_PASCAL 0x0a 34 __u8 family; 35 __u8 pad06[2]; 36 __u64 ram_size; 37 __u64 ram_user; 38 char chip[16]; 39 char name[64]; 40 }; 41 42 struct nv_device_time_v0 { 43 __u8 version; 44 __u8 pad01[7]; 45 __u64 time; 46 }; 47 #endif 48