Commit caa687c8 authored by Igor M. Liplianin's avatar Igor M. Liplianin Committed by Mauro Carvalho Chehab

[media] ds3000: loading firmware in bigger chunks

Decrease firmware loading time. Before it is ~4000 i2c calls,
now it is ~256 i2c calls to load ds3000 firmware.
Signed-off-by: default avatarIgor M. Liplianin <liplianin@me.by>
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
parent 2a66bf37
...@@ -305,7 +305,7 @@ static int ds3000_writeFW(struct ds3000_state *state, int reg, ...@@ -305,7 +305,7 @@ static int ds3000_writeFW(struct ds3000_state *state, int reg,
struct i2c_msg msg; struct i2c_msg msg;
u8 *buf; u8 *buf;
buf = kmalloc(3, GFP_KERNEL); buf = kmalloc(33, GFP_KERNEL);
if (buf == NULL) { if (buf == NULL) {
printk(KERN_ERR "Unable to kmalloc\n"); printk(KERN_ERR "Unable to kmalloc\n");
ret = -ENOMEM; ret = -ENOMEM;
...@@ -317,10 +317,10 @@ static int ds3000_writeFW(struct ds3000_state *state, int reg, ...@@ -317,10 +317,10 @@ static int ds3000_writeFW(struct ds3000_state *state, int reg,
msg.addr = state->config->demod_address; msg.addr = state->config->demod_address;
msg.flags = 0; msg.flags = 0;
msg.buf = buf; msg.buf = buf;
msg.len = 3; msg.len = 33;
for (i = 0; i < len; i += 2) { for (i = 0; i < len; i += 32) {
memcpy(buf + 1, data + i, 2); memcpy(buf + 1, data + i, 32);
dprintk("%s: write reg 0x%02x, len = %d\n", __func__, reg, len); dprintk("%s: write reg 0x%02x, len = %d\n", __func__, reg, len);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment