From: Ankitprasad Sharma <ankitprasad.r.sharma@intel.com>
To: Lukas Wunner <lukas@wunner.de>, "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: intel-gfx@lists.freedesktop.org, akash.goel@intel.com,
shashidhar.hiremath@intel.com, tvrtko.ursulin@linux.intel.com,
Len Brown <lenb@kernel.org>,
linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 10/11] acpi: Export acpi_bus_type
Date: Tue, 19 Jan 2016 13:45:25 +0530 [thread overview]
Message-ID: <1453191325.10582.33.camel@ankitprasad-desktop> (raw)
In-Reply-To: <20160118182601.GA9063@wunner.de>
On Mon, 2016-01-18 at 19:26 +0100, Lukas Wunner wrote:
Hi,
> Hi,
>
> On Mon, Jan 18, 2016 at 03:57:29PM +0100, Rafael J. Wysocki wrote:
> > On Monday, January 18, 2016 02:31:00 PM Ankitprasad Sharma wrote:
> > > On Fri, 2016-01-15 at 15:51 +0100, Rafael J. Wysocki wrote:
> > > > On Thursday, January 14, 2016 11:46:46 AM ankitprasad.r.sharma@intel.com wrote:
> > > > > From: Ankitprasad Sharma <ankitprasad.r.sharma@intel.com>
> > > > >
> > > > > Some modules, like i915.ko, needs to detect when certain ACPI features
> > > > > are active inorder to prevent corruption on contended resources.
> > > > > In particular, use of BIOS RapidStart Technology may corrupt the contents
> > > > > of the reserved graphics memory, due to unalarmed hibernation. In which
> > > > > case i915.ko cannot assume that it (reserved gfx memory) remains
> > > > > unmodified and must recreate teh contents and importantly not use it to
> > > > > store unrecoverable user data.
> > > > >
> > > > > Signed-off-by: Ankitprasad Sharma <ankitprasad.r.sharma@intel.com>
> > > > > Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
> > > > > Cc: Len Brown <lenb@kernel.org>
> > > > > Cc: linux-acpi@vger.kernel.org
> > > > > Cc: linux-kernel@vger.kernel.org
> > > > > ---
> > > > > drivers/acpi/bus.c | 1 +
> > > > > 1 file changed, 1 insertion(+)
> > > > >
> > > > > diff --git a/drivers/acpi/bus.c b/drivers/acpi/bus.c
> > > > > index a212cef..69509c7 100644
> > > > > --- a/drivers/acpi/bus.c
> > > > > +++ b/drivers/acpi/bus.c
> > > > > @@ -814,6 +814,7 @@ struct bus_type acpi_bus_type = {
> > > > > .remove = acpi_device_remove,
> > > > > .uevent = acpi_device_uevent,
> > > > > };
> > > > > +EXPORT_SYMBOL_GPL(acpi_bus_type);
> > > > >
> > > > > /* --------------------------------------------------------------------------
> > > > > Initialization/Cleanup
> > > > >
> > > >
> > > > No.
> > > >
> > > > I see no reason whatsoever for doing this.
> > > >
> > > > Thanks,
> > > > Rafael
> > > Hi Rafael,
> > >
> > > Thanks for the response.
> > >
> > > Can you please help me with, how to detect the presence of a certain
> > > acpi device using its id (for example, INT3392 for Intel RST device)?
> >
> > If you want to check if the device ir present at all, you cen use
> > acpi_device_is_present() introduced recently (although that would need
> > to be exported if you want to use it from a driver).
>
> acpi_dev_present() is exported, so can be used in drivers just fine:
> https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=2d12b6b381ba059d5f92798f5ea739672a2f5fcf
>
>
> > > As you might have seen (in the next patch in this series), that we use
> > > this symbol (acpi_bus_type) to iterate over all the devices registered
> > > on acpi bus, to check if there is a device with id INT3392 present or
> > > not.
>
> Ankitprasad, just change your patch [11/11] thusly:
>
> - if (intel_detect_acpi_rst()) {
> + if (acpi_dev_present("INT3392")) {
>
>
> Using bus_for_each_dev() was the wrong approach, most drivers call
> acpi_get_devices() to detect the presence of a particular HID,
> however that necessitates the definition of a callback in each driver,
> leading to lots of duplicate code. Hence the introduction of
> acpi_dev_present() which is also faster because it just iterates over
> a list instead of walking the namespace.
>
> This new API landed in Linus' tree last Tuesday (PST), so you need
> to merge Linus' tree back into yours or wait until it gets merged
> into drm-intel-nightly.
>
> Best regards,
>
> Lukas
Thank you, Lukas/Rafael.
-Ankit
next prev parent reply other threads:[~2016-01-19 8:36 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1452752207-30382-1-git-send-email-ankitprasad.r.sharma@intel.com>
2016-01-14 6:16 ` [PATCH 10/11] acpi: Export acpi_bus_type ankitprasad.r.sharma
2016-01-15 14:51 ` Rafael J. Wysocki
2016-01-18 9:01 ` Ankitprasad Sharma
2016-01-18 14:57 ` Rafael J. Wysocki
2016-01-18 18:26 ` Lukas Wunner
2016-01-19 8:15 ` Ankitprasad Sharma [this message]
2016-01-18 22:28 ` Rafael J. Wysocki
2016-01-18 22:39 ` Lukas Wunner
2016-01-18 22:46 ` Rafael J. Wysocki
2016-01-18 23:00 ` Lukas Wunner
2016-01-18 23:59 ` Rafael J. Wysocki
2016-01-19 16:31 ` Lukas Wunner
2016-01-19 22:03 ` Rafael J. Wysocki
2016-01-14 6:16 ` [PATCH 11/11] drm/i915: Disable use of stolen area by User when Intel RST is present ankitprasad.r.sharma
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=1453191325.10582.33.camel@ankitprasad-desktop \
--to=ankitprasad.r.sharma@intel.com \
--cc=akash.goel@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=lenb@kernel.org \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=rjw@rjwysocki.net \
--cc=shashidhar.hiremath@intel.com \
--cc=tvrtko.ursulin@linux.intel.com \
/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