lkml.org 
[lkml]   [2019]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.2 011/144] Staging: fbtft: Fix reset assertion when using gpio descriptor
    Date
    From: Phil Reid <preid@electromag.com.au>

    commit b918d1c2706619cb0712a61cc8c05148b68b24b2 upstream.

    Typically gpiod_set_value calls would assert the reset line and
    then release it using the symantics of:
    gpiod_set_value(par->gpio.reset, 0);
    ... delay
    gpiod_set_value(par->gpio.reset, 1);
    And the gpio binding would specify the polarity.

    Prior to conversion to gpiod calls the polarity in the DT
    was ignored and assumed to be active low. Fix it so that
    DT polarity is respected.

    Fixes: c440eee1a7a1 ("Staging: fbtft: Switch to the gpio descriptor interface")
    Reviewed-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
    Tested-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
    Tested-by: Jan Sebastian Götte <linux@jaseg.net>
    Signed-off-by: Phil Reid <preid@electromag.com.au>
    Cc: stable <stable@vger.kernel.org>
    Link: https://lore.kernel.org/r/1563236677-5045-3-git-send-email-preid@electromag.com.au
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/staging/fbtft/fbtft-core.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    --- a/drivers/staging/fbtft/fbtft-core.c
    +++ b/drivers/staging/fbtft/fbtft-core.c
    @@ -231,9 +231,9 @@ static void fbtft_reset(struct fbtft_par
    if (!par->gpio.reset)
    return;
    fbtft_par_dbg(DEBUG_RESET, par, "%s()\n", __func__);
    - gpiod_set_value_cansleep(par->gpio.reset, 0);
    - usleep_range(20, 40);
    gpiod_set_value_cansleep(par->gpio.reset, 1);
    + usleep_range(20, 40);
    + gpiod_set_value_cansleep(par->gpio.reset, 0);
    msleep(120);
    }


    \
     
     \ /
      Last update: 2019-08-14 19:03    [W:4.031 / U:2.108 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site