Skip to content

Commit

Permalink
samples: jesd216: add atxp032 flash to example
Browse files Browse the repository at this point in the history
Add the flash_mspi_atxp032 driver to the example and verified that
flash_mspi_atxp032_read_sfdp is working as expected.

Signed-off-by: Swift Tian <[email protected]>
  • Loading branch information
swift-tk committed Nov 22, 2024
1 parent 3f7fa40 commit 5435c3c
Show file tree
Hide file tree
Showing 3 changed files with 118 additions and 0 deletions.
9 changes: 9 additions & 0 deletions samples/drivers/jesd216/boards/apollo3p_evb.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Copyright (c) 2024 Ambiq Micro Inc. <www.ambiq.com>
# SPDX-License-Identifier: Apache-2.0

CONFIG_FLASH_MSPI_ATXP032=y
CONFIG_MSPI_INIT_PRIORITY=40
CONFIG_FLASH_INIT_PRIORITY=50
CONFIG_PM_DEVICE=y
CONFIG_SPI=n
CONFIG_SPI_NOR=n
107 changes: 107 additions & 0 deletions samples/drivers/jesd216/boards/apollo3p_evb.overlay
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
/*
* Copyright (c) 2024 Ambiq Micro Inc. <www.ambiq.com>
* SPDX-License-Identifier: Apache-2.0
*/

/ {
aliases {
mspi0 = &mspi1;
};
};

&gpio32_63 {
status = "okay";
};

&mspi1 {

compatible = "ambiq,mspi-controller";
pinctrl-0 = <&mspi1_default>;
pinctrl-1 = <&mspi1_sleep>;
pinctrl-2 = <&mspi1_flash>;
pinctrl-names = "default","sleep","flash";
status = "okay";

ce-gpios = <&gpio32_63 18 GPIO_ACTIVE_LOW>;

cmdq-buffer-location = ".mspi_buff";
cmdq-buffer-size = <256>;

atxp032: atxp032@0 {
compatible = "ambiq,mspi-device", "mspi-atxp032";
size = <DT_SIZE_M(32)>;
reg = <0>;
status = "okay";
mspi-max-frequency = <48000000>;
mspi-io-mode = "MSPI_IO_MODE_OCTAL";
mspi-data-rate = "MSPI_DATA_RATE_SINGLE";
mspi-hardware-ce-num = <0>;
read-command = <0x0B>;
write-command = <0x02>;
command-length = "INSTR_1_BYTE";
address-length = "ADDR_4_BYTE";
rx-dummy = <8>;
tx-dummy = <0>;
xip-config = <1 0 0 0>;
ce-break-config = <0 0>;
ambiq,timing-config-mask = <3>;
ambiq,timing-config = <0 8 0 0 0 0 0 0>;
};

};

&pinctrl {

mspi1_sleep: mspi1_sleep{
group1 {
pinmux = <GPIO_P51>,
<GPIO_P52>,
<GPIO_P53>,
<GPIO_P54>,
<GPIO_P55>,
<GPIO_P56>,
<GPIO_P57>,
<GPIO_P58>,
<GPIO_P59>,
<GPIO_P69>,
<GPIO_P50>;
};
};

mspi1_flash: mspi1_flash{

group1 {
pinmux = <MSPI1_0_P51>,
<MSPI1_1_P52>,
<MSPI1_2_P53>,
<MSPI1_3_P54>,
<MSPI1_4_P55>,
<MSPI1_5_P56>,
<MSPI1_6_P57>,
<MSPI1_7_P58>;
drive-strength = "0.75";
ambiq,iom-mspi = <0>;
ambiq,iom-num = <1>;
};

group2 {
pinmux = <MSPI1_8_P59>;
drive-strength = "0.75";
ambiq,iom-mspi = <0>;
ambiq,iom-num = <2>;
};

group3 {
pinmux = <NCE50_P50>;
drive-strength = "1.0";
ambiq,iom-mspi = <0>;
ambiq,iom-num = <1>;
};

group4 {
pinmux = <GPIO_P69>;
};

};

};
2 changes: 2 additions & 0 deletions samples/drivers/jesd216/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@
#define FLASH_NODE DT_COMPAT_GET_ANY_STATUS_OKAY(nxp_s32_qspi_nor)
#elif DT_HAS_COMPAT_STATUS_OKAY(nxp_imx_flexspi_nor)
#define FLASH_NODE DT_COMPAT_GET_ANY_STATUS_OKAY(nxp_imx_flexspi_nor)
#elif DT_HAS_COMPAT_STATUS_OKAY(mspi_atxp032)
#define FLASH_NODE DT_COMPAT_GET_ANY_STATUS_OKAY(mspi_atxp032)
#else
#error Unsupported flash driver
#define FLASH_NODE DT_INVALID_NODE
Expand Down

0 comments on commit 5435c3c

Please sign in to comment.