#include <linux/module.h>
#include <linux/i2c.h>
#include <linux/firmware.h>
#include <media/v4l2-common.h>
#include <media/drv-intf/cx25840.h>
#include "cx25840-core.h"
#define FWSEND …
#define FWDEV(x) …
static char *firmware = …;
module_param(firmware, charp, 0444);
MODULE_PARM_DESC(…) …;
static void start_fw_load(struct i2c_client *client)
{ … }
static void end_fw_load(struct i2c_client *client)
{ … }
#define CX2388x_FIRMWARE …
#define CX231xx_FIRMWARE …
#define CX25840_FIRMWARE …
static const char *get_fw_name(struct i2c_client *client)
{ … }
static int check_fw_load(struct i2c_client *client, int size)
{ … }
static int fw_write(struct i2c_client *client, const u8 *data, int size)
{ … }
int cx25840_loadfw(struct i2c_client *client)
{ … }
MODULE_FIRMWARE(…);
MODULE_FIRMWARE(…);
MODULE_FIRMWARE(…);