Lines Matching +full:0 +full:x154
38 #define PCI_DEVICE_ID_AMD_15H_M70H_NB_F3 0x15b3
41 /* CPUID function 0x80000001, ebx */
43 #define CPUID_PKGTYPE_F 0x00000000
44 #define CPUID_PKGTYPE_AM2R2_AM3 0x10000000
47 #define REG_DCT0_CONFIG_HIGH 0x094
51 #define REG_HARDWARE_THERMAL_CONTROL 0x64
52 #define HTC_ENABLE BIT(0)
54 #define REG_REPORTED_TEMPERATURE 0xa4
56 #define REG_NORTHBRIDGE_CAPABILITIES 0xe8
65 #define F15H_M60H_HARDWARE_TEMP_CTRL_OFFSET 0xd8200c64
66 #define F15H_M60H_REPORTED_TEMP_CTRL_OFFSET 0xd8200ca4
69 #define ZEN_REPORTED_TEMP_CTRL_BASE 0x00059800
74 #define ZEN_CCD_TEMP_MASK GENMASK(10, 0)
99 #define TCTL_BIT 0
113 { 0x17, "AMD Ryzen 5 1600X", 20000 },
114 { 0x17, "AMD Ryzen 7 1700X", 20000 },
115 { 0x17, "AMD Ryzen 7 1800X", 20000 },
116 { 0x17, "AMD Ryzen 7 2700X", 10000 },
117 { 0x17, "AMD Ryzen Threadripper 19", 27000 }, /* 19{00,20,50}X */
118 { 0x17, "AMD Ryzen Threadripper 29", 27000 }, /* 29{20,50,70,90}[W]X */
144 amd_nb_index_read(pdev, PCI_DEVFN(0, 0), 0xb8, in read_htcreg_nb_f15()
150 amd_nb_index_read(pdev, PCI_DEVFN(0, 0), 0xb8, in read_tempreg_nb_f15()
158 *regval = 0; in read_tempreg_nb_zen()
202 return 0; in k10temp_read_labels()
215 case 0: /* Tctl */ in k10temp_read_temp()
217 if (*val < 0 && !data->disp_negative) in k10temp_read_temp()
218 *val = 0; in k10temp_read_temp()
222 if (*val < 0 && !data->disp_negative) in k10temp_read_temp()
223 *val = 0; in k10temp_read_temp()
244 *val = ((regval >> 16) & 0x7f) * 500 + 52000; in k10temp_read_temp()
248 *val = (((regval >> 16) & 0x7f) in k10temp_read_temp()
249 - ((regval >> 24) & 0xf)) * 500 + 52000; in k10temp_read_temp()
254 return 0; in k10temp_read_temp()
281 return 0; in k10temp_is_visible()
285 return 0; in k10temp_is_visible()
290 return 0; in k10temp_is_visible()
296 return 0; in k10temp_is_visible()
300 return 0; in k10temp_is_visible()
305 return 0; in k10temp_is_visible()
308 return 0; in k10temp_is_visible()
312 return 0; in k10temp_is_visible()
321 if (boot_cpu_data.x86 != 0x10) in has_erratum_319()
328 pkg_type = cpuid_ebx(0x80000001) & CPUID_PKGTYPE_MASK; in has_erratum_319()
389 for (i = 0; i < limit; i++) { in k10temp_get_ccd_support()
393 * Some systems will return a register value of 0, and the TEMP_VALID in k10temp_get_ccd_support()
396 * Other systems will return a PCI_ERROR_RESPONSE (0xFFFFFFFF) for in k10temp_get_ccd_support()
434 if (boot_cpu_data.x86 == 0x17 && in k10temp_probe()
439 if (boot_cpu_data.x86 == 0x15 && in k10temp_probe()
440 ((boot_cpu_data.x86_model & 0xf0) == 0x60 || in k10temp_probe()
441 (boot_cpu_data.x86_model & 0xf0) == 0x70)) { in k10temp_probe()
444 } else if (boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) { in k10temp_probe()
450 case 0x1: /* Zen */ in k10temp_probe()
451 case 0x8: /* Zen+ */ in k10temp_probe()
452 case 0x11: /* Zen APU */ in k10temp_probe()
453 case 0x18: /* Zen+ APU */ in k10temp_probe()
454 data->ccd_offset = 0x154; in k10temp_probe()
457 case 0x31: /* Zen2 Threadripper */ in k10temp_probe()
458 case 0x60: /* Renoir */ in k10temp_probe()
459 case 0x68: /* Lucienne */ in k10temp_probe()
460 case 0x71: /* Zen2 */ in k10temp_probe()
461 data->ccd_offset = 0x154; in k10temp_probe()
464 case 0xa0 ... 0xaf: in k10temp_probe()
465 data->ccd_offset = 0x300; in k10temp_probe()
469 } else if (boot_cpu_data.x86 == 0x19) { in k10temp_probe()
475 case 0x0 ... 0x1: /* Zen3 SP3/TR */ in k10temp_probe()
476 case 0x21: /* Zen3 Ryzen Desktop */ in k10temp_probe()
477 case 0x50 ... 0x5f: /* Green Sardine */ in k10temp_probe()
478 data->ccd_offset = 0x154; in k10temp_probe()
481 case 0x40 ... 0x4f: /* Yellow Carp */ in k10temp_probe()
482 data->ccd_offset = 0x300; in k10temp_probe()
485 case 0x60 ... 0x6f: in k10temp_probe()
486 case 0x70 ... 0x7f: in k10temp_probe()
487 data->ccd_offset = 0x308; in k10temp_probe()
490 case 0x10 ... 0x1f: in k10temp_probe()
491 case 0xa0 ... 0xaf: in k10temp_probe()
492 data->ccd_offset = 0x300; in k10temp_probe()
496 } else if (boot_cpu_data.x86 == 0x1a) { in k10temp_probe()
505 for (i = 0; i < ARRAY_SIZE(tctl_offset_table); i++) { in k10temp_probe()