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

drivers/st7735: split off separate driver modules for st7789 and st7796 #19828

Closed

Conversation

gschorcht
Copy link
Contributor

Contribution description

This PR demonstrates an alternative to PR #19825. Instead of handling the different ST77xx controller variants as pseudomodules by one driver, this PR uses a separate driver module for each variant that is simply duplicated code of st7735. The disadvantage is that most of the code is just copied and pasted. The advantages are:

  • easier dependency modelling in Kconfig as well as in makefiles
  • less complex initialization code than in commit 6b78bf1 because each module only implement the initialization of one ST77xx variant

Testing procedure

  • Green CI
  • tests/drivers/disp_dev and tests/drivers/st77xx should still work for all boards using a ST77xx display.
  • The PR was already tested for these tests for:
    • adafruit-pybadge
    • esp32s2-lilygo-ttgo-t8
    • esp32s3-usb-otg
    • sipeed-longan-nano

Issues/PRs references

To solve the repeatedly occurring dependency problems when modeling hardware options in Kconfig, the TFT hardware option is now modelled as a pseudomodule.
To solve the repeatedly occurring dependency problems when modeling hardware options in Kconfig, the TFT version of the Sipeed Longan Nano board has been split off into its own board definition based on the existing Siepeed Longan Nano board. A pseudo module is simply activated to indicate that the board has a TFT.
@github-actions github-actions bot added Area: doc Area: Documentation Area: tests Area: tests and testing framework Area: drivers Area: Device drivers Area: boards Area: Board ports Area: sys Area: System Area: Kconfig Area: Kconfig integration labels Jul 13, 2023
@gschorcht gschorcht force-pushed the drivers/st7735_split_into_separate branch from 959b216 to f73d874 Compare July 13, 2023 15:26
@gschorcht
Copy link
Contributor Author

Closed in favor of cleaned up PR #19825

@gschorcht gschorcht closed this Jul 13, 2023
@gschorcht gschorcht deleted the drivers/st7735_split_into_separate branch September 10, 2023 11:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: boards Area: Board ports Area: doc Area: Documentation Area: drivers Area: Device drivers Area: Kconfig Area: Kconfig integration Area: sys Area: System Area: tests Area: tests and testing framework
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant