From: andy.shevchenko@gmail.com
To: Hugo Villeneuve <hugo@hugovil.com>
Cc: gregkh@linuxfoundation.org, robh+dt@kernel.org,
krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org,
jirislaby@kernel.org, jringle@gridpoint.com,
tomasz.mon@camlingroup.com, l.perczak@camlintechnologies.com,
linux-serial@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,
Hugo Villeneuve <hvilleneuve@dimonoff.com>
Subject: Re: [PATCH v3 06/11] serial: sc16is7xx: fix bug when first setting GPIO direction
Date: Thu, 25 May 2023 14:10:27 +0300 [thread overview]
Message-ID: <ZG9CIww5WbgJ3TUf@surfacebook> (raw)
In-Reply-To: <20230525040324.3773741-7-hugo@hugovil.com>
Thu, May 25, 2023 at 12:03:20AM -0400, Hugo Villeneuve kirjoitti:
> From: Hugo Villeneuve <hvilleneuve@dimonoff.com>
>
> When we want to configure a pin as an output pin with a value of logic
> 0, we end up as having a value of logic 1 on the output pin. Setting a
> logic 0 a second time (or more) after that will correctly output a
> logic 0 on the output pin.
>
> By default, all GPIO pins are configured as inputs. When we enter
> c16is7xx_gpio_direction_output() for the first time, we first set the
Missing 's'.
> desired value in IOSTATE, and then we configure the pin as an output.
> The datasheet states that writing to IOSTATE register will trigger a
> transfer of the value to the I/O pin configured as output, so if the
> pin is configured as an input, nothing will be transferred.
>
> Therefore, set the direction first in IODIR, and then set the desired
> value in IOSTATE.
>
> This is what is done in NXP application note AN10587.
--
With Best Regards,
Andy Shevchenko
next prev parent reply other threads:[~2023-05-25 11:10 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-25 4:03 [PATCH v3 00/11] serial: sc16is7xx: fix GPIO regression and rs485 improvements Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 01/11] serial: sc16is7xx: fix syntax error in comments Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 02/11] serial: sc16is7xx: improve comments about variants Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 03/11] serial: sc16is7xx: mark IOCONTROL register as volatile Hugo Villeneuve
2023-05-25 11:02 ` Ilpo Järvinen
2023-05-25 13:45 ` Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 04/11] serial: sc16is7xx: add post reset delay Hugo Villeneuve
2023-05-25 10:30 ` andy.shevchenko
2023-05-25 13:18 ` Hugo Villeneuve
2023-05-25 11:05 ` Ilpo Järvinen
2023-05-25 14:05 ` Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 05/11] serial: sc16is7xx: fix broken port 0 uart init Hugo Villeneuve
2023-05-25 11:20 ` Ilpo Järvinen
2023-05-25 15:10 ` Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 06/11] serial: sc16is7xx: fix bug when first setting GPIO direction Hugo Villeneuve
2023-05-25 11:10 ` andy.shevchenko [this message]
2023-05-25 14:24 ` Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 07/11] dt-bindings: sc16is7xx: Add property to change GPIO function Hugo Villeneuve
2023-05-25 11:11 ` andy.shevchenko
2023-05-25 14:34 ` Hugo Villeneuve
2023-05-25 15:15 ` Conor Dooley
2023-05-26 18:28 ` andy.shevchenko
2023-05-25 4:03 ` [PATCH v3 08/11] serial: sc16is7xx: fix regression with GPIO configuration Hugo Villeneuve
2023-05-25 11:19 ` andy.shevchenko
2023-05-25 15:02 ` Hugo Villeneuve
2023-05-26 18:34 ` andy.shevchenko
2023-05-25 12:03 ` Ilpo Järvinen
2023-05-25 15:19 ` Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 09/11] serial: sc16is7xx: add I/O register translation offset Hugo Villeneuve
2023-05-25 11:22 ` andy.shevchenko
2023-05-25 15:31 ` Hugo Villeneuve
2023-05-25 17:20 ` Hugo Villeneuve
2023-05-26 18:36 ` andy.shevchenko
2023-05-25 12:10 ` Ilpo Järvinen
2023-05-25 15:25 ` Hugo Villeneuve
2023-05-25 4:03 ` [PATCH v3 10/11] serial: sc16is7xx: add call to get rs485 DT flags and properties Hugo Villeneuve
2023-05-25 12:17 ` Ilpo Järvinen
2023-05-25 4:03 ` [PATCH v3 11/11] serial: sc16is7xx: add dump registers function Hugo Villeneuve
2023-05-25 11:26 ` andy.shevchenko
2023-05-25 19:49 ` Hugo Villeneuve
2023-05-26 18:38 ` andy.shevchenko
2023-05-28 11:56 ` Greg KH
2023-05-25 10:27 ` [PATCH v3 00/11] serial: sc16is7xx: fix GPIO regression and rs485 improvements andy.shevchenko
2023-05-25 13:26 ` Hugo Villeneuve
2023-05-25 13:37 ` Andy Shevchenko
2023-05-25 13:39 ` Hugo Villeneuve
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZG9CIww5WbgJ3TUf@surfacebook \
--to=andy.shevchenko@gmail.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=hugo@hugovil.com \
--cc=hvilleneuve@dimonoff.com \
--cc=jirislaby@kernel.org \
--cc=jringle@gridpoint.com \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=l.perczak@camlintechnologies.com \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=tomasz.mon@camlingroup.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.