This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] DRA821U:关于 OSPI

Guru**** 2391055 points
Other Parts Discussed in Thread: J7200XSOMXEVM

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1470405/dra821u-about-ospi

器件型号:DRA821U

工具/软件:

尊敬的团队:

我们 设计了基于 J7200XSOMXEVM 参考设计的定制电路板。

定制板通过 QSPI (MCU_OSPI)连接到 FRAM (MB85RS4MT)。

在上述电路中、我们将器件树编写如下:

&wkup_pmx0 {
	fram_pins_default: fram-default-pins {
		pinctrl-single,pins = <
			J721E_WKUP_IOPAD(0x0, PIN_OUTPUT, 0) /* (B6) MCU_OSPI0_CLK */
			J721E_WKUP_IOPAD(0x2c, PIN_OUTPUT, 0) /* (D6) MCU_OSPI0_CSn0 */
			J721E_WKUP_IOPAD(0xc, PIN_INPUT, 0) /* (D8) MCU_OSPI0_D0 */
			J721E_WKUP_IOPAD(0x10, PIN_INPUT, 0) /* (C7) MCU_OSPI0_D1 */
			J721E_WKUP_IOPAD(0x14, PIN_INPUT, 0) /* (C5) MCU_OSPI0_D2 */
			J721E_WKUP_IOPAD(0x18, PIN_INPUT, 0) /* (A5) MCU_OSPI0_D3 */
			J721E_WKUP_IOPAD(0x8, PIN_INPUT, 0) /* (B7) MCU_OSPI0_DQS */
			J721E_WKUP_IOPAD(0x4, PIN_INPUT, 0) /* (C8) MCU_OSPI0_LBCLKO */
		>;
	};
};


&ospi0 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&fram_pins_default>;

	mb85rs4mt@0 {
		status = "okay";
		compatible = "jedec,spi-nor", "fujitsu,mb85rs4mt";
		reg = <0x0>;
		spi-tx-bus-width = <4>;
		spi-rx-bus-width = <4>;
		spi-max-frequency = <40000000>;
		cdns,tshsl-ns = <60>;
		cdns,tsd2d-ns = <60>;
		cdns,tchsh-ns = <60>;
		cdns,tslch-ns = <60>;
		cdns,read-delay = <4>;

		partitions {
			compatible = "fixed-partitions";
			#address-cells = <1>;
			#size-cells = <1>;

			partition@0 {
				label = "fram.data";
				reg = <0x00000000 0x000080000>;
			};
		};
	};
};

此外、"board-support/ti-linux-kernel-6.6.32+git-ti-RT/Documentation/devicetree/bindings/EEPROM/at25.yaml"中没有关于与 mb85rq4ml 兼容性的信息。 因此、我们能够通过修改"board-support/ti-linux-kernel-6.6.32+git-ti-RT/drivers/MTD/spi-nor/Fujitsu.c"使其兼容、如下所示。

// SPDX-License-Identifier: GPL-2.0
/*
 * Copyright (C) 2005, Intec Automation Inc.
 * Copyright (C) 2014, Freescale Semiconductor, Inc.
 */

#include <linux/mtd/spi-nor.h>

#include "core.h"

static const struct flash_info fujitsu_nor_parts[] = {
	/* Fujitsu */
	{ "mb85rs1mt", INFO(0x047f27, 0, 128 * 1024, 1)
		FLAGS(SPI_NOR_NO_ERASE) },
+	{ "mb85rq4ml", INFO(0x047f29, 0, 512 * 1024, 1)
+		FLAGS(SPI_NOR_NO_ERASE)
+		NO_SFDP_FLAGS(SPI_NOR_QUAD_READ) },
};

const struct spi_nor_manufacturer spi_nor_fujitsu = {
	.name = "fujitsu",
	.parts = fujitsu_nor_parts,
	.nparts = ARRAY_SIZE(fujitsu_nor_parts),
};

当我们进行这些设置并启动程序时、会显示以下消息、并且程序无法识别 FRAM。

~# dmesg | grep spi
[    0.738259] cadence-qspi 47040000.spi: registered master spi0
[    0.738292] spi spi0.0: setup mode 0, 8 bits/w, 40000000 Hz max --> 0
[    0.738857] spi-nor spi0.0: unrecognized JEDEC id bytes: 08 fe 53 0b ff ff
[    0.738884] cadence-qspi 47040000.spi: registered child spi0.0

