aboutsummaryrefslogtreecommitdiff
path: root/tools/imx8mimage.c
diff options
context:
space:
mode:
authorJesse Taube <mr.bossman075@gmail.com>2024-01-23 21:15:16 -0500
committerFabio Estevam <festevam@denx.de>2024-02-08 09:01:22 -0300
commitb0adbd6f8eb24f2891ae17bd84d40cdbbce65897 (patch)
treeec1410a224c39d40898b3dbaf79972453123d299 /tools/imx8mimage.c
parent9425977c47b9ccee5ba5579be7f3973406d43160 (diff)
downloadu-boot-b0adbd6f8eb24f2891ae17bd84d40cdbbce65897.zip
u-boot-b0adbd6f8eb24f2891ae17bd84d40cdbbce65897.tar.gz
u-boot-b0adbd6f8eb24f2891ae17bd84d40cdbbce65897.tar.bz2
tools: mkimage: Add support for i.MXRT FlexSPI Header
Modify imx8m Flex SPI Configuration Block to work with imxrt. Add more Flex SPI configuration options to Kconfig. Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com> Tested-by: Adam Ford <aford173@gmail.com> #imx8mn-beacon
Diffstat (limited to 'tools/imx8mimage.c')
-rw-r--r--tools/imx8mimage.c41
1 files changed, 22 insertions, 19 deletions
diff --git a/tools/imx8mimage.c b/tools/imx8mimage.c
index 21075c2..939f829 100644
--- a/tools/imx8mimage.c
+++ b/tools/imx8mimage.c
@@ -426,36 +426,39 @@ static int generate_fspi_header (int ifd)
.read_sample = CONFIG_READ_CLK_SOURCE,
.datahold = 0x03,
.datasetup = 0x03,
- .coladdrwidth = 0x00,
+ .coladdrwidth = CONFIG_FSPI_COL_ADDR_W,
.devcfgenable = 0x00,
- .reserved_2 = {0x00, 0x00, 0x00},
+ .deviceModeType = 0x00,
+ .waitTimeCfgCommands = 0x0000,
.devmodeseq = {0x00, 0x00, 0x00, 0x00},
- .devmodearg = {0x00, 0x00, 0x00, 0x00},
+ .devmodearg = 0x00000000,
.cmd_enable = 0x00,
- .reserved_3 = {0x00},
+ .configModeType = {0x00},
.cmd_seq = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
.cmd_arg = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- .controllermisc = {0x00, 0x00, 0x00, 0x00},
+ .controllermisc = cpu_to_le32(CONFIG_FSPI_CONTROLLER_MISC),
.dev_type = CONFIG_DEVICE_TYPE,
.sflash_pad = CONFIG_FLASH_PAD_TYPE,
.serial_clk = CONFIG_SERIAL_CLK_FREQUENCY,
.lut_custom = CONFIG_LUT_CUSTOM_SEQUENCE,
- .reserved_4 = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
- .sflashA1 = {0x00, 0x00, 0x00, 0x10},
- .sflashA2 = {0x00, 0x00, 0x00, 0x00},
- .sflashB1 = {0x00, 0x00, 0x00, 0x00},
- .sflashB2 = {0x00, 0x00, 0x00, 0x00},
- .cspadover = {0x00, 0x00, 0x00, 0x00},
- .sclkpadover = {0x00, 0x00, 0x00, 0x00},
- .datapadover = {0x00, 0x00, 0x00, 0x00},
- .dqspadover = {0x00, 0x00, 0x00, 0x00},
- .timeout = {0x00, 0x00, 0x00, 0x00},
- .commandInt = {0x00, 0x00, 0x00, 0x00},
- .datavalid = {0x00, 0x00, 0x00, 0x00},
- .busyoffset = {0x00, 0x00},
- .busybitpolarity = {0x00, 0x00},
+ .reserved_2 = {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00},
+ .sflashA1 = cpu_to_le32(CONFIG_FSPI_FLASH_A1_SIZE),
+ .sflashA2 = 0x00000000,
+ .sflashB1 = 0x00000000,
+ .sflashB2 = 0x00000000,
+ .cspadover = 0x00000000,
+ .sclkpadover = 0x00000000,
+ .datapadover = 0x00000000,
+ .dqspadover = 0x00000000,
+ .timeout = 0x00000000,
+ .commandInt = 0x00000000,
+ .datavalid = {0x0000, 0x0000},
+ .busyoffset = 0x0000,
+ .busybitpolarity = 0x0000,
+ .lutCustomSeq = {0x00},
+ .reserved_3 = {0x00}
};
for (val = strtok(lut_str, ","); val; val = strtok(NULL, ",")) {