From mboxrd@z Thu Jan 1 00:00:00 1970 From: Parth Dixit Subject: [PATCH v2 37/41] arm : acpi add acpi parameter to enable/disable acpi Date: Mon, 18 May 2015 01:34:04 +0530 Message-ID: <1431893048-5214-38-git-send-email-parth.dixit@linaro.org> References: <1431893048-5214-1-git-send-email-parth.dixit@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1431893048-5214-1-git-send-email-parth.dixit@linaro.org> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org Cc: keir@xen.org, ian.campbell@citrix.com, andrew.cooper3@citrix.com, tim@xen.org, julien.grall@citrix.com, stefano.stabellini@citrix.com, jbeulich@suse.com, parth.dixit@linaro.org, christoffer.dall@linaro.org List-Id: xen-devel@lists.xenproject.org ACPI will be disabled by default. Define new command line parameter "acpi" for enabling it. Signed-off-by: Parth Dixit --- xen/arch/arm/setup.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c index 1b2d74c..80364bb 100644 --- a/xen/arch/arm/setup.c +++ b/xen/arch/arm/setup.c @@ -58,6 +58,12 @@ static unsigned long opt_xenheap_megabytes __initdata; integer_param("xenheap_megabytes", opt_xenheap_megabytes); #endif +#ifdef CONFIG_ACPI +/* "acpi=force" : Enables acpi */ +static void parse_acpi_param(char *s); +custom_param("acpi", parse_acpi_param); +#endif + static __used void init_done(void) { free_init_memory(); @@ -83,6 +89,25 @@ static const char * __initdata processor_implementers[] = { ['i'] = "Intel Corporation", }; +#ifdef CONFIG_ACPI +static char __initdata acpi_param[10] = ""; +static void __init parse_acpi_param(char *s) +{ + /* Save the parameter so it can be propagated to domain0. */ + safe_strcpy(acpi_param, s); + + /* Interpret the parameter for use within Xen. */ + if ( !parse_bool(s) ) + { + disable_acpi(); + } + else if ( !strcmp(s, "force") ) + { + acpi_disabled = 0; + } +} +#endif + static void __init processor_id(void) { const char *implementer = "Unknown"; @@ -731,6 +756,7 @@ void __init start_xen(unsigned long boot_phys_offset, + (fdt_paddr & ((1 << SECOND_SHIFT) - 1)); fdt_size = boot_fdt_info(device_tree_flattened, fdt_paddr); + disable_acpi(); cmdline = boot_fdt_cmdline(device_tree_flattened); printk("Command line: %s\n", cmdline); cmdline_parse(cmdline); -- 1.9.1