* Compilation: omap-for-linus omap2plus error @ 2010-09-30 3:54 Abraham Arce 2010-09-30 4:16 ` Abraham Arce 2010-09-30 14:10 ` Ming Lei 0 siblings, 2 replies; 6+ messages in thread From: Abraham Arce @ 2010-09-30 3:54 UTC (permalink / raw) To: linux-omap Hi, Is there any patch missing in omap-for-linus branch? CC arch/arm/mach-omap2/pm_bus.o arch/arm/mach-omap2/pm_bus.c: In function 'omap_pm_runtime_init': arch/arm/mach-omap2/pm_bus.c:64: error: implicit declaration of function 'platform_bus_get_pm_ops' arch/arm/mach-omap2/pm_bus.c:64: warning: assignment makes pointer from integer without a cast arch/arm/mach-omap2/pm_bus.c:81: error: implicit declaration of function 'platform_bus_set_pm_ops' make[1]: *** [arch/arm/mach-omap2/pm_bus.o] Error 1 make: *** [arch/arm/mach-omap2] Error 2 Best Regards Abraham ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Compilation: omap-for-linus omap2plus error 2010-09-30 3:54 Compilation: omap-for-linus omap2plus error Abraham Arce @ 2010-09-30 4:16 ` Abraham Arce 2010-09-30 7:55 ` Shilimkar, Santosh 2010-09-30 14:10 ` Ming Lei 1 sibling, 1 reply; 6+ messages in thread From: Abraham Arce @ 2010-09-30 4:16 UTC (permalink / raw) To: Abraham Arce; +Cc: linux-omap Adding more info to previous email, email account changed On Wed, Sep 29, 2010 at 10:54 PM, Abraham Arce <x0066660@ti.com> wrote: > Hi, > > Is there any patch missing in omap-for-linus branch? > > CC arch/arm/mach-omap2/pm_bus.o > arch/arm/mach-omap2/pm_bus.c: In function 'omap_pm_runtime_init': > arch/arm/mach-omap2/pm_bus.c:64: error: implicit declaration of function > 'platform_bus_get_pm_ops' > arch/arm/mach-omap2/pm_bus.c:64: warning: assignment makes pointer from > integer without a cast > arch/arm/mach-omap2/pm_bus.c:81: error: implicit declaration of function > 'platform_bus_set_pm_ops' > make[1]: *** [arch/arm/mach-omap2/pm_bus.o] Error 1 > make: *** [arch/arm/mach-omap2] Error 2 > I am trying using following commit as latest Kevin Hilman 7ad0e386d46e9edff64705ab25337ad9130baf63 OMAP2+: defconfig: disable CPUfreq Best Regards Abraham -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: Compilation: omap-for-linus omap2plus error 2010-09-30 4:16 ` Abraham Arce @ 2010-09-30 7:55 ` Shilimkar, Santosh 2010-09-30 8:55 ` Abraham Arce 2010-09-30 14:18 ` Kevin Hilman 0 siblings, 2 replies; 6+ messages in thread From: Shilimkar, Santosh @ 2010-09-30 7:55 UTC (permalink / raw) To: Abraham Arce, Arce, Abraham; +Cc: linux-omap@vger.kernel.org [-- Attachment #1: Type: text/plain, Size: 1319 bytes --] > -----Original Message----- > From: linux-omap-owner@vger.kernel.org [mailto:linux-omap- > owner@vger.kernel.org] On Behalf Of Abraham Arce > Sent: Thursday, September 30, 2010 9:47 AM > To: Arce, Abraham > Cc: linux-omap@vger.kernel.org > Subject: Re: Compilation: omap-for-linus omap2plus error > > Adding more info to previous email, email account changed > > On Wed, Sep 29, 2010 at 10:54 PM, Abraham Arce <x0066660@ti.com> wrote: > > Hi, > > > > Is there any patch missing in omap-for-linus branch? > > > > CC arch/arm/mach-omap2/pm_bus.o > > arch/arm/mach-omap2/pm_bus.c: In function 'omap_pm_runtime_init': > > arch/arm/mach-omap2/pm_bus.c:64: error: implicit declaration of function > > 'platform_bus_get_pm_ops' > > arch/arm/mach-omap2/pm_bus.c:64: warning: assignment makes pointer from > > integer without a cast > > arch/arm/mach-omap2/pm_bus.c:81: error: implicit declaration of function > > 'platform_bus_set_pm_ops' > > make[1]: *** [arch/arm/mach-omap2/pm_bus.o] Error 1 > > make: *** [arch/arm/mach-omap2] Error 2 > > > > I am trying using following commit as latest > > Kevin Hilman > 7ad0e386d46e9edff64705ab25337ad9130baf63 > OMAP2+: defconfig: disable CPUfreq > Looks like Kevin's platform.c patch is missing in omap-for-linus branch. Patch attached. [-- Attachment #2: 0001-driver-core-platform_bus-allow-runtime-override-of.patch --] [-- Type: application/octet-stream, Size: 3577 bytes --] From f8093c5b5f5cc63efd86dd34157e271526f049d6 Mon Sep 17 00:00:00 2001 From: Kevin Hilman <khilman@ti.com> Date: Wed, 29 Sep 2010 11:05:56 -0700 Subject: [PATCH] driver core: platform_bus: allow runtime override of dev_pm_ops Currently, the platform_bus allows customization of several of the busses dev_pm_ops methods by using weak symbols so that platform code can override them. The weak-symbol approach is not scalable when wanting to support multiple platforms in a single kernel binary. Instead, provide __init methods for platform code to customize the dev_pm_ops methods at runtime. NOTE: after these dynamic methods are merged, the weak symbols should be removed from drivers/base/platform.c. AFAIK, this will only affect SH and sh-mobile which should be converted to use this runtime approach instead of the weak symbols. After SH & sh-mobile are converted, the weak symobols could be removed. Tested on OMAP3. Cc: Magnus Damm <magnus.damm@gmail.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> --- drivers/base/platform.c | 35 +++++++++++++++++++++++++++++++++++ include/linux/platform_device.h | 3 +++ 2 files changed, 38 insertions(+), 0 deletions(-) diff --git a/drivers/base/platform.c b/drivers/base/platform.c index c6c933f..468bbfd 100644 --- a/drivers/base/platform.c +++ b/drivers/base/platform.c @@ -976,6 +976,41 @@ struct bus_type platform_bus_type = { }; EXPORT_SYMBOL_GPL(platform_bus_type); +/** + * platform_bus_get_pm_ops() - return pointer to busses dev_pm_ops + * + * This function can be used by platform code to get the current + * set of dev_pm_ops functions used by the platform_bus_type. + */ +const struct dev_pm_ops * __init platform_bus_get_pm_ops(void) +{ + return platform_bus_type.pm; +} + +/** + * platform_bus_set_pm_ops() - update dev_pm_ops for the platform_bus_type + * + * @pm: pointer to new dev_pm_ops struct to be used for platform_bus_type + * + * Platform code can override the dev_pm_ops methods of + * platform_bus_type by using this function. It is expected that + * platform code will first do a platform_bus_get_pm_ops(), then + * kmemdup it, then customize selected methods and pass a pointer to + * the new struct dev_pm_ops to this function. + * + * Since platform-specific code is customizing methods for *all* + * devices (not just platform-specific devices) it is expected that + * any custom overrides of these functions will keep existing behavior + * and simply extend it. For example, any customization of the + * runtime PM methods should continue to call the pm_generic_* + * functions as the default ones do in addition to the + * platform-specific behavior. + */ +void __init platform_bus_set_pm_ops(const struct dev_pm_ops *pm) +{ + platform_bus_type.pm = pm; +} + int __init platform_bus_init(void) { int error; diff --git a/include/linux/platform_device.h b/include/linux/platform_device.h index d7ecad0..2e700ec 100644 --- a/include/linux/platform_device.h +++ b/include/linux/platform_device.h @@ -138,6 +138,9 @@ extern struct platform_device *platform_create_bundle(struct platform_driver *dr struct resource *res, unsigned int n_res, const void *data, size_t size); +extern const struct dev_pm_ops * platform_bus_get_pm_ops(void); +extern void platform_bus_set_pm_ops(const struct dev_pm_ops *pm); + /* early platform driver interface */ struct early_platform_driver { const char *class_str; -- 1.6.0.4 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: Compilation: omap-for-linus omap2plus error 2010-09-30 7:55 ` Shilimkar, Santosh @ 2010-09-30 8:55 ` Abraham Arce 2010-09-30 14:18 ` Kevin Hilman 1 sibling, 0 replies; 6+ messages in thread From: Abraham Arce @ 2010-09-30 8:55 UTC (permalink / raw) To: Shilimkar, Santosh; +Cc: Arce, Abraham, linux-omap@vger.kernel.org Thanks Santosh, On Thu, Sep 30, 2010 at 2:55 AM, Shilimkar, Santosh <santosh.shilimkar@ti.com> wrote: >> > CC arch/arm/mach-omap2/pm_bus.o >> > arch/arm/mach-omap2/pm_bus.c: In function 'omap_pm_runtime_init': >> > arch/arm/mach-omap2/pm_bus.c:64: error: implicit declaration of function >> > 'platform_bus_get_pm_ops' >> > arch/arm/mach-omap2/pm_bus.c:64: warning: assignment makes pointer from >> > integer without a cast >> > arch/arm/mach-omap2/pm_bus.c:81: error: implicit declaration of function >> > 'platform_bus_set_pm_ops' >> >> I am trying using following commit as latest >> >> Kevin Hilman >> 7ad0e386d46e9edff64705ab25337ad9130baf63 >> OMAP2+: defconfig: disable CPUfreq >> > Looks like Kevin's platform.c patch is missing > in omap-for-linus branch. Patch attached. > Compilation error fixed... no more issues Best Regards Abraham -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Compilation: omap-for-linus omap2plus error 2010-09-30 7:55 ` Shilimkar, Santosh 2010-09-30 8:55 ` Abraham Arce @ 2010-09-30 14:18 ` Kevin Hilman 1 sibling, 0 replies; 6+ messages in thread From: Kevin Hilman @ 2010-09-30 14:18 UTC (permalink / raw) To: Shilimkar, Santosh Cc: Abraham Arce, Arce, Abraham, linux-omap@vger.kernel.org "Shilimkar, Santosh" <santosh.shilimkar@ti.com> writes: >> > Is there any patch missing in omap-for-linus branch? Short version: Yes, there are several and the dependencies are taken care of in the master branch. Long version: There are several changes that are going upstream for 2.6.37 that are going through other trees (driver core, runtime PM core, i2c core, etc.) In my tree, I keep these in my pm-backports branch, and for Tony's tree, he has cherry-picked them into the omap-testing branch so they are included in l-o master until the merge window opens. So, even if you cherry pick the one patch, you may not have compile time problems but you will have other runtime problems due to other dependencies. So I strongly recommend just using l-o master. Kevin ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Compilation: omap-for-linus omap2plus error 2010-09-30 3:54 Compilation: omap-for-linus omap2plus error Abraham Arce 2010-09-30 4:16 ` Abraham Arce @ 2010-09-30 14:10 ` Ming Lei 1 sibling, 0 replies; 6+ messages in thread From: Ming Lei @ 2010-09-30 14:10 UTC (permalink / raw) To: Abraham Arce; +Cc: linux-omap 2010/9/30 Abraham Arce <x0066660@ti.com>: > Hi, > > Is there any patch missing in omap-for-linus branch? > > CC arch/arm/mach-omap2/pm_bus.o > arch/arm/mach-omap2/pm_bus.c: In function 'omap_pm_runtime_init': > arch/arm/mach-omap2/pm_bus.c:64: error: implicit declaration of function > 'platform_bus_get_pm_ops' > arch/arm/mach-omap2/pm_bus.c:64: warning: assignment makes pointer from > integer without a cast > arch/arm/mach-omap2/pm_bus.c:81: error: implicit declaration of function > 'platform_bus_set_pm_ops' > make[1]: *** [arch/arm/mach-omap2/pm_bus.o] Error 1 > make: *** [arch/arm/mach-omap2] Error 2 This issue also exists in pm-hwmods branch. -- Lei Ming -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2010-09-30 14:18 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-09-30 3:54 Compilation: omap-for-linus omap2plus error Abraham Arce 2010-09-30 4:16 ` Abraham Arce 2010-09-30 7:55 ` Shilimkar, Santosh 2010-09-30 8:55 ` Abraham Arce 2010-09-30 14:18 ` Kevin Hilman 2010-09-30 14:10 ` Ming Lei
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.