blob: 6910713d8ea9621285d70383f87aa1762aa28e52 [file] [log] [blame]
Angel Ponsf23ae0b2020-04-02 23:48:12 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Vladimir Serbinenko22dcdd92013-06-06 22:10:45 +02002
Michael Niewöhner90df9162020-10-13 22:58:28 +02003#include <types.h>
Vladimir Serbinenko22dcdd92013-06-06 22:10:45 +02004#include <cpu/x86/msr.h>
5#include <cpu/intel/speedstep.h>
Elyes HAOUAS45ce5d82021-01-31 09:15:30 +01006
Vladimir Serbinenko22dcdd92013-06-06 22:10:45 +02007#include "model_2065x.h"
8
Alexander Couzensf251a6d2015-01-28 01:51:04 +01009/* MSR Documentation based on
10 * "Sandy Bridge Processor Family BIOS Writer's Guide (BWG)"
11 * Document Number 504790
12 * Revision 1.6.0, June 2012 */
13
Vladimir Serbinenko22dcdd92013-06-06 22:10:45 +020014void intel_model_2065x_finalize_smm(void)
15{
Alexander Couzensf251a6d2015-01-28 01:51:04 +010016 /* Lock C-State MSR */
Michael Niewöhner90df9162020-10-13 22:58:28 +020017 msr_set(MSR_PKG_CST_CONFIG_CONTROL, BIT(15));
Vladimir Serbinenko22dcdd92013-06-06 22:10:45 +020018
Elyes HAOUASece26962018-08-07 12:24:16 +020019 /* Lock TM interrupts - route thermal events to all processors */
Michael Niewöhner90df9162020-10-13 22:58:28 +020020 msr_set(MSR_MISC_PWR_MGMT, BIT(22));
Vladimir Serbinenko22dcdd92013-06-06 22:10:45 +020021}