Prev: driver core: Add ability for arch code to setup pdev_archdata
Next: [PATCH 12/13] writeback: try more writeback as long as something was written
From: Kumar Gala on 5 Aug 2010 12:20 On Aug 5, 2010, at 10:43 AM, Stephen Rothwell wrote: > Hi Kumar, > > On Thu, 5 Aug 2010 10:15:45 -0500 Kumar Gala <galak(a)kernel.crashing.org> wrote: >> >> --- a/drivers/base/platform.c >> +++ b/drivers/base/platform.c >> @@ -19,6 +19,7 @@ >> #include <linux/err.h> >> #include <linux/slab.h> >> #include <linux/pm_runtime.h> >> +#include <asm/platform_device.h> >> >> #include "base.h" >> >> @@ -170,6 +171,9 @@ struct platform_device *platform_device_alloc(const char *name, int id) >> pa->pdev.id = id; >> device_initialize(&pa->pdev.dev); >> pa->pdev.dev.release = platform_device_release; >> +#ifdef ARCH_HAS_PDEV_ARCHDATA_SETUP >> + arch_setup_pdev_archdata(&pa->pdev); >> +#endif >> } >> >> return pa ? &pa->pdev : NULL; >> diff --git a/include/asm-generic/platform_device.h b/include/asm-generic/platform_device.h >> new file mode 100644 >> index 0000000..64806dc >> --- /dev/null >> +++ b/include/asm-generic/platform_device.h >> @@ -0,0 +1,7 @@ >> +#ifndef __ASM_GENERIC_PLATFORM_DEVICE_H_ >> +#define __ASM_GENERIC_PLATFORM_DEVICE_H_ >> +/* >> + * an architecture can override to define arch_setup_pdev_archdata >> + */ >> + >> +#endif /* __ASM_GENERIC_PLATFORM_DEVICE_H_ */ > > Why not do: > > #include <linux/platform_device.h> > > #ifndef arch_setup_pdev_archdata > static inline void arch_setup_pdev_archdata(struct platform_device *pdev) { } > #endif > > in asm-generic/platform-device.h > > and the the call in platform_device_alloc() can be unconditional. If the arch wants to override arch_setup_pdev_archdata, it defines the function and then does > > #define arch_setup_pdev_archdata arch_setup_pdev_archdata > > before still including asm-generic/platform_device.h I've got no issues with the style change. - k-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |