Use regmap_noinc_read() instead of reading the data from the DDC FIFO one
byte at a time.

Signed-off-by: Paul Cercueil <[email protected]>
---
 drivers/gpu/drm/bridge/ite-it66121.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/bridge/ite-it66121.c 
b/drivers/gpu/drm/bridge/ite-it66121.c
index a698eec8f250..12222840df30 100644
--- a/drivers/gpu/drm/bridge/ite-it66121.c
+++ b/drivers/gpu/drm/bridge/ite-it66121.c
@@ -589,13 +589,12 @@ static int it66121_get_edid_block(void *context, u8 *buf,
                if (ret)
                        return ret;
 
-               do {
-                       ret = regmap_read(ctx->regmap, IT66121_DDC_RD_FIFO_REG, 
&val);
-                       if (ret)
-                               return ret;
-                       *(buf++) = val;
-                       cnt--;
-               } while (cnt > 0);
+               ret = regmap_noinc_read(ctx->regmap, IT66121_DDC_RD_FIFO_REG,
+                                       buf, cnt);
+               if (ret)
+                       return ret;
+
+               buf += cnt;
        }
 
        return 0;
-- 
2.35.1

Reply via email to