|
@@ -193,23 +193,7 @@ int em28xx_write_regs_req(struct em28xx *dev, u8 req, u16 reg, char *buf,
|
|
|
|
|
|
int em28xx_write_regs(struct em28xx *dev, u16 reg, char *buf, int len)
|
|
|
{
|
|
|
- int rc;
|
|
|
-
|
|
|
- rc = em28xx_write_regs_req(dev, USB_REQ_GET_STATUS, reg, buf, len);
|
|
|
-
|
|
|
- /* Stores GPO/GPIO values at the cache, if changed
|
|
|
- Only write values should be stored, since input on a GPIO
|
|
|
- register will return the input bits.
|
|
|
- Not sure what happens on reading GPO register.
|
|
|
- */
|
|
|
- if (rc >= 0) {
|
|
|
- if (reg == dev->reg_gpo_num)
|
|
|
- dev->reg_gpo = buf[0];
|
|
|
- else if (reg == dev->reg_gpio_num)
|
|
|
- dev->reg_gpio = buf[0];
|
|
|
- }
|
|
|
-
|
|
|
- return rc;
|
|
|
+ return em28xx_write_regs_req(dev, USB_REQ_GET_STATUS, reg, buf, len);
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(em28xx_write_regs);
|
|
|
|
|
@@ -231,14 +215,7 @@ int em28xx_write_reg_bits(struct em28xx *dev, u16 reg, u8 val,
|
|
|
int oldval;
|
|
|
u8 newval;
|
|
|
|
|
|
- /* Uses cache for gpo/gpio registers */
|
|
|
- if (reg == dev->reg_gpo_num)
|
|
|
- oldval = dev->reg_gpo;
|
|
|
- else if (reg == dev->reg_gpio_num)
|
|
|
- oldval = dev->reg_gpio;
|
|
|
- else
|
|
|
- oldval = em28xx_read_reg(dev, reg);
|
|
|
-
|
|
|
+ oldval = em28xx_read_reg(dev, reg);
|
|
|
if (oldval < 0)
|
|
|
return oldval;
|
|
|
|