Skip to contentSkip to conversation

PNPACPI: only parse device that have CRS method

PATCH RESEND In review matthieu castet 3 participants 5 messages Sep 11, 2005 – Sep 12, 2005

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH RESEND 1/1 PNPACPI: only parse device that have CRS method

Hi,

this patch blacklist device that don't have CRS method as there are useless for pnp layer as they don't provide any resource.

Please comment and consider for inclusion.

Thanks,

Matthieu

drivers/pnp/pnpacpi/core.c +2 -1
Index: linux-2.6.13rc/drivers/pnp/pnpacpi/core.c
===================================================================
@@ -131,7 +131,8 @@
 	struct pnp_id *dev_id;
 	struct pnp_dev *dev;
 
-	if (!ispnpidacpi(acpi_device_hid(device)) ||
+	status = acpi_get_handle(device->handle, "_CRS", &temp);
+	if (ACPI_FAILURE(status) || !ispnpidacpi(acpi_device_hid(device)) ||
 		is_exclusive_device(device))
 		return 0;
 
#1 lore raw

mc> this patch blacklist device that don't have CRS method as there are mc> useless for pnp layer as they don't provide any resource.

I tried it on my laptop (Toshiba Satellite 1800-314). It removed one device from PNP bus, 00:0c, id = TOS6200, no options (as shown by 2.6.13).

I hoped it will notice something different about my SMCf010. It's onboard IRDA that is disabled by BIOS. But the device is still there with your patch and still does not work.

The background: it's disabled by BIOS. PNPBIOS could activate it (haven't tried since PNPACPI came). PNPACPI could not activate it - activate worked, resources showed resources but smsc-ircc2 got still no configuration (chip itself was not reprogrammed?). The speculation was that it's because of missing CRS in ACPI tables but this device did not disappear with your current patch.

Any ideas about getting it to work with PNPACPI - or should I just declare my ACPI BIOS broken and revert to PNPBIOS on this laptop? Do you want seome more ACPI debug info than last time?

Signature · 1 line
Meelis Roos
#2 lore raw

Hi Meelis

Quoted 10 lines · Meelis Roos

mc> this patch blacklist device that don't have CRS method as there are mc> useless for pnp layer as they don't provide any resource.

I tried it on my laptop (Toshiba Satellite 1800-314). It removed one device from PNP bus, 00:0c, id = TOS6200, no options (as shown by 2.6.13).

I hoped it will notice something different about my SMCf010. It's onboard IRDA that is disabled by BIOS. But the device is still there with your patch and still does not work.

Quoted 8 lines

The background: it's disabled by BIOS. PNPBIOS could activate it (haven't tried since PNPACPI came). PNPACPI could not activate it - activate worked, resources showed resources but smsc-ircc2 got still no configuration (chip itself was not reprogrammed?). The speculation was that it's because of missing CRS in ACPI tables but this device did not disappear with your current patch.

Any ideas about getting it to work with PNPACPI - or should I just

You could try
http://marc.theaimsgroup.com/?l=linux-kernel&m=111827568001255&w=2 if you haven't yet tried it ?

Quoted 3 lines

declare my ACPI BIOS broken and revert to PNPBIOS on this laptop? Do you want seome more ACPI debug info than last time?

You could always use pnpacpi=no (or something like that) to disable pnpacpi and use pnpbios (IIRC this one worked).

cheers,

Matthieu

#3 lore raw
Quoted 2 lines

You could try
http://marc.theaimsgroup.com/?l=linux-kernel&m=111827568001255&w=2 if you haven't yet tried it ?

No, tried it now. Had to hand-apply 2 chunks because of kmalloc changes but it was trivial and probably correct. It seems to find nothing bad:
pnp: building resource template
pnp: encoding resources
pnp: irq flags are correct
pnp: setting resources
pnp: _SRS worked correctly
pnp: Device 00:0a activated.

Signature · 1 line
Meelis Roos ([email protected])
#4 lore raw
In reply to matthieu castet
Quoted 4 lines · matthieu castet

this patch blacklist device that don't have CRS method as there are useless for pnp layer as they don't provide any resource.

Please comment and consider for inclusion.

Looks reasonable to me.