Repository navigation
Conversation
Add a dedicated UnoQ control backend for power and EDL control through FTDI CBUS pins. The existing FTDI GPIO backend uses normal bitbang GPIO and opens the FTDI interface through libftdi. That is not suitable for UnoQ because the CBUS controls share the FTDI device with the serial console; claiming or resetting the interface would disturb the console handled by the kernel FTDI serial driver. Use endpoint-zero SIO_SET_BITMODE vendor requests instead. This allows the CBUS bitmode/output state to be changed without detaching the serial driver. Document that the request uses one-based FTDI interface numbering, with interface A addressed as wIndex 1. Assisted-by: LLM Signed-off-by: Abel Vesa <abel.vesa@oss.qualcomm.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add a dedicated control backend for Arduino UnoQ boards using FTDI CBUS pins
for power and EDL control.
The existing FTDI GPIO backend is not suitable for this board because it uses
normal FTDI bitbang GPIO through libftdi. That path opens/claims the FTDI
interface, configures bitbang mode, and writes GPIO data through the interface.
On UnoQ, the CBUS controls share the same FTDI device as the serial console, so
claiming or resetting the interface would interfere with the kernel FTDI serial
driver and disturb the console.
This backend instead issues endpoint-zero FTDI vendor requests to set CBUS
bitmode/output state. That allows CDBA to control power and EDL without
detaching the serial driver or disrupting the console.
The driver also documents the FTDI request detail that
SIO_SET_BITMODEusesone-based interface numbering, so interface A is addressed as
wIndex 1.Includes: