blob: b4170777681268aafc8236b2e4e25a752e99eda3 [file] [log] [blame] [edit]
# Copyright (c) 2025, Ambiq Micro Inc. <www.ambiq.com>
# SPDX-License-Identifier: Apache-2.0
config MSPI_AMBIQ_CONTROLLER
bool "Ambiq MSPI Controller driver"
depends on DT_HAS_AMBIQ_MSPI_CONTROLLER_ENABLED
select AMBIQ_HAL
select AMBIQ_HAL_USE_MSPI
select GPIO
help
Ambiq MSPI controller driver is enabled.
if MSPI_AMBIQ_CONTROLLER
config MSPI_AMBIQ_AP3
bool "Ambiq Apollo3 series MSPI Controller driver"
default y
depends on SOC_SERIES_APOLLO3X
imply MSPI_XIP
imply MSPI_SCRAMBLE
imply MSPI_TIMING
help
Enable driver for Ambiq MSPI.
config MSPI_AMBIQ_AP5
bool "Ambiq Apollo5 series MSPI Controller driver"
default y
depends on SOC_SERIES_APOLLO5X
imply MSPI_XIP
imply MSPI_SCRAMBLE
imply MSPI_TIMING
help
Enable driver for Ambiq MSPI.
config MSPI_AMBIQ_BUFF_RAM_LOCATION
hex "Byte offset to SRAM_BASE_ADDRESS"
default SOC_AMBIQ_DMA_BUFF_LOCATION if SOC_SERIES_APOLLO5X
default 0x50000
help
This option specifies the mspi buffer/heap start address
config MSPI_AMBIQ_BUFF_ALIGNMENT
int "Byte alignment of the MSPI buffer"
default 8 if MSPI_AMBIQ_AP3
default SOC_AMBIQ_DMA_BUFF_ALIGNMENT if SOC_SERIES_APOLLO5X
help
This option specifies the mspi buffer alignment
config MSPI_AMBIQ_TIMING_SCAN
bool "Turn on Ambiq timing scan utility"
depends on MSPI_TIMING
help
Enable timing scan will cost time and space during init
if MSPI_AMBIQ_TIMING_SCAN
config MSPI_AMBIQ_TIMING_SCAN_BUFFER_SIZE
int "Timing scan buffer size in bytes"
default 131072
help
This option specifies the memory buffer size used for timing scan,
carefully adjust this size between a few KBs to hundreds of KBs to achieve
balance between time and accuracy
config MSPI_AMBIQ_TIMING_SCAN_DATA_SIZE
int "Total data sizes in bytes used in timing scan"
default 131072
help
This option specifies the total data size used in timing scan,
it must be divisible by MSPI_AMBIQ_TIMING_SCAN_BUFFER_SIZE
endif # MSPI_AMBIQ_TIMING_SCAN
endif # MSPI_AMBIQ_CONTROLLER