Re: [PATCH] xc5000: Add MODULE_FIRMWARE statements

From: Tim Gardner
Date: Wed Jul 25 2012 - 09:45:34 EST


On 07/25/2012 07:24 AM, Devin Heitmueller wrote:
> On Wed, Jul 25, 2012 at 9:15 AM, Tim Gardner <tim.gardner@xxxxxxxxxxxxx> wrote:
>> This will make modinfo more useful with regard
>> to discovering necessary firmware files.
>>
>> Cc: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxx>
>> Cc: Michael Krufky <mkrufky@xxxxxxxxxxxxxx>
>> Cc: Eddi De Pieri <eddi@xxxxxxxxxxx>
>> Cc: linux-media@xxxxxxxxxxxxxxx
>> Signed-off-by: Tim Gardner <tim.gardner@xxxxxxxxxxxxx>
>> ---
>> drivers/media/common/tuners/xc5000.c | 8 ++++++--
>> 1 file changed, 6 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/media/common/tuners/xc5000.c b/drivers/media/common/tuners/xc5000.c
>> index dcca42c..4d33f86 100644
>> --- a/drivers/media/common/tuners/xc5000.c
>> +++ b/drivers/media/common/tuners/xc5000.c
>> @@ -210,13 +210,15 @@ struct xc5000_fw_cfg {
>> u16 size;
>> };
>>
>> +#define XC5000A_FIRMWARE "dvb-fe-xc5000-1.6.114.fw"
>> static const struct xc5000_fw_cfg xc5000a_1_6_114 = {
>> - .name = "dvb-fe-xc5000-1.6.114.fw",
>> + .name = XC5000A_FIRMWARE,
>> .size = 12401,
>> };
>>
>> +#define XC5000C_FIRMWARE "dvb-fe-xc5000c-41.024.5.fw"
>> static const struct xc5000_fw_cfg xc5000c_41_024_5 = {
>> - .name = "dvb-fe-xc5000c-41.024.5.fw",
>> + .name = XC5000C_FIRMWARE,
>> .size = 16497,
>> };
>>
>> @@ -1253,3 +1255,5 @@ EXPORT_SYMBOL(xc5000_attach);
>> MODULE_AUTHOR("Steven Toth");
>> MODULE_DESCRIPTION("Xceive xc5000 silicon tuner driver");
>> MODULE_LICENSE("GPL");
>> +MODULE_FIRMWARE(XC5000A_FIRMWARE);
>> +MODULE_FIRMWARE(XC5000C_FIRMWARE);
>> --
>
> Hi Tim,
>
> I'm just eyeballing the patch and I'm not familiar with this new
> functionality, but where are the new macros you're specifying actually
> defined? You're swapping out the filename for XC5000A_FIRMWARE, but
> where is the actual reference to "dvb-fe-xc5000-1.6.114.fw"?
>

Devin - Please have a closer look. XC5000A_FIRMWARE and XC5000C_FIRMWARE
are defined in the patch.

MODULE_FIRMWARE() is defined in linux/module.h. It creates a firmware
section such that modinfo can print the names of the firmware files that
may possibly be in use by this module.

rtg
--
Tim Gardner tim.gardner@xxxxxxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/