Skip to content

boards: nxp: frdm_mcxaxx6: add FlexIO parallel LCD support - #115496

Open
NeilChen93 wants to merge 5 commits into
zephyrproject-rtos:mainfrom
nxp-upstream:add_mcxaxx6_flexio_lcd_support
Open

boards: nxp: frdm_mcxaxx6: add FlexIO parallel LCD support#115496
NeilChen93 wants to merge 5 commits into
zephyrproject-rtos:mainfrom
nxp-upstream:add_mcxaxx6_flexio_lcd_support

Conversation

@NeilChen93

@NeilChen93 NeilChen93 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Adds a SmartDMA-accelerated transfer path to the FlexIO parallel LCD
(nxp,mipi-dbi-flexio-lcdif) MIPI DBI driver, as an alternative to the
existing generic-DMA (e.g. eDMA) back-end, and enables the parallel LCD
interface (lcd_par_s035_8080 shield) on frdm_mcxa266 and frdm_mcxa366,
which previously had no LCD support at all. frdm_mcxa577's existing LCD
support is converted from eDMA to SmartDMA.

Built (west build) and flashed the samples/drivers/display sample
with --shield lcd_par_s035_8080 on:

  • frdm_mcxa266 (FLASH 4.61%, RAM 30.02%)
  • frdm_mcxa366 (FLASH 4.62%, RAM 30.02%)
  • frdm_mcxa577 (FLASH 2.50%, RAM 14.15%)

@zephyrbot

Copy link
Copy Markdown

@jacob-wienecke-nxp @peterwangsz

You have been identified as a likely reviewer for the code this pull request changes, but could not be added to its review request automatically. Please review it if you are able to.

@NeilChen93
NeilChen93 force-pushed the add_mcxaxx6_flexio_lcd_support branch from fce0316 to ec34df2 Compare August 6, 2026 06:54
@nordicjm
nordicjm removed their request for review August 6, 2026 11:39
Comment thread tests/drivers/display/display_check/tests.yaml Outdated
Comment thread samples/drivers/display/tests.yaml Outdated
@JarmouniA

JarmouniA commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Can you share photo(s)/video of testing on hardware with samples/drivers/display?

@NeilChen93
NeilChen93 force-pushed the add_mcxaxx6_flexio_lcd_support branch from ec34df2 to 074ce01 Compare August 11, 2026 07:57
@NeilChen93

NeilChen93 commented Aug 11, 2026

Copy link
Copy Markdown
Contributor Author

Hi @JarmouniA , here is the photo.
image

@sonarqubecloud

Copy link
Copy Markdown

@NeilChen93
NeilChen93 requested review from JarmouniA and hakehuang and removed request for PetervdPerk-NXP August 21, 2026 08:08
@NeilChen93
NeilChen93 force-pushed the add_mcxaxx6_flexio_lcd_support branch from 87dcf66 to 410d469 Compare August 21, 2026 08:18
@hakehuang hakehuang added the block: HW Test Testing on hardware required before merging label Aug 24, 2026
Comment thread drivers/mipi_dbi/mipi_dbi_nxp_flexio_lcdif.c
Comment thread drivers/mipi_dbi/mipi_dbi_nxp_flexio_lcdif.c Outdated
Comment thread drivers/mipi_dbi/Kconfig.nxp_flexio_lcdif Outdated
Comment thread boards/nxp/frdm_mcxaxx6/board.c Outdated
@hakehuang hakehuang removed the block: HW Test Testing on hardware required before merging label Aug 24, 2026
Add a SmartDMA-accelerated transfer path as an alternative to the
generic-DMA (e.g. eDMA) back-end, selectable via
MIPI_DBI_NXP_FLEXIO_LCDIF_SMARTDMA.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
@NeilChen93
NeilChen93 force-pushed the add_mcxaxx6_flexio_lcd_support branch from 410d469 to bd65887 Compare August 25, 2026 07:20
@hakehuang

Copy link
Copy Markdown
Contributor

@NeilChen93 why frdm_mcxa577 commit in this pr? seems not related

Comment thread samples/drivers/display/tests.yaml Outdated
Comment on lines +114 to +115
- platform:frdm_mcxa266/mcxa266:SHIELD=lcd_par_s035_8080
- platform:frdm_mcxa366/mcxa366:SHIELD=lcd_par_s035_8080

@JarmouniA JarmouniA Aug 25, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
- platform:frdm_mcxa266/mcxa266:SHIELD=lcd_par_s035_8080
- platform:frdm_mcxa366/mcxa366:SHIELD=lcd_par_s035_8080

From the comment above:
"It is not intended to cover all combinations of boards and shields, but rather serve as a method to test each display shield within Zephyr"
#117331

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Update

clocks = <&syscon MCUX_FLEXIO0_CLK>;
};

smartdma: smartdma@4000e000 {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Suggested change
smartdma: smartdma@4000e000 {
smartdma: dma@4000e000 {

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Update

Add the SmartDMA controller node (disabled by default) so boards in the
MCXAxx6 family can enable it to accelerate peripheral transfers such as
the FlexIO parallel LCD interface.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
Enable the LCD-PAR-S035 8080 parallel display shield on the
FRDM-MCXA266 and FRDM-MCXA366 boards.

- Add the FlexIO MIPI-DBI parallel LCD (nxp,mipi-dbi-flexio-lcdif)
  node to both board device trees, wiring the WR/RD/data/reset/CS/RS
  signals and the FlexIO LCD pinmux.
- Add an nxp,lcd-8080 connector to board_common.dtsi describing the
  touch interrupt, backlight and reset GPIOs.
- Enable lpi2c3 as the 8080 touch panel I2C bus and add the required
  pinctrl groups for both boards.

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
Replace the eDMA-based transfer (dmas = <&edma0 0 71>) with SmartDMA
(dmas = <&smartdma>).

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
@NeilChen93
NeilChen93 force-pushed the add_mcxaxx6_flexio_lcd_support branch from bd65887 to 13e4c4d Compare August 26, 2026 02:44
@NeilChen93

Copy link
Copy Markdown
Contributor Author

@NeilChen93 why frdm_mcxa577 commit in this pr? seems not related

Hi @hakehuang, it's related to this PR. This PR adds SmartDMA back-end support to the FlexIO LCDIF driver (MIPI_DBI_NXP_FLEXIO_LCDIF_SMARTDMA). This commit switches frdm_mcxa577's FlexIO parallel LCD from the eDMA path over to the new SmartDMA back-end, so it's using the feature introduced in this PR.

That said, do you think it would be cleaner to move the frdm_mcxa577 change into a separate PR? I'm fine either way — please let me know your preference.

@hakehuang

Copy link
Copy Markdown
Contributor

That said, do you think it would be cleaner to move the frdm_mcxa577 change into a separate PR? I'm fine either way — please let me know your preference.

then please update the pr title accordingly

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: Boards/SoCs area: Devicetree Binding PR modifies or adds a Device Tree binding area: Display Controller area: Display area: Samples Samples area: Tests Issues related to a particular existing or missing test platform: NXP MCU platform: NXP NXP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants