[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAA8EJppG01kE-USS6XYp5gRwEq-hNAUY0cBLfEcHZQgP8CRTsg@mail.gmail.com>
Date: Thu, 26 Sep 2024 10:05:22 +0200
From: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
To: Hermes.Wu@....com.tw
Cc: Kenneth.Hung@....com.tw, andrzej.hajda@...el.com,
neil.armstrong@...aro.org, rfoss@...nel.org,
Laurent.pinchart@...asonboard.com, jonas@...boo.se, jernej.skrabec@...il.com,
maarten.lankhorst@...ux.intel.com, mripard@...nel.org, tzimmermann@...e.de,
airlied@...il.com, simona@...ll.ch, angelogioacchino.delregno@...labora.com,
dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4 02/11] drm/bridge: it6505: fix aux operation for edid read
On Thu, 26 Sept 2024 at 10:04, <Hermes.Wu@....com.tw> wrote:
>
> >On Thu, Sep 26, 2024 at 03:47:52PM GMT, Hermes Wu wrote:
> >> From: Hermes Wu <Hermes.wu@....com.tw>
> >>
> >> The EDID read operation can reach the maximum size of the AUX FIFO buffer.
> >
> >And? Commit message should describe why the change is necessary and what is being done. Just providing a statement is not enough.
> >
>
> The original AUX operation treat all reads by using data registers will be limited at 4 bytes.
> AUX operation command CMD_AUX_I2C_EDID_READ using AUX FIFO is capable of reads data by 16 bytes each time.
> It can improve speed of read EDID.
improves, rather than "can improve". Please add this to the commit message.
>
>
> >>
> >> Fixes: b5c84a9edcd4 ("drm/bridge: add it6505 driver")
> >> Signed-off-by: Hermes Wu <Hermes.wu@....com.tw>
> >> ---
> >> drivers/gpu/drm/bridge/ite-it6505.c | 8 ++++++--
> >> 1 file changed, 6 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/drivers/gpu/drm/bridge/ite-it6505.c
> >> b/drivers/gpu/drm/bridge/ite-it6505.c
> >> index 28a8043229d3..b451d3c2ac1d 100644
> >> --- a/drivers/gpu/drm/bridge/ite-it6505.c
> >> +++ b/drivers/gpu/drm/bridge/ite-it6505.c
> >> @@ -1078,8 +1078,11 @@ static ssize_t it6505_aux_do_transfer(struct it6505 *it6505,
> >> int i, ret_size, ret = 0, request_size;
> >>
> >> mutex_lock(&it6505->aux_lock);
> >> - for (i = 0; i < size; i += 4) {
> >> - request_size = min((int)size - i, 4);
> >> + for (i = 0; i < size; ) {
> >> + if (cmd == CMD_AUX_I2C_EDID_READ)
> >> + request_size = min_t(int, (int)size - i, AUX_FIFO_MAX_SIZE);
> >> + else
> >> + request_size = min_t(int, (int)size - i, 4);
> >> ret_size = it6505_aux_operation(it6505, cmd, address + i,
> >> buffer + i, request_size,
> >> reply);
> >> @@ -1088,6 +1091,7 @@ static ssize_t it6505_aux_do_transfer(struct it6505 *it6505,
> >> goto aux_op_err;
> >> }
> >>
> >> + i += request_size;
> >> ret += ret_size;
> >> }
> >>
> >> --
> >> 2.34.1
> >>
> >
> >--
> >With best wishes
> >Dmitry
> >
>
> BR,
> Hermes
>
--
With best wishes
Dmitry
Powered by blists - more mailing lists