-
Notifications
You must be signed in to change notification settings - Fork 8.2k
dts/arm: stm32h7: quadspi added #34695
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
dts/arm: stm32h7: quadspi added #34695
Conversation
erwango
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@SpooniSpoon have you been able to validate that this is sufficient to use quadspi on H7 ?
|
I used samples/subsys/fs/littlefs without DMA support for validation of the dts add-on. |
Nice! Was it done on an in tree board ? |
Unfortunately not, I am using a custom board with a W25Q128JVSIM QSPI device. |
Ok. From what I can see we have an in-tree board with quad-spi memory (STM32H747I-DISCO), |
First of all I had to undefined the DMA node within the QSPI node. After that I still had some compiler errors related to the MDMA. As a quick fix I added |
This is not strictly an issue as we can have QPSI working w/o dma.
Likely this is because QSPI support requires MDMA enabling in Cube H7 HAL, we can live with that, In any case we'd need these both points to be addressed and provided as part of this change so others don't face and report the same issues. |
erwango
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please provide related drivers changes.
Where is the right place for documentation in the related yml file of the qspi binding or in the help section of the related Kconfig file? |
I'd say both Kconfig and yaml. |
|
commit message |
erwango
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please fix commit message for first commit ("quadspi added to device tree of stm32h7 familie")
quadspi added to device tree of stm32h7 family. validated with samples/subsys/fs/littlefs Signed-off-by: Raphael Löffel <[email protected]>
2b35285 to
b36db74
Compare
whitespace issue fixed to pass compliance checks. Signed-off-by: Raphael Löffel <[email protected]>
eb31168 to
7563995
Compare
erwango
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One more comment.
Also please squash your 2 commits.
| select FLASH_HAS_PAGE_LAYOUT | ||
| select DMA if $(DT_STM32_QUADSPI_HAS_DMA) | ||
| select USE_STM32_HAL_DMA if $(DT_STM32_QUADSPI_HAS_DMA) | ||
| select USE_STM32_HAL_MDMA if !$(DT_STM32_QUADSPI_HAS_DMA) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The proposed logic is not correct.
User always has the possibility of not using DMA wth QSPI, even if supported on the series in use.
With this change, MDMA is systematically enabled in this case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The MDMA is always required by the STM32 QSPI HAL driver also without DMA support. As a workaround to avoid compiler errors I enabled the MDMA HAL driver if DMA support is disabled.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This maybe the case on H7, but not on all STM32 series.
You can have a try by doing the folloing change in disco_l475_iot1.dts:
&quadspi {
pinctrl-0 = <&quadspi_clk_pe10 &quadspi_ncs_pe11
&quadspi_bk1_io0_pe12 &quadspi_bk1_io1_pe13
&quadspi_bk1_io2_pe14 &quadspi_bk1_io3_pe15>;
- dmas = <&dma1 5 5 0x0000 0x03>;
- dma-names = "tx_rx";
+ //dmas = <&dma1 5 5 0x0000 0x03>;
+ //dma-names = "tx_rx";
Then run:
west build -b disco_l475_iot1 samples/drivers/flash_shell
|
This pull request has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this pull request will automatically be closed in 14 days. Note, that you can always re-open a closed pull request at any time. |
|
@SpooniSpoon - please rebase and address the last comment |
|
@SpooniSpoon , @erwango - is this one still moving forward? |
|
@SpooniSpoon Do you plan to continue this PR ? |
|
This pull request has been marked as stale because it has been open (more than) 60 days with no activity. Remove the stale label or add a comment saying that you would like to have the label removed otherwise this pull request will automatically be closed in 14 days. Note, that you can always re-open a closed pull request at any time. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
similar patch is one of parts of #40859
dts/arm: stm32h7: quadspi added
quadspi added to device tree of stm32h7 family.
validated with samples/subsys/fs/littlefs
Signed-off-by: Raphael Löffel [email protected]