External Memory Configuration Data (XMCD)

The XMCD is used for configuration of external memories (RAM)

XMCD template for rt116x and flexspi_ram

  • family (string): MCU family name. Must be one of: ['rt116x', 'rt117x', 'rt118x'].

  • revision (string): If needed this could be used to specify silicon revision of device. Must be one of: ['latest'].

  • mem_type (string): Specify type of memory used by XMCD description. Must be one of: ['flexspi_ram', 'semc_sdram'].

  • config_type (string): Specify type of configuration used by XMCD description. Must be one of: ['simplified', 'full'].

  • xmcd_settings (object)

    • header (object): XMCD Header.

      • bitfields (object)

        • configurationBlockSize ([‘string’, ‘number’]): Configuration block size including XMCD header itself.

        • configurationBlockType ([‘string’, ‘number’]): Configuration block type: 0 - Simplified, 1 - Full.

        • instance ([‘string’, ‘number’]): SoC defined instances.

        • memoryInterface ([‘string’, ‘number’]): Memory interface: 0 - FlexSPI, 1 - SEMC.

        • version ([‘string’, ‘number’]): Version, fixed value 0x0.

        • tag ([‘string’, ‘number’]): Tag, fixed value 0xC.

    • tag (object): [0x000-0x003] Tag: fixed value 0x62666366, ascii: ‘fcfb’.

      • value ([‘string’, ‘number’]): [0x000-0x003] Tag: fixed value 0x62666366, ascii: ‘fcfb’.

    • version (object): [0x004-0x007] Version: [31:24] - ‘V’, [23:16] - Major, [15:8] - Minor, [7:0] - bugfix.

      • bitfields (object)

        • bugfix ([‘string’, ‘number’]): bugfix.

        • major ([‘string’, ‘number’]): major = 1.

        • minor ([‘string’, ‘number’]): minor.

        • ascii ([‘string’, ‘number’]): ascii ‘V’.

    • reserved0 (object): [0x008-0x00b] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x008-0x00b] Reserved for future use.

    • readSampleClkSrc (object): [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3.

      • value ([‘string’, ‘number’]): [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3.

    • csHoldTime (object): [0x00d-0x00d] CS hold time, default value: 3.

      • value ([‘string’, ‘number’]): [0x00d-0x00d] CS hold time, default value: 3.

    • csSetupTime (object): [0x00e-0x00e] CS setup time, default value: 3.

      • value ([‘string’, ‘number’]): [0x00e-0x00e] CS setup time, default value: 3.

    • columnAddressWidth (object): [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet.

      • value ([‘string’, ‘number’]): [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet.

    • deviceModeCfgEnable (object): [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled.

      • value ([‘string’, ‘number’]): [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled.

    • deviceModeType (object): [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.

      • value ([‘string’, ‘number’]): [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.

    • waitTimeCfgCommands (object): [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command.

      • value ([‘string’, ‘number’]): [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command.

    • deviceModeSeq (object): [0x014-0x017] Device mode sequence info, [7:0] - LUT number of sequences, [15:8] - LUT sequence index, [31:16] Reserved.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved, fixed to 0.

    • deviceModeArg (object): [0x018-0x01b] Argument/Parameter for device configuration.

      • value ([‘string’, ‘number’]): [0x018-0x01b] Argument/Parameter for device configuration.

    • configCmdEnable (object): [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable.

      • value ([‘string’, ‘number’]): [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable.

    • configModeType_0 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0].

    • configModeType_1 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1].

    • configModeType_2 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2].

    • configCmdSeqs_0 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • configCmdSeqs_1 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • configCmdSeqs_2 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • reserved1 (object): [0x02c-0x02f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x02c-0x02f] Reserved for future use.

    • configCmdArgs_0 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • configCmdArgs_1 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • configCmdArgs_2 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • reserved2 (object): [0x03c-0x03f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x03c-0x03f] Reserved for future use.

    • controllerMiscOption (object): [0x040-0x043] Controller Misc Option, see Misc feature bit definitions for more details.

      • bitfields (object)

        • bit0 ([‘string’, ‘number’]): Bit0 - differential clock enable.

        • bit1 ([‘string’, ‘number’]): Bit1 - CK2 enable.

        • bit2 ([‘string’, ‘number’]): Bit2 - ParallelModeEnable.

        • bit3 ([‘string’, ‘number’]): Bit3 - wordAddressableEnable.

        • bit4 ([‘string’, ‘number’]): Bit4 - Half-Speed access enable.

        • bit5 ([‘string’, ‘number’]): Bit5 - Pad Settings Override Enable.

        • bit6 ([‘string’, ‘number’]): Bit6 - DDR Mode Enable.

        • bit7 ([‘string’, ‘number’]): Bit7 - Pad Settings Overide Enable.

        • bit8 ([‘string’, ‘number’]): Bit8 - Second Pinmux group.

        • bit9 ([‘string’, ‘number’]): Bit9 - Second DQS pi mux group.

        • bit10 ([‘string’, ‘number’]): Bit10 - Write Mask Enable.

        • bit11 ([‘string’, ‘number’]): Bit11 - Write Opt1 Clear.

        • reserved ([‘string’, ‘number’]): N/A.

    • deviceType (object): [0x044-0x044] Device Type: See Flash Type Definition for more details.

      • value ([‘string’, ‘number’]): [0x044-0x044] Device Type: See Flash Type Definition for more details.

    • sflashPadType (object): [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal.

      • value ([‘string’, ‘number’]): [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal.

    • serialClkFreq (object): [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details.

      • value ([‘string’, ‘number’]): [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details.

    • lutCustomSeqEnable (object): [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH.

      • value ([‘string’, ‘number’]): [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH.

    • reserved3_0 (object): [0x048-0x04f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x048-0x04f] Reserved for future use.

    • reserved3_1 (object): [0x048-0x04f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x048-0x04f] Reserved for future use.

    • sflashA1Size (object): [0x050-0x053] Size of Flash connected to A1.

      • value ([‘string’, ‘number’]): [0x050-0x053] Size of Flash connected to A1.

    • sflashA2Size (object): [0x054-0x057] Size of Flash connected to A2.

      • value ([‘string’, ‘number’]): [0x054-0x057] Size of Flash connected to A2.

    • sflashB1Size (object): [0x058-0x05b] Size of Flash connected to B1.

      • value ([‘string’, ‘number’]): [0x058-0x05b] Size of Flash connected to B1.

    • sflashB2Size (object): [0x05c-0x05f] Size of Flash connected to B2.

      • value ([‘string’, ‘number’]): [0x05c-0x05f] Size of Flash connected to B2.

    • csPadSettingOverride (object): [0x060-0x063] CS pad setting override value.

      • value ([‘string’, ‘number’]): [0x060-0x063] CS pad setting override value.

    • sclkPadSettingOverride (object): [0x064-0x067] SCK pad setting override value.

      • value ([‘string’, ‘number’]): [0x064-0x067] SCK pad setting override value.

    • dataPadSettingOverride (object): [0x068-0x06b] data pad setting override value.

      • value ([‘string’, ‘number’]): [0x068-0x06b] data pad setting override value.

    • dqsPadSettingOverride (object): [0x06c-0x06f] DQS pad setting override value.

      • value ([‘string’, ‘number’]): [0x06c-0x06f] DQS pad setting override value.

    • timeoutInMs (object): [0x070-0x073] Timeout threshold for read status command.

      • value ([‘string’, ‘number’]): [0x070-0x073] Timeout threshold for read status command.

    • commandInterval (object): [0x074-0x077] CS deselect interval between two commands.

      • value ([‘string’, ‘number’]): [0x074-0x077] CS deselect interval between two commands.

    • dataValidTime_0 (object): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

      • value ([‘string’, ‘number’]): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

    • dataValidTime_1 (object): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

      • value ([‘string’, ‘number’]): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

    • busyOffset (object): [0x07c-0x07d] Busy offset, valid value: 0-31.

      • value ([‘string’, ‘number’]): [0x07c-0x07d] Busy offset, valid value: 0-31.

    • busyBitPolarity (object): [0x07e-0x07f] Busy flag polarity, 0 - busy flag is 1 when flash device is busy, 1 - busy flag is 0 when flash device is busy.

      • bitfields (object)

        • busyBitPolarity ([‘string’, ‘number’]): Busy flag polarity.

    • lookupTable_0 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_1 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_2 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_3 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_4 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_5 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_6 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_7 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_8 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_9 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_10 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_11 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_12 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_13 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_14 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_15 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_16 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_17 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_18 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_19 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_20 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_21 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_22 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_23 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_24 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_25 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_26 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_27 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_28 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_29 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_30 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_31 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_32 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_33 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_34 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_35 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_36 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_37 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_38 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_39 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_40 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_41 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_42 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_43 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_44 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_45 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_46 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_47 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_48 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_49 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_50 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_51 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_52 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_53 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_54 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_55 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_56 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_57 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_58 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_59 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_60 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_61 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_62 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_63 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lutCustomSeq_0 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_1 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_2 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_3 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_4 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_5 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_6 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_7 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_8 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_9 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_10 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_11 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • reserved4_0 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_1 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_2 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_3 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • pageSize (object): Page size of Serial NOR.

      • value ([‘string’, ‘number’]): Page size of Serial NOR.

    • sectorSize (object): Sector size of Serial NOR.

      • value ([‘string’, ‘number’]): Sector size of Serial NOR.

    • ipcmdSerialClkFreq (object): Clock frequency for IP command.

      • value ([‘string’, ‘number’]): Clock frequency for IP command.

    • isUniformBlockSize (object): Sector/Block size is the same.

      • value ([‘string’, ‘number’]): Sector/Block size is the same.

    • reserved0_0 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserved0_1 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • serialNorType (object): Serial NOR Flash type: 0/1/2/3.

      • value ([‘string’, ‘number’]): Serial NOR Flash type: 0/1/2/3.

    • needExitNoCmdMode (object): Need to exit NoCmd mode before other IP command.

      • value ([‘string’, ‘number’]): Need to exit NoCmd mode before other IP command.

    • halfClkForNonReadCmd (object): Half the Serial Clock for non-read command: true/false.

      • value ([‘string’, ‘number’]): Half the Serial Clock for non-read command: true/false.

    • needRestoreNoCmdMode (object): Need to Restore NoCmd mode after IP commmand execution.

      • value ([‘string’, ‘number’]): Need to Restore NoCmd mode after IP commmand execution.

    • blockSize (object): Block size.

      • value ([‘string’, ‘number’]): Block size.

    • reserve2_0 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_1 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_2 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_3 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_4 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_5 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_6 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_7 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_8 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_9 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_10 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

# ===========  XMCD template for rt116x and flexspi_ram  ===========
# ----------------------------------------------------------------------------------------------------
#                            == XMCD template for rt116x and flexspi_ram ==
# ----------------------------------------------------------------------------------------------------
family: CHOOSE_FROM_TABLE  # [Required], MCU family name; Possible options:['rt116x', 'rt117x', 'rt118x']
revision: latest # [Optional], Chip silicon revision; If needed this could be used to specify silicon revision of device; Possible options:['latest']
mem_type: flexspi_ram # [Required], Memory type; Specify type of memory used by XMCD description; Possible options:['flexspi_ram', 'semc_sdram']
config_type: simplified # [Required], Configuration type; Specify type of configuration used by XMCD description; Possible options:['simplified', 'full']
xmcd_settings: # [Required], rt116x
  header:  # [Optional], header; XMCD Header
    bitfields:  # [Required]
      configurationBlockSize: 516  # [Optional], configurationBlockSize; Configuration block size including XMCD header itself
      configurationBlockType: 1 # [Optional], configurationBlockType; Configuration block type: 0 - Simplified, 1 - Full
      instance: 0 # [Optional], instance; SoC defined instances
      memoryInterface: 0 # [Optional], memoryInterface; Memory interface: 0 - FlexSPI, 1 - SEMC
      version: 0 # [Optional], Version, fixed value 0x0
      tag: 12 # [Optional], Tag, fixed value 0xC
  tag: # [Optional], tag;  [0x000-0x003] Tag: fixed value 0x62666366, ascii: 'fcfb'
    value: '0x00000000'  # [Required], tag;  [0x000-0x003] Tag: fixed value 0x62666366, ascii: 'fcfb'
  version: # [Optional], version;  [0x004-0x007] Version: [31:24] - 'V', [23:16] - Major, [15:8] - Minor, [7:0] - bugfix
    bitfields:  # [Required]
      bugfix: 0  # [Optional], bugfix;  bugfix
      major: 1 # [Optional], major;  major = 1
      minor: 0 # [Optional], minor;  minor
      ascii: 0 # [Optional], ascii;  ascii 'V'
  reserved0: # [Optional], reserved0;  [0x008-0x00b] Reserved for future use
    value: '0x00000000'  # [Required], reserved0;  [0x008-0x00b] Reserved for future use
  readSampleClkSrc: # [Optional], readSampleClkSrc;  [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3
    value: '0x00'  # [Required], readSampleClkSrc;  [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3
  csHoldTime: # [Optional], csHoldTime;  [0x00d-0x00d] CS hold time, default value: 3
    value: '0x03'  # [Required], csHoldTime;  [0x00d-0x00d] CS hold time, default value: 3
  csSetupTime: # [Optional], csSetupTime;  [0x00e-0x00e] CS setup time, default value: 3
    value: '0x03'  # [Required], csSetupTime;  [0x00e-0x00e] CS setup time, default value: 3
  columnAddressWidth: # [Optional], columnAddressWidth;  [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet
    value: '0x03'  # [Required], columnAddressWidth;  [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet
  deviceModeCfgEnable: # [Optional], deviceModeCfgEnable;  [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled
    value: '0x00'  # [Required], deviceModeCfgEnable;  [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled
  deviceModeType: # [Optional], deviceModeType;  [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.
    value: '0x00'  # [Required], deviceModeType;  [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.
  waitTimeCfgCommands: # [Optional], waitTimeCfgCommands;  [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command
    value: '0x0000'  # [Required], waitTimeCfgCommands;  [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command
  deviceModeSeq: # [Optional], deviceModeSeq;  [0x014-0x017] Device mode sequence info, [7:0] - LUT number of sequences, [15:8] - LUT sequence index, [31:16] Reserved
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved, fixed to 0
  deviceModeArg: # [Optional], deviceModeArg;  [0x018-0x01b] Argument/Parameter for device configuration
    value: '0x00000000'  # [Required], deviceModeArg;  [0x018-0x01b] Argument/Parameter for device configuration
  configCmdEnable: # [Optional], configCmdEnable;  [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable
    value: '0x00'  # [Required], configCmdEnable;  [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable
  configModeType_0: # [Optional], configModeType_0;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0]
    value: '0x00'  # [Required], configModeType_0;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0]
  configModeType_1: # [Optional], configModeType_1;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1]
    value: '0x00'  # [Required], configModeType_1;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1]
  configModeType_2: # [Optional], configModeType_2;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2]
    value: '0x00'  # [Required], configModeType_2;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2]
  configCmdSeqs_0: # [Optional], configCmdSeqs_0;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  configCmdSeqs_1: # [Optional], configCmdSeqs_1;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  configCmdSeqs_2: # [Optional], configCmdSeqs_2;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  reserved1: # [Optional], reserved1;  [0x02c-0x02f] Reserved for future use
    value: '0x00000000'  # [Required], reserved1;  [0x02c-0x02f] Reserved for future use
  configCmdArgs_0: # [Optional], configCmdArgs_0;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_0;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  configCmdArgs_1: # [Optional], configCmdArgs_1;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_1;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  configCmdArgs_2: # [Optional], configCmdArgs_2;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_2;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  reserved2: # [Optional], reserved2;  [0x03c-0x03f] Reserved for future use
    value: '0x00000000'  # [Required], reserved2;  [0x03c-0x03f] Reserved for future use
  controllerMiscOption: # [Optional], controllerMiscOption;  [0x040-0x043] Controller Misc Option, see Misc feature bit definitions for more details
    bitfields:  # [Required]
      bit0: 0  # [Optional], bit0;  Bit0 - differential clock enable
      bit1: 0 # [Optional], bit1;  Bit1 - CK2 enable
      bit2: 0 # [Optional], bit2;  Bit2 - ParallelModeEnable
      bit3: 0 # [Optional], bit3;  Bit3 - wordAddressableEnable
      bit4: 0 # [Optional], bit4;  Bit4 - Half-Speed access enable
      bit5: 0 # [Optional], bit5;  Bit5 - Pad Settings Override Enable
      bit6: 0 # [Optional], bit6;  Bit6 - DDR Mode Enable
      bit7: 0 # [Optional], bit7;  Bit7 - Pad Settings Overide Enable
      bit8: 0 # [Optional], bit8;  Bit8 - Second Pinmux group
      bit9: 0 # [Optional], bit9;  Bit9 - Second DQS pi mux group
      bit10: 0 # [Optional], bit10;  Bit10 - Write Mask Enable
      bit11: 0 # [Optional], bit11;  Bit11 - Write Opt1 Clear
      reserved: 0 # [Optional], reserved; N/A
  deviceType: # [Optional], deviceType;  [0x044-0x044] Device Type:  See Flash Type Definition for more details
    value: '0x03'  # [Required], deviceType;  [0x044-0x044] Device Type:  See Flash Type Definition for more details
  sflashPadType: # [Optional], sflashPadType;  [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal
    value: '0x01'  # [Required], sflashPadType;  [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal
  serialClkFreq: # [Optional], serialClkFreq;  [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details
    value: '0x00'  # [Required], serialClkFreq;  [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details
  lutCustomSeqEnable: # [Optional], lutCustomSeqEnable;  [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH
    value: '0x00'  # [Required], lutCustomSeqEnable;  [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH
  reserved3_0: # [Optional], reserved3_0;  [0x048-0x04f] Reserved for future use
    value: '0x00000000'  # [Required], reserved3_0;  [0x048-0x04f] Reserved for future use
  reserved3_1: # [Optional], reserved3_1;  [0x048-0x04f] Reserved for future use
    value: '0x00000000'  # [Required], reserved3_1;  [0x048-0x04f] Reserved for future use
  sflashA1Size: # [Optional], sflashA1Size;  [0x050-0x053] Size of Flash connected to A1
    value: '0x00000000'  # [Required], sflashA1Size;  [0x050-0x053] Size of Flash connected to A1
  sflashA2Size: # [Optional], sflashA2Size;  [0x054-0x057] Size of Flash connected to A2
    value: '0x00000000'  # [Required], sflashA2Size;  [0x054-0x057] Size of Flash connected to A2
  sflashB1Size: # [Optional], sflashB1Size;  [0x058-0x05b] Size of Flash connected to B1
    value: '0x00000000'  # [Required], sflashB1Size;  [0x058-0x05b] Size of Flash connected to B1
  sflashB2Size: # [Optional], sflashB2Size;  [0x05c-0x05f] Size of Flash connected to B2
    value: '0x00000000'  # [Required], sflashB2Size;  [0x05c-0x05f] Size of Flash connected to B2
  csPadSettingOverride: # [Optional], csPadSettingOverride;  [0x060-0x063] CS pad setting override value
    value: '0x00000000'  # [Required], csPadSettingOverride;  [0x060-0x063] CS pad setting override value
  sclkPadSettingOverride: # [Optional], sclkPadSettingOverride;  [0x064-0x067] SCK pad setting override value
    value: '0x00000000'  # [Required], sclkPadSettingOverride;  [0x064-0x067] SCK pad setting override value
  dataPadSettingOverride: # [Optional], dataPadSettingOverride;  [0x068-0x06b] data pad setting override value
    value: '0x00000000'  # [Required], dataPadSettingOverride;  [0x068-0x06b] data pad setting override value
  dqsPadSettingOverride: # [Optional], dqsPadSettingOverride;  [0x06c-0x06f] DQS pad setting override value
    value: '0x00000000'  # [Required], dqsPadSettingOverride;  [0x06c-0x06f] DQS pad setting override value
  timeoutInMs: # [Optional], timeoutInMs;  [0x070-0x073] Timeout threshold for read status command
    value: '0x00000000'  # [Required], timeoutInMs;  [0x070-0x073] Timeout threshold for read status command
  commandInterval: # [Optional], commandInterval;  [0x074-0x077] CS deselect interval between two commands
    value: '0x00000000'  # [Required], commandInterval;  [0x074-0x077] CS deselect interval between two commands
  dataValidTime_0: # [Optional], dataValidTime_0;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
    value: '0x0000'  # [Required], dataValidTime_0;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
  dataValidTime_1: # [Optional], dataValidTime_1;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
    value: '0x0000'  # [Required], dataValidTime_1;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
  busyOffset: # [Optional], busyOffset;  [0x07c-0x07d] Busy offset, valid value: 0-31
    value: '0x0000'  # [Required], busyOffset;  [0x07c-0x07d] Busy offset, valid value: 0-31
  busyBitPolarity: # [Optional], busyBitPolarity;  [0x07e-0x07f] Busy flag polarity, 0 - busy flag is 1 when flash device is busy, 1 - busy flag is 0 when flash device is busy
    bitfields:  # [Required]
      busyBitPolarity: 0  # [Optional], busyBitPolarity;  Busy flag polarity
  lookupTable_0: # [Optional], lookupTable_0;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_0;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_1: # [Optional], lookupTable_1;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_1;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_2: # [Optional], lookupTable_2;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_2;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_3: # [Optional], lookupTable_3;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_3;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_4: # [Optional], lookupTable_4;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_4;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_5: # [Optional], lookupTable_5;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_5;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_6: # [Optional], lookupTable_6;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_6;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_7: # [Optional], lookupTable_7;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_7;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_8: # [Optional], lookupTable_8;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_8;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_9: # [Optional], lookupTable_9;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_9;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_10: # [Optional], lookupTable_10;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_10;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_11: # [Optional], lookupTable_11;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_11;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_12: # [Optional], lookupTable_12;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_12;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_13: # [Optional], lookupTable_13;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_13;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_14: # [Optional], lookupTable_14;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_14;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_15: # [Optional], lookupTable_15;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_15;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_16: # [Optional], lookupTable_16;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_16;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_17: # [Optional], lookupTable_17;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_17;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_18: # [Optional], lookupTable_18;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_18;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_19: # [Optional], lookupTable_19;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_19;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_20: # [Optional], lookupTable_20;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_20;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_21: # [Optional], lookupTable_21;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_21;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_22: # [Optional], lookupTable_22;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_22;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_23: # [Optional], lookupTable_23;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_23;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_24: # [Optional], lookupTable_24;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_24;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_25: # [Optional], lookupTable_25;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_25;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_26: # [Optional], lookupTable_26;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_26;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_27: # [Optional], lookupTable_27;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_27;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_28: # [Optional], lookupTable_28;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_28;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_29: # [Optional], lookupTable_29;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_29;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_30: # [Optional], lookupTable_30;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_30;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_31: # [Optional], lookupTable_31;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_31;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_32: # [Optional], lookupTable_32;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_32;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_33: # [Optional], lookupTable_33;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_33;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_34: # [Optional], lookupTable_34;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_34;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_35: # [Optional], lookupTable_35;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_35;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_36: # [Optional], lookupTable_36;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_36;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_37: # [Optional], lookupTable_37;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_37;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_38: # [Optional], lookupTable_38;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_38;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_39: # [Optional], lookupTable_39;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_39;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_40: # [Optional], lookupTable_40;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_40;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_41: # [Optional], lookupTable_41;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_41;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_42: # [Optional], lookupTable_42;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_42;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_43: # [Optional], lookupTable_43;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_43;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_44: # [Optional], lookupTable_44;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_44;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_45: # [Optional], lookupTable_45;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_45;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_46: # [Optional], lookupTable_46;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_46;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_47: # [Optional], lookupTable_47;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_47;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_48: # [Optional], lookupTable_48;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_48;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_49: # [Optional], lookupTable_49;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_49;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_50: # [Optional], lookupTable_50;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_50;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_51: # [Optional], lookupTable_51;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_51;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_52: # [Optional], lookupTable_52;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_52;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_53: # [Optional], lookupTable_53;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_53;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_54: # [Optional], lookupTable_54;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_54;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_55: # [Optional], lookupTable_55;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_55;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_56: # [Optional], lookupTable_56;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_56;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_57: # [Optional], lookupTable_57;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_57;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_58: # [Optional], lookupTable_58;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_58;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_59: # [Optional], lookupTable_59;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_59;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_60: # [Optional], lookupTable_60;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_60;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_61: # [Optional], lookupTable_61;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_61;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_62: # [Optional], lookupTable_62;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_62;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_63: # [Optional], lookupTable_63;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_63;  [0x080-0x17f] Lookup table holds Flash command sequences
  lutCustomSeq_0: # [Optional], lutCustomSeq_0;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_1: # [Optional], lutCustomSeq_1;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_2: # [Optional], lutCustomSeq_2;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_3: # [Optional], lutCustomSeq_3;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_4: # [Optional], lutCustomSeq_4;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_5: # [Optional], lutCustomSeq_5;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_6: # [Optional], lutCustomSeq_6;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_7: # [Optional], lutCustomSeq_7;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_8: # [Optional], lutCustomSeq_8;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_9: # [Optional], lutCustomSeq_9;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_10: # [Optional], lutCustomSeq_10;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_11: # [Optional], lutCustomSeq_11;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  reserved4_0: # [Optional], reserved4_0;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_0;  [0x1b0-0x1bf] Reserved for future use
  reserved4_1: # [Optional], reserved4_1;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_1;  [0x1b0-0x1bf] Reserved for future use
  reserved4_2: # [Optional], reserved4_2;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_2;  [0x1b0-0x1bf] Reserved for future use
  reserved4_3: # [Optional], reserved4_3;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_3;  [0x1b0-0x1bf] Reserved for future use
  pageSize: # [Optional], pageSize;  Page size of Serial NOR
    value: '0x00000000'  # [Required], pageSize;  Page size of Serial NOR
  sectorSize: # [Optional], sectorSize;  Sector size of Serial NOR
    value: '0x00000000'  # [Required], sectorSize;  Sector size of Serial NOR
  ipcmdSerialClkFreq: # [Optional], ipcmdSerialClkFreq;  Clock frequency for IP command
    value: '0x00'  # [Required], ipcmdSerialClkFreq;  Clock frequency for IP command
  isUniformBlockSize: # [Optional], isUniformBlockSize;  Sector/Block size is the same
    value: '0x00'  # [Required], isUniformBlockSize;  Sector/Block size is the same
  reserved0_0: # [Optional], reserved0_0;  Reserved for future use
    value: '0x00'  # [Required], reserved0_0;  Reserved for future use
  reserved0_1: # [Optional], reserved0_1;  Reserved for future use
    value: '0x00'  # [Required], reserved0_1;  Reserved for future use
  serialNorType: # [Optional], serialNorType;  Serial NOR Flash type: 0/1/2/3
    value: '0x00'  # [Required], serialNorType;  Serial NOR Flash type: 0/1/2/3
  needExitNoCmdMode: # [Optional], needExitNoCmdMode;  Need to exit NoCmd mode before other IP command
    value: '0x00'  # [Required], needExitNoCmdMode;  Need to exit NoCmd mode before other IP command
  halfClkForNonReadCmd: # [Optional], halfClkForNonReadCmd;  Half the Serial Clock for non-read command: true/false
    value: '0x00'  # [Required], halfClkForNonReadCmd;  Half the Serial Clock for non-read command: true/false
  needRestoreNoCmdMode: # [Optional], needRestoreNoCmdMode;  Need to Restore NoCmd mode after IP commmand execution
    value: '0x00'  # [Required], needRestoreNoCmdMode;  Need to Restore NoCmd mode after IP commmand execution
  blockSize: # [Optional], blockSize;  Block size
    value: '0x00000000'  # [Required], blockSize;  Block size
  reserve2_0: # [Optional], reserve2_0;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_0;  Reserved for future use
  reserve2_1: # [Optional], reserve2_1;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_1;  Reserved for future use
  reserve2_2: # [Optional], reserve2_2;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_2;  Reserved for future use
  reserve2_3: # [Optional], reserve2_3;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_3;  Reserved for future use
  reserve2_4: # [Optional], reserve2_4;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_4;  Reserved for future use
  reserve2_5: # [Optional], reserve2_5;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_5;  Reserved for future use
  reserve2_6: # [Optional], reserve2_6;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_6;  Reserved for future use
  reserve2_7: # [Optional], reserve2_7;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_7;  Reserved for future use
  reserve2_8: # [Optional], reserve2_8;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_8;  Reserved for future use
  reserve2_9: # [Optional], reserve2_9;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_9;  Reserved for future use
  reserve2_10: # [Optional], reserve2_10;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_10;  Reserved for future use

XMCD template for rt116x and semc_sdram

  • family (string): MCU family name. Must be one of: ['rt116x', 'rt117x', 'rt118x'].

  • revision (string): If needed this could be used to specify silicon revision of device. Must be one of: ['latest'].

  • mem_type (string): Specify type of memory used by XMCD description. Must be one of: ['flexspi_ram', 'semc_sdram'].

  • config_type (string): Specify type of configuration used by XMCD description. Must be one of: ['simplified', 'full'].

  • xmcd_settings (object)

    • header (object): XMCD Header.

      • bitfields (object)

        • configurationBlockSize ([‘string’, ‘number’]): Configuration block size including XMCD header itself.

        • configurationBlockType ([‘string’, ‘number’]): Configuration block type: 0 - Simplified, 1 - Full.

        • instance ([‘string’, ‘number’]): SoC defined instances.

        • memoryInterface ([‘string’, ‘number’]): Memory interface: 0 - FlexSPI, 1 - SEMC.

        • version ([‘string’, ‘number’]): Version, fixed value 0x0.

        • tag ([‘string’, ‘number’]): Tag, fixed value 0xC.

    • magicNumber (object): Fixed to 0xA1.

      • value ([‘string’, ‘number’]): Fixed to 0xA1.

    • version (object): Set to 1 for this implementation.

      • value ([‘string’, ‘number’]): Set to 1 for this implementation.

    • configOption (object): Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case.

      • value ([‘string’, ‘number’]): Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case.

    • clkMhz (object): Set the working frequency in the unit of MHz.

      • value ([‘string’, ‘number’]): Set the working frequency in the unit of MHz.

    • sdramSizeKb (object): Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • portSize (object): Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit.

      • value ([‘string’, ‘number’]): Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit.

    • pinConfigPull (object): Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value.

      • value ([‘string’, ‘number’]): Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value.

    • pinConfigDriveStrength (object): Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value.

      • value ([‘string’, ‘number’]): Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value.

    • muxRdy (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx0 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx1 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx2 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx3 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • bank (object): Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value.

      • value ([‘string’, ‘number’]): Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value.

    • burstLen (object): Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value.

      • value ([‘string’, ‘number’]): Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value.

    • columnAddrBitNum (object): Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value.

      • value ([‘string’, ‘number’]): Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value.

    • casLatency (object): CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value.

      • value ([‘string’, ‘number’]): CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value.

    • writeRecoveryNs (object): Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.

    • refreshRecoveryNs (object): Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

    • act2readwriteNs (object): Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.

    • precharge2actNs (object): Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.

      • value ([‘string’, ‘number’]): Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.

    • act2actBanksNs (object): Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.

    • refresh2refreshNs (object): Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

    • selfrefRecoveryNs (object): Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.

    • act2prechargeMinNs (object): ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

    • act2prechargeMaxNs (object): ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

    • refreshperiodPerrowNs (object): Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.

      • value ([‘string’, ‘number’]): Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.

    • modeRegister (object): Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.

      • value ([‘string’, ‘number’]): Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.

    • sdram0Base (object): Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.

    • sdram1Base (object): Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.

    • sdram2Base (object): Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.

    • sdram3Base (object): Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.

    • sdram1SizeKb (object): Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • sdram2SizeKb (object): Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • sdram3SizeKb (object): Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

# ===========  XMCD template for rt116x and semc_sdram  ===========
# ----------------------------------------------------------------------------------------------------
#                            == XMCD template for rt116x and semc_sdram ==
# ----------------------------------------------------------------------------------------------------
family: CHOOSE_FROM_TABLE  # [Required], MCU family name; Possible options:['rt116x', 'rt117x', 'rt118x']
revision: latest # [Optional], Chip silicon revision; If needed this could be used to specify silicon revision of device; Possible options:['latest']
mem_type: flexspi_ram # [Required], Memory type; Specify type of memory used by XMCD description; Possible options:['flexspi_ram', 'semc_sdram']
config_type: simplified # [Required], Configuration type; Specify type of configuration used by XMCD description; Possible options:['simplified', 'full']
xmcd_settings: # [Required], rt116x
  header:  # [Optional], header; XMCD Header
    bitfields:  # [Required]
      configurationBlockSize: 72  # [Optional], configurationBlockSize; Configuration block size including XMCD header itself
      configurationBlockType: 1 # [Optional], configurationBlockType; Configuration block type: 0 - Simplified, 1 - Full
      instance: 0 # [Optional], instance; SoC defined instances
      memoryInterface: 1 # [Optional], memoryInterface; Memory interface: 0 - FlexSPI, 1 - SEMC
      version: 0 # [Optional], Version, fixed value 0x0
      tag: 12 # [Optional], Tag, fixed value 0xC
  magicNumber: # [Optional], magicNumber; Fixed to 0xA1
    value: '0xA1'  # [Required], magicNumber; Fixed to 0xA1
  version: # [Optional], version; Set to 1 for this implementation
    value: '0x01'  # [Required], version; Set to 1 for this implementation
  configOption: # [Optional], configOption; Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case
    value: '0xFF'  # [Required], configOption; Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case
  clkMhz: # [Optional], clkMhz; Set the working frequency in the unit of MHz
    value: '0x00'  # [Required], clkMhz; Set the working frequency in the unit of MHz
  sdramSizeKb: # [Optional], sdramSizeKb; Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdramSizeKb; Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  portSize: # [Optional], portSize; Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit
    value: '0x00'  # [Required], portSize; Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit
  pinConfigPull: # [Optional], pinConfigPull; Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value
    value: '0x03'  # [Required], pinConfigPull; Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value
  pinConfigDriveStrength: # [Optional], pinConfigDriveStrength; Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value
    value: '0x00'  # [Required], pinConfigDriveStrength; Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value
  muxRdy: # [Optional], muxRdy; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxRdy; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx0: # [Optional], muxCsx0; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx0; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx1: # [Optional], muxCsx1; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx1; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx2: # [Optional], muxCsx2; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx2; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx3: # [Optional], muxCsx3; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx3; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  bank: # [Optional], Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value
    value: '0x00'  # [Required], Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value
  burstLen: # [Optional], burstLen; Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value
    value: '0x00'  # [Required], burstLen; Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value
  columnAddrBitNum: # [Optional], columnAddrBitNum; Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value
    value: '0x00'  # [Required], columnAddrBitNum; Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value
  casLatency: # [Optional], casLatency; CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value
    value: '0x01'  # [Required], casLatency; CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value
  writeRecoveryNs: # [Optional], writeRecoveryNs; Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.
    value: '0x00'  # [Required], writeRecoveryNs; Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.
  refreshRecoveryNs: # [Optional], refreshRecoveryNs; Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
    value: '0x00'  # [Required], refreshRecoveryNs; Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
  act2readwriteNs: # [Optional], act2readwriteNs; Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2readwriteNs; Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.
  precharge2actNs: # [Optional], precharge2actNs; Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.
    value: '0x00'  # [Required], precharge2actNs; Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.
  act2actBanksNs: # [Optional], act2actBanksNs; Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2actBanksNs; Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.
  refresh2refreshNs: # [Optional], refresh2refreshNs; Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
    value: '0x00'  # [Required], refresh2refreshNs; Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
  selfrefRecoveryNs: # [Optional], selfrefRecoveryNs; Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.
    value: '0x00'  # [Required], selfrefRecoveryNs; Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.
  act2prechargeMinNs: # [Optional], act2prechargeMinNs; ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2prechargeMinNs; ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
  act2prechargeMaxNs: # [Optional], act2prechargeMaxNs; ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
    value: '0x00000000'  # [Required], act2prechargeMaxNs; ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
  refreshperiodPerrowNs: # [Optional], refreshperiodPerrowNs; Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.
    value: '0x00000000'  # [Required], refreshperiodPerrowNs; Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.
  modeRegister: # [Optional], modeRegister; Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.
    value: '0x00000000'  # [Required], modeRegister; Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.
  sdram0Base: # [Optional], sdram0Base; Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.
    value: '0x00000000'  # [Required], sdram0Base; Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.
  sdram1Base: # [Optional], sdram1Base; Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram1Base; Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.
  sdram2Base: # [Optional], sdram2Base; Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram2Base; Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.
  sdram3Base: # [Optional], sdram3Base; Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram3Base; Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.
  sdram1SizeKb: # [Optional], sdram1SizeKb; Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram1SizeKb; Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  sdram2SizeKb: # [Optional], sdram2SizeKb; Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram2SizeKb; Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  sdram3SizeKb: # [Optional], sdram3SizeKb; Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram3SizeKb; Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.

XMCD template for rt117x and flexspi_ram

  • family (string): MCU family name. Must be one of: ['rt116x', 'rt117x', 'rt118x'].

  • revision (string): If needed this could be used to specify silicon revision of device. Must be one of: ['latest'].

  • mem_type (string): Specify type of memory used by XMCD description. Must be one of: ['flexspi_ram', 'semc_sdram'].

  • config_type (string): Specify type of configuration used by XMCD description. Must be one of: ['simplified', 'full'].

  • xmcd_settings (object)

    • header (object): XMCD Header.

      • bitfields (object)

        • configurationBlockSize ([‘string’, ‘number’]): Configuration block size including XMCD header itself.

        • configurationBlockType ([‘string’, ‘number’]): Configuration block type: 0 - Simplified, 1 - Full.

        • instance ([‘string’, ‘number’]): SoC defined instances.

        • memoryInterface ([‘string’, ‘number’]): Memory interface: 0 - FlexSPI, 1 - SEMC.

        • version ([‘string’, ‘number’]): Version, fixed value 0x0.

        • tag ([‘string’, ‘number’]): Tag, fixed value 0xC.

    • tag (object): [0x000-0x003] Tag: fixed value 0x62666366, ascii: ‘fcfb’.

      • value ([‘string’, ‘number’]): [0x000-0x003] Tag: fixed value 0x62666366, ascii: ‘fcfb’.

    • version (object): [0x004-0x007] Version: [31:24] - ‘V’, [23:16] - Major, [15:8] - Minor, [7:0] - bugfix.

      • bitfields (object)

        • bugfix ([‘string’, ‘number’]): bugfix.

        • major ([‘string’, ‘number’]): major = 1.

        • minor ([‘string’, ‘number’]): minor.

        • ascii ([‘string’, ‘number’]): ascii ‘V’.

    • reserved0 (object): [0x008-0x00b] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x008-0x00b] Reserved for future use.

    • readSampleClkSrc (object): [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3.

      • value ([‘string’, ‘number’]): [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3.

    • csHoldTime (object): [0x00d-0x00d] CS hold time, default value: 3.

      • value ([‘string’, ‘number’]): [0x00d-0x00d] CS hold time, default value: 3.

    • csSetupTime (object): [0x00e-0x00e] CS setup time, default value: 3.

      • value ([‘string’, ‘number’]): [0x00e-0x00e] CS setup time, default value: 3.

    • columnAddressWidth (object): [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet.

      • value ([‘string’, ‘number’]): [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet.

    • deviceModeCfgEnable (object): [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled.

      • value ([‘string’, ‘number’]): [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled.

    • deviceModeType (object): [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.

      • value ([‘string’, ‘number’]): [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.

    • waitTimeCfgCommands (object): [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command.

      • value ([‘string’, ‘number’]): [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command.

    • deviceModeSeq (object): [0x014-0x017] Device mode sequence info, [7:0] - LUT number of sequences, [15:8] - LUT sequence index, [31:16] Reserved.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved, fixed to 0.

    • deviceModeArg (object): [0x018-0x01b] Argument/Parameter for device configuration.

      • value ([‘string’, ‘number’]): [0x018-0x01b] Argument/Parameter for device configuration.

    • configCmdEnable (object): [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable.

      • value ([‘string’, ‘number’]): [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable.

    • configModeType_0 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0].

    • configModeType_1 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1].

    • configModeType_2 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2].

    • configCmdSeqs_0 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • configCmdSeqs_1 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • configCmdSeqs_2 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • reserved1 (object): [0x02c-0x02f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x02c-0x02f] Reserved for future use.

    • configCmdArgs_0 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • configCmdArgs_1 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • configCmdArgs_2 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • reserved2 (object): [0x03c-0x03f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x03c-0x03f] Reserved for future use.

    • controllerMiscOption (object): [0x040-0x043] Controller Misc Option, see Misc feature bit definitions for more details.

      • bitfields (object)

        • bit0 ([‘string’, ‘number’]): Bit0 - differential clock enable.

        • bit1 ([‘string’, ‘number’]): Bit1 - CK2 enable.

        • bit2 ([‘string’, ‘number’]): Bit2 - ParallelModeEnable.

        • bit3 ([‘string’, ‘number’]): Bit3 - wordAddressableEnable.

        • bit4 ([‘string’, ‘number’]): Bit4 - Half-Speed access enable.

        • bit5 ([‘string’, ‘number’]): Bit5 - Pad Settings Override Enable.

        • bit6 ([‘string’, ‘number’]): Bit6 - DDR Mode Enable.

        • bit7 ([‘string’, ‘number’]): Bit7 - Pad Settings Overide Enable.

        • bit8 ([‘string’, ‘number’]): Bit8 - Second Pinmux group.

        • bit9 ([‘string’, ‘number’]): Bit9 - Second DQS pi mux group.

        • bit10 ([‘string’, ‘number’]): Bit10 - Write Mask Enable.

        • bit11 ([‘string’, ‘number’]): Bit11 - Write Opt1 Clear.

        • reserved ([‘string’, ‘number’]): N/A.

    • deviceType (object): [0x044-0x044] Device Type: See Flash Type Definition for more details.

      • value ([‘string’, ‘number’]): [0x044-0x044] Device Type: See Flash Type Definition for more details.

    • sflashPadType (object): [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal.

      • value ([‘string’, ‘number’]): [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal.

    • serialClkFreq (object): [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details.

      • value ([‘string’, ‘number’]): [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details.

    • lutCustomSeqEnable (object): [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH.

      • value ([‘string’, ‘number’]): [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH.

    • reserved3_0 (object): [0x048-0x04f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x048-0x04f] Reserved for future use.

    • reserved3_1 (object): [0x048-0x04f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x048-0x04f] Reserved for future use.

    • sflashA1Size (object): [0x050-0x053] Size of Flash connected to A1.

      • value ([‘string’, ‘number’]): [0x050-0x053] Size of Flash connected to A1.

    • sflashA2Size (object): [0x054-0x057] Size of Flash connected to A2.

      • value ([‘string’, ‘number’]): [0x054-0x057] Size of Flash connected to A2.

    • sflashB1Size (object): [0x058-0x05b] Size of Flash connected to B1.

      • value ([‘string’, ‘number’]): [0x058-0x05b] Size of Flash connected to B1.

    • sflashB2Size (object): [0x05c-0x05f] Size of Flash connected to B2.

      • value ([‘string’, ‘number’]): [0x05c-0x05f] Size of Flash connected to B2.

    • csPadSettingOverride (object): [0x060-0x063] CS pad setting override value.

      • value ([‘string’, ‘number’]): [0x060-0x063] CS pad setting override value.

    • sclkPadSettingOverride (object): [0x064-0x067] SCK pad setting override value.

      • value ([‘string’, ‘number’]): [0x064-0x067] SCK pad setting override value.

    • dataPadSettingOverride (object): [0x068-0x06b] data pad setting override value.

      • value ([‘string’, ‘number’]): [0x068-0x06b] data pad setting override value.

    • dqsPadSettingOverride (object): [0x06c-0x06f] DQS pad setting override value.

      • value ([‘string’, ‘number’]): [0x06c-0x06f] DQS pad setting override value.

    • timeoutInMs (object): [0x070-0x073] Timeout threshold for read status command.

      • value ([‘string’, ‘number’]): [0x070-0x073] Timeout threshold for read status command.

    • commandInterval (object): [0x074-0x077] CS deselect interval between two commands.

      • value ([‘string’, ‘number’]): [0x074-0x077] CS deselect interval between two commands.

    • dataValidTime_0 (object): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

      • value ([‘string’, ‘number’]): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

    • dataValidTime_1 (object): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

      • value ([‘string’, ‘number’]): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

    • busyOffset (object): [0x07c-0x07d] Busy offset, valid value: 0-31.

      • value ([‘string’, ‘number’]): [0x07c-0x07d] Busy offset, valid value: 0-31.

    • busyBitPolarity (object): [0x07e-0x07f] Busy flag polarity, 0 - busy flag is 1 when flash device is busy, 1 - busy flag is 0 when flash device is busy.

      • bitfields (object)

        • busyBitPolarity ([‘string’, ‘number’]): Busy flag polarity.

    • lookupTable_0 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_1 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_2 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_3 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_4 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_5 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_6 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_7 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_8 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_9 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_10 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_11 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_12 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_13 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_14 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_15 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_16 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_17 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_18 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_19 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_20 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_21 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_22 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_23 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_24 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_25 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_26 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_27 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_28 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_29 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_30 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_31 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_32 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_33 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_34 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_35 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_36 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_37 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_38 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_39 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_40 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_41 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_42 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_43 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_44 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_45 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_46 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_47 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_48 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_49 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_50 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_51 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_52 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_53 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_54 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_55 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_56 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_57 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_58 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_59 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_60 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_61 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_62 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_63 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lutCustomSeq_0 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_1 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_2 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_3 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_4 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_5 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_6 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_7 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_8 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_9 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_10 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_11 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • reserved4_0 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_1 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_2 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_3 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • pageSize (object): Page size of Serial NOR.

      • value ([‘string’, ‘number’]): Page size of Serial NOR.

    • sectorSize (object): Sector size of Serial NOR.

      • value ([‘string’, ‘number’]): Sector size of Serial NOR.

    • ipcmdSerialClkFreq (object): Clock frequency for IP command.

      • value ([‘string’, ‘number’]): Clock frequency for IP command.

    • isUniformBlockSize (object): Sector/Block size is the same.

      • value ([‘string’, ‘number’]): Sector/Block size is the same.

    • reserved0_0 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserved0_1 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • serialNorType (object): Serial NOR Flash type: 0/1/2/3.

      • value ([‘string’, ‘number’]): Serial NOR Flash type: 0/1/2/3.

    • needExitNoCmdMode (object): Need to exit NoCmd mode before other IP command.

      • value ([‘string’, ‘number’]): Need to exit NoCmd mode before other IP command.

    • halfClkForNonReadCmd (object): Half the Serial Clock for non-read command: true/false.

      • value ([‘string’, ‘number’]): Half the Serial Clock for non-read command: true/false.

    • needRestoreNoCmdMode (object): Need to Restore NoCmd mode after IP commmand execution.

      • value ([‘string’, ‘number’]): Need to Restore NoCmd mode after IP commmand execution.

    • blockSize (object): Block size.

      • value ([‘string’, ‘number’]): Block size.

    • reserve2_0 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_1 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_2 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_3 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_4 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_5 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_6 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_7 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_8 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_9 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_10 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

# ===========  XMCD template for rt117x and flexspi_ram  ===========
# ----------------------------------------------------------------------------------------------------
#                            == XMCD template for rt117x and flexspi_ram ==
# ----------------------------------------------------------------------------------------------------
family: CHOOSE_FROM_TABLE  # [Required], MCU family name; Possible options:['rt116x', 'rt117x', 'rt118x']
revision: latest # [Optional], Chip silicon revision; If needed this could be used to specify silicon revision of device; Possible options:['latest']
mem_type: flexspi_ram # [Required], Memory type; Specify type of memory used by XMCD description; Possible options:['flexspi_ram', 'semc_sdram']
config_type: simplified # [Required], Configuration type; Specify type of configuration used by XMCD description; Possible options:['simplified', 'full']
xmcd_settings: # [Required], rt117x
  header:  # [Optional], header; XMCD Header
    bitfields:  # [Required]
      configurationBlockSize: 516  # [Optional], configurationBlockSize; Configuration block size including XMCD header itself
      configurationBlockType: 1 # [Optional], configurationBlockType; Configuration block type: 0 - Simplified, 1 - Full
      instance: 0 # [Optional], instance; SoC defined instances
      memoryInterface: 0 # [Optional], memoryInterface; Memory interface: 0 - FlexSPI, 1 - SEMC
      version: 0 # [Optional], Version, fixed value 0x0
      tag: 12 # [Optional], Tag, fixed value 0xC
  tag: # [Optional], tag;  [0x000-0x003] Tag: fixed value 0x62666366, ascii: 'fcfb'
    value: '0x00000000'  # [Required], tag;  [0x000-0x003] Tag: fixed value 0x62666366, ascii: 'fcfb'
  version: # [Optional], version;  [0x004-0x007] Version: [31:24] - 'V', [23:16] - Major, [15:8] - Minor, [7:0] - bugfix
    bitfields:  # [Required]
      bugfix: 0  # [Optional], bugfix;  bugfix
      major: 1 # [Optional], major;  major = 1
      minor: 0 # [Optional], minor;  minor
      ascii: 0 # [Optional], ascii;  ascii 'V'
  reserved0: # [Optional], reserved0;  [0x008-0x00b] Reserved for future use
    value: '0x00000000'  # [Required], reserved0;  [0x008-0x00b] Reserved for future use
  readSampleClkSrc: # [Optional], readSampleClkSrc;  [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3
    value: '0x00'  # [Required], readSampleClkSrc;  [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3
  csHoldTime: # [Optional], csHoldTime;  [0x00d-0x00d] CS hold time, default value: 3
    value: '0x03'  # [Required], csHoldTime;  [0x00d-0x00d] CS hold time, default value: 3
  csSetupTime: # [Optional], csSetupTime;  [0x00e-0x00e] CS setup time, default value: 3
    value: '0x03'  # [Required], csSetupTime;  [0x00e-0x00e] CS setup time, default value: 3
  columnAddressWidth: # [Optional], columnAddressWidth;  [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet
    value: '0x03'  # [Required], columnAddressWidth;  [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet
  deviceModeCfgEnable: # [Optional], deviceModeCfgEnable;  [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled
    value: '0x00'  # [Required], deviceModeCfgEnable;  [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled
  deviceModeType: # [Optional], deviceModeType;  [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.
    value: '0x00'  # [Required], deviceModeType;  [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.
  waitTimeCfgCommands: # [Optional], waitTimeCfgCommands;  [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command
    value: '0x0000'  # [Required], waitTimeCfgCommands;  [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command
  deviceModeSeq: # [Optional], deviceModeSeq;  [0x014-0x017] Device mode sequence info, [7:0] - LUT number of sequences, [15:8] - LUT sequence index, [31:16] Reserved
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved, fixed to 0
  deviceModeArg: # [Optional], deviceModeArg;  [0x018-0x01b] Argument/Parameter for device configuration
    value: '0x00000000'  # [Required], deviceModeArg;  [0x018-0x01b] Argument/Parameter for device configuration
  configCmdEnable: # [Optional], configCmdEnable;  [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable
    value: '0x00'  # [Required], configCmdEnable;  [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable
  configModeType_0: # [Optional], configModeType_0;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0]
    value: '0x00'  # [Required], configModeType_0;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0]
  configModeType_1: # [Optional], configModeType_1;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1]
    value: '0x00'  # [Required], configModeType_1;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1]
  configModeType_2: # [Optional], configModeType_2;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2]
    value: '0x00'  # [Required], configModeType_2;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2]
  configCmdSeqs_0: # [Optional], configCmdSeqs_0;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  configCmdSeqs_1: # [Optional], configCmdSeqs_1;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  configCmdSeqs_2: # [Optional], configCmdSeqs_2;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  reserved1: # [Optional], reserved1;  [0x02c-0x02f] Reserved for future use
    value: '0x00000000'  # [Required], reserved1;  [0x02c-0x02f] Reserved for future use
  configCmdArgs_0: # [Optional], configCmdArgs_0;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_0;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  configCmdArgs_1: # [Optional], configCmdArgs_1;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_1;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  configCmdArgs_2: # [Optional], configCmdArgs_2;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_2;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  reserved2: # [Optional], reserved2;  [0x03c-0x03f] Reserved for future use
    value: '0x00000000'  # [Required], reserved2;  [0x03c-0x03f] Reserved for future use
  controllerMiscOption: # [Optional], controllerMiscOption;  [0x040-0x043] Controller Misc Option, see Misc feature bit definitions for more details
    bitfields:  # [Required]
      bit0: 0  # [Optional], bit0;  Bit0 - differential clock enable
      bit1: 0 # [Optional], bit1;  Bit1 - CK2 enable
      bit2: 0 # [Optional], bit2;  Bit2 - ParallelModeEnable
      bit3: 0 # [Optional], bit3;  Bit3 - wordAddressableEnable
      bit4: 0 # [Optional], bit4;  Bit4 - Half-Speed access enable
      bit5: 0 # [Optional], bit5;  Bit5 - Pad Settings Override Enable
      bit6: 0 # [Optional], bit6;  Bit6 - DDR Mode Enable
      bit7: 0 # [Optional], bit7;  Bit7 - Pad Settings Overide Enable
      bit8: 0 # [Optional], bit8;  Bit8 - Second Pinmux group
      bit9: 0 # [Optional], bit9;  Bit9 - Second DQS pi mux group
      bit10: 0 # [Optional], bit10;  Bit10 - Write Mask Enable
      bit11: 0 # [Optional], bit11;  Bit11 - Write Opt1 Clear
      reserved: 0 # [Optional], reserved; N/A
  deviceType: # [Optional], deviceType;  [0x044-0x044] Device Type:  See Flash Type Definition for more details
    value: '0x03'  # [Required], deviceType;  [0x044-0x044] Device Type:  See Flash Type Definition for more details
  sflashPadType: # [Optional], sflashPadType;  [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal
    value: '0x01'  # [Required], sflashPadType;  [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal
  serialClkFreq: # [Optional], serialClkFreq;  [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details
    value: '0x00'  # [Required], serialClkFreq;  [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details
  lutCustomSeqEnable: # [Optional], lutCustomSeqEnable;  [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH
    value: '0x00'  # [Required], lutCustomSeqEnable;  [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH
  reserved3_0: # [Optional], reserved3_0;  [0x048-0x04f] Reserved for future use
    value: '0x00000000'  # [Required], reserved3_0;  [0x048-0x04f] Reserved for future use
  reserved3_1: # [Optional], reserved3_1;  [0x048-0x04f] Reserved for future use
    value: '0x00000000'  # [Required], reserved3_1;  [0x048-0x04f] Reserved for future use
  sflashA1Size: # [Optional], sflashA1Size;  [0x050-0x053] Size of Flash connected to A1
    value: '0x00000000'  # [Required], sflashA1Size;  [0x050-0x053] Size of Flash connected to A1
  sflashA2Size: # [Optional], sflashA2Size;  [0x054-0x057] Size of Flash connected to A2
    value: '0x00000000'  # [Required], sflashA2Size;  [0x054-0x057] Size of Flash connected to A2
  sflashB1Size: # [Optional], sflashB1Size;  [0x058-0x05b] Size of Flash connected to B1
    value: '0x00000000'  # [Required], sflashB1Size;  [0x058-0x05b] Size of Flash connected to B1
  sflashB2Size: # [Optional], sflashB2Size;  [0x05c-0x05f] Size of Flash connected to B2
    value: '0x00000000'  # [Required], sflashB2Size;  [0x05c-0x05f] Size of Flash connected to B2
  csPadSettingOverride: # [Optional], csPadSettingOverride;  [0x060-0x063] CS pad setting override value
    value: '0x00000000'  # [Required], csPadSettingOverride;  [0x060-0x063] CS pad setting override value
  sclkPadSettingOverride: # [Optional], sclkPadSettingOverride;  [0x064-0x067] SCK pad setting override value
    value: '0x00000000'  # [Required], sclkPadSettingOverride;  [0x064-0x067] SCK pad setting override value
  dataPadSettingOverride: # [Optional], dataPadSettingOverride;  [0x068-0x06b] data pad setting override value
    value: '0x00000000'  # [Required], dataPadSettingOverride;  [0x068-0x06b] data pad setting override value
  dqsPadSettingOverride: # [Optional], dqsPadSettingOverride;  [0x06c-0x06f] DQS pad setting override value
    value: '0x00000000'  # [Required], dqsPadSettingOverride;  [0x06c-0x06f] DQS pad setting override value
  timeoutInMs: # [Optional], timeoutInMs;  [0x070-0x073] Timeout threshold for read status command
    value: '0x00000000'  # [Required], timeoutInMs;  [0x070-0x073] Timeout threshold for read status command
  commandInterval: # [Optional], commandInterval;  [0x074-0x077] CS deselect interval between two commands
    value: '0x00000000'  # [Required], commandInterval;  [0x074-0x077] CS deselect interval between two commands
  dataValidTime_0: # [Optional], dataValidTime_0;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
    value: '0x0000'  # [Required], dataValidTime_0;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
  dataValidTime_1: # [Optional], dataValidTime_1;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
    value: '0x0000'  # [Required], dataValidTime_1;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
  busyOffset: # [Optional], busyOffset;  [0x07c-0x07d] Busy offset, valid value: 0-31
    value: '0x0000'  # [Required], busyOffset;  [0x07c-0x07d] Busy offset, valid value: 0-31
  busyBitPolarity: # [Optional], busyBitPolarity;  [0x07e-0x07f] Busy flag polarity, 0 - busy flag is 1 when flash device is busy, 1 - busy flag is 0 when flash device is busy
    bitfields:  # [Required]
      busyBitPolarity: 0  # [Optional], busyBitPolarity;  Busy flag polarity
  lookupTable_0: # [Optional], lookupTable_0;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_0;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_1: # [Optional], lookupTable_1;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_1;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_2: # [Optional], lookupTable_2;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_2;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_3: # [Optional], lookupTable_3;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_3;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_4: # [Optional], lookupTable_4;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_4;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_5: # [Optional], lookupTable_5;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_5;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_6: # [Optional], lookupTable_6;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_6;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_7: # [Optional], lookupTable_7;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_7;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_8: # [Optional], lookupTable_8;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_8;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_9: # [Optional], lookupTable_9;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_9;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_10: # [Optional], lookupTable_10;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_10;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_11: # [Optional], lookupTable_11;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_11;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_12: # [Optional], lookupTable_12;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_12;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_13: # [Optional], lookupTable_13;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_13;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_14: # [Optional], lookupTable_14;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_14;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_15: # [Optional], lookupTable_15;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_15;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_16: # [Optional], lookupTable_16;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_16;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_17: # [Optional], lookupTable_17;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_17;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_18: # [Optional], lookupTable_18;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_18;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_19: # [Optional], lookupTable_19;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_19;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_20: # [Optional], lookupTable_20;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_20;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_21: # [Optional], lookupTable_21;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_21;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_22: # [Optional], lookupTable_22;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_22;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_23: # [Optional], lookupTable_23;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_23;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_24: # [Optional], lookupTable_24;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_24;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_25: # [Optional], lookupTable_25;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_25;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_26: # [Optional], lookupTable_26;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_26;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_27: # [Optional], lookupTable_27;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_27;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_28: # [Optional], lookupTable_28;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_28;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_29: # [Optional], lookupTable_29;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_29;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_30: # [Optional], lookupTable_30;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_30;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_31: # [Optional], lookupTable_31;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_31;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_32: # [Optional], lookupTable_32;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_32;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_33: # [Optional], lookupTable_33;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_33;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_34: # [Optional], lookupTable_34;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_34;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_35: # [Optional], lookupTable_35;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_35;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_36: # [Optional], lookupTable_36;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_36;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_37: # [Optional], lookupTable_37;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_37;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_38: # [Optional], lookupTable_38;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_38;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_39: # [Optional], lookupTable_39;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_39;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_40: # [Optional], lookupTable_40;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_40;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_41: # [Optional], lookupTable_41;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_41;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_42: # [Optional], lookupTable_42;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_42;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_43: # [Optional], lookupTable_43;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_43;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_44: # [Optional], lookupTable_44;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_44;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_45: # [Optional], lookupTable_45;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_45;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_46: # [Optional], lookupTable_46;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_46;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_47: # [Optional], lookupTable_47;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_47;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_48: # [Optional], lookupTable_48;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_48;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_49: # [Optional], lookupTable_49;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_49;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_50: # [Optional], lookupTable_50;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_50;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_51: # [Optional], lookupTable_51;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_51;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_52: # [Optional], lookupTable_52;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_52;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_53: # [Optional], lookupTable_53;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_53;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_54: # [Optional], lookupTable_54;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_54;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_55: # [Optional], lookupTable_55;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_55;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_56: # [Optional], lookupTable_56;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_56;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_57: # [Optional], lookupTable_57;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_57;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_58: # [Optional], lookupTable_58;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_58;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_59: # [Optional], lookupTable_59;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_59;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_60: # [Optional], lookupTable_60;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_60;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_61: # [Optional], lookupTable_61;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_61;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_62: # [Optional], lookupTable_62;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_62;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_63: # [Optional], lookupTable_63;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_63;  [0x080-0x17f] Lookup table holds Flash command sequences
  lutCustomSeq_0: # [Optional], lutCustomSeq_0;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_1: # [Optional], lutCustomSeq_1;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_2: # [Optional], lutCustomSeq_2;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_3: # [Optional], lutCustomSeq_3;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_4: # [Optional], lutCustomSeq_4;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_5: # [Optional], lutCustomSeq_5;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_6: # [Optional], lutCustomSeq_6;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_7: # [Optional], lutCustomSeq_7;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_8: # [Optional], lutCustomSeq_8;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_9: # [Optional], lutCustomSeq_9;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_10: # [Optional], lutCustomSeq_10;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_11: # [Optional], lutCustomSeq_11;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  reserved4_0: # [Optional], reserved4_0;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_0;  [0x1b0-0x1bf] Reserved for future use
  reserved4_1: # [Optional], reserved4_1;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_1;  [0x1b0-0x1bf] Reserved for future use
  reserved4_2: # [Optional], reserved4_2;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_2;  [0x1b0-0x1bf] Reserved for future use
  reserved4_3: # [Optional], reserved4_3;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_3;  [0x1b0-0x1bf] Reserved for future use
  pageSize: # [Optional], pageSize;  Page size of Serial NOR
    value: '0x00000000'  # [Required], pageSize;  Page size of Serial NOR
  sectorSize: # [Optional], sectorSize;  Sector size of Serial NOR
    value: '0x00000000'  # [Required], sectorSize;  Sector size of Serial NOR
  ipcmdSerialClkFreq: # [Optional], ipcmdSerialClkFreq;  Clock frequency for IP command
    value: '0x00'  # [Required], ipcmdSerialClkFreq;  Clock frequency for IP command
  isUniformBlockSize: # [Optional], isUniformBlockSize;  Sector/Block size is the same
    value: '0x00'  # [Required], isUniformBlockSize;  Sector/Block size is the same
  reserved0_0: # [Optional], reserved0_0;  Reserved for future use
    value: '0x00'  # [Required], reserved0_0;  Reserved for future use
  reserved0_1: # [Optional], reserved0_1;  Reserved for future use
    value: '0x00'  # [Required], reserved0_1;  Reserved for future use
  serialNorType: # [Optional], serialNorType;  Serial NOR Flash type: 0/1/2/3
    value: '0x00'  # [Required], serialNorType;  Serial NOR Flash type: 0/1/2/3
  needExitNoCmdMode: # [Optional], needExitNoCmdMode;  Need to exit NoCmd mode before other IP command
    value: '0x00'  # [Required], needExitNoCmdMode;  Need to exit NoCmd mode before other IP command
  halfClkForNonReadCmd: # [Optional], halfClkForNonReadCmd;  Half the Serial Clock for non-read command: true/false
    value: '0x00'  # [Required], halfClkForNonReadCmd;  Half the Serial Clock for non-read command: true/false
  needRestoreNoCmdMode: # [Optional], needRestoreNoCmdMode;  Need to Restore NoCmd mode after IP commmand execution
    value: '0x00'  # [Required], needRestoreNoCmdMode;  Need to Restore NoCmd mode after IP commmand execution
  blockSize: # [Optional], blockSize;  Block size
    value: '0x00000000'  # [Required], blockSize;  Block size
  reserve2_0: # [Optional], reserve2_0;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_0;  Reserved for future use
  reserve2_1: # [Optional], reserve2_1;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_1;  Reserved for future use
  reserve2_2: # [Optional], reserve2_2;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_2;  Reserved for future use
  reserve2_3: # [Optional], reserve2_3;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_3;  Reserved for future use
  reserve2_4: # [Optional], reserve2_4;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_4;  Reserved for future use
  reserve2_5: # [Optional], reserve2_5;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_5;  Reserved for future use
  reserve2_6: # [Optional], reserve2_6;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_6;  Reserved for future use
  reserve2_7: # [Optional], reserve2_7;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_7;  Reserved for future use
  reserve2_8: # [Optional], reserve2_8;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_8;  Reserved for future use
  reserve2_9: # [Optional], reserve2_9;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_9;  Reserved for future use
  reserve2_10: # [Optional], reserve2_10;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_10;  Reserved for future use

XMCD template for rt117x and semc_sdram

  • family (string): MCU family name. Must be one of: ['rt116x', 'rt117x', 'rt118x'].

  • revision (string): If needed this could be used to specify silicon revision of device. Must be one of: ['latest'].

  • mem_type (string): Specify type of memory used by XMCD description. Must be one of: ['flexspi_ram', 'semc_sdram'].

  • config_type (string): Specify type of configuration used by XMCD description. Must be one of: ['simplified', 'full'].

  • xmcd_settings (object)

    • header (object): XMCD Header.

      • bitfields (object)

        • configurationBlockSize ([‘string’, ‘number’]): Configuration block size including XMCD header itself.

        • configurationBlockType ([‘string’, ‘number’]): Configuration block type: 0 - Simplified, 1 - Full.

        • instance ([‘string’, ‘number’]): SoC defined instances.

        • memoryInterface ([‘string’, ‘number’]): Memory interface: 0 - FlexSPI, 1 - SEMC.

        • version ([‘string’, ‘number’]): Version, fixed value 0x0.

        • tag ([‘string’, ‘number’]): Tag, fixed value 0xC.

    • magicNumber (object): Fixed to 0xA1.

      • value ([‘string’, ‘number’]): Fixed to 0xA1.

    • version (object): Set to 1 for this implementation.

      • value ([‘string’, ‘number’]): Set to 1 for this implementation.

    • configOption (object): Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case.

      • value ([‘string’, ‘number’]): Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case.

    • clkMhz (object): Set the working frequency in the unit of MHz.

      • value ([‘string’, ‘number’]): Set the working frequency in the unit of MHz.

    • sdramSizeKb (object): Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • portSize (object): Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit.

      • value ([‘string’, ‘number’]): Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit.

    • pinConfigPull (object): Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value.

      • value ([‘string’, ‘number’]): Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value.

    • pinConfigDriveStrength (object): Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value.

      • value ([‘string’, ‘number’]): Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value.

    • muxRdy (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx0 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx1 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx2 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx3 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • bank (object): Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value.

      • value ([‘string’, ‘number’]): Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value.

    • burstLen (object): Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value.

      • value ([‘string’, ‘number’]): Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value.

    • columnAddrBitNum (object): Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value.

      • value ([‘string’, ‘number’]): Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value.

    • casLatency (object): CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value.

      • value ([‘string’, ‘number’]): CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value.

    • writeRecoveryNs (object): Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.

    • refreshRecoveryNs (object): Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

    • act2readwriteNs (object): Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.

    • precharge2actNs (object): Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.

      • value ([‘string’, ‘number’]): Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.

    • act2actBanksNs (object): Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.

    • refresh2refreshNs (object): Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

    • selfrefRecoveryNs (object): Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.

    • act2prechargeMinNs (object): ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

    • act2prechargeMaxNs (object): ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

    • refreshperiodPerrowNs (object): Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.

      • value ([‘string’, ‘number’]): Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.

    • modeRegister (object): Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.

      • value ([‘string’, ‘number’]): Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.

    • sdram0Base (object): Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.

    • sdram1Base (object): Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.

    • sdram2Base (object): Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.

    • sdram3Base (object): Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.

    • sdram1SizeKb (object): Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • sdram2SizeKb (object): Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • sdram3SizeKb (object): Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

# ===========  XMCD template for rt117x and semc_sdram  ===========
# ----------------------------------------------------------------------------------------------------
#                            == XMCD template for rt117x and semc_sdram ==
# ----------------------------------------------------------------------------------------------------
family: CHOOSE_FROM_TABLE  # [Required], MCU family name; Possible options:['rt116x', 'rt117x', 'rt118x']
revision: latest # [Optional], Chip silicon revision; If needed this could be used to specify silicon revision of device; Possible options:['latest']
mem_type: flexspi_ram # [Required], Memory type; Specify type of memory used by XMCD description; Possible options:['flexspi_ram', 'semc_sdram']
config_type: simplified # [Required], Configuration type; Specify type of configuration used by XMCD description; Possible options:['simplified', 'full']
xmcd_settings: # [Required], rt117x
  header:  # [Optional], header; XMCD Header
    bitfields:  # [Required]
      configurationBlockSize: 72  # [Optional], configurationBlockSize; Configuration block size including XMCD header itself
      configurationBlockType: 1 # [Optional], configurationBlockType; Configuration block type: 0 - Simplified, 1 - Full
      instance: 0 # [Optional], instance; SoC defined instances
      memoryInterface: 1 # [Optional], memoryInterface; Memory interface: 0 - FlexSPI, 1 - SEMC
      version: 0 # [Optional], Version, fixed value 0x0
      tag: 12 # [Optional], Tag, fixed value 0xC
  magicNumber: # [Optional], magicNumber; Fixed to 0xA1
    value: '0xA1'  # [Required], magicNumber; Fixed to 0xA1
  version: # [Optional], version; Set to 1 for this implementation
    value: '0x01'  # [Required], version; Set to 1 for this implementation
  configOption: # [Optional], configOption; Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case
    value: '0xFF'  # [Required], configOption; Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case
  clkMhz: # [Optional], clkMhz; Set the working frequency in the unit of MHz
    value: '0x00'  # [Required], clkMhz; Set the working frequency in the unit of MHz
  sdramSizeKb: # [Optional], sdramSizeKb; Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdramSizeKb; Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  portSize: # [Optional], portSize; Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit
    value: '0x00'  # [Required], portSize; Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit
  pinConfigPull: # [Optional], pinConfigPull; Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value
    value: '0x03'  # [Required], pinConfigPull; Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value
  pinConfigDriveStrength: # [Optional], pinConfigDriveStrength; Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value
    value: '0x00'  # [Required], pinConfigDriveStrength; Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value
  muxRdy: # [Optional], muxRdy; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxRdy; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx0: # [Optional], muxCsx0; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx0; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx1: # [Optional], muxCsx1; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx1; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx2: # [Optional], muxCsx2; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx2; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx3: # [Optional], muxCsx3; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx3; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  bank: # [Optional], Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value
    value: '0x00'  # [Required], Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value
  burstLen: # [Optional], burstLen; Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value
    value: '0x00'  # [Required], burstLen; Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value
  columnAddrBitNum: # [Optional], columnAddrBitNum; Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value
    value: '0x00'  # [Required], columnAddrBitNum; Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value
  casLatency: # [Optional], casLatency; CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value
    value: '0x01'  # [Required], casLatency; CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value
  writeRecoveryNs: # [Optional], writeRecoveryNs; Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.
    value: '0x00'  # [Required], writeRecoveryNs; Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.
  refreshRecoveryNs: # [Optional], refreshRecoveryNs; Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
    value: '0x00'  # [Required], refreshRecoveryNs; Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
  act2readwriteNs: # [Optional], act2readwriteNs; Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2readwriteNs; Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.
  precharge2actNs: # [Optional], precharge2actNs; Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.
    value: '0x00'  # [Required], precharge2actNs; Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.
  act2actBanksNs: # [Optional], act2actBanksNs; Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2actBanksNs; Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.
  refresh2refreshNs: # [Optional], refresh2refreshNs; Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
    value: '0x00'  # [Required], refresh2refreshNs; Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
  selfrefRecoveryNs: # [Optional], selfrefRecoveryNs; Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.
    value: '0x00'  # [Required], selfrefRecoveryNs; Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.
  act2prechargeMinNs: # [Optional], act2prechargeMinNs; ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2prechargeMinNs; ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
  act2prechargeMaxNs: # [Optional], act2prechargeMaxNs; ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
    value: '0x00000000'  # [Required], act2prechargeMaxNs; ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
  refreshperiodPerrowNs: # [Optional], refreshperiodPerrowNs; Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.
    value: '0x00000000'  # [Required], refreshperiodPerrowNs; Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.
  modeRegister: # [Optional], modeRegister; Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.
    value: '0x00000000'  # [Required], modeRegister; Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.
  sdram0Base: # [Optional], sdram0Base; Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.
    value: '0x00000000'  # [Required], sdram0Base; Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.
  sdram1Base: # [Optional], sdram1Base; Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram1Base; Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.
  sdram2Base: # [Optional], sdram2Base; Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram2Base; Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.
  sdram3Base: # [Optional], sdram3Base; Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram3Base; Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.
  sdram1SizeKb: # [Optional], sdram1SizeKb; Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram1SizeKb; Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  sdram2SizeKb: # [Optional], sdram2SizeKb; Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram2SizeKb; Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  sdram3SizeKb: # [Optional], sdram3SizeKb; Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram3SizeKb; Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.

XMCD template for rt118x and flexspi_ram

  • family (string): MCU family name. Must be one of: ['rt116x', 'rt117x', 'rt118x'].

  • revision (string): If needed this could be used to specify silicon revision of device. Must be one of: ['latest'].

  • mem_type (string): Specify type of memory used by XMCD description. Must be one of: ['flexspi_ram', 'semc_sdram'].

  • config_type (string): Specify type of configuration used by XMCD description. Must be one of: ['simplified', 'full'].

  • xmcd_settings (object)

    • header (object): XMCD Header.

      • bitfields (object)

        • configurationBlockSize ([‘string’, ‘number’]): Configuration block size including XMCD header itself.

        • configurationBlockType ([‘string’, ‘number’]): Configuration block type: 0 - Simplified, 1 - Full.

        • instance ([‘string’, ‘number’]): SoC defined instances.

        • memoryInterface ([‘string’, ‘number’]): Memory interface: 0 - FlexSPI, 1 - SEMC.

        • version ([‘string’, ‘number’]): Version, fixed value 0x0.

        • tag ([‘string’, ‘number’]): Tag, fixed value 0xC.

    • tag (object): [0x000-0x003] Tag: fixed value 0x62666366, ascii: ‘fcfb’.

      • value ([‘string’, ‘number’]): [0x000-0x003] Tag: fixed value 0x62666366, ascii: ‘fcfb’.

    • version (object): [0x004-0x007] Version: [31:24] - ‘V’, [23:16] - Major, [15:8] - Minor, [7:0] - bugfix.

      • bitfields (object)

        • bugfix ([‘string’, ‘number’]): bugfix.

        • major ([‘string’, ‘number’]): major = 1.

        • minor ([‘string’, ‘number’]): minor.

        • ascii ([‘string’, ‘number’]): ascii ‘V’.

    • reserved0 (object): [0x008-0x00b] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x008-0x00b] Reserved for future use.

    • readSampleClkSrc (object): [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3.

      • value ([‘string’, ‘number’]): [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3.

    • csHoldTime (object): [0x00d-0x00d] CS hold time, default value: 3.

      • value ([‘string’, ‘number’]): [0x00d-0x00d] CS hold time, default value: 3.

    • csSetupTime (object): [0x00e-0x00e] CS setup time, default value: 3.

      • value ([‘string’, ‘number’]): [0x00e-0x00e] CS setup time, default value: 3.

    • columnAddressWidth (object): [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet.

      • value ([‘string’, ‘number’]): [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet.

    • deviceModeCfgEnable (object): [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled.

      • value ([‘string’, ‘number’]): [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled.

    • deviceModeType (object): [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.

      • value ([‘string’, ‘number’]): [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.

    • waitTimeCfgCommands (object): [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command.

      • value ([‘string’, ‘number’]): [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command.

    • deviceModeSeq (object): [0x014-0x017] Device mode sequence info, [7:0] - LUT number of sequences, [15:8] - LUT sequence index, [31:16] Reserved.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved, fixed to 0.

    • deviceModeArg (object): [0x018-0x01b] Argument/Parameter for device configuration.

      • value ([‘string’, ‘number’]): [0x018-0x01b] Argument/Parameter for device configuration.

    • configCmdEnable (object): [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable.

      • value ([‘string’, ‘number’]): [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable.

    • configModeType_0 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0].

    • configModeType_1 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1].

    • configModeType_2 (object): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2].

      • value ([‘string’, ‘number’]): [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2].

    • configCmdSeqs_0 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • configCmdSeqs_1 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • configCmdSeqs_2 (object): [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • reserved1 (object): [0x02c-0x02f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x02c-0x02f] Reserved for future use.

    • configCmdArgs_0 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • configCmdArgs_1 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • configCmdArgs_2 (object): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

      • value ([‘string’, ‘number’]): [0x030-0x03b] Arguments/Parameters for device Configuration commands.

    • reserved2 (object): [0x03c-0x03f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x03c-0x03f] Reserved for future use.

    • controllerMiscOption (object): [0x040-0x043] Controller Misc Option, see Misc feature bit definitions for more details.

      • bitfields (object)

        • bit0 ([‘string’, ‘number’]): Bit0 - differential clock enable.

        • bit1 ([‘string’, ‘number’]): Bit1 - CK2 enable.

        • bit2 ([‘string’, ‘number’]): Bit2 - ParallelModeEnable.

        • bit3 ([‘string’, ‘number’]): Bit3 - wordAddressableEnable.

        • bit4 ([‘string’, ‘number’]): Bit4 - Half-Speed access enable.

        • bit5 ([‘string’, ‘number’]): Bit5 - Pad Settings Override Enable.

        • bit6 ([‘string’, ‘number’]): Bit6 - DDR Mode Enable.

        • bit7 ([‘string’, ‘number’]): Bit7 - Pad Settings Overide Enable.

        • bit8 ([‘string’, ‘number’]): Bit8 - Second Pinmux group.

        • bit9 ([‘string’, ‘number’]): Bit9 - Second DQS pi mux group.

        • bit10 ([‘string’, ‘number’]): Bit10 - Write Mask Enable.

        • bit11 ([‘string’, ‘number’]): Bit11 - Write Opt1 Clear.

        • reserved ([‘string’, ‘number’]): N/A.

    • deviceType (object): [0x044-0x044] Device Type: See Flash Type Definition for more details.

      • value ([‘string’, ‘number’]): [0x044-0x044] Device Type: See Flash Type Definition for more details.

    • sflashPadType (object): [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal.

      • value ([‘string’, ‘number’]): [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal.

    • serialClkFreq (object): [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details.

      • value ([‘string’, ‘number’]): [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details.

    • lutCustomSeqEnable (object): [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH.

      • value ([‘string’, ‘number’]): [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH.

    • reserved3_0 (object): [0x048-0x04f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x048-0x04f] Reserved for future use.

    • reserved3_1 (object): [0x048-0x04f] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x048-0x04f] Reserved for future use.

    • sflashA1Size (object): [0x050-0x053] Size of Flash connected to A1.

      • value ([‘string’, ‘number’]): [0x050-0x053] Size of Flash connected to A1.

    • sflashA2Size (object): [0x054-0x057] Size of Flash connected to A2.

      • value ([‘string’, ‘number’]): [0x054-0x057] Size of Flash connected to A2.

    • sflashB1Size (object): [0x058-0x05b] Size of Flash connected to B1.

      • value ([‘string’, ‘number’]): [0x058-0x05b] Size of Flash connected to B1.

    • sflashB2Size (object): [0x05c-0x05f] Size of Flash connected to B2.

      • value ([‘string’, ‘number’]): [0x05c-0x05f] Size of Flash connected to B2.

    • csPadSettingOverride (object): [0x060-0x063] CS pad setting override value.

      • value ([‘string’, ‘number’]): [0x060-0x063] CS pad setting override value.

    • sclkPadSettingOverride (object): [0x064-0x067] SCK pad setting override value.

      • value ([‘string’, ‘number’]): [0x064-0x067] SCK pad setting override value.

    • dataPadSettingOverride (object): [0x068-0x06b] data pad setting override value.

      • value ([‘string’, ‘number’]): [0x068-0x06b] data pad setting override value.

    • dqsPadSettingOverride (object): [0x06c-0x06f] DQS pad setting override value.

      • value ([‘string’, ‘number’]): [0x06c-0x06f] DQS pad setting override value.

    • timeoutInMs (object): [0x070-0x073] Timeout threshold for read status command.

      • value ([‘string’, ‘number’]): [0x070-0x073] Timeout threshold for read status command.

    • commandInterval (object): [0x074-0x077] CS deselect interval between two commands.

      • value ([‘string’, ‘number’]): [0x074-0x077] CS deselect interval between two commands.

    • dataValidTime_0 (object): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

      • value ([‘string’, ‘number’]): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

    • dataValidTime_1 (object): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

      • value ([‘string’, ‘number’]): [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns.

    • busyOffset (object): [0x07c-0x07d] Busy offset, valid value: 0-31.

      • value ([‘string’, ‘number’]): [0x07c-0x07d] Busy offset, valid value: 0-31.

    • busyBitPolarity (object): [0x07e-0x07f] Busy flag polarity, 0 - busy flag is 1 when flash device is busy, 1 - busy flag is 0 when flash device is busy.

      • bitfields (object)

        • busyBitPolarity ([‘string’, ‘number’]): Busy flag polarity.

    • lookupTable_0 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_1 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_2 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_3 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_4 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_5 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_6 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_7 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_8 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_9 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_10 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_11 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_12 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_13 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_14 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_15 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_16 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_17 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_18 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_19 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_20 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_21 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_22 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_23 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_24 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_25 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_26 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_27 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_28 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_29 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_30 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_31 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_32 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_33 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_34 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_35 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_36 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_37 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_38 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_39 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_40 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_41 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_42 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_43 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_44 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_45 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_46 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_47 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_48 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_49 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_50 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_51 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_52 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_53 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_54 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_55 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_56 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_57 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_58 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_59 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_60 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_61 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_62 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lookupTable_63 (object): [0x080-0x17f] Lookup table holds Flash command sequences.

      • value ([‘string’, ‘number’]): [0x080-0x17f] Lookup table holds Flash command sequences.

    • lutCustomSeq_0 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_1 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_2 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_3 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_4 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_5 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_6 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_7 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_8 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_9 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_10 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • lutCustomSeq_11 (object): [0x180-0x1af] Customizable LUT Sequences.

      • bitfields (object)

        • seqNum ([‘string’, ‘number’]): Number of sequences, valid number: 1-16.

        • seqId ([‘string’, ‘number’]): Sequence Index, valid number: 0-15.

        • reserved ([‘string’, ‘number’]): Reserved.

    • reserved4_0 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_1 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_2 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • reserved4_3 (object): [0x1b0-0x1bf] Reserved for future use.

      • value ([‘string’, ‘number’]): [0x1b0-0x1bf] Reserved for future use.

    • pageSize (object): Page size of Serial NOR.

      • value ([‘string’, ‘number’]): Page size of Serial NOR.

    • sectorSize (object): Sector size of Serial NOR.

      • value ([‘string’, ‘number’]): Sector size of Serial NOR.

    • ipcmdSerialClkFreq (object): Clock frequency for IP command.

      • value ([‘string’, ‘number’]): Clock frequency for IP command.

    • isUniformBlockSize (object): Sector/Block size is the same.

      • value ([‘string’, ‘number’]): Sector/Block size is the same.

    • reserved0_0 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserved0_1 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • serialNorType (object): Serial NOR Flash type: 0/1/2/3.

      • value ([‘string’, ‘number’]): Serial NOR Flash type: 0/1/2/3.

    • needExitNoCmdMode (object): Need to exit NoCmd mode before other IP command.

      • value ([‘string’, ‘number’]): Need to exit NoCmd mode before other IP command.

    • halfClkForNonReadCmd (object): Half the Serial Clock for non-read command: true/false.

      • value ([‘string’, ‘number’]): Half the Serial Clock for non-read command: true/false.

    • needRestoreNoCmdMode (object): Need to Restore NoCmd mode after IP commmand execution.

      • value ([‘string’, ‘number’]): Need to Restore NoCmd mode after IP commmand execution.

    • blockSize (object): Block size.

      • value ([‘string’, ‘number’]): Block size.

    • reserve2_0 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_1 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_2 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_3 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_4 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_5 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_6 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_7 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_8 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_9 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

    • reserve2_10 (object): Reserved for future use.

      • value ([‘string’, ‘number’]): Reserved for future use.

# ===========  XMCD template for rt118x and flexspi_ram  ===========
# ----------------------------------------------------------------------------------------------------
#                            == XMCD template for rt118x and flexspi_ram ==
# ----------------------------------------------------------------------------------------------------
family: CHOOSE_FROM_TABLE  # [Required], MCU family name; Possible options:['rt116x', 'rt117x', 'rt118x']
revision: latest # [Optional], Chip silicon revision; If needed this could be used to specify silicon revision of device; Possible options:['latest']
mem_type: flexspi_ram # [Required], Memory type; Specify type of memory used by XMCD description; Possible options:['flexspi_ram', 'semc_sdram']
config_type: simplified # [Required], Configuration type; Specify type of configuration used by XMCD description; Possible options:['simplified', 'full']
xmcd_settings: # [Required], rt118x
  header:  # [Optional], header; XMCD Header
    bitfields:  # [Required]
      configurationBlockSize: 516  # [Optional], configurationBlockSize; Configuration block size including XMCD header itself
      configurationBlockType: 1 # [Optional], configurationBlockType; Configuration block type: 0 - Simplified, 1 - Full
      instance: 0 # [Optional], instance; SoC defined instances
      memoryInterface: 0 # [Optional], memoryInterface; Memory interface: 0 - FlexSPI, 1 - SEMC
      version: 0 # [Optional], Version, fixed value 0x0
      tag: 12 # [Optional], Tag, fixed value 0xC
  tag: # [Optional], tag;  [0x000-0x003] Tag: fixed value 0x62666366, ascii: 'fcfb'
    value: '0x00000000'  # [Required], tag;  [0x000-0x003] Tag: fixed value 0x62666366, ascii: 'fcfb'
  version: # [Optional], version;  [0x004-0x007] Version: [31:24] - 'V', [23:16] - Major, [15:8] - Minor, [7:0] - bugfix
    bitfields:  # [Required]
      bugfix: 0  # [Optional], bugfix;  bugfix
      major: 1 # [Optional], major;  major = 1
      minor: 0 # [Optional], minor;  minor
      ascii: 0 # [Optional], ascii;  ascii 'V'
  reserved0: # [Optional], reserved0;  [0x008-0x00b] Reserved for future use
    value: '0x00000000'  # [Required], reserved0;  [0x008-0x00b] Reserved for future use
  readSampleClkSrc: # [Optional], readSampleClkSrc;  [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3
    value: '0x00'  # [Required], readSampleClkSrc;  [0x00c-0x00c] Read Sample Clock Source, valid value: 0/1/3
  csHoldTime: # [Optional], csHoldTime;  [0x00d-0x00d] CS hold time, default value: 3
    value: '0x03'  # [Required], csHoldTime;  [0x00d-0x00d] CS hold time, default value: 3
  csSetupTime: # [Optional], csSetupTime;  [0x00e-0x00e] CS setup time, default value: 3
    value: '0x03'  # [Required], csSetupTime;  [0x00e-0x00e] CS setup time, default value: 3
  columnAddressWidth: # [Optional], columnAddressWidth;  [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet
    value: '0x03'  # [Required], columnAddressWidth;  [0x00f-0x00f] Column Address width, for HyperBus protocol, it is fixed to 3, For Serial NAND, need to refer to datasheet
  deviceModeCfgEnable: # [Optional], deviceModeCfgEnable;  [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled
    value: '0x00'  # [Required], deviceModeCfgEnable;  [0x010-0x010] Device Mode Configuration Enable feature: 1 - Enabled, 0 - Disabled
  deviceModeType: # [Optional], deviceModeType;  [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.
    value: '0x00'  # [Required], deviceModeType;  [0x011-0x011] Specify the configuration command type: Quad Enable, DPI/QPI/OPI switch, Generic configuration, etc.
  waitTimeCfgCommands: # [Optional], waitTimeCfgCommands;  [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command
    value: '0x0000'  # [Required], waitTimeCfgCommands;  [0x012-0x013] Wait time for all configuration commands, unit: 100us, Used for DPI/QPI/OPI switch or reset command
  deviceModeSeq: # [Optional], deviceModeSeq;  [0x014-0x017] Device mode sequence info, [7:0] - LUT number of sequences, [15:8] - LUT sequence index, [31:16] Reserved
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved, fixed to 0
  deviceModeArg: # [Optional], deviceModeArg;  [0x018-0x01b] Argument/Parameter for device configuration
    value: '0x00000000'  # [Required], deviceModeArg;  [0x018-0x01b] Argument/Parameter for device configuration
  configCmdEnable: # [Optional], configCmdEnable;  [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable
    value: '0x00'  # [Required], configCmdEnable;  [0x01c-0x01c] Config Command Enable feature: 1 - Enable, 0 - Disable
  configModeType_0: # [Optional], configModeType_0;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0]
    value: '0x00'  # [Required], configModeType_0;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[0]
  configModeType_1: # [Optional], configModeType_1;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1]
    value: '0x00'  # [Required], configModeType_1;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[1]
  configModeType_2: # [Optional], configModeType_2;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2]
    value: '0x00'  # [Required], configModeType_2;  [0x01d-0x01f] Configure Mode Type, similar as deviceModeType, configModeType for configCmdSeq[2]
  configCmdSeqs_0: # [Optional], configCmdSeqs_0;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  configCmdSeqs_1: # [Optional], configCmdSeqs_1;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  configCmdSeqs_2: # [Optional], configCmdSeqs_2;  [0x020-0x02b] Sequence info for Device Configuration command, similar as deviceModeSeq
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  reserved1: # [Optional], reserved1;  [0x02c-0x02f] Reserved for future use
    value: '0x00000000'  # [Required], reserved1;  [0x02c-0x02f] Reserved for future use
  configCmdArgs_0: # [Optional], configCmdArgs_0;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_0;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  configCmdArgs_1: # [Optional], configCmdArgs_1;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_1;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  configCmdArgs_2: # [Optional], configCmdArgs_2;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
    value: '0x00000000'  # [Required], configCmdArgs_2;  [0x030-0x03b] Arguments/Parameters for device Configuration commands
  reserved2: # [Optional], reserved2;  [0x03c-0x03f] Reserved for future use
    value: '0x00000000'  # [Required], reserved2;  [0x03c-0x03f] Reserved for future use
  controllerMiscOption: # [Optional], controllerMiscOption;  [0x040-0x043] Controller Misc Option, see Misc feature bit definitions for more details
    bitfields:  # [Required]
      bit0: 0  # [Optional], bit0;  Bit0 - differential clock enable
      bit1: 0 # [Optional], bit1;  Bit1 - CK2 enable
      bit2: 0 # [Optional], bit2;  Bit2 - ParallelModeEnable
      bit3: 0 # [Optional], bit3;  Bit3 - wordAddressableEnable
      bit4: 0 # [Optional], bit4;  Bit4 - Half-Speed access enable
      bit5: 0 # [Optional], bit5;  Bit5 - Pad Settings Override Enable
      bit6: 0 # [Optional], bit6;  Bit6 - DDR Mode Enable
      bit7: 0 # [Optional], bit7;  Bit7 - Pad Settings Overide Enable
      bit8: 0 # [Optional], bit8;  Bit8 - Second Pinmux group
      bit9: 0 # [Optional], bit9;  Bit9 - Second DQS pi mux group
      bit10: 0 # [Optional], bit10;  Bit10 - Write Mask Enable
      bit11: 0 # [Optional], bit11;  Bit11 - Write Opt1 Clear
      reserved: 0 # [Optional], reserved; N/A
  deviceType: # [Optional], deviceType;  [0x044-0x044] Device Type:  See Flash Type Definition for more details
    value: '0x03'  # [Required], deviceType;  [0x044-0x044] Device Type:  See Flash Type Definition for more details
  sflashPadType: # [Optional], sflashPadType;  [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal
    value: '0x01'  # [Required], sflashPadType;  [0x045-0x045] Serial Flash Pad Type: 1 - Single, 2 - Dual, 4 - Quad, 8 - Octal
  serialClkFreq: # [Optional], serialClkFreq;  [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details
    value: '0x00'  # [Required], serialClkFreq;  [0x046-0x046] Serial Flash Frequency, device specific definitions, See System Boot Chapter for more details
  lutCustomSeqEnable: # [Optional], lutCustomSeqEnable;  [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH
    value: '0x00'  # [Required], lutCustomSeqEnable;  [0x047-0x047] LUT customization Enable, it is required if the program/erase cannot be done using 1 LUT sequence, currently, only applicable to HyperFLASH
  reserved3_0: # [Optional], reserved3_0;  [0x048-0x04f] Reserved for future use
    value: '0x00000000'  # [Required], reserved3_0;  [0x048-0x04f] Reserved for future use
  reserved3_1: # [Optional], reserved3_1;  [0x048-0x04f] Reserved for future use
    value: '0x00000000'  # [Required], reserved3_1;  [0x048-0x04f] Reserved for future use
  sflashA1Size: # [Optional], sflashA1Size;  [0x050-0x053] Size of Flash connected to A1
    value: '0x00000000'  # [Required], sflashA1Size;  [0x050-0x053] Size of Flash connected to A1
  sflashA2Size: # [Optional], sflashA2Size;  [0x054-0x057] Size of Flash connected to A2
    value: '0x00000000'  # [Required], sflashA2Size;  [0x054-0x057] Size of Flash connected to A2
  sflashB1Size: # [Optional], sflashB1Size;  [0x058-0x05b] Size of Flash connected to B1
    value: '0x00000000'  # [Required], sflashB1Size;  [0x058-0x05b] Size of Flash connected to B1
  sflashB2Size: # [Optional], sflashB2Size;  [0x05c-0x05f] Size of Flash connected to B2
    value: '0x00000000'  # [Required], sflashB2Size;  [0x05c-0x05f] Size of Flash connected to B2
  csPadSettingOverride: # [Optional], csPadSettingOverride;  [0x060-0x063] CS pad setting override value
    value: '0x00000000'  # [Required], csPadSettingOverride;  [0x060-0x063] CS pad setting override value
  sclkPadSettingOverride: # [Optional], sclkPadSettingOverride;  [0x064-0x067] SCK pad setting override value
    value: '0x00000000'  # [Required], sclkPadSettingOverride;  [0x064-0x067] SCK pad setting override value
  dataPadSettingOverride: # [Optional], dataPadSettingOverride;  [0x068-0x06b] data pad setting override value
    value: '0x00000000'  # [Required], dataPadSettingOverride;  [0x068-0x06b] data pad setting override value
  dqsPadSettingOverride: # [Optional], dqsPadSettingOverride;  [0x06c-0x06f] DQS pad setting override value
    value: '0x00000000'  # [Required], dqsPadSettingOverride;  [0x06c-0x06f] DQS pad setting override value
  timeoutInMs: # [Optional], timeoutInMs;  [0x070-0x073] Timeout threshold for read status command
    value: '0x00000000'  # [Required], timeoutInMs;  [0x070-0x073] Timeout threshold for read status command
  commandInterval: # [Optional], commandInterval;  [0x074-0x077] CS deselect interval between two commands
    value: '0x00000000'  # [Required], commandInterval;  [0x074-0x077] CS deselect interval between two commands
  dataValidTime_0: # [Optional], dataValidTime_0;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
    value: '0x0000'  # [Required], dataValidTime_0;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
  dataValidTime_1: # [Optional], dataValidTime_1;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
    value: '0x0000'  # [Required], dataValidTime_1;  [0x078-0x07b] CLK edge to data valid time for PORT A and PORT B, in terms of 0.1ns
  busyOffset: # [Optional], busyOffset;  [0x07c-0x07d] Busy offset, valid value: 0-31
    value: '0x0000'  # [Required], busyOffset;  [0x07c-0x07d] Busy offset, valid value: 0-31
  busyBitPolarity: # [Optional], busyBitPolarity;  [0x07e-0x07f] Busy flag polarity, 0 - busy flag is 1 when flash device is busy, 1 - busy flag is 0 when flash device is busy
    bitfields:  # [Required]
      busyBitPolarity: 0  # [Optional], busyBitPolarity;  Busy flag polarity
  lookupTable_0: # [Optional], lookupTable_0;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_0;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_1: # [Optional], lookupTable_1;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_1;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_2: # [Optional], lookupTable_2;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_2;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_3: # [Optional], lookupTable_3;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_3;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_4: # [Optional], lookupTable_4;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_4;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_5: # [Optional], lookupTable_5;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_5;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_6: # [Optional], lookupTable_6;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_6;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_7: # [Optional], lookupTable_7;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_7;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_8: # [Optional], lookupTable_8;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_8;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_9: # [Optional], lookupTable_9;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_9;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_10: # [Optional], lookupTable_10;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_10;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_11: # [Optional], lookupTable_11;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_11;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_12: # [Optional], lookupTable_12;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_12;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_13: # [Optional], lookupTable_13;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_13;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_14: # [Optional], lookupTable_14;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_14;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_15: # [Optional], lookupTable_15;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_15;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_16: # [Optional], lookupTable_16;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_16;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_17: # [Optional], lookupTable_17;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_17;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_18: # [Optional], lookupTable_18;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_18;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_19: # [Optional], lookupTable_19;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_19;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_20: # [Optional], lookupTable_20;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_20;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_21: # [Optional], lookupTable_21;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_21;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_22: # [Optional], lookupTable_22;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_22;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_23: # [Optional], lookupTable_23;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_23;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_24: # [Optional], lookupTable_24;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_24;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_25: # [Optional], lookupTable_25;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_25;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_26: # [Optional], lookupTable_26;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_26;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_27: # [Optional], lookupTable_27;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_27;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_28: # [Optional], lookupTable_28;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_28;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_29: # [Optional], lookupTable_29;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_29;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_30: # [Optional], lookupTable_30;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_30;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_31: # [Optional], lookupTable_31;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_31;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_32: # [Optional], lookupTable_32;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_32;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_33: # [Optional], lookupTable_33;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_33;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_34: # [Optional], lookupTable_34;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_34;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_35: # [Optional], lookupTable_35;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_35;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_36: # [Optional], lookupTable_36;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_36;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_37: # [Optional], lookupTable_37;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_37;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_38: # [Optional], lookupTable_38;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_38;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_39: # [Optional], lookupTable_39;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_39;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_40: # [Optional], lookupTable_40;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_40;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_41: # [Optional], lookupTable_41;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_41;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_42: # [Optional], lookupTable_42;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_42;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_43: # [Optional], lookupTable_43;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_43;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_44: # [Optional], lookupTable_44;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_44;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_45: # [Optional], lookupTable_45;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_45;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_46: # [Optional], lookupTable_46;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_46;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_47: # [Optional], lookupTable_47;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_47;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_48: # [Optional], lookupTable_48;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_48;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_49: # [Optional], lookupTable_49;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_49;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_50: # [Optional], lookupTable_50;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_50;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_51: # [Optional], lookupTable_51;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_51;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_52: # [Optional], lookupTable_52;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_52;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_53: # [Optional], lookupTable_53;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_53;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_54: # [Optional], lookupTable_54;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_54;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_55: # [Optional], lookupTable_55;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_55;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_56: # [Optional], lookupTable_56;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_56;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_57: # [Optional], lookupTable_57;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_57;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_58: # [Optional], lookupTable_58;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_58;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_59: # [Optional], lookupTable_59;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_59;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_60: # [Optional], lookupTable_60;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_60;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_61: # [Optional], lookupTable_61;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_61;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_62: # [Optional], lookupTable_62;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_62;  [0x080-0x17f] Lookup table holds Flash command sequences
  lookupTable_63: # [Optional], lookupTable_63;  [0x080-0x17f] Lookup table holds Flash command sequences
    value: '0x00000000'  # [Required], lookupTable_63;  [0x080-0x17f] Lookup table holds Flash command sequences
  lutCustomSeq_0: # [Optional], lutCustomSeq_0;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_1: # [Optional], lutCustomSeq_1;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_2: # [Optional], lutCustomSeq_2;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_3: # [Optional], lutCustomSeq_3;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_4: # [Optional], lutCustomSeq_4;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_5: # [Optional], lutCustomSeq_5;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_6: # [Optional], lutCustomSeq_6;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_7: # [Optional], lutCustomSeq_7;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_8: # [Optional], lutCustomSeq_8;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_9: # [Optional], lutCustomSeq_9;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_10: # [Optional], lutCustomSeq_10;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  lutCustomSeq_11: # [Optional], lutCustomSeq_11;  [0x180-0x1af] Customizable LUT Sequences
    bitfields:  # [Required]
      seqNum: 0  # [Optional], seqNum;  Number of sequences, valid number: 1-16
      seqId: 0 # [Optional], seqId;  Sequence Index, valid number: 0-15
      reserved: 0 # [Optional], Reserved
  reserved4_0: # [Optional], reserved4_0;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_0;  [0x1b0-0x1bf] Reserved for future use
  reserved4_1: # [Optional], reserved4_1;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_1;  [0x1b0-0x1bf] Reserved for future use
  reserved4_2: # [Optional], reserved4_2;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_2;  [0x1b0-0x1bf] Reserved for future use
  reserved4_3: # [Optional], reserved4_3;  [0x1b0-0x1bf] Reserved for future use
    value: '0x00000000'  # [Required], reserved4_3;  [0x1b0-0x1bf] Reserved for future use
  pageSize: # [Optional], pageSize;  Page size of Serial NOR
    value: '0x00000000'  # [Required], pageSize;  Page size of Serial NOR
  sectorSize: # [Optional], sectorSize;  Sector size of Serial NOR
    value: '0x00000000'  # [Required], sectorSize;  Sector size of Serial NOR
  ipcmdSerialClkFreq: # [Optional], ipcmdSerialClkFreq;  Clock frequency for IP command
    value: '0x00'  # [Required], ipcmdSerialClkFreq;  Clock frequency for IP command
  isUniformBlockSize: # [Optional], isUniformBlockSize;  Sector/Block size is the same
    value: '0x00'  # [Required], isUniformBlockSize;  Sector/Block size is the same
  reserved0_0: # [Optional], reserved0_0;  Reserved for future use
    value: '0x00'  # [Required], reserved0_0;  Reserved for future use
  reserved0_1: # [Optional], reserved0_1;  Reserved for future use
    value: '0x00'  # [Required], reserved0_1;  Reserved for future use
  serialNorType: # [Optional], serialNorType;  Serial NOR Flash type: 0/1/2/3
    value: '0x00'  # [Required], serialNorType;  Serial NOR Flash type: 0/1/2/3
  needExitNoCmdMode: # [Optional], needExitNoCmdMode;  Need to exit NoCmd mode before other IP command
    value: '0x00'  # [Required], needExitNoCmdMode;  Need to exit NoCmd mode before other IP command
  halfClkForNonReadCmd: # [Optional], halfClkForNonReadCmd;  Half the Serial Clock for non-read command: true/false
    value: '0x00'  # [Required], halfClkForNonReadCmd;  Half the Serial Clock for non-read command: true/false
  needRestoreNoCmdMode: # [Optional], needRestoreNoCmdMode;  Need to Restore NoCmd mode after IP commmand execution
    value: '0x00'  # [Required], needRestoreNoCmdMode;  Need to Restore NoCmd mode after IP commmand execution
  blockSize: # [Optional], blockSize;  Block size
    value: '0x00000000'  # [Required], blockSize;  Block size
  reserve2_0: # [Optional], reserve2_0;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_0;  Reserved for future use
  reserve2_1: # [Optional], reserve2_1;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_1;  Reserved for future use
  reserve2_2: # [Optional], reserve2_2;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_2;  Reserved for future use
  reserve2_3: # [Optional], reserve2_3;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_3;  Reserved for future use
  reserve2_4: # [Optional], reserve2_4;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_4;  Reserved for future use
  reserve2_5: # [Optional], reserve2_5;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_5;  Reserved for future use
  reserve2_6: # [Optional], reserve2_6;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_6;  Reserved for future use
  reserve2_7: # [Optional], reserve2_7;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_7;  Reserved for future use
  reserve2_8: # [Optional], reserve2_8;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_8;  Reserved for future use
  reserve2_9: # [Optional], reserve2_9;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_9;  Reserved for future use
  reserve2_10: # [Optional], reserve2_10;  Reserved for future use
    value: '0x00000000'  # [Required], reserve2_10;  Reserved for future use

XMCD template for rt118x and semc_sdram

  • family (string): MCU family name. Must be one of: ['rt116x', 'rt117x', 'rt118x'].

  • revision (string): If needed this could be used to specify silicon revision of device. Must be one of: ['latest'].

  • mem_type (string): Specify type of memory used by XMCD description. Must be one of: ['flexspi_ram', 'semc_sdram'].

  • config_type (string): Specify type of configuration used by XMCD description. Must be one of: ['simplified', 'full'].

  • xmcd_settings (object)

    • header (object): XMCD Header.

      • bitfields (object)

        • configurationBlockSize ([‘string’, ‘number’]): Configuration block size including XMCD header itself.

        • configurationBlockType ([‘string’, ‘number’]): Configuration block type: 0 - Simplified, 1 - Full.

        • instance ([‘string’, ‘number’]): SoC defined instances.

        • memoryInterface ([‘string’, ‘number’]): Memory interface: 0 - FlexSPI, 1 - SEMC.

        • version ([‘string’, ‘number’]): Version, fixed value 0x0.

        • tag ([‘string’, ‘number’]): Tag, fixed value 0xC.

    • magicNumber (object): Fixed to 0xA1.

      • value ([‘string’, ‘number’]): Fixed to 0xA1.

    • version (object): Set to 1 for this implementation.

      • value ([‘string’, ‘number’]): Set to 1 for this implementation.

    • configOption (object): Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case.

      • value ([‘string’, ‘number’]): Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case.

    • clkMhz (object): Set the working frequency in the unit of MHz.

      • value ([‘string’, ‘number’]): Set the working frequency in the unit of MHz.

    • sdramSizeKb (object): Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • portSize (object): Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit.

      • value ([‘string’, ‘number’]): Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit.

    • pinConfigPull (object): Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value.

      • value ([‘string’, ‘number’]): Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value.

    • pinConfigDriveStrength (object): Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value.

      • value ([‘string’, ‘number’]): Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value.

    • muxRdy (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx0 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx1 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx2 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • muxCsx3 (object): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

      • value ([‘string’, ‘number’]): SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices.

    • bank (object): Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value.

      • value ([‘string’, ‘number’]): Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value.

    • burstLen (object): Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value.

      • value ([‘string’, ‘number’]): Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value.

    • columnAddrBitNum (object): Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value.

      • value ([‘string’, ‘number’]): Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value.

    • casLatency (object): CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value.

      • value ([‘string’, ‘number’]): CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value.

    • writeRecoveryNs (object): Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.

    • refreshRecoveryNs (object): Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

    • act2readwriteNs (object): Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.

    • precharge2actNs (object): Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.

      • value ([‘string’, ‘number’]): Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.

    • act2actBanksNs (object): Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.

    • refresh2refreshNs (object): Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.

    • selfrefRecoveryNs (object): Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.

    • act2prechargeMinNs (object): ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

    • act2prechargeMaxNs (object): ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

      • value ([‘string’, ‘number’]): ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.

    • refreshperiodPerrowNs (object): Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.

      • value ([‘string’, ‘number’]): Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.

    • modeRegister (object): Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.

      • value ([‘string’, ‘number’]): Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.

    • sdram0Base (object): Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.

    • sdram1Base (object): Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.

    • sdram2Base (object): Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.

    • sdram3Base (object): Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.

      • value ([‘string’, ‘number’]): Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.

    • sdram1SizeKb (object): Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • sdram2SizeKb (object): Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

    • sdram3SizeKb (object): Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

      • value ([‘string’, ‘number’]): Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~410241024 kilobytes.

# ===========  XMCD template for rt118x and semc_sdram  ===========
# ----------------------------------------------------------------------------------------------------
#                            == XMCD template for rt118x and semc_sdram ==
# ----------------------------------------------------------------------------------------------------
family: CHOOSE_FROM_TABLE  # [Required], MCU family name; Possible options:['rt116x', 'rt117x', 'rt118x']
revision: latest # [Optional], Chip silicon revision; If needed this could be used to specify silicon revision of device; Possible options:['latest']
mem_type: flexspi_ram # [Required], Memory type; Specify type of memory used by XMCD description; Possible options:['flexspi_ram', 'semc_sdram']
config_type: simplified # [Required], Configuration type; Specify type of configuration used by XMCD description; Possible options:['simplified', 'full']
xmcd_settings: # [Required], rt118x
  header:  # [Optional], header; XMCD Header
    bitfields:  # [Required]
      configurationBlockSize: 72  # [Optional], configurationBlockSize; Configuration block size including XMCD header itself
      configurationBlockType: 1 # [Optional], configurationBlockType; Configuration block type: 0 - Simplified, 1 - Full
      instance: 0 # [Optional], instance; SoC defined instances
      memoryInterface: 1 # [Optional], memoryInterface; Memory interface: 0 - FlexSPI, 1 - SEMC
      version: 0 # [Optional], Version, fixed value 0x0
      tag: 12 # [Optional], Tag, fixed value 0xC
  magicNumber: # [Optional], magicNumber; Fixed to 0xA1
    value: '0xA1'  # [Required], magicNumber; Fixed to 0xA1
  version: # [Optional], version; Set to 1 for this implementation
    value: '0x01'  # [Required], version; Set to 1 for this implementation
  configOption: # [Optional], configOption; Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case
    value: '0xFF'  # [Required], configOption; Simplified - 0x00, Full - 0xFF - Must be 0xFF in this case
  clkMhz: # [Optional], clkMhz; Set the working frequency in the unit of MHz
    value: '0x00'  # [Required], clkMhz; Set the working frequency in the unit of MHz
  sdramSizeKb: # [Optional], sdramSizeKb; Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdramSizeKb; Set the memory size of SDRAM CS0 in the unit of kilobytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  portSize: # [Optional], portSize; Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit
    value: '0x00'  # [Required], portSize; Port size of SDRAM: 0 - 8-bit, 1 - 16-bit, 2 - 32-bit
  pinConfigPull: # [Optional], pinConfigPull; Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value
    value: '0x03'  # [Required], pinConfigPull; Pull config of the SDRAM GPIO pin: 0 - Forbidden, 1 - Pull up, 2 - Pull down, 3 - No pull, Others - Invalid value
  pinConfigDriveStrength: # [Optional], pinConfigDriveStrength; Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value
    value: '0x00'  # [Required], pinConfigDriveStrength; Driver config of SDRAM GPIO pin: 0 - High driver, 1 - Normal driver, Others - Invalid value
  muxRdy: # [Optional], muxRdy; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxRdy; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx0: # [Optional], muxCsx0; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx0; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx1: # [Optional], muxCsx1; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx1; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx2: # [Optional], muxCsx2; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx2; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  muxCsx3: # [Optional], muxCsx3; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
    value: '0x01'  # [Required], muxCsx3; SDRAM CSn device selection: 1 - SDRAM CS1, 2 - SDRAM CS2, 3 - SDRAM CS3, Others - Invalid for SDRAM, select other external devices
  bank: # [Optional], Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value
    value: '0x00'  # [Required], Bank numbers of SDRAM device: 0 - 4 banks, 1 - 2 banks, Others - Invalid value
  burstLen: # [Optional], burstLen; Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value
    value: '0x00'  # [Required], burstLen; Burst length: 0 - 1, 1 - 2, 2 - 4, 3 - 8, Others - Invalid value
  columnAddrBitNum: # [Optional], columnAddrBitNum; Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value
    value: '0x00'  # [Required], columnAddrBitNum; Column address bit number: 0 - 12 bit, 1 - 11 bit, 2 - 10 bit, 3 - 9 bit, 4 - 8 bit, Others - Invalid value
  casLatency: # [Optional], casLatency; CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value
    value: '0x01'  # [Required], casLatency; CAS Latency: 1 - 1, 2 - 2, 3 - 3, Others - Invalid value
  writeRecoveryNs: # [Optional], writeRecoveryNs; Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.
    value: '0x00'  # [Required], writeRecoveryNs; Write recovery time in unit of nanosecond. This could help to meet tWR timing requirement by the SDRAM device.
  refreshRecoveryNs: # [Optional], refreshRecoveryNs; Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
    value: '0x00'  # [Required], refreshRecoveryNs; Refresh recovery time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
  act2readwriteNs: # [Optional], act2readwriteNs; Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2readwriteNs; Act to read/write wait time in unit of nanosecond. This could help to meet tRCD timing requirement by the SDRAM device.
  precharge2actNs: # [Optional], precharge2actNs; Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.
    value: '0x00'  # [Required], precharge2actNs; Precharge to active wait time in unit of nanosecond. This could help to meet tRP timing requirement by SDRAM device.
  act2actBanksNs: # [Optional], act2actBanksNs; Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2actBanksNs; Active to active wait time between two different banks in unit of nanosecond. This could help to meet tRRD timing requirement by the SDRAM device.
  refresh2refreshNs: # [Optional], refresh2refreshNs; Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
    value: '0x00'  # [Required], refresh2refreshNs; Auto refresh to auto refresh wait time in unit of nanosecond. This could help to meet tRFC timing requirement by the SDRAM device.
  selfrefRecoveryNs: # [Optional], selfrefRecoveryNs; Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.
    value: '0x00'  # [Required], selfrefRecoveryNs; Self refresh recovery time in unit of nanosecond. This could help to meet tXSR timing requirement by the SDRAM device.
  act2prechargeMinNs: # [Optional], act2prechargeMinNs; ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
    value: '0x00'  # [Required], act2prechargeMinNs; ACT to Precharge minimum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
  act2prechargeMaxNs: # [Optional], act2prechargeMaxNs; ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
    value: '0x00000000'  # [Required], act2prechargeMaxNs; ACT to Precharge maximum time in unit of nanosecond. This could help to meet tRAS(max) timing requirement by the SDRAM device.
  refreshperiodPerrowNs: # [Optional], refreshperiodPerrowNs; Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.
    value: '0x00000000'  # [Required], refreshperiodPerrowNs; Refresh timer period in unit of nanosecond. Set to (tREF(ms) * 1000000/rows) value.
  modeRegister: # [Optional], modeRegister; Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.
    value: '0x00000000'  # [Required], modeRegister; Define the specific mode of operation of SDRAM. Set to the value required by SDRAM device.
  sdram0Base: # [Optional], sdram0Base; Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.
    value: '0x00000000'  # [Required], sdram0Base; Base address of SDRAM CS0. Range: 0x8000_0000~0xDFFF_FFFF.
  sdram1Base: # [Optional], sdram1Base; Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram1Base; Base address of SDRAM CS1. Range: 0x8000_0000~0xDFFF_FFFF. If CS1 is not being used, set the address to 0.
  sdram2Base: # [Optional], sdram2Base; Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram2Base; Base address of SDRAM CS2. Range: 0x8000_0000~0xDFFF_FFFF. If CS2 is not being used, set the address to 0.
  sdram3Base: # [Optional], sdram3Base; Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.
    value: '0x00000000'  # [Required], sdram3Base; Base address of SDRAM CS3. Range: 0x8000_0000~0xDFFF_FFFF. If CS3 is not being used, set the address to 0.
  sdram1SizeKb: # [Optional], sdram1SizeKb; Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram1SizeKb; Set the memory size of SDRAM CS1 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  sdram2SizeKb: # [Optional], sdram2SizeKb; Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram2SizeKb; Set the memory size of SDRAM CS2 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
  sdram3SizeKb: # [Optional], sdram3SizeKb; Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.
    value: '0x00000000'  # [Required], sdram3SizeKb; Set the memory size of SDRAM CS3 in unit of kbytes. Range: 0x0000_0004~0x0040_0000, i.e. 4~4*1024*1024 kilobytes.