[PATCH 2/2 v3] drm/panel: ws2401: Add driver for WideChips WS2401

Doug Anderson dianders at chromium.org
Thu Jul 8 20:04:38 UTC 2021


Hi,

On Wed, Jul 7, 2021 at 4:55 PM Linus Walleij <linus.walleij at linaro.org> wrote:
>
> This adds a driver for panels based on the WideChips WS2401 display
> controller. This display controller is used in the Samsung LMS380KF01
> display found in the Samsung GT-I8160 (Codina) mobile phone and
> possibly others.
>
> As is common with Samsung displays manufacturer commands are necessary
> to configure the display to a working state.
>
> The display optionally supports internal backlight control, but can
> also use an external backlight.
>
> This driver re-uses the DBI infrastructure to communicate with the
> display.
>
> Cc: phone-devel at vger.kernel.org
> Cc: Douglas Anderson <dianders at chromium.org>
> Cc: Noralf Trønnes <noralf at tronnes.org>
> Signed-off-by: Linus Walleij <linus.walleij at linaro.org>
> ---
> ChangeLog v2->v3:
> - Drop the ws2401_command() macro - we enhanced the
>   mipi_dbi_command() to print errors for everyone instead.
> - Read out MTP properly (used wrong variables)
> - Register internal backlight if and only if the panel->backlight
>   field is NULL after trying to look up external backlight.
> ChangeLog v1->v2:
> - Disable the backlight in ->unprepare() before entering sleep
>   mode.
> - If we are not using internal backlight, close the L2 access
>   after initializing.
> - Depromote some talkative dev_info()s to dev_dbg().
> - Power up and read the MTP values before we register the display.
>   This works fine and is probably how MTP is supposed to work.
> - Fix the set-up of gamma values, this was found in the GT-I8160 HD
>   kernel tree.
> - Bail out properly if drm_panel_of_backlight() returns
>   -EDEFER_PROBE.
> - Drop OF from dependencies since drm_panel_of_backlight() has
>   static inline stubs in the header file.
> - Sort MAINTAINERS properly.
> - Alphabetize includes
> - Use format specifier %#02x so we get 0x... output in debug
> - Drop unnecessary braces around if () in debug macro
> - Drop unused <of.h> include.
> ---
>  MAINTAINERS                                   |   7 +
>  drivers/gpu/drm/panel/Kconfig                 |   9 +
>  drivers/gpu/drm/panel/Makefile                |   1 +
>  .../gpu/drm/panel/panel-widechips-ws2401.c    | 436 ++++++++++++++++++
>  4 files changed, 453 insertions(+)

Looks nice to me now.

Reviewed-by: Douglas Anderson <dianders at chromium.org>


More information about the dri-devel mailing list