Updated from Linux LTS 3.10.21 to 3.10.22
This commit is contained in:
@@ -31,6 +31,9 @@
|
||||
#include "itd1000.h"
|
||||
#include "itd1000_priv.h"
|
||||
|
||||
/* Max transfer size done by I2C transfer functions */
|
||||
#define MAX_XFER_SIZE 64
|
||||
|
||||
static int debug;
|
||||
module_param(debug, int, 0644);
|
||||
MODULE_PARM_DESC(debug, "Turn on/off debugging (default:off).");
|
||||
@@ -52,10 +55,18 @@ MODULE_PARM_DESC(debug, "Turn on/off debugging (default:off).");
|
||||
/* don't write more than one byte with flexcop behind */
|
||||
static int itd1000_write_regs(struct itd1000_state *state, u8 reg, u8 v[], u8 len)
|
||||
{
|
||||
u8 buf[1+len];
|
||||
u8 buf[MAX_XFER_SIZE];
|
||||
struct i2c_msg msg = {
|
||||
.addr = state->cfg->i2c_address, .flags = 0, .buf = buf, .len = len+1
|
||||
};
|
||||
|
||||
if (1 + len > sizeof(buf)) {
|
||||
printk(KERN_WARNING
|
||||
"itd1000: i2c wr reg=%04x: len=%d is too big!\n",
|
||||
reg, len);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
buf[0] = reg;
|
||||
memcpy(&buf[1], v, len);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user