From: Len Brown <lenb@kernel.org>
To: linux-acpi@vger.kernel.org
Cc: "Éric Piel" <Eric.Piel@tremplin-utc.net>,
"Eric Piel" <eric.piel@tremplin-utc.net>,
"Len Brown" <len.brown@intel.com>
Subject: [PATCH] ACPI: Add "acpi_no_initrd_override" kernel parameter
Date: Wed, 6 Feb 2008 20:12:51 -0500 [thread overview]
Message-ID: <1202346773-1893-4-git-send-email-lenb@kernel.org> (raw)
In-Reply-To: <47AA4F9D.7010601@tremplin-utc.net>
From: Éric Piel <Eric.Piel@tremplin-utc.net>
The acpi_no_initrd_override parameter permits to disable the load of an ACPI
table from the initramfs.
Signed-off-by: Eric Piel <eric.piel@tremplin-utc.net>
Signed-off-by: Len Brown <len.brown@intel.com>
---
Documentation/kernel-parameters.txt | 3 +++
drivers/acpi/osl.c | 14 +++++++++++++-
2 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 8fd5aa4..ef2316a 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -175,6 +175,9 @@ and is between 256 and 4096 characters. It is defined in the file
acpi_no_auto_ssdt [HW,ACPI] Disable automatic loading of SSDT
+ acpi_no_initrd_override [KNL,ACPI]
+ Disable loading custom ACPI tables from the initramfs
+
acpi_os_name= [HW,ACPI] Tell ACPI BIOS the name of the OS
Format: To spoof as Windows 98: ="Microsoft Windows"
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c
index bbd8360..40adf0d 100644
--- a/drivers/acpi/osl.c
+++ b/drivers/acpi/osl.c
@@ -77,6 +77,10 @@ static struct workqueue_struct *kacpi_notify_wq;
#define OSI_STRING_LENGTH_MAX 64 /* arbitrary */
static char osi_additional_string[OSI_STRING_LENGTH_MAX];
+#ifdef CONFIG_ACPI_CUSTOM_DSDT_INITRD
+static int acpi_no_initrd_override;
+#endif
+
/*
* "Ode to _OSI(Linux)"
*
@@ -386,7 +390,8 @@ acpi_os_table_override(struct acpi_table_header * existing_table,
*new_table = (struct acpi_table_header *)AmlCode;
#endif
#ifdef CONFIG_ACPI_CUSTOM_DSDT_INITRD
- if (strncmp(existing_table->signature, "DSDT", 4) == 0) {
+ if ((strncmp(existing_table->signature, "DSDT", 4) == 0) &&
+ !acpi_no_initrd_override) {
struct acpi_table_header *initrd_table = acpi_find_dsdt_initrd();
if (initrd_table)
*new_table = initrd_table;
@@ -402,6 +407,13 @@ acpi_os_table_override(struct acpi_table_header * existing_table,
return AE_OK;
}
+int __init acpi_no_initrd_override_setup(char *s)
+{
+ acpi_no_initrd_override = 1;
+ return 1;
+}
+__setup("acpi_no_initrd_override", acpi_no_initrd_override_setup);
+
static irqreturn_t acpi_irq(int irq, void *dev_id)
{
return (*acpi_irq_handler) (acpi_irq_context) ? IRQ_HANDLED : IRQ_NONE;
--
1.5.4.23.gef5b9
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2008-02-07 1:23 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <4798E2A5.6020804@users.sf.net>
[not found] ` <20080125063328.4e3b4752.akpm@linux-foundation.org>
2008-01-26 4:39 ` initrd DSDT override (Re: Feedback about your talk in Rennes France (20080124) : Evolution of the Linux kernel & virtualization technologies) Len Brown
2008-01-30 17:27 ` [PATCH] Override DSDT and SSDTs via initramfs Thomas Renninger
2008-01-30 22:36 ` Éric Piel
2008-01-31 19:17 ` Len Brown
2008-02-01 9:53 ` Thomas Renninger
2008-02-01 11:07 ` Alexey Starikovskiy
2008-02-01 11:29 ` Thomas Renninger
2008-02-02 4:36 ` Len Brown
2008-02-03 17:28 ` [PATCH 0/3] Override DSDT " Éric Piel
2008-02-04 17:53 ` Thomas Renninger
2008-02-04 22:57 ` Éric Piel
2008-02-07 0:15 ` Len Brown
2008-02-07 0:23 ` Éric Piel
2008-02-07 1:07 ` Len Brown
2008-02-07 1:12 ` initrd DSDT override patch series Len Brown
2008-02-07 1:12 ` [PATCH] ACPI: basic initramfs DSDT override support Len Brown
2008-02-07 1:12 ` [PATCH] ACPI: Taint kernel on ACPI table override (format corrected) Len Brown
2008-02-07 1:12 ` Len Brown [this message]
2008-02-07 1:12 ` [PATCH] ACPI: update DSDT override documentation Len Brown
2008-02-07 1:12 ` [PATCH] ACPI: update intrd DSDT override console messages Len Brown
2008-02-03 17:28 ` [PATCH 1/3] The basics of DSDT from initramfs Éric Piel
2008-02-03 17:39 ` Markus Gaugusch
2008-02-03 17:55 ` Éric Piel
2008-02-04 23:04 ` [PATCH 1/3] The basics of DSDT from initramfs (format corrected) Éric Piel
2008-02-06 23:54 ` Len Brown
2008-02-05 14:43 ` [PATCH 1/3] The basics of DSDT from initramfs Thomas Renninger
2008-02-05 14:56 ` Carlos Corbacho
2008-02-03 17:29 ` [PATCH 2/3] Taint kernel on ACPI table override Éric Piel
2008-02-04 23:04 ` [PATCH 2/3] Taint kernel on ACPI table override (format corrected) Éric Piel
2008-02-03 17:29 ` [PATCH 3/3] Add acpi_no_initrd_override kernel parameter Éric Piel
2008-02-04 23:04 ` [PATCH 3/3] Add acpi_no_initrd_override kernel parameter (format corrected) Éric Piel
2008-02-01 10:21 ` [PATCH] Override DSDT and SSDTs via initramfs Thomas Renninger
2008-02-01 10:38 ` Eric Piel
2008-02-07 2:51 ` Len Brown
2008-02-07 7:57 ` Éric Piel
2008-04-18 22:07 ` Philippe Coval
2008-04-18 23:25 ` Eric Piel
2008-02-07 2:49 ` Len Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1202346773-1893-4-git-send-email-lenb@kernel.org \
--to=lenb@kernel.org \
--cc=Eric.Piel@tremplin-utc.net \
--cc=len.brown@intel.com \
--cc=linux-acpi@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.