From: Ducrot Bruno <ducrot-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org>
To: Pavel Machek <pavel-+ZI9xUNit7I@public.gmane.org>
Cc: kernel list
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
ACPI mailing list
<acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>,
Robert Woerle <robert-fPtsKRK0pHxl57MIdRCFDg@public.gmane.org>,
ducrot-kk6yZipjEM5g9hUCZPvPmw@public.gmane.org
Subject: Re: [ACPI] PaceBlade broken acpi/memory map
Date: Mon, 24 Feb 2003 17:42:09 +0100 [thread overview]
Message-ID: <20030224164209.GD13404@poup.poupinou.org> (raw)
In-Reply-To: <20030220172144.GA15016-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
On Thu, Feb 20, 2003 at 06:21:45PM +0100, Pavel Machek wrote:
> Hi!
>
> I have PaceBlade here, and its memory map is wrong, which leads to
> ACPI refusing to load. [It does not mention "ACPI data" in the memory
> map at all!]
I have made those patches to workaround that. I have no time
to rediff it though (sorry), but it is easy to get it. I also CC
to Robert Woerle because he has already send a PR to the
bios mainteners.
>
> And when I work around that, it crashes in processing _STA/_INI
> methods. [Anyone from PaceBlade listening?]
Don't know what happens: I have no paceblade and it sound like it
is OK for Robert ?
this one is bad. Only here in order to get the second diff apply cleanly.
--- linux-2.4.21-pre3-acpi-20030109-s4bios/arch/i386/kernel/setup.c 2003/01/22 12:37:35 1.1
+++ linux-2.4.21-pre3-acpi-20030109-s4bios/arch/i386/kernel/setup.c 2003/01/22 13:44:06
@@ -546,6 +546,12 @@
if (*pnr_map < 2)
return -1;
+ biosmap[(int) *pnr_map].addr = 0x0eef0000;
+ biosmap[(int) *pnr_map].size = 53248;
+ biosmap[(int) *pnr_map].type = E820_ACPI;
+ (*pnr_map)++;
+
+
old_nr = *pnr_map;
/* bail out if we find any unreasonable addresses in bios map */
This one is the good one. Need to be rediffed correctly, or to be changed for 2.5.
--- linux-2.4.21-pre3-acpi-20030109-s4bios/arch/i386/kernel/setup.c 2003/01/27 13:46:37 1.2
+++ linux-2.4.21-pre3-acpi-20030109-s4bios/arch/i386/kernel/setup.c 2003/01/27 14:13:28
@@ -546,10 +546,47 @@
if (*pnr_map < 2)
return -1;
+ /*
+ * For broken BIOS which do not declare an ACPI DATA properly,
+ * even though ACPI NVS are here, we try to declare the 64ko as
+ * ACPI DATA (and hope it will work).
+ */
+ do {
+ int i;
+ int seen = 0;
+ struct e820entry new_entry;
+
+ old_nr = *pnr_map;
+ memset(&new_entry, 0, sizeof (new_entry));
+
+ for (i = 0; i < old_nr; i++) {
+ switch (biosmap[i].type) {
+ case E820_ACPI:
+ seen = 1;
+ break;
+ case E820_NVS:
+ new_entry.addr = biosmap[i].addr - 0x10000;
+ new_entry.size = 0x10000;
+ new_entry.type = E820_ACPI;
+ break;
+ default:
+ break;
+ }
+ }
+ if (!seen && new_entry.type == E820_ACPI) {
+ printk(KERN_WARNING "setup: found a ACPI NV region, but no ACPI DATA. Trying to mark\n");
+ printk(KERN_WARNING "setup: %016Lx of size %016Lx as ACPI DATA.\n", new_entry.addr, new_entry.size);
+ memcpy(&biosmap[(int) *pnr_map], &new_entry, sizeof(new_entry));
+ (*pnr_map)++;
+ }
+ } while (0);
+
+#if 0
biosmap[(int) *pnr_map].addr = 0x0eef0000;
biosmap[(int) *pnr_map].size = 53248;
biosmap[(int) *pnr_map].type = E820_ACPI;
(*pnr_map)++;
+#endif
old_nr = *pnr_map;
It is much better to kill the lines in #if 0 ... #endif of course.
Cheers,
--
Ducrot Bruno
-- Which is worse: ignorance or apathy?
-- Don't know. Don't care.
next prev parent reply other threads:[~2003-02-24 16:42 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-02-20 17:21 PaceBlade broken acpi/memory map Pavel Machek
[not found] ` <20030220172144.GA15016-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
2003-02-24 16:42 ` Ducrot Bruno [this message]
[not found] ` <20030224164209.GD13404-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
2003-02-24 18:39 ` Pavel Machek
[not found] ` <20030224183955.GC517-jyMamyUUXNJG4ohzP4jBZS1Fcj925eT/@public.gmane.org>
2003-02-25 14:35 ` [ACPI] " Ducrot Bruno
[not found] ` <20030225143505.GH13404-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
2003-02-25 14:53 ` Robert
[not found] ` <3E5B835E.7050601-y2s3ugBAdl9BDgjK7y7TUQ@public.gmane.org>
2003-02-25 15:13 ` Ducrot Bruno
[not found] ` <20030225151341.GI13404-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
2003-02-25 17:44 ` Pavel Machek
[not found] ` <20030225174449.GD12028-jyMamyUUXNJG4ohzP4jBZS1Fcj925eT/@public.gmane.org>
2003-02-25 20:09 ` Ducrot Bruno
[not found] ` <20030225200907.GJ13404-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
2003-02-25 20:49 ` Ducrot Bruno
[not found] ` <20030225204911.GK13404-j6u/t2rXLliUoIHC/UFpr9i2O/JbrIOy@public.gmane.org>
2003-02-26 9:39 ` [ACPI] " Pavel Machek
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=20030224164209.GD13404@poup.poupinou.org \
--to=ducrot-kk6yzipjem5g9huczpvpmw@public.gmane.org \
--cc=acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=pavel-+ZI9xUNit7I@public.gmane.org \
--cc=robert-fPtsKRK0pHxl57MIdRCFDg@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox