|
@@ -0,0 +1,97 @@
|
|
|
+/*
|
|
|
+ * Copyright (c) 2006-2018, RT-Thread Development Team
|
|
|
+ *
|
|
|
+ * SPDX-License-Identifier: Apache-2.0
|
|
|
+ *
|
|
|
+ * Change Logs:
|
|
|
+ * Date Author Notes
|
|
|
+ * 2019-04-10 ZYH first version
|
|
|
+ */
|
|
|
+
|
|
|
+#ifndef _FAL_CFG_H_
|
|
|
+#define _FAL_CFG_H_
|
|
|
+
|
|
|
+#include <rtthread.h>
|
|
|
+#include <board.h>
|
|
|
+#if defined(BSP_USING_ON_CHIP_FLASH)
|
|
|
+#define FLASH_SIZE_GRANULARITY_16K (4 * 16 * 1024)
|
|
|
+#define FLASH_SIZE_GRANULARITY_64K (64 * 1024)
|
|
|
+#define FLASH_SIZE_GRANULARITY_128K (15 * 128 * 1024)
|
|
|
+
|
|
|
+#define STM32_FLASH_START_ADRESS_16K STM32_FLASH_START_ADRESS
|
|
|
+#define STM32_FLASH_START_ADRESS_64K (STM32_FLASH_START_ADRESS_16K + FLASH_SIZE_GRANULARITY_16K)
|
|
|
+#define STM32_FLASH_START_ADRESS_128K (STM32_FLASH_START_ADRESS_64K + FLASH_SIZE_GRANULARITY_64K)
|
|
|
+
|
|
|
+extern const struct fal_flash_dev stm32_onchip_flash_16k;
|
|
|
+extern const struct fal_flash_dev stm32_onchip_flash_64k;
|
|
|
+extern const struct fal_flash_dev stm32_onchip_flash_128k;
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(BSP_USING_QSPI_FLASH)
|
|
|
+extern struct fal_flash_dev nor_flash0;
|
|
|
+#endif
|
|
|
+
|
|
|
+/* flash device table */
|
|
|
+#if defined(BSP_USING_QSPI_FLASH) && defined(BSP_USING_ON_CHIP_FLASH)
|
|
|
+
|
|
|
+#define FAL_FLASH_DEV_TABLE \
|
|
|
+{ \
|
|
|
+ &stm32_onchip_flash_16k, \
|
|
|
+ &stm32_onchip_flash_64k, \
|
|
|
+ &stm32_onchip_flash_128k, \
|
|
|
+ &nor_flash0, \
|
|
|
+}
|
|
|
+
|
|
|
+#define ONCHIP_FLASH_PART_TABLE \
|
|
|
+ {FAL_PART_MAGIC_WROD, "bootloader", "onchip_flash_16k", 0 , FLASH_SIZE_GRANULARITY_16K , 0}, \
|
|
|
+ {FAL_PART_MAGIC_WROD, "param", "onchip_flash_64k", 0 , FLASH_SIZE_GRANULARITY_64K , 0}, \
|
|
|
+ {FAL_PART_MAGIC_WROD, "app", "onchip_flash_128k", 0 , FLASH_SIZE_GRANULARITY_128K, 0},
|
|
|
+
|
|
|
+#define QSPI_FLASH_PART_TABLE \
|
|
|
+ {FAL_PART_MAGIC_WROD, "qspiflash", FAL_USING_NOR_FLASH_DEV_NAME, 0 , (16 * 1024 * 1024), 0},
|
|
|
+
|
|
|
+#elif defined(BSP_USING_QSPI_FLASH)
|
|
|
+
|
|
|
+#define FAL_FLASH_DEV_TABLE \
|
|
|
+{ \
|
|
|
+ &nor_flash0, \
|
|
|
+}
|
|
|
+
|
|
|
+#define ONCHIP_FLASH_PART_TABLE
|
|
|
+
|
|
|
+#define QSPI_FLASH_PART_TABLE \
|
|
|
+ {FAL_PART_MAGIC_WROD, "qspiflash", FAL_USING_NOR_FLASH_DEV_NAME, 0 , (16 * 1024 * 1024), 0},
|
|
|
+
|
|
|
+#elif defined(BSP_USING_ON_CHIP_FLASH)
|
|
|
+
|
|
|
+#define FAL_FLASH_DEV_TABLE \
|
|
|
+{ \
|
|
|
+ &stm32_onchip_flash_16k, \
|
|
|
+ &stm32_onchip_flash_64k, \
|
|
|
+ &stm32_onchip_flash_128k, \
|
|
|
+}
|
|
|
+
|
|
|
+#define ONCHIP_FLASH_PART_TABLE \
|
|
|
+ {FAL_PART_MAGIC_WROD, "bootloader", "onchip_flash_16k", 0 , FLASH_SIZE_GRANULARITY_16K , 0}, \
|
|
|
+ {FAL_PART_MAGIC_WROD, "param", "onchip_flash_64k", 0 , FLASH_SIZE_GRANULARITY_64K , 0}, \
|
|
|
+ {FAL_PART_MAGIC_WROD, "app", "onchip_flash_128k", 0 , FLASH_SIZE_GRANULARITY_128K, 0},
|
|
|
+
|
|
|
+#define QSPI_FLASH_PART_TABLE
|
|
|
+
|
|
|
+#else
|
|
|
+
|
|
|
+#define FAL_FLASH_DEV_TABLE { 0 }
|
|
|
+#define FAL_PART_TABLE { 0 }
|
|
|
+
|
|
|
+#endif
|
|
|
+
|
|
|
+#ifdef FAL_PART_HAS_TABLE_CFG
|
|
|
+/* partition table */
|
|
|
+#define FAL_PART_TABLE \
|
|
|
+{ \
|
|
|
+ ONCHIP_FLASH_PART_TABLE \
|
|
|
+ QSPI_FLASH_PART_TABLE \
|
|
|
+}
|
|
|
+#endif /* FAL_PART_HAS_TABLE_CFG */
|
|
|
+
|
|
|
+#endif /* _FAL_CFG_H_ */
|