public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
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.

  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