lynxpoint: Consolidate common GNVS init
Change-Id: Ie8e4fffcec308d1cd5e696605e78671f3ababf40 Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com> Reviewed-on: http://review.coreboot.org/7054 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
parent
b6200969ec
commit
1b409fd132
|
@ -55,10 +55,6 @@ static void acpi_update_thermal_table(global_nvs_t *gnvs)
|
|||
|
||||
void acpi_create_gnvs(global_nvs_t *gnvs)
|
||||
{
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
/* Enable USB ports in S3 */
|
||||
gnvs->s3u0 = 1;
|
||||
gnvs->s3u1 = 1;
|
||||
|
@ -79,16 +75,10 @@ void acpi_create_gnvs(global_nvs_t *gnvs)
|
|||
gnvs->did[4] = 0x00000005;
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
// TODO(reinauer) this could move elsewhere?
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
|
||||
gnvs->chromeos.vbt2 = google_ec_running_ro() ?
|
||||
ACTIVE_ECFW_RO : ACTIVE_ECFW_RW;
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_update_thermal_table(gnvs);
|
||||
}
|
||||
|
||||
|
|
|
@ -49,10 +49,6 @@ static void acpi_update_thermal_table(global_nvs_t *gnvs)
|
|||
|
||||
void acpi_create_gnvs(global_nvs_t *gnvs)
|
||||
{
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
/* Enable USB ports in S3 */
|
||||
gnvs->s3u0 = 1;
|
||||
gnvs->s3u1 = 1;
|
||||
|
@ -73,16 +69,10 @@ void acpi_create_gnvs(global_nvs_t *gnvs)
|
|||
gnvs->did[4] = 0x00000005;
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
// TODO(reinauer) this could move elsewhere?
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
|
||||
gnvs->chromeos.vbt2 = google_ec_running_ro() ?
|
||||
ACTIVE_ECFW_RO : ACTIVE_ECFW_RW;
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_update_thermal_table(gnvs);
|
||||
}
|
||||
|
||||
|
|
|
@ -66,10 +66,6 @@ static void acpi_update_thermal_table(global_nvs_t *gnvs)
|
|||
|
||||
void acpi_create_gnvs(global_nvs_t *gnvs)
|
||||
{
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
/* Enable USB ports in S3 */
|
||||
gnvs->s3u0 = 1;
|
||||
gnvs->s3u1 = 1;
|
||||
|
@ -90,16 +86,10 @@ void acpi_create_gnvs(global_nvs_t *gnvs)
|
|||
gnvs->did[4] = 0x00000005;
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
// TODO(reinauer) this could move elsewhere?
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
|
||||
// SuperIO is always RO
|
||||
gnvs->chromeos.vbt2 = ACTIVE_ECFW_RO;
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_update_thermal_table(gnvs);
|
||||
}
|
||||
|
||||
|
|
|
@ -58,10 +58,6 @@ static void acpi_update_thermal_table(global_nvs_t *gnvs)
|
|||
|
||||
void acpi_create_gnvs(global_nvs_t *gnvs)
|
||||
{
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
/* Enable USB ports in S3 */
|
||||
gnvs->s3u0 = 1;
|
||||
gnvs->s3u1 = 1;
|
||||
|
@ -82,16 +78,10 @@ void acpi_create_gnvs(global_nvs_t *gnvs)
|
|||
gnvs->did[4] = 0x00000005;
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
// TODO(reinauer) this could move elsewhere?
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
|
||||
gnvs->chromeos.vbt2 = google_ec_running_ro() ?
|
||||
ACTIVE_ECFW_RO : ACTIVE_ECFW_RW;
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_update_thermal_table(gnvs);
|
||||
}
|
||||
|
||||
|
|
|
@ -49,10 +49,6 @@ static void acpi_update_thermal_table(global_nvs_t *gnvs)
|
|||
|
||||
void acpi_create_gnvs(global_nvs_t *gnvs)
|
||||
{
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
/* Enable USB ports in S3 */
|
||||
gnvs->s3u0 = 1;
|
||||
gnvs->s3u1 = 1;
|
||||
|
@ -73,16 +69,10 @@ void acpi_create_gnvs(global_nvs_t *gnvs)
|
|||
gnvs->did[4] = 0x00000005;
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
// TODO(reinauer) this could move elsewhere?
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
|
||||
gnvs->chromeos.vbt2 = google_ec_running_ro() ?
|
||||
ACTIVE_ECFW_RO : ACTIVE_ECFW_RW;
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_update_thermal_table(gnvs);
|
||||
}
|
||||
|
||||
|
|
|
@ -55,10 +55,6 @@ static void acpi_update_thermal_table(global_nvs_t *gnvs)
|
|||
|
||||
void acpi_create_gnvs(global_nvs_t *gnvs)
|
||||
{
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
/* Enable USB ports in S3 */
|
||||
gnvs->s3u0 = 1;
|
||||
gnvs->s3u1 = 1;
|
||||
|
@ -79,16 +75,10 @@ void acpi_create_gnvs(global_nvs_t *gnvs)
|
|||
gnvs->did[4] = 0x00000005;
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
// TODO(reinauer) this could move elsewhere?
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
|
||||
gnvs->chromeos.vbt2 = google_ec_running_ro() ?
|
||||
ACTIVE_ECFW_RO : ACTIVE_ECFW_RW;
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_update_thermal_table(gnvs);
|
||||
}
|
||||
|
||||
|
|
|
@ -65,10 +65,6 @@ static void acpi_update_thermal_table(global_nvs_t *gnvs)
|
|||
|
||||
void acpi_create_gnvs(global_nvs_t *gnvs)
|
||||
{
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
/* Enable USB ports in S3 */
|
||||
gnvs->s3u0 = 1;
|
||||
gnvs->s3u1 = 1;
|
||||
|
@ -92,15 +88,10 @@ void acpi_create_gnvs(global_nvs_t *gnvs)
|
|||
gnvs->did[4] = 0x00000005;
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
// TODO(reinauer) this could move elsewhere?
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
/* Emerald Lake has no EC (?) */
|
||||
gnvs->chromeos.vbt2 = ACTIVE_ECFW_RO;
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_update_thermal_table(gnvs);
|
||||
}
|
||||
|
||||
|
|
|
@ -65,10 +65,6 @@ static void acpi_update_thermal_table(global_nvs_t *gnvs)
|
|||
|
||||
void acpi_create_gnvs(global_nvs_t *gnvs)
|
||||
{
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
/* Enable USB ports in S3 */
|
||||
gnvs->s3u0 = 1;
|
||||
gnvs->s3u1 = 1;
|
||||
|
@ -89,15 +85,10 @@ void acpi_create_gnvs(global_nvs_t *gnvs)
|
|||
gnvs->did[4] = 0x00000005;
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
// TODO(reinauer) this could move elsewhere?
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
/* Emerald Lake has no EC (?) */
|
||||
gnvs->chromeos.vbt2 = ACTIVE_ECFW_RO;
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_update_thermal_table(gnvs);
|
||||
}
|
||||
|
||||
|
|
|
@ -756,7 +756,20 @@ static void southbridge_inject_dsdt(void)
|
|||
|
||||
if (gnvs) {
|
||||
int scopelen;
|
||||
|
||||
acpi_create_gnvs(gnvs);
|
||||
|
||||
gnvs->apic = 1;
|
||||
gnvs->mpen = 1; /* Enable Multi Processing */
|
||||
gnvs->pcnt = dev_count_cpu();
|
||||
|
||||
#if CONFIG_CHROMEOS
|
||||
chromeos_init_vboot(&(gnvs->chromeos));
|
||||
#endif
|
||||
|
||||
/* Update the mem console pointer. */
|
||||
gnvs->cbmc = (u32)cbmem_find(CBMEM_ID_CONSOLE);
|
||||
|
||||
acpi_save_gnvs((unsigned long)gnvs);
|
||||
/* And tell SMI about it */
|
||||
smm_setup_structures(gnvs, NULL, NULL);
|
||||
|
|
Loading…
Reference in New Issue