The function store_value is about writing a value, but the code has been
passing ro_regs array to get_static_reg_addr, which prevented setting
the writable registers.

Noticed when trying to setup the EUI48.

Signed-off-by: Alex Riesen <alexander.rie...@cetitec.com>
Signed-off-by: Christian Gromm <christian.gr...@microchip.com>
---
 drivers/staging/most/hdm-usb/hdm_usb.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/most/hdm-usb/hdm_usb.c 
b/drivers/staging/most/hdm-usb/hdm_usb.c
index ad907e9c59bb..477c0ed305d3 100644
--- a/drivers/staging/most/hdm-usb/hdm_usb.c
+++ b/drivers/staging/most/hdm-usb/hdm_usb.c
@@ -1005,7 +1005,7 @@ static ssize_t store_value(struct most_dci_obj *dci_obj,
                err = drci_wr_reg(usb_dev, dci_obj->reg_addr, val);
        else if (!strcmp(name, "sync_ep"))
                err = start_sync_ep(usb_dev, val);
-       else if (!get_static_reg_addr(ro_regs, name, &reg_addr))
+       else if (!get_static_reg_addr(rw_regs, name, &reg_addr))
                err = drci_wr_reg(usb_dev, reg_addr, val);
        else
                return -EFAULT;
-- 
2.11.0

_______________________________________________
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel

Reply via email to