由于获得的 JEDEC id 与 MB85RS4MT 不同、我们使用示波器检查了以下信号线、发现信号没有变化。
MCU_OSPI0_CLK
MCU_OSPI0_CSn0
MCU_OSPI0_D0
MCU_OSPI0_D1

查看源代码、看起来好像 RDID 命令是从 OSPI 端口发送的、但出于某种原因、我们无法获取信号波形。
你知道什么原因吗?

此外、我想在不使用 FRAM 驱动程序的情况下使用 SPI 驱动程序检查信号、但查看以下论坛、好像 spidev_test 无法与 OSPI 一起使用。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1365216/am6422-need-to-use-ospi-as-generic-spi-device/5211543?tisearch=e2e-sitesearch&keymatch=OSPI%25252525252520spidev-test#5211543

您能告诉我如何调查原因吗?

此致、

Mizutani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您是否在"[ti-u-boot-source]/drivers/mtd/spi/spi-nor-ids.c 中添加了器件详细信息?

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我们尚未修改"[ti-u-boot-source]/drivers/mtd/spi/spi-nor-ids.c。

    以下说明已从***-u-boot.dtsi 中删除、因为引导期间不使用 FRAM。

    &ospi0 {
    	bootph-all;
    
    	flash@0 {
    		cdns,phy-mode;
    		bootph-all;
    	};
    };

    在这种情况下、是否仍然需要修改"[ti-u-boot-source]/drivers/mtd/spi/spi-nor-ids.c?

    此致、

    Mizutani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    是的。 为了使固定装置和定制挂钩正常工作、u-boot 需要知道器件的 JEDEC ID。 这一点应该添加。

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我们进行了以下修复:

    -[board-support/ti-u-boot-2024.04+git/arch/arm/dts/custom_board-u-boot.dtsi]
       添加以下代码:
       

    &ospi0 {
    	bootph-all;
    
    	mb85rs4mt@0 {
    		cdns,phy-mode;
    		bootph-all;
    	};
    };

    -[board-support/ti-u-boot-2024.04+git/configs/custom_board_a72_defconfig]
       在配置文件中启用 SPI 和 MTD 相关功能:
       

    CONFIG_ARM=y
    CONFIG_ARCH_K3=y
    CONFIG_SYS_MALLOC_LEN=0x2000000
    CONFIG_SYS_MALLOC_F_LEN=0x8000
    CONFIG_SPL_GPIO=y
    CONFIG_SPL_LIBCOMMON_SUPPORT=y
    CONFIG_SPL_LIBGENERIC_SUPPORT=y
    CONFIG_NR_DRAM_BANKS=2
    CONFIG_SOC_K3_J721E=y
    CONFIG_TARGET_J7200_A72_EVM=y
    CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
    CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0x80480000
    CONFIG_SF_DEFAULT_SPEED=25000000
    CONFIG_SF_DEFAULT_MODE=0
    CONFIG_ENV_SIZE=0x20000
    CONFIG_DM_GPIO=y
    CONFIG_SPL_DM_SPI=y
    CONFIG_DEFAULT_DEVICE_TREE="custom-board-a72"
    CONFIG_SPL_TEXT_BASE=0x80080000
    CONFIG_OF_LIBFDT_OVERLAY=y
    CONFIG_DM_RESET=y
    CONFIG_SPL_MMC=y
    CONFIG_SPL_SERIAL=y
    CONFIG_SPL_DRIVERS_MISC=y
    CONFIG_SPL_STACK_R_ADDR=0x82000000
    CONFIG_SPL_FS_FAT=y
    CONFIG_SPL_LIBDISK_SUPPORT=y
    CONFIG_SPL_SPI_FLASH_SUPPORT=y
    CONFIG_SPL_SPI=y
    # CONFIG_PSCI_RESET is not set
    # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
    CONFIG_SPL_LOAD_FIT=y
    CONFIG_SPL_LOAD_FIT_ADDRESS=0x81000000
    CONFIG_BOOTSTD_FULL=y
    CONFIG_OF_BOARD_SETUP=y
    CONFIG_OF_SYSTEM_SETUP=y
    CONFIG_LOGLEVEL=7
    CONFIG_SPL_MAX_SIZE=0xc0000
    CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
    CONFIG_SPL_BSS_START_ADDR=0x80a00000
    CONFIG_SPL_BSS_MAX_SIZE=0x80000
    CONFIG_SPL_BOARD_INIT=y
    CONFIG_SPL_SYS_MALLOC_SIMPLE=y
    CONFIG_SPL_STACK_R=y
    CONFIG_SPL_SYS_MALLOC=y
    CONFIG_SPL_SYS_MALLOC_SIZE=0x800000
    CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
    CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1800
    CONFIG_SPL_DMA=y
    CONFIG_SPL_ENV_SUPPORT=y
    CONFIG_SPL_FS_LOAD_PAYLOAD_NAME="u-boot.img"
    CONFIG_SPL_I2C=y
    CONFIG_SPL_DM_MAILBOX=y
    CONFIG_SPL_MTD=y
    CONFIG_SPL_DM_SPI_FLASH=y
    CONFIG_SPL_NOR_SUPPORT=y
    CONFIG_SPL_DM_RESET=y
    CONFIG_SPL_POWER_DOMAIN=y
    CONFIG_SPL_RAM_SUPPORT=y
    CONFIG_SPL_RAM_DEVICE=y
    # CONFIG_SPL_SPI_FLASH_TINY is not set
    CONFIG_SPL_SPI_FLASH_SFDP_SUPPORT=y
    CONFIG_SPL_SPI_LOAD=y
    CONFIG_SYS_SPI_U_BOOT_OFFS=0x300000
    CONFIG_SPL_THERMAL=y
    CONFIG_SPL_YMODEM_SUPPORT=y
    CONFIG_CMD_ASKENV=y
    CONFIG_CMD_DFU=y
    # CONFIG_CMD_FLASH is not set
    CONFIG_CMD_GPIO=y
    CONFIG_CMD_GPT=y
    CONFIG_CMD_I2C=y
    CONFIG_CMD_MMC=y
    CONFIG_CMD_MTD=y
    # CONFIG_CMD_REMOTEPROC=y
    CONFIG_CMD_UFS=y
    # CONFIG_CMD_USB=y
    # CONFIG_CMD_USB_MASS_STORAGE=y
    CONFIG_CMD_TIME=y
    CONFIG_CMD_EXT4_WRITE=y
    # CONFIG_CMD_UBI=y
    # CONFIG_ISO_PARTITION is not set
    # CONFIG_SPL_EFI_PARTITION is not set
    CONFIG_OF_CONTROL=y
    CONFIG_SPL_OF_CONTROL=y
    CONFIG_SPL_MULTI_DTB_FIT=y
    CONFIG_SPL_MULTI_DTB_FIT_NO_COMPRESSION=y
    CONFIG_SYS_REDUNDAND_ENVIRONMENT=y
    CONFIG_SYS_RELOC_GD_ENV_ADDR=y
    CONFIG_NET_RANDOM_ETHADDR=y
    CONFIG_SPL_DM=y
    CONFIG_SPL_DM_SEQ_ALIAS=y
    CONFIG_REGMAP=y
    CONFIG_SPL_REGMAP=y
    CONFIG_SPL_SYSCON=y
    CONFIG_SPL_OF_TRANSLATE=y
    CONFIG_CLK=y
    CONFIG_SPL_CLK=y
    CONFIG_CLK_CCF=y
    CONFIG_CLK_TI_SCI=y
    CONFIG_DFU_MMC=y
    CONFIG_DFU_RAM=y
    CONFIG_DFU_SF=y
    CONFIG_SYS_DFU_DATA_BUF_SIZE=0x40000
    CONFIG_SYS_DFU_MAX_FILE_SIZE=0x800000
    CONFIG_DMA_CHANNELS=y
    CONFIG_TI_K3_NAVSS_UDMA=y
    CONFIG_USB_FUNCTION_FASTBOOT=y
    CONFIG_FASTBOOT_BUF_ADDR=0x82000000
    CONFIG_FASTBOOT_BUF_SIZE=0x2F000000
    CONFIG_FASTBOOT_FLASH=y
    CONFIG_FASTBOOT_FLASH_MMC_DEV=0
    CONFIG_FASTBOOT_CMD_OEM_FORMAT=y
    CONFIG_TI_SCI_PROTOCOL=y
    CONFIG_GPIO_HOG=y
    CONFIG_DA8XX_GPIO=y
    # CONFIG_DM_PCA953X=y
    CONFIG_DM_I2C=y
    CONFIG_DM_I2C_GPIO=y
    CONFIG_SYS_I2C_OMAP24XX=y
    CONFIG_DM_MAILBOX=y
    CONFIG_K3_SEC_PROXY=y
    CONFIG_SUPPORT_EMMC_BOOT=y
    CONFIG_MMC_IO_VOLTAGE=y
    CONFIG_MMC_UHS_SUPPORT=y
    CONFIG_MMC_HS400_SUPPORT=y
    CONFIG_SPL_MMC_HS400_SUPPORT=y
    CONFIG_MMC_SDHCI=y
    CONFIG_MMC_SDHCI_ADMA=y
    CONFIG_SPL_MMC_SDHCI_ADMA=y
    CONFIG_MMC_SDHCI_AM654=y
    CONFIG_MTD=y
    CONFIG_DM_MTD=y
    # CONFIG_MTD_NOR_FLASH=y
    # CONFIG_SYS_FLASH_CFI_WIDTH_16BIT=y
    # CONFIG_FLASH_SHOW_PROGRESS=0
    # CONFIG_CFI_FLASH=y
    # CONFIG_SYS_FLASH_USE_BUFFER_WRITE=y
    # CONFIG_FLASH_CFI_MTD=y
    # CONFIG_SYS_FLASH_CFI=y
    # CONFIG_HBMC_AM654=y
    # CONFIG_SYS_MAX_FLASH_BANKS_DETECT=y
    CONFIG_DM_SPI_FLASH=y
    CONFIG_SPI_FLASH_SFDP_SUPPORT=y
    CONFIG_SPI_FLASH_SOFT_RESET=y
    CONFIG_SPI_FLASH_SOFT_RESET_ON_BOOT=y
    # CONFIG_SPI_FLASH_SPANSION=y
    # CONFIG_SPI_FLASH_S28HX_T=y
    # CONFIG_SPI_FLASH_USE_4K_SECTORS is not set
    CONFIG_SPI_FLASH_MTD=y
    CONFIG_MULTIPLEXER=y
    CONFIG_MUX_MMIO=y
    CONFIG_PHY_TI_DP83867=y
    CONFIG_PHY_FIXED=y
    CONFIG_TI_AM65_CPSW_NUSS=y
    CONFIG_PHY=y
    CONFIG_SPL_PHY=y
    CONFIG_PHY_CADENCE_TORRENT=y
    CONFIG_PHY_J721E_WIZ=y
    CONFIG_PINCTRL=y
    # CONFIG_PINCTRL_GENERIC is not set
    CONFIG_SPL_PINCTRL=y
    # CONFIG_SPL_PINCTRL_GENERIC is not set
    CONFIG_PINCTRL_SINGLE=y
    CONFIG_POWER_DOMAIN=y
    CONFIG_TI_SCI_POWER_DOMAIN=y
    CONFIG_DM_REGULATOR=y
    CONFIG_DM_REGULATOR_FIXED=y
    CONFIG_DM_REGULATOR_GPIO=y
    CONFIG_RAM=y
    CONFIG_SPL_RAM=y
    CONFIG_REMOTEPROC_TI_K3_R5F=y
    CONFIG_RESET_TI_SCI=y
    CONFIG_SCSI=y
    CONFIG_DM_SERIAL=y
    CONFIG_SOC_DEVICE=y
    CONFIG_SOC_DEVICE_TI_K3=y
    CONFIG_SOC_TI=y
    CONFIG_SPI=y
    CONFIG_DM_SPI=y
    CONFIG_CADENCE_QSPI=y
    CONFIG_CADENCE_QSPI_PHY=y
    CONFIG_SYSRESET=y
    CONFIG_SPL_SYSRESET=y
    CONFIG_SYSRESET_TI_SCI=y
    CONFIG_DM_THERMAL=y
    # CONFIG_USB=y
    # CONFIG_DM_USB_GADGET=y
    # CONFIG_SPL_DM_USB_GADGET=y
    # CONFIG_USB_XHCI_HCD=y
    # CONFIG_USB_CDNS3=y
    # CONFIG_USB_CDNS3_GADGET=y
    # CONFIG_USB_CDNS3_HOST=y
    # CONFIG_SPL_USB_CDNS3_GADGET=y
    # CONFIG_USB_GADGET=y
    # CONFIG_SPL_USB_GADGET=y
    # CONFIG_USB_GADGET_MANUFACTURER="Texas Instruments"
    # CONFIG_USB_GADGET_VENDOR_NUM=0x0451
    # CONFIG_USB_GADGET_PRODUCT_NUM=0x6164
    CONFIG_SPL_DFU=y
    CONFIG_UFS=y
    CONFIG_CADENCE_UFS=y
    CONFIG_TI_J721E_UFS=y

    -[board-support/ti-u-boot-2024.04+git/drivers/mTD/SPI/spi-nor-ids.c]
      添加了 FRAM (MB85RS4MT)的参数:
       

    ...
    
    #ifdef CONFIG_SPI_FLASH_ZBIT
    	/* Zbit Semiconductor Inc. */
    	{ INFO("zb25vq128", 0x5e4018, 0, 64 * 1024, 256,
    	       SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
    #endif
    +	{ INFO("MB85RQ4ML", 0x047f29, 0, 512 * 1024, 1, SPI_NOR_QUAD_READ) },
    	{ },
    };

    之后、我们在 u-boot 中运行了"MTD 列表"、读出的 JEDEC ID 与之前相同。
    此外、我们使用示波器检查以下信号线、发现信号没有变化。
    MCU_OSPI0_CLK
    MCU_OSPI0_CSn0
    MCU_OSPI0_D0
    MCU_OSPI0_D1

    => mtd list
    jedec_spi_nor mb85rs4mt@0: Software reset enable failed: -524
    jedec_spi_nor mb85rs4mt@0: unrecognized JEDEC id bytes: 08, fe, 53
    List of MTD devices:
    No MTD device found
    

    如果更改中有任何不准确之处、请通知我。

    此致、

    Mizutani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    设备树中出现错误。
    通过校正它、可以访问存储器。

    但是、在108MHz 访问失败。

    通过执行以下操作、假设可以在高于50MHz 的频率下运行是正确的吗?
    在 OPSI 引脚上连接 MCU_OSPI0_DQS 和 MCU_OSPI0_LBCLKO。
    -在 u-boot 中以 PHY 模式运行(CDN、phy-mode)。

    要在108 MHz 上访问、还需要哪些其他设置?

    此致、

    Mizutani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    是的、您需要将 OSPI 控制器置于 phy 模式、并在闪存中设置 SPI 调优参数。  

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我检查了 mb85rq4ml 的数据表、但找不到任何调优参数。

    e2e.ti.com/.../MB85RQ4ML.pdf

    我将虚拟周期设置为6、但在108MHz 下不起作用(请参阅第12页)。

    是否是在器件树中唯一要进行的剩余调整(例如在"CDN、tshl-ns"中)?

    &ospi0 {
    	status = "okay";
    	pinctrl-names = "default";
    	pinctrl-0 = <&fram_pins_default>;
    
    	mb85rq4ml@0 {
    		compatible = "jedec,spi-nor", "fujitsu,mb85rq4ml";
    		reg = <0x0>;
    		spi-tx-bus-width = <4>;
    		spi-rx-bus-width = <4>;
    		spi-max-frequency = <108000000>;
    		cdns,tshsl-ns = <7>;
    		cdns,tsd2d-ns = <7>;
    		cdns,tchsh-ns = <7>;
    		cdns,tslch-ns = <7>;
    		cdns,read-delay = <0>;
    		m25p,fast-read;
    
    		partitions {
    			#address-cells = <1>;
    			#size-cells = <1>;
    
    			partition@0 {
    				label = "fram.data";
    				reg = <0x00000000 0x000080000>;
    			};
    		};
    	};
    };

    此致、

    Mizutani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    您可以从以下位置获取调优参数: https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-jacinto7/10_01_00_04/exports/docs/linux/Foundational_Components PHY/U-Boot/UG-QSPI.html#:~:text=loadaddr%200x6C0000%20%24文件大小-、PHY%20校准、-PHY%20校准%20允许

    是设备树中唯一要进行的剩余调整、如"CDN、tshsl-ns"?

    不要更改此值。 您能尝试使用上面我附加的 phy 校准模式吗?

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我知道我需要将 PHY 模式写入闪存。

    回到基础知识、MB85RQ4ML 是 FRAM、能够支持 PHY 模式吗?

    如果支持 PHY 模式、应将 PHY 模式写入哪个区域?

    此致、

    Mizutani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我刚看到它是 QSPI、而不是 OSPI。 此处也无法实现 phy 模式。

    请允许我就此与我们的专家进行磋商、并在本周结束时回复您。

    此致、
    Tanmay

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我对重复的跟进表示歉意、但请您就此提供最新信息?

    此外、下面对 MCU_OSPI 的最大频率的理解是否正确?

    点击模式:此操作模式可达到50 MHz 最大值。
    PHY 模式:该运行模式可以达到166 MHz 最大值。

    此致、

    Mizutani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Mizutani-san:

    点击模式:此操作模式可以达到50 MHz 最大值。
    PHY 模式:此运行模式可以达到166 MHz 最大值。

    QSPI 控制器没有 phy 模式。 对于 QSPI、我们使用的 TAP 模式在40MHz 下运行。

    我们可以达到更高的速度、但这主要取决于控制器和闪存的时序要求。

    此致、
    Tanmay