From 2956870e0ae392c45e0cad70768aecb8b846b3d9 Mon Sep 17 00:00:00 2001 From: Heiner Kallweit Date: Mon, 3 Jun 2019 21:24:38 +0200 Subject: r8169: simplify rtl_fw_write_firmware Similar to rtl_fw_data_ok() we can simplify the code by moving incrementing the index to the for loop initialization. Signed-off-by: Heiner Kallweit Signed-off-by: David S. Miller --- drivers/net/ethernet/realtek/r8169.c | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c index 12e2c82eb0b3..5eb0ab0fe7e3 100644 --- a/drivers/net/ethernet/realtek/r8169.c +++ b/drivers/net/ethernet/realtek/r8169.c @@ -2451,7 +2451,7 @@ static void rtl_fw_write_firmware(struct rtl8169_private *tp, int predata = 0, count = 0; size_t index; - for (index = 0; index < pa->size; ) { + for (index = 0; index < pa->size; index++) { u32 action = le32_to_cpu(pa->code[index]); u32 data = action & 0x0000ffff; u32 regno = (action & 0x0fff0000) >> 16; @@ -2464,18 +2464,15 @@ static void rtl_fw_write_firmware(struct rtl8169_private *tp, case PHY_READ: predata = fw_read(tp, regno); count++; - index++; break; case PHY_DATA_OR: predata |= data; - index++; break; case PHY_DATA_AND: predata &= data; - index++; break; case PHY_BJMPN: - index -= regno; + index -= (regno + 1); break; case PHY_MDIO_CHG: if (data == 0) { @@ -2486,39 +2483,33 @@ static void rtl_fw_write_firmware(struct rtl8169_private *tp, fw_read = rtl_fw->mac_mcu_read; } - index++; break; case PHY_CLEAR_READCOUNT: count = 0; - index++; break; case PHY_WRITE: fw_write(tp, regno, data); - index++; break; case PHY_READCOUNT_EQ_SKIP: - index += (count == data) ? 2 : 1; + if (count == data) + index++; break; case PHY_COMP_EQ_SKIPN: if (predata == data) index += regno; - index++; break; case PHY_COMP_NEQ_SKIPN: if (predata != data) index += regno; - index++; break; case PHY_WRITE_PREVIOUS: fw_write(tp, regno, predata); - index++; break; case PHY_SKIPN: - index += regno + 1; + index += regno; break; case PHY_DELAY_MS: mdelay(data); - index++; break; } } -- cgit v1.2.3-59-g8ed1b