Hi Michael,
Michael Tokarev wrote:
[email protected] wrote:
Hi,
try pnpacpi=off in your kernel options and it should work.
An other solution is to comment pnpacpi_disable_resources in
drivers/pnp/pnpacpi/core.c in order to avoid that the resource are
disable.
Both ways solves this problem for me. Now I can insmod/rmmod
parport_pc as many times as I want:
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378, irq 7 [PCSPP]
pnp: Device 00:0b disabled.
pnp: Device 00:0b activated.
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378, irq 7 [PCSPP]
pnp: Device 00:0b disabled.
pnp: Device 00:0b activated.
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378, irq 7 [PCSPP]
....
BTW, how "stable" pnpacpi=off is? I mean, is it supposed to
work on more hardware than current default acpi-aware method?
pnpacpi=off use the old PNP bios if it is enabled. It seem to work most
of hardware that support it
(some recent acpi-only computer don't).
There could also have conflict if you use acpi and PNPBios together.
There was a problem in pnp layer implementation : the resource weren't
given in the right order, Adam Belay send me a patch, but I don't know
if it got in main-line ?
Which patch was that? I can try it here, but can't seem to be able
to find it...
http://bugme.osdl.org/attachment.cgi?id=4504&action=view plus the
attached ones.
May be there also a bug in pnpacpi_encode_resources (with the pnp patch
apply I didn't still work on some hardware...)
You can try to send your dsdt, but I am quit busy for the moment.
May be some Intel guy could look at the problem...
The DSDTs are at http://www.corpit.ru/mjt/hpml150.dsdt
and http://www.corpit.ru/mjt/hpml310.dsdt (that's a
(binary) copy from /proc/acpi/dsdt -- is there a way
to decode it into some text form?)
there is a dissasembler call iasl on intel site.
Matthieu
Index: drivers/pnp/resource.c
===================================================================
RCS file: /home/mat/dev/linux-cvs-rep/linux-cvs/drivers/pnp/resource.c,v
retrieving revision 1.21
diff -u -r1.21 resource.c
--- drivers/pnp/resource.c 10 Nov 2004 01:11:02 -0000 1.21
+++ drivers/pnp/resource.c 5 Feb 2005 22:29:34 -0000
@@ -42,7 +42,7 @@
option->priority = priority & 0xff;
/* make sure the priority is valid */
- if (option->priority > PNP_RES_PRIORITY_FUNCTIONAL)
+ if (option->priority > PNP_RES_PRIORITY_INDEPENDENT)
option->priority = PNP_RES_PRIORITY_INVALID;
return option;
Index: drivers/pnp/pnpacpi/rsparser.c
===================================================================
RCS file: /home/mat/dev/linux-cvs-rep/linux-cvs/drivers/pnp/pnpacpi/rsparser.c,v
retrieving revision 1.2
diff -u -r1.2 rsparser.c
--- drivers/pnp/pnpacpi/rsparser.c 10 Nov 2004 01:11:02 -0000 1.2
+++ drivers/pnp/pnpacpi/rsparser.c 5 Feb 2005 22:01:14 -0000
@@ -506,7 +506,11 @@
parse_data->option = option;
break;
case ACPI_RSTYPE_END_DPF:
- return AE_CTRL_TERMINATE;
+ option = pnp_register_independent_option(dev);
+ if (!option)
+ return AE_ERROR;
+ parse_data->option = option;
+ break;
default:
pnp_warn("PnPACPI:Option type: %d not handle", res->id);
return AE_ERROR;
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]