Re: Re: [Lhms-devel] [PATCH 1/1] patch to fix acpi_memhotplug.c

keith
2005-11-18T18:54:10Z

On Fri, 2005-11-18 at 11:56 +0900, KAMEZAWA Hiroyuki wrote:
> keith wrote:
> >> >
> >>Could you show your AML tree around Memory ?
> >
> >
> > See attached SSDT.
> >
> Thanks, at the first look.....
>
> > Device (ME00)
> > {
> <snip>
> > Method (_STA, 0, NotSerialized)
> > {
> > If (CondRefOf (_OSI, Local0))
> > {
> > If (\_OSI ("Windows 2001"))
> > {
> > If (LAnd (LEqual (BADH, EADH), LEqual (BADL, EADL)))
> > {
> > Or (MEID, \_SB.MEMI, \_SB.MEMI)
> > Return (0x00)
> > }
> > Else
> > {
> > And (Not (MEID), \_SB.MEMI, \_SB.MEMI)
> > Return (0x0F)
> > }
> > }
> > }
> >
> > Return (0x00)
> > }
> It seems memory device's _STA never returns 0xF always returns 0x0.
> (Device is online and enabled) when OS is not Windows2001.
> All PNP0C80 decvices in this SSDT has same _STA function.

I see. I have no experience reading these ASL files...

> So, I think why your hot add failes is _STA has no present bit.
> ==
> drivers/acpi/scan.c
>
> acpi_add_single_object()
> <snip>
> case ACPI_BUS_TYPE_DEVICE:
> result = acpi_bus_get_status(device); in drivers/acpi/bus.c
> if (ACPI_FAILURE(result) || !device->status.present) { <----(*)
> result = -ENOENT;
> goto end;
> }
> break;
> ==
>
> rewriting your DSDT would be sane approach.

I shall go to the bios writers.

Thank you very much for you help in determining the root cause of my
troubles with the hot-add event.

Keith Mannthey
LTC xSeries

-------------------------------------------------------
This SF.Net email is sponsored by the JBoss Inc. Get Certified Today
Register for a JBoss Training Course. Free Certification Exam
for All Training Attendees Through End of 2005. For more info visit: