summaryrefslogtreecommitdiff
path: root/src/t114/nvboot_bct_t114.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/t114/nvboot_bct_t114.h')
-rw-r--r--src/t114/nvboot_bct_t114.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/t114/nvboot_bct_t114.h b/src/t114/nvboot_bct_t114.h
index d759803..e42d149 100644
--- a/src/t114/nvboot_bct_t114.h
+++ b/src/t114/nvboot_bct_t114.h
@@ -207,6 +207,49 @@ typedef struct nvboot_sdmmc_params_rec {
u_int8_t multi_page_support;
} nvboot_sdmmc_params;
+typedef enum {
+ /* Specifies SPI clock source to be PLLP. */
+ nvboot_spi_clock_source_pllp_out0 = 0,
+
+ /* Specifies SPI clock source to be ClockM. */
+ nvboot_spi_clock_source_clockm = 6,
+
+ nvboot_spi_clock_source_num,
+ nvboot_spi_clock_source_force32 = 0x7FFFFFF
+} nvboot_spi_clock_source;
+
+/**
+ * Defines the parameters SPI FLASH devices.
+ */
+typedef struct nvboot_spiflash_params_rec {
+ /**
+ * Specifies the clock source to use.
+ */
+ u_int32_t clock_source;
+
+ /**
+ * Specifes the clock divider to use.
+ * The value is a 7-bit value based on an input clock of 432Mhz.
+ * Divider = (432+ DesiredFrequency-1)/DesiredFrequency;
+ * Typical values:
+ * NORMAL_READ at 20MHz: 22
+ * FAST_READ at 33MHz: 14
+ * FAST_READ at 40MHz: 11
+ * FAST_READ at 50MHz: 9
+ */
+ u_int8_t clock_divider;
+
+ /**
+ * Specifies the type of command for read operations.
+ * NV_FALSE specifies a NORMAL_READ Command
+ * NV_TRUE specifies a FAST_READ Command
+ */
+ u_int8_t read_command_type_fast;
+
+ /* 0 = 2k page size, 1 = 16K page size */
+ u_int8_t page_size_2k_or_16k;
+} nvboot_spiflash_params;
+
/**
* Defines the union of the parameters required by each device.
*/
@@ -214,6 +257,8 @@ typedef union {
u_int8_t size[64];
/* Specifies optimized parameters for eMMC and eSD */
nvboot_sdmmc_params sdmmc_params;
+ /* Specifies optimized parameters for SPI NOR */
+ nvboot_spiflash_params spiflash_params;
} nvboot_dev_params;
/**
@@ -226,6 +271,9 @@ typedef enum {
/* Specifies a default (unset) value. */
nvboot_dev_type_none = 0,
+ /* Specifies SPI NOR. */
+ nvboot_dev_type_spi = 3,
+
/* Specifies SDMMC (either eMMC or eSD). */
nvboot_dev_type_sdmmc = 4,