Re: Check for ACPI backlight support otherwise use vendor ACPIdrivers - version 2

nokos
2008-08-01T08:28:30Z

Am Freitag, den 01.08.2008, 09:28 +0800 schrieb Zhang Rui:
> On Thu, 2008-07-31 at 23:32 +0800, nokos@gmx.net wrote:
> > Hi Thomas
> >
> > probably you might want to change in acpi_is_video_device:
> >
> > --- video_detect.c 2008-07-31 17:20:59.540059897 +0200
> > +++ video_detect.c 2008-07-31 17:22:15.752034851 +0200
> > @@ -93,8 +93,10 @@
> > video_caps |= ACPI_VIDEO_IGD;
> > }
> >
> > - acpi_walk_namespace(ACPI_TYPE_DEVICE, device->handle,
> > ACPI_UINT32_MAX,
> > + if (video_caps) {
> > + acpi_walk_namespace(ACPI_TYPE_DEVICE, device->handle,
> > ACPI_UINT32_MAX,
> > acpi_backlight_cap_match, &video_caps,
> > NULL);
> > + }
> >
> > return video_caps;
> > }
> No.
> For a video bus device, video_caps can never be 0 here.
>

Exactly, but acpi_is_video_device is called for every possible device in
the system, so there are a lot of subtree scans for devices which are
definitely no video devices (in my case 100 devices get scanned and
about 400 checks for backlight_cap) which produce a lot of useless logs
with debug_level=0x1f. With the if (video_caps) the namespace wlking is
restricted to devices where there is a chance of being a video device.

> > otherwise the whole ACPI namespace is scanned several times and this
> > restricts the scanning only on those subtrees where the head might be
> > a
> > video device
> >
> >
> > BTW. the DRDY detection (for IGD) works ... now I have to find the IGD
> > patches ... couldn't find them on the list and the version of
> > linux-next
> > I tried didn't contain anything which looked like it.
> You can get them here.
> http://cgit.freedesktop.org/mesa/drm/diff/?id=dfd441cf964f20e4a761cb8490d7cd82cf32e7b9

thanks
Peter

> don't know if this is the latest version, cc Matthew and Jessie.
>
> thanks,
> rui
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html