Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add supervisor.runtime.display & RP2350 DVI autoconfig (rebased version) #10062

Merged
merged 3 commits into from
Feb 14, 2025

Conversation

jepler
Copy link

@jepler jepler commented Feb 13, 2025

This partially implements #8675. Releasing non-primary displays is left for a 10.0 incompatible change. The allocation of I2C and SPI bus objects is unchanged, rather than allocating them outside the GC heap as suggested in that PR.

This can be enabled on additional boards provided the board:

  • has a HSTX or DVI connector built in
  • connects the primary I2C bus to this connector
  • has pull-ups on this connector
  • for RP2040, a preflight function needs to be written to check the requested resolution is valid

If a DVI display is configured, it will be set as the primary display and be available as supervisor.runtime.display. It will not be board.DISPLAY.

Rebased version of #10028.

This partially implements adafruit#8675. Releasing non-primary displays is
left for a 10.0 incompatible change. The allocation of I2C and SPI
bus objects is unchanged, rather than allocating them outside the GC
heap as suggested in that PR.
This can be enabled on additional boards provided the board:
 * has a HSTX or DVI connector built in
 * connects the primary I2C bus to this connector
 * has pull-ups on this connector
 * for RP2040, a `preflight` function needs to be written to check
   the requested resolution is valid

If a DVI display is configured, it will be set as the primary display
and be available as `supervisor.runtime.display`. It will not be
`board.DISPLAY`.
@jepler jepler requested a review from tannewt February 13, 2025 19:42
Copy link
Member

@tannewt tannewt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good thank you!

@tannewt tannewt merged commit e5e7c9e into adafruit:main Feb 14, 2025
599 checks passed
jepler pushed a commit to jepler/circuitpython that referenced this pull request Mar 28, 2025
This commit enables support for DTLS, i.e. TLS over datagram transport
protocols like UDP.  While support for DTLS is absent in CPython, it is
worth supporting it in MicroPython because it is the basis of the
ubiquitous CoAP protocol, used in many IoT projects.

To select DTLS, a new set of "protocols" are added to SSLContext:
- ssl.PROTOCOL_DTLS_CLIENT
- ssl.PROTOCOL_DTLS_SERVER

If one of these is set, the library assumes that the underlying socket is a
datagram-like socket (i.e. UDP or similar).

Our own timer callbacks are implemented because the out of the box
implementation relies on `gettimeofday()`.

This new DTLS feature is enabled on all ports that use mbedTLS.

This commit is an update to a previous PR adafruit#10062.

Addresses issue adafruit#5270 which requested DTLS support.

Signed-off-by: Keenan Johnson <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants