From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755241AbbHYC3S (ORCPT ); Mon, 24 Aug 2015 22:29:18 -0400 Received: from mga14.intel.com ([192.55.52.115]:41137 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755136AbbHYC3P (ORCPT ); Mon, 24 Aug 2015 22:29:15 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,743,1432623600"; d="scan'208";a="790222833" From: Lv Zheng To: "Rafael J. Wysocki" , Len Brown Cc: Lv Zheng , Lv Zheng , , linux-acpi@vger.kernel.org, Bob Moore Subject: [PATCH 07/20] ACPICA: Tables: Cleanup to reduce FACS globals. Date: Tue, 25 Aug 2015 10:29:08 +0800 Message-Id: <89dfc4c9bd9f39f2cf79f09c2ffa9628604ec15f.1440402549.git.lv.zheng@intel.com> X-Mailer: git-send-email 1.7.10 In-Reply-To: References: Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org ACPICA commit 3f42ba76e2a0453976d3108296d5f656fdf2bd6e In this patch, FACS table mapping is also tuned a bit so that only the selected FACS table will be mapped by the OSPM (mapped on demand) and the FACS related global variables can be reduced. Lv Zheng. Link: https://github.com/acpica/acpica/commit/3f42ba76 Signed-off-by: Lv Zheng Signed-off-by: Bob Moore --- drivers/acpi/acpica/acglobal.h | 2 -- drivers/acpi/acpica/hwxfsleep.c | 15 ++------------- drivers/acpi/acpica/tbutils.c | 9 +++++---- 3 files changed, 7 insertions(+), 19 deletions(-) diff --git a/drivers/acpi/acpica/acglobal.h b/drivers/acpi/acpica/acglobal.h index e78667e..95ed861 100644 --- a/drivers/acpi/acpica/acglobal.h +++ b/drivers/acpi/acpica/acglobal.h @@ -64,8 +64,6 @@ ACPI_INIT_GLOBAL(u32, acpi_gbl_xfacs_index, ACPI_INVALID_TABLE_INDEX); #if (!ACPI_REDUCED_HARDWARE) ACPI_GLOBAL(struct acpi_table_facs *, acpi_gbl_FACS); -ACPI_GLOBAL(struct acpi_table_facs *, acpi_gbl_facs32); -ACPI_GLOBAL(struct acpi_table_facs *, acpi_gbl_facs64); #endif /* !ACPI_REDUCED_HARDWARE */ diff --git a/drivers/acpi/acpica/hwxfsleep.c b/drivers/acpi/acpica/hwxfsleep.c index 52dfd0d..d62a616 100644 --- a/drivers/acpi/acpica/hwxfsleep.c +++ b/drivers/acpi/acpica/hwxfsleep.c @@ -160,19 +160,8 @@ acpi_set_firmware_waking_vectors(acpi_physical_address physical_address, ACPI_FUNCTION_TRACE(acpi_set_firmware_waking_vectors); - /* If Hardware Reduced flag is set, there is no FACS */ - - if (acpi_gbl_reduced_hardware) { - return_ACPI_STATUS (AE_OK); - } - - if (acpi_gbl_facs32) { - (void)acpi_hw_set_firmware_waking_vectors(acpi_gbl_facs32, - physical_address, - physical_address64); - } - if (acpi_gbl_facs64) { - (void)acpi_hw_set_firmware_waking_vectors(acpi_gbl_facs64, + if (acpi_gbl_FACS) { + (void)acpi_hw_set_firmware_waking_vectors(acpi_gbl_FACS, physical_address, physical_address64); } diff --git a/drivers/acpi/acpica/tbutils.c b/drivers/acpi/acpica/tbutils.c index b1d500e..4337990 100644 --- a/drivers/acpi/acpica/tbutils.c +++ b/drivers/acpi/acpica/tbutils.c @@ -68,6 +68,7 @@ acpi_tb_get_root_table_entry(u8 *table_entry, u32 table_entry_size); acpi_status acpi_tb_initialize_facs(void) { + struct acpi_table_facs *facs; /* If Hardware Reduced flag is set, there is no FACS */ @@ -80,14 +81,14 @@ acpi_status acpi_tb_initialize_facs(void) (void)acpi_get_table_by_index(acpi_gbl_xfacs_index, ACPI_CAST_INDIRECT_PTR(struct acpi_table_header, - &acpi_gbl_facs32)); - acpi_gbl_FACS = acpi_gbl_facs32; + &facs)); + acpi_gbl_FACS = facs; } else if (acpi_gbl_FADT.facs) { (void)acpi_get_table_by_index(acpi_gbl_facs_index, ACPI_CAST_INDIRECT_PTR(struct acpi_table_header, - &acpi_gbl_facs64)); - acpi_gbl_FACS = acpi_gbl_facs64; + &facs)); + acpi_gbl_FACS = facs; } /* If there is no FACS, just continue. There was already an error msg */ -- 1.7.10