public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
* [2.6.25 patch] acpi_drivers.h: fix dock dummy functions
       [not found] <47DEC970.2050402@m3y3r.de>
@ 2008-03-17 20:30 ` Adrian Bunk
       [not found] ` <20080317194809.GB9550@cs181133002.pp.htv.fi>
  1 sibling, 0 replies; 4+ messages in thread
From: Adrian Bunk @ 2008-03-17 20:30 UTC (permalink / raw)
  To: Thomas Meyer, lenb; +Cc: Linux Kernel Mailing List, htejun, jeff, linux-acpi

Built-in code can't use functions in a modular ACPI dock driver.

This patch fixes the following build error reported by Thomas Meyer:

<--  snip  -->

...
 LD      .tmp_vmlinux1
drivers/built-in.o: In function `ata_acpi_associate':
(.text+0x7106a): undefined reference to `register_hotplug_dock_device'
drivers/built-in.o: In function `ata_acpi_associate':
(.text+0x710bd): undefined reference to `register_hotplug_dock_device'
make: *** [.tmp_vmlinux1] Fehler 1

<--  snip  -->

Signed-off-by: Adrian Bunk <adrian.bunk@movial.fi>

---
74baa78e04fe0f1aa04d3f09ab63a15da4d92fbd diff --git a/include/acpi/acpi_drivers.h b/include/acpi/acpi_drivers.h
index 9757a04..f70b246 100644
--- a/include/acpi/acpi_drivers.h
+++ b/include/acpi/acpi_drivers.h
@@ -113,7 +113,7 @@ int acpi_processor_set_thermal_limit(acpi_handle handle, int type);
 /*--------------------------------------------------------------------------
                                   Dock Station
   -------------------------------------------------------------------------- */
-#if defined(CONFIG_ACPI_DOCK) || defined(CONFIG_ACPI_DOCK_MODULE)
+#if defined(CONFIG_ACPI_DOCK) || (defined(CONFIG_ACPI_DOCK_MODULE) && defined (MODULE))
 extern int is_dock_device(acpi_handle handle);
 extern int register_dock_notifier(struct notifier_block *nb);
 extern void unregister_dock_notifier(struct notifier_block *nb);


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: In function `ata_acpi_associate': undefined reference to `register_hotplug_dock_device'
       [not found]   ` <47DECD54.5060202@m3y3r.de>
@ 2008-03-18  3:57     ` Len Brown
  2008-03-18  4:11       ` [PATCH] " Len Brown
  0 siblings, 1 reply; 4+ messages in thread
From: Len Brown @ 2008-03-18  3:57 UTC (permalink / raw)
  To: Thomas Meyer, Kristen Carlson Accardi, linux-acpi
  Cc: Adrian Bunk, Linux Kernel Mailing List, htejun, jeff

> drivers/built-in.o: In function `ata_acpi_associate':
> (.text+0x7106a): undefined reference to `register_hotplug_dock_device'

CONFIG_ACPI_DOCK=m
CONFIG_ATA_ACPI=y

don't work together.

particularly this:

drivers/ata/libata-acpi.c
...
#if defined(CONFIG_ACPI_DOCK) || defined(CONFIG_ACPI_DOCK_MODULE)
                        /* we might be on a docking station */
                        register_hotplug_dock_device(ap->acpi_handle,
                                                     ata_acpi_ap_notify, ap);
#endif

does not link with an EXPORT_SYMBOL_GPL in dock.c when that is a module.

you can change them both to be =y (or either to be =n) to work around it.
however, this is a 2.6.25 regression, since 2.6.24 could make ATA=y
and make dock=m

-Len

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH] Re: In function `ata_acpi_associate': undefined reference to `register_hotplug_dock_device'
  2008-03-18  3:57     ` In function `ata_acpi_associate': undefined reference to `register_hotplug_dock_device' Len Brown
@ 2008-03-18  4:11       ` Len Brown
  2008-03-18  6:16         ` Tejun Heo
  0 siblings, 1 reply; 4+ messages in thread
From: Len Brown @ 2008-03-18  4:11 UTC (permalink / raw)
  To: Thomas Meyer
  Cc: Kristen Carlson Accardi, linux-acpi, Adrian Bunk,
	Linux Kernel Mailing List, htejun, jeff

Subject: fix ATA_ACPI build
From: Len Brown <len.brown@intel.com>

drivers/ata/libata-acpi.c fails to build

drivers/built-in.o: In function `ata_acpi_associate':
(.text+0x7106a): undefined reference to `register_hotplug_dock_device'

When CONFIG_ATA_ACPI=y and CONFIG_ACPI_DOCK=m
But if dock is selected from ata_acpi, dock will =y
when ata_acpi=y, avoiding this problem.

Signed-off-by: Len Brown <len.brown@intel.com>

diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
index e469647..25aba69 100644
--- a/drivers/ata/Kconfig
+++ b/drivers/ata/Kconfig
@@ -30,6 +30,7 @@ config ATA_NONSTANDARD
 config ATA_ACPI
 	bool
 	depends on ACPI && PCI
+	select ACPI_DOCK
 	default y
 	help
 	  This option adds support for ATA-related ACPI objects.

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] Re: In function `ata_acpi_associate': undefined reference to `register_hotplug_dock_device'
  2008-03-18  4:11       ` [PATCH] " Len Brown
@ 2008-03-18  6:16         ` Tejun Heo
  0 siblings, 0 replies; 4+ messages in thread
From: Tejun Heo @ 2008-03-18  6:16 UTC (permalink / raw)
  To: Len Brown
  Cc: Thomas Meyer, Kristen Carlson Accardi, linux-acpi, Adrian Bunk,
	Linux Kernel Mailing List, jeff

Len Brown wrote:
> Subject: fix ATA_ACPI build
> From: Len Brown <len.brown@intel.com>
> 
> drivers/ata/libata-acpi.c fails to build
> 
> drivers/built-in.o: In function `ata_acpi_associate':
> (.text+0x7106a): undefined reference to `register_hotplug_dock_device'
> 
> When CONFIG_ATA_ACPI=y and CONFIG_ACPI_DOCK=m
> But if dock is selected from ata_acpi, dock will =y
> when ata_acpi=y, avoiding this problem.
> 
> Signed-off-by: Len Brown <len.brown@intel.com>

Acked-by: Tejun Heo <htejun@gmail.com>

I think this one will be more straight forward for users.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-03-18  6:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <47DEC970.2050402@m3y3r.de>
2008-03-17 20:30 ` [2.6.25 patch] acpi_drivers.h: fix dock dummy functions Adrian Bunk
     [not found] ` <20080317194809.GB9550@cs181133002.pp.htv.fi>
     [not found]   ` <47DECD54.5060202@m3y3r.de>
2008-03-18  3:57     ` In function `ata_acpi_associate': undefined reference to `register_hotplug_dock_device' Len Brown
2008-03-18  4:11       ` [PATCH] " Len Brown
2008-03-18  6:16         ` Tejun Heo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox