From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Danny Kaehn <danny.kaehn@plexus.com>
Cc: Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Benjamin Tissoires <bentiss@kernel.org>,
Jiri Kosina <jikos@kernel.org>,
devicetree@vger.kernel.org, linux-input@vger.kernel.org,
Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Bartosz Golaszewski <bartosz.golaszewski@linaro.org>,
Ethan Twardy <ethan.twardy@plexus.com>
Subject: Re: [PATCH v11 1/4] dt-bindings: i2c: Add CP2112 HID USB to SMBus Bridge
Date: Thu, 6 Jun 2024 22:49:00 +0300 [thread overview]
Message-ID: <ZmISrFrUVadRS1Do@smile.fi.intel.com> (raw)
In-Reply-To: <20240606162438.GA77976@LNDCL34533.neenah.na.plexus.com>
On Thu, Jun 06, 2024 at 11:24:38AM -0500, Danny Kaehn wrote:
> On Thu, Jun 06, 2024 at 09:18:59AM -0600, Rob Herring wrote:
> > On Wed, Jun 05, 2024 at 06:12:44PM -0500, Danny Kaehn wrote:
...
> > > + i2c:
> > > + description: The SMBus/I2C controller node for the CP2112
> > > + $ref: /schemas/i2c/i2c-controller.yaml#
> > > + unevaluatedProperties: false
> > > +
> > > + properties:
> > > + sda-gpios:
> > > + maxItems: 1
> > > +
> > > + scl-gpios:
> > > + maxItems: 1
> >
> > These are because I2C can be on any of the pins? It's a bit odd if they
> > aren't used as gpios. Probably should be pinmux, but that's overkill for
> > 2 pins.
> >
>
> I'm beginning to realize now that this may be a bit non-standard, but it
> did solve a stuck bus issue under some conditions.
>
> The CP2112's I2C controller is self-contained and can only be on the
> specific pins it is attached to (no pinmux, etc..).
>
> In this case, these properties are ment to specify additional gpio pins
> which are connected to the SCL and SDA lines (this then also assumes those
> are configured to be open drain / inputs to not interfere with the bus
> during normal operation). This was inspired by what is done ini2c-imx.yaml,
> but I realize this is a bit different due to using external pins rather
> than pinmuxing to the GPIOs.
>
> How I used this was to actually connect some of the CP2112's own GPIO pins
> to the SDA and SCL lines to be able to use those pins to recover the
> bus. This was able to solve a stuck bus under some real-world cases with
> the v2 of the CP2112 containing an errata which caused this
> semi-frequently.
Aren't they just for I²C recovery?
--
With Best Regards,
Andy Shevchenko
next prev parent reply other threads:[~2024-06-06 19:49 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-05 23:12 [PATCH v11 0/4] Firmware Support for USB-HID Devices and CP2112 Danny Kaehn
2024-06-05 23:12 ` [PATCH v11 1/4] dt-bindings: i2c: Add CP2112 HID USB to SMBus Bridge Danny Kaehn
2024-06-06 0:18 ` Rob Herring (Arm)
2024-06-06 6:28 ` Krzysztof Kozlowski
2024-06-06 15:12 ` Danny Kaehn
2024-06-06 15:18 ` Rob Herring
2024-06-06 16:24 ` Danny Kaehn
2024-06-06 19:49 ` Andy Shevchenko [this message]
2024-06-07 18:38 ` Danny Kaehn
2024-06-05 23:12 ` [PATCH v11 2/4] HID: usbhid: Share USB device firmware node with child HID device Danny Kaehn
2024-06-05 23:43 ` Andy Shevchenko
2024-06-06 7:31 ` Benjamin Tissoires
2024-06-05 23:12 ` [PATCH v11 3/4] HID: cp2112: Fwnode Support Danny Kaehn
2024-06-05 23:39 ` Andy Shevchenko
2024-06-05 23:12 ` [PATCH v11 4/4] HID: cp2112: Configure I2C Bus Speed from Firmware Danny Kaehn
2024-06-05 23:42 ` [PATCH v11 0/4] Firmware Support for USB-HID Devices and CP2112 Andy Shevchenko
2024-06-06 15:54 ` Danny Kaehn
2024-06-06 19:47 ` Andy Shevchenko
2024-06-07 17:20 ` Danny Kaehn
2024-06-06 7:30 ` (subset) " Benjamin Tissoires
2025-07-29 14:53 ` Re " Willie Thai
2025-07-29 17:49 ` Danny Kaehn
2025-08-05 21:32 ` Andy Shevchenko
2025-08-06 11:07 ` Willie Thai
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=ZmISrFrUVadRS1Do@smile.fi.intel.com \
--to=andriy.shevchenko@linux.intel.com \
--cc=bartosz.golaszewski@linaro.org \
--cc=bentiss@kernel.org \
--cc=danny.kaehn@plexus.com \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.torokhov@gmail.com \
--cc=ethan.twardy@plexus.com \
--cc=jikos@kernel.org \
--cc=krzk+dt@kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=robh@kernel.org \
/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.