From: Jarkko Nikula <jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
To: "Rafael J. Wysocki" <rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org>
Cc: Mark Brown <broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Wolfram Sang <wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org>,
linux-spi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org,
linux-acpi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [RFC 1/2] i2c: Use stable dev_name for ACPI enumerated I2C slaves
Date: Mon, 28 Oct 2013 15:15:25 +0200 [thread overview]
Message-ID: <526E636D.3070005@linux.intel.com> (raw)
In-Reply-To: <2889412.bEKBLJtgSW-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
Hi Rafael
On 10/25/2013 05:08 PM, Rafael J. Wysocki wrote:
> On Friday, October 25, 2013 04:30:23 PM Jarkko Nikula wrote:
>>>
>> Hmm, not only. Referencing to dev field in struct acpi_device by
>> dev_name(&adev->dev) here will fail too.
>
> Well, something is not quite right here.
>
> One of the *reasons* for having ACPI_HANDLE() defined this way is to
> avoid using explicit CONFIG_ACPI checks, so if that doesn't work,
> then all of that becomes a bit pointless.
>
One possible thing to do is to let structure definitions to be available
for non-ACPI builds. Then compiler won't fail on structure access which
will be anyway optimized away by later compiler stages.
With a quick test below vmlinux section sizes don't change for couple
non-ACPI build tests and allow to get rid off IS_ENABLED(CONFIG_ACPI)
test in this patch. It's very minimal as it only moves the CONFIG_ACPI
test just after the struct acpi_device definition and defines
acpi_bus_get_device for non-ACPI case.
What I don't know how consistent it is as there are still couple
structure definitions under CONFIG_ACPI, doesn't touch other acpi
headers and requires to include acpi_bus.h in driver (or move acpi_bus.h
include in linux/acpi.h currently under CONFIG_ACPI).
--
Jarkko
diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
index d901982..7ab7870 100644
--- a/include/acpi/acpi_bus.h
+++ b/include/acpi/acpi_bus.h
@@ -66,8 +66,6 @@ bool acpi_ata_match(acpi_handle handle);
bool acpi_bay_match(acpi_handle handle);
bool acpi_dock_match(acpi_handle handle);
-#ifdef CONFIG_ACPI
-
#include <linux/proc_fs.h>
#define ACPI_BUS_FILE_ROOT "acpi"
@@ -314,6 +312,8 @@ struct acpi_device {
void (*remove)(struct acpi_device *);
};
+#if IS_ENABLED(CONFIG_ACPI)
+
static inline void *acpi_driver_data(struct acpi_device *d)
{
return d->driver_data;
@@ -531,6 +531,8 @@ static inline bool acpi_device_can_poweroff(struct
acpi_device *adev)
static inline int register_acpi_bus_type(void *bus) { return 0; }
static inline int unregister_acpi_bus_type(void *bus) { return 0; }
+static inline int acpi_bus_get_device(acpi_handle handle,
+ struct acpi_device **device) { return 0; }
#endif /* CONFIG_ACPI */
next prev parent reply other threads:[~2013-10-28 13:15 UTC|newest]
Thread overview: 42+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-25 12:18 [RFC 0/2] I2C and SPI dev_name change for ACPI enumerated slaves Jarkko Nikula
[not found] ` <1382703540-3769-1-git-send-email-jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-10-25 12:18 ` [RFC 1/2] i2c: Use stable dev_name for ACPI enumerated I2C slaves Jarkko Nikula
2013-10-25 12:52 ` Rafael J. Wysocki
[not found] ` <6032482.JJ4PNSSnIp-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2013-10-25 12:55 ` Jarkko Nikula
[not found] ` <526A6A41.6020909-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-10-25 13:18 ` Rafael J. Wysocki
2013-10-25 13:30 ` Jarkko Nikula
[not found] ` <526A726F.1030407-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-10-25 14:08 ` Rafael J. Wysocki
[not found] ` <2889412.bEKBLJtgSW-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2013-10-28 13:15 ` Jarkko Nikula [this message]
2013-10-28 16:10 ` Mark Brown
[not found] ` <526E636D.3070005-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-11-01 0:08 ` Rafael J. Wysocki
[not found] ` <1433914.mn8USodCgb-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2013-11-01 0:26 ` Rafael J. Wysocki
2013-10-25 12:19 ` [RFC 2/2] spi: Use stable dev_name for ACPI enumerated SPI slaves Jarkko Nikula
2013-10-25 12:59 ` Mark Brown
2013-10-25 14:09 ` Rafael J. Wysocki
2013-11-01 12:35 ` [PATCHv2 0/3] I2C and SPI dev_name change for ACPI enumerated slaves Jarkko Nikula
2013-11-01 12:35 ` [PATCHv2 2/3] i2c: Use stable dev_name for ACPI enumerated I2C slaves Jarkko Nikula
[not found] ` <1383309356-25430-3-git-send-email-jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-11-02 0:15 ` Wolfram Sang
[not found] ` <1383309356-25430-1-git-send-email-jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-11-01 12:35 ` [PATCHv2 1/3] ACPI: Expose struct acpi_device and acpi_bus_get_device() to non-ACPI builds Jarkko Nikula
2013-11-02 22:18 ` Rafael J. Wysocki
[not found] ` <3858838.4tAO673dDi-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2013-11-04 1:00 ` Rafael J. Wysocki
2013-11-04 21:15 ` Jarkko Nikula
2013-11-07 13:34 ` Rafael J. Wysocki
2013-11-01 12:35 ` [PATCHv2 3/3] spi: Use stable dev_name for ACPI enumerated SPI slaves Jarkko Nikula
[not found] ` <1383309356-25430-4-git-send-email-jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-11-01 18:03 ` Mark Brown
2013-11-01 13:18 ` [PATCHv2 0/3] I2C and SPI dev_name change for ACPI enumerated slaves Rafael J. Wysocki
[not found] ` <1601125.4tFOPicoTX-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2013-11-01 13:20 ` Wolfram Sang
2013-11-01 13:44 ` Jarkko Nikula
2013-11-01 22:58 ` Rafael J. Wysocki
[not found] ` <3989164.GAoLSa6qzM-sKB8Sp2ER+y1GS7QM15AGw@public.gmane.org>
2013-11-02 0:13 ` Wolfram Sang
2013-11-14 9:00 ` [PATCHv3 " Jarkko Nikula
[not found] ` <1384419661-28293-1-git-send-email-jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-11-14 9:00 ` [PATCHv3 1/3] ACPI: Provide struct acpi_device stub for !CONFIG_ACPI builds Jarkko Nikula
2013-11-14 10:03 ` [alsa-devel] " Takashi Iwai
2013-11-14 11:14 ` Jarkko Nikula
2013-11-14 9:01 ` [PATCHv3 2/3] i2c: Use stable dev_name for ACPI enumerated I2C slaves Jarkko Nikula
2013-11-14 9:01 ` [PATCHv3 3/3] spi: Use stable dev_name for ACPI enumerated SPI slaves Jarkko Nikula
[not found] ` <1384419661-28293-4-git-send-email-jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-11-14 10:10 ` Mark Brown
2013-11-14 12:03 ` [PATCHv4 0/3] I2C and SPI dev_name change for ACPI enumerated slaves Jarkko Nikula
[not found] ` <1384430633-23426-1-git-send-email-jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-11-14 12:03 ` [PATCHv4 1/3] ACPI: Provide acpi_dev_name accessor for struct acpi_device device name Jarkko Nikula
2013-11-14 12:03 ` [PATCHv4 2/3] i2c: Use stable dev_name for ACPI enumerated I2C slaves Jarkko Nikula
[not found] ` <1384430633-23426-3-git-send-email-jarkko.nikula-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2013-11-14 17:22 ` Wolfram Sang
2013-11-14 12:03 ` [PATCHv4 3/3] spi: Use stable dev_name for ACPI enumerated SPI slaves Jarkko Nikula
2013-11-16 1:30 ` [PATCHv4 0/3] I2C and SPI dev_name change for ACPI enumerated slaves Rafael J. Wysocki
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=526E636D.3070005@linux.intel.com \
--to=jarkko.nikula-vuqaysv1563yd54fqh9/ca@public.gmane.org \
--cc=alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org \
--cc=broonie-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=linux-acpi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-spi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=rjw-LthD3rsA81gm4RdzfppkhA@public.gmane.org \
--cc=wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.