/* * SPDX-License-Identifier: BSD-2-Clause * * Copyright (c) 2026 The FreeBSD Foundation */ #ifndef _LINUXKPI_ASM_CPU_DEVICE_ID_H_ #define _LINUXKPI_ASM_CPU_DEVICE_ID_H_ #define VFM_MODEL_BIT 0 #define VFM_FAMILY_BIT 8 #define VFM_VENDOR_BIT 16 #define VFM_RSVD_BIT 24 #define VFM_MODEL_MASK GENMASK(VFM_FAMILY_BIT - 1, VFM_MODEL_BIT) #define VFM_FAMILY_MASK GENMASK(VFM_VENDOR_BIT - 1, VFM_FAMILY_BIT) #define VFM_VENDOR_MASK GENMASK(VFM_RSVD_BIT - 1, VFM_VENDOR_BIT) #define VFM_MODEL(vfm) (((vfm) & VFM_MODEL_MASK) >> VFM_MODEL_BIT) #define VFM_FAMILY(vfm) (((vfm) & VFM_FAMILY_MASK) >> VFM_FAMILY_BIT) #define VFM_VENDOR(vfm) (((vfm) & VFM_VENDOR_MASK) >> VFM_VENDOR_BIT) #define VFM_MAKE(_vendor, _family, _model) ( \ ((_model) << VFM_MODEL_BIT) | \ ((_family) << VFM_FAMILY_BIT) | \ ((_vendor) << VFM_VENDOR_BIT) \ ) #include #include #include #endif /* _LINUXKPI_ASM_CPU_DEVICE_ID_H_ */