On Thu, Nov 22, 2012 at 09:45:23AM +0800, Ming Lei wrote: > No, it is not related closely, CONFIG_FIRMWARE_IN_KERNEL means > that all in-kernel-tree firmware blobs should be included in kernel binary, > but CONFIG_EXTRA_FIRMARE means that one additional firmware > image will be put into kernel binary.
Okay.
> Considered that there is no your problem in -linus tree or -next tree
> and the current code works for long time, maybe it is better to not
> touch the code. Or suggest you to study this kind of config options
> and firmware/Makefie first, then figure out one proper patch.
Given what you've told me (i.e. support for loading "builtin" firmware is
always required), I propose this patch instead:
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index 8945f4e..d291e15 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -38,8 +38,6 @@ MODULE_LICENSE("GPL");
/* Builtin firmware support */
-#ifdef CONFIG_FW_LOADER
-
extern struct builtin_fw __start_builtin_fw[];
extern struct builtin_fw __end_builtin_fw[];
@@ -69,19 +67,6 @@ static bool fw_is_builtin_firmware(const struct firmware *fw)
return false;
}
-#else /* Module case - no builtin firmware support */
-
-static inline bool fw_get_builtin_firmware(struct firmware *fw, const char
*name)
-{
- return false;
-}
-
-static inline bool fw_is_builtin_firmware(const struct firmware *fw)
-{
- return false;
-}
-#endif
-
enum {
FW_STATUS_LOADING,
FW_STATUS_DONE,
The empty stub functions can never be compiled, as firmware_class.c
isn't compiled when CONFIG_FW_LOADER isn't enabled. So let's just nuke
this unused code entirely.
- Solomon
--
Solomon Peachy pizza at shaftnet dot org
Melbourne, FL ^^ (mail/jabber/gtalk) ^^
Quidquid latine dictum sit, altum viditur.
pgpTEJb4cbzBm.pgp
Description: PGP signature

