int ret;
u32 reg_val;
char *tx_buf = NULL;
- mutex_lock(&rk616->reg_lock);
+
tx_buf = (char *)kmalloc(6, GFP_KERNEL);
if(!tx_buf)
return -ENOMEM;
+ mutex_lock(&rk616->reg_lock);
rk616->read_dev(rk616,reg,®_val);
reg_val &= ~mask;
+ *pval &= mask;
reg_val |= *pval;
*pval = reg_val;
memcpy(tx_buf, ®, 2);