Print this page
3408 detect socket type of newer AMD CPUs
Reviewed by: Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org>

*** 26,35 **** --- 26,37 ---- * Copyright (c) 2010, Intel Corporation. * All rights reserved. */ /* * Copyright (c) 2011, Joyent, Inc. All rights reserved. + * Copyright 2012 Jens Elkner <jel+illumos@cs.uni-magdeburg.de> + * Copyright 2012 Hans Rosenfeld <rosenfeld@grumpf.hope-2000.org> */ #ifndef _SYS_X86_ARCHEXT_H #define _SYS_X86_ARCHEXT_H
*** 525,547 **** */ #define X86_CHIPREV_AMD_10_REV_A \ _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0001) #define X86_CHIPREV_AMD_10_REV_B \ _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0002) ! #define X86_CHIPREV_AMD_10_REV_C \ _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0004) ! #define X86_CHIPREV_AMD_10_REV_D \ _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0008) /* * Definitions for AMD Family 0x11. */ ! #define X86_CHIPREV_AMD_11 \ ! _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x11, 0x0001) /* * Various socket/package types, extended as the need to distinguish * a new type arises. The top 8 byte identfies the vendor and the * remaining 24 bits describe 24 socket types. */ --- 527,577 ---- */ #define X86_CHIPREV_AMD_10_REV_A \ _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0001) #define X86_CHIPREV_AMD_10_REV_B \ _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0002) ! #define X86_CHIPREV_AMD_10_REV_C2 \ _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0004) ! #define X86_CHIPREV_AMD_10_REV_C3 \ _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0008) + #define X86_CHIPREV_AMD_10_REV_D0 \ + _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0010) + #define X86_CHIPREV_AMD_10_REV_D1 \ + _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0020) + #define X86_CHIPREV_AMD_10_REV_E \ + _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x10, 0x0040) /* * Definitions for AMD Family 0x11. */ ! #define X86_CHIPREV_AMD_11_REV_B \ ! _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x11, 0x0002) + /* + * Definitions for AMD Family 0x12. + */ + #define X86_CHIPREV_AMD_12_REV_B \ + _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x12, 0x0002) /* + * Definitions for AMD Family 0x14. + */ + #define X86_CHIPREV_AMD_14_REV_B \ + _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x14, 0x0002) + #define X86_CHIPREV_AMD_14_REV_C \ + _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x14, 0x0004) + + /* + * Definitions for AMD Family 0x15 + */ + #define X86_CHIPREV_AMD_15OR_REV_B2 \ + _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x15, 0x0001) + + #define X86_CHIPREV_AMD_15TN_REV_A1 \ + _X86_CHIPREV_MKREV(X86_VENDOR_AMD, 0x15, 0x0002) + + /* * Various socket/package types, extended as the need to distinguish * a new type arises. The top 8 byte identfies the vendor and the * remaining 24 bits describe 24 socket types. */
*** 573,582 **** --- 603,620 ---- #define X86_SOCKET_AM2R2 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x000200) #define X86_SOCKET_AM3 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x000400) #define X86_SOCKET_G34 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x000800) #define X86_SOCKET_ASB2 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x001000) #define X86_SOCKET_C32 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x002000) + #define X86_SOCKET_S1g4 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x004000) + #define X86_SOCKET_FT1 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x008000) + #define X86_SOCKET_FM1 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x010000) + #define X86_SOCKET_FS1 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x020000) + #define X86_SOCKET_AM3R2 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x040000) + #define X86_SOCKET_FP2 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x080000) + #define X86_SOCKET_FS1R2 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x100000) + #define X86_SOCKET_FM2 _X86_SOCKET_MKVAL(X86_VENDOR_AMD, 0x200000) /* * xgetbv/xsetbv support */