@@ -270,6 +270,7 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
{
char *ir_codes = NULL;
const char *name = NULL;
+ struct ir_dev_props *props = NULL;
u64 ir_type = IR_TYPE_UNKNOWN;
struct IR_i2c *ir;
struct input_dev *input_dev;
@@ -337,6 +338,7 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
name = init_data->name;
if (init_data->type)
ir_type = init_data->type;
+ props = init_data->props;
if (init_data->polling_interval)
ir->polling_interval = init_data->polling_interval;
@@ -388,7 +390,7 @@ static int ir_probe(struct i2c_client *client, const struct i2c_device_id *id)
input_dev->name = ir->name;
input_dev->phys = ir->phys;
- err = ir_input_register(ir->input, ir->ir_codes, NULL, MODULE_NAME);
+ err = ir_input_register(ir->input, ir->ir_codes, props, MODULE_NAME);
if (err)
goto err_out_free;
@@ -47,5 +47,7 @@ struct IR_i2c_init_data {
*/
int (*get_key)(struct IR_i2c*, u32*, u32*);
enum ir_kbd_get_key_fn internal_get_key_func;
+
+ struct ir_dev_props *props;
};
#endif