-
Notifications
You must be signed in to change notification settings - Fork 2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
19943: cpu/stm32: FMC used for low-level LCD parallel interface r=maribu a=gschorcht ### Contribution description This PR provides the implementation of the LCD low-level MCU 8080 parallel interface using the FMC peripheral. ### Testing procedure ``` BOARD=stm32f723e-disco make -C tests/drivers/st77xx flash ``` and ``` BOARD=stm32l496g-disco make -C tests/drivers/st77xx flash ``` should work on top of PR #19941. Drawing operations should be much faster. ### Issues/PRs references Depends on PR #19941 19978: treewide: fix typos to make codespell happy r=maribu a=maribu ### Contribution description - fixes typos in comments and docs (no generated firmware changes expected) - fixes a typo in a string in a GUI of a utility program - add some false positives to the ignore list ### Testing procedure - No generated binaries (except for the GUI version of the utility program to flash the MSB-A2) should change - The diff should not look too scary ### Issues/PRs references None Co-authored-by: Gunar Schorcht <[email protected]> Co-authored-by: Marian Buschsieweke <[email protected]>
- Loading branch information
Showing
83 changed files
with
468 additions
and
86 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
/* | ||
* Copyright (C) 2023 Gunar Schorcht | ||
* | ||
* This file is subject to the terms and conditions of the GNU Lesser | ||
* General Public License v2.1. See the file LICENSE in the top level | ||
* directory for more details. | ||
*/ | ||
|
||
/** | ||
* @defgroup cpu_stm32_lcd_fmc STM32 FMC/FSMC LCD low-level parallel interface driver | ||
* @ingroup cpu_stm32 | ||
* | ||
* @{ | ||
*/ | ||
|
||
#ifndef LCD_FMC_H | ||
#define LCD_FMC_H | ||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
/** | ||
* @brief Number of LCDs using FMC banks | ||
* | ||
* It represents the number of elements in LCD FMC bank descriptor array of | ||
* type @ref lcd_fmc_desc_t. Because it is used by the preprocessor, it has | ||
* to be defined as a number. It is not possible to use the @ref ARRAY_SIZE | ||
* macro here. | ||
* | ||
* @note `LCD_FMC_NUMOF` has to be equal to the number of elements in the | ||
* LCD FMC bank descriptor array of type @ref lcd_fmc_desc_t. | ||
*/ | ||
#if DOXYGEN | ||
#define LCD_FMC_NUMOF 1 | ||
#endif | ||
|
||
/** | ||
* @brief Descriptor of the FMC bank used for a LCD | ||
* | ||
* The board definition has to specify the array @ref lcd_fmc_desc of type | ||
* @ref lcd_fmc_desc_t which defines the FMC banks and the address offsets used | ||
* for the LCD displays that are connected to FMC banks. | ||
* | ||
* @note In the case that multiple LCDs are connected to FMC banks, the FMC | ||
* bank descriptors for LCDs of type @ref lcd_fmc_desc_t | ||
* must be defined in same order as the LCD devices. | ||
*/ | ||
typedef struct { | ||
const fmc_bank_conf_t *bank; /**< FMC bank config used for the LCD */ | ||
uint32_t cmd_offset; /**< offset to the bank address used for commands */ | ||
uint32_t data_offset; /**< offset to the bank address used for data */ | ||
} lcd_fmc_desc_t; | ||
|
||
#ifdef __cplusplus | ||
} | ||
#endif | ||
|
||
#endif /* LCD_FMC_H */ | ||
/** @} */ |
Oops, something went wrong.