From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-17.8 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B2FA3C4708F for ; Tue, 1 Jun 2021 02:31:47 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 7473761026 for ; Tue, 1 Jun 2021 02:31:47 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232587AbhFACd0 (ORCPT ); Mon, 31 May 2021 22:33:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33294 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232268AbhFACdZ (ORCPT ); Mon, 31 May 2021 22:33:25 -0400 Received: from mail-io1-xd30.google.com (mail-io1-xd30.google.com [IPv6:2607:f8b0:4864:20::d30]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 79D48C061574; Mon, 31 May 2021 19:31:43 -0700 (PDT) Received: by mail-io1-xd30.google.com with SMTP id k16so13650787ios.10; Mon, 31 May 2021 19:31:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=RjRQ4k3lEZ1HkKRJBdzpSSnbgvpOMfWttwcCEJNrMEY=; b=DtQwu4G4fMYc5Gcvmd0kIxDcVDpEb+KzaY171hMOWER3097HQScFBRLruTQrsAECkP H/DR1JyjX/DmyxvdwA6U8AarXYaKhP0sqwu3rEvnumwe9BezSQe+5GXAUHMz1r4mI5aU DljNiHqSmImkv+JQcYx3bDPaRG6gO9zfNUE7q3pCf9NXOPfBkRItePglLq3aOHzgwZx8 a17qiUYqFMHrdqliIwgK9aTX2wTdurlN1XLbbTiLr9QyWMa28VqPKXXswLdnGzTSNsK+ wxr/AGyP8fT/qRChTnSp45RjV5rzyhFuO104bjT1/JWnIYb6J9LUKjmZ3fWByyRAcCLa dpEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=RjRQ4k3lEZ1HkKRJBdzpSSnbgvpOMfWttwcCEJNrMEY=; b=ltJa+S+hvBXEBXItQRME9wJvHO+LIvd87RukyF/IDPca3PtbmncPLx+c5MTcm6VqJc /vBKErSVcntN3cSIC79jirBQivSHsRLGJED74nr8GcbqCyHYBxtbV4iWE5Nx54Lt0h4Z JbxscliIB0PF+6jmKAJCdhNEg/xZDO+zACJz2p71BQwfNHpcv3miI76dd3phpKS63id0 QsIYRtBUjznfkUqyUHRAhydFm84QqKJ7OCFPAVZU2l3vU34fS7Q8J570Yiz4U+zydHX2 YBfeF1oi/+06j7aAFuIz9j9t6siTBtE2dnuJtWUYFfsZg4hZ5c/nBSH41HBh4vYtXMcx VRxA== X-Gm-Message-State: AOAM531QcCORKJu7pWRKXDhhmys7Yjj2ZyNO+Eiuys3812flSRhrt1cb pGndRfQLmteCAvmN7Cq7kxHsw8Ttv5QhfVeSKZrMjCyTt08zBeSg X-Google-Smtp-Source: ABdhPJxuT3/Bae8ddEKrBto19J0GLNYB+j4i3jmkpKybIR55BomikJa79SlicYcatHQp96dghVx08+U9IrarClrts54= X-Received: by 2002:a05:6602:3426:: with SMTP id n38mr18186553ioz.3.1622514702236; Mon, 31 May 2021 19:31:42 -0700 (PDT) MIME-Version: 1.0 References: <1620990152-19255-1-git-send-email-dillon.minfei@gmail.com> <1620990152-19255-2-git-send-email-dillon.minfei@gmail.com> <56b41c37-147b-bf89-c840-2c5f08863a36@foss.st.com> In-Reply-To: From: Dillon Min Date: Tue, 1 Jun 2021 10:31:05 +0800 Message-ID: Subject: Re: [PATCH 1/4] drm/panel: Add ilitek ili9341 panel driver To: Patrice CHOTARD Cc: pierre-yves.mordret@foss.st.com, alain.volmat@foss.st.com, Maxime Coquelin , Alexandre TORGUE , Sumit Semwal , christian.koenig@amd.com, Michael Turquette , Stephen Boyd , linux-i2c@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, Linux ARM , Linux Kernel Mailing List , linux-media , "open list:DRM PANEL DRIVERS" , linaro-mm-sig@lists.linaro.org, linux-clk Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Patrice On Mon, May 31, 2021 at 9:39 PM Dillon Min wrote: > > On Mon, May 31, 2021 at 9:15 PM Patrice CHOTARD > wrote: > > > > Hi Dillon > > > > When trying to applying this patch using "git am --3 " i got th= is error : > > > > error: cannot convert from y to UTF-8 > > fatal: could not parse patch > > > > Whereas i got no similar error with the other patch 2/3 and 4. > > > > I find a way to apply it anyway. > > Sorry for the inconvenience, I will double verify the 'git am' process > on this patch later. I can't reproduce this on my side. fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ git --version git version 2.7.4 fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ git am --3 ../miss-c/v1/0001-drm-panel-Add-ilitek-ili9341-panel-driver.patch Applying: drm/panel: Add ilitek ili9341 panel driver fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ git am --3 ../miss-c/v1/0002-i2c-stm32f4-Fix-stmpe811-get-xyz-data-timeout-issue.patch Applying: i2c: stm32f4: Fix stmpe811 get xyz data timeout issue fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ git am --3 ../miss-c/v1/0003-clk-stm32-Fix-stm32f429-s-ltdc-driver-hang-in-set-cl.patc= h Applying: clk: stm32: Fix stm32f429's ltdc driver hang in set clock rate fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ git am --3 ../miss-c/v1/0004-clk-stm32-Fix-ltdc-s-clock-turn-off-by-clk_disable_u.patc= h Applying: clk: stm32: Fix ltdc's clock turn off by clk_disable_unused() after kernel startup fmin@fmin-OptiPlex-7060:~/work/kernel/up/linux$ git log commit bbd74144f015b7a81d728f4c942925c74b415b97 Author: Dillon Min Date: Fri May 14 18:18:45 2021 +0800 clk: stm32: Fix ltdc's clock turn off by clk_disable_unused() after kernel startup stm32's clk driver register two ltdc gate clk to clk core by clk_hw_register_gate() and clk_hw_register_composite() first: 'stm32f429_gates[]', clk name is 'ltdc', which no user to use. second: 'stm32f429_aux_clk[]', clk name is 'lcd-tft', used by ltdc driv= er both of them point to the same offset of stm32's RCC register. after kernel enter console, clk core turn off ltdc's clk as 'stm32f429_gates[= ]' is no one to use. but, actually 'stm32f429_aux_clk[]' is in use. Fixes: daf2d117cbca ("clk: stm32f4: Add lcd-tft clock") Signed-off-by: Dillon Min Acked-by: Stephen Boyd Link: https://lore.kernel.org/linux-arm-kernel/1590564453-24499-7-git-s= end-email-dillon.minfei@gmail.com/ commit 9923957735ad0ae3e9da7f35f9bf83d6882499c6 Author: Dillon Min Date: Fri May 14 18:15:06 2021 +0800 clk: stm32: Fix stm32f429's ltdc driver hang in set clock rate This is due to misuse =E2=80=98PLL_VCO_SAI' and'PLL_SAI' in clk-stm32f4= .c 'PLL_SAI' is 2, 'PLL_VCO_SAI' is 7(defined in include/dt-bindings/clock/stm32fx-clock.h). 'post_div' point to 'post_div_data[]', 'post_div->pll_num' is PLL_I2S or PLL_SAI. 'clks[PLL_VCO_SAI]' has valid 'struct clk_hw* ' return from stm32f4_rcc_register_pll() but, at line 1777 of driver/clk/clk-stm32f4.c, use the 'clks[post_div->pll_num]', equal to 'clks[PLL_SAI]', this is invalid array member at that time. Fixes: 517633ef630e ("clk: stm32f4: Add post divisor for I2S & SAI PLLs= ") Signed-off-by: Dillon Min Acked-by: Stephen Boyd Link: https://lore.kernel.org/linux-arm-kernel/1590564453-24499-6-git-s= end-email-dillon.minfei@gmail.com/ commit eeade16ed602079c9f469692a543ff00fd527a1c Author: Dillon Min Date: Fri May 14 17:29:47 2021 +0800 i2c: stm32f4: Fix stmpe811 get xyz data timeout issue As stm32f429's internal flash is 2Mbytes and compiled kernel image bigger than 2Mbytes, so we have to load kernel image to sdram on stm32f429-disco board which has 8Mbytes sdram space. based on above context, as you knows kernel running on external sdram is more slower than internal flash. besides, we need read 4 bytes to get touch screen xyz(x, y, pressure) coordinate data in stmpe811 interrupt. so, in stm32f4_i2c_handle_rx_done, as i2c read slower than running in xip mode, have to adjust 'STOP/START bit set position' from last two bytes to last one bytes. else, will get i2c timeout in reading touch screen coordinate. to not bring in side effect, introduce IIC_LAST_BYTE_POS to support xip kernel or zImage. Fixes: 62817fc8d282 ("i2c: stm32f4: add driver") Link: https://lore.kernel.org/lkml/1591709203-12106-5-git-send-email-di= llon.minfei@gmail.com/ Signed-off-by: Dillon Min commit 8de9a39a4f6e793f99a23fe7105a3dd7d997058b Author: Dillon Min Date: Fri May 14 17:20:17 2021 +0800 drm/panel: Add ilitek ili9341 panel driver This driver combine tiny/ili9341.c mipi_dbi_interface driver with mipi_dpi_interface driver, can support ili9341 with serial mode or parallel rgb interface mode by register configuration. Reviewed-by: Linus Walleij Link: https://lore.kernel.org/lkml/1590378348-8115-7-git-send-email-dil= lon.minfei@gmail.com/ Signed-off-by: Dillon Min commit c2131f7e73c9e9365613e323d65c7b9e5b910f56 Merge: 36c795513a88 1ab19c5de4c5 Author: Linus Torvalds Date: Mon May 31 05:57:22 2021 -1000 Merge tag 'gfs2-v5.13-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2 Pull gfs2 fixes from Andreas Gruenbacher: "Various gfs2 fixes" * tag 'gfs2-v5.13-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2: gfs2: Fix use-after-free in gfs2_glock_shrink_scan gfs2: Fix mmap locking for write faults gfs2: Clean up revokes on normal withdraws gfs2: fix a deadlock on withdraw-during-mount gfs2: fix scheduling while atomic bug in glocks gfs2: Fix I_NEW check in gfs2_dinode_in gfs2: Prevent direct-I/O write fallback errors from getting lost Best Regards Dillon > > Thanks. > > Best Regards > Dillon > > > > > Patrice > > > > > > On 5/14/21 1:02 PM, dillon.minfei@gmail.com wrote: > > > From: Dillon Min > > > > > > This driver combine tiny/ili9341.c mipi_dbi_interface driver > > > with mipi_dpi_interface driver, can support ili9341 with serial > > > mode or parallel rgb interface mode by register configuration. > > > > > > Reviewed-by: Linus Walleij > > > Link: https://lore.kernel.org/lkml/1590378348-8115-7-git-send-email-d= illon.minfei@gmail.com/ > > > Signed-off-by: Dillon Min > > > --- > > > drivers/gpu/drm/panel/Kconfig | 12 + > > > drivers/gpu/drm/panel/Makefile | 1 + > > > drivers/gpu/drm/panel/panel-ilitek-ili9341.c | 1285 ++++++++++++++++= ++++++++++ > > > 3 files changed, 1298 insertions(+) > > > create mode 100755 drivers/gpu/drm/panel/panel-ilitek-ili9341.c > > > > > > diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kc= onfig > > > index 4894913936e9..e4babba17864 100644 > > > --- a/drivers/gpu/drm/panel/Kconfig > > > +++ b/drivers/gpu/drm/panel/Kconfig > > > @@ -123,6 +123,18 @@ config DRM_PANEL_ILITEK_IL9322 > > > Say Y here if you want to enable support for Ilitek IL9322 > > > QVGA (320x240) RGB, YUV and ITU-T BT.656 panels. > > > > > > +config DRM_PANEL_ILITEK_ILI9341 > > > + tristate "Ilitek ILI9341 240x320 QVGA panels" > > > + depends on OF && SPI > > > + depends on DRM_KMS_HELPER > > > + depends on DRM_KMS_CMA_HELPER > > > + depends on BACKLIGHT_CLASS_DEVICE > > > + select DRM_MIPI_DBI > > > + help > > > + Say Y here if you want to enable support for Ilitek IL9341 > > > + QVGA (240x320) RGB panels. support serial & parallel rgb > > > + interface. > > > + > > > config DRM_PANEL_ILITEK_ILI9881C > > > tristate "Ilitek ILI9881C-based panels" > > > depends on OF > > > diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/M= akefile > > > index cae4d976c069..0ecde184665d 100644 > > > --- a/drivers/gpu/drm/panel/Makefile > > > +++ b/drivers/gpu/drm/panel/Makefile > > > @@ -11,6 +11,7 @@ obj-$(CONFIG_DRM_PANEL_ELIDA_KD35T133) +=3D panel-e= lida-kd35t133.o > > > obj-$(CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02) +=3D panel-feixin-k101-i= m2ba02.o > > > obj-$(CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D) +=3D panel-feiyang-f= y07024di26a30d.o > > > obj-$(CONFIG_DRM_PANEL_ILITEK_IL9322) +=3D panel-ilitek-ili9322.o > > > +obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9341) +=3D panel-ilitek-ili9341.o > > > obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9881C) +=3D panel-ilitek-ili9881c.o > > > obj-$(CONFIG_DRM_PANEL_INNOLUX_P079ZCA) +=3D panel-innolux-p079zca.o > > > obj-$(CONFIG_DRM_PANEL_JDI_LT070ME05000) +=3D panel-jdi-lt070me05000= .o > > > diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9341.c b/drivers/g= pu/drm/panel/panel-ilitek-ili9341.c > > > new file mode 100644 > > > index 000000000000..f84983cbb250 > > > --- /dev/null > > > +++ b/drivers/gpu/drm/panel/panel-ilitek-ili9341.c > > > @@ -0,0 +1,1285 @@ > > > +// SPDX-License-Identifier: GPL-2.0-only > > > +/* > > > + * Ilitek ILI9341 TFT LCD drm_panel driver. > > > + * > > > + * This panel can be configured to support: > > > + * - 16-bit parallel RGB interface > > > + * - 18-bit parallel RGB interface > > > + * - 4-line serial spi interface > > > + * > > > + * Copyright (C) 2020 Dillon Min > > > + * Derived from drivers/drm/gpu/panel/panel-ilitek-ili9322.c > > > + */ > > > + > > > +#include > > > +#include > > > +#include > > > +#include > > > +#include > > > +#include > > > +#include > > > +#include