This thread has been locked.

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

AM2634: Inquiry about using json for custom flash use

Part Number: AM2634
Other Parts Discussed in Thread: SYSCONFIG, UNIFLASH

To expert

To use AM2634 with external Flash (GD25F128F), follow the link below.

https://software-dl.ti.com/mcu-plus-sdk/esd/AM263X/08_06_00_34/exports/docs/api_guide_am263x/CUSTOM_FLASH_SUPPORT_GUIDE.html

However, in case 1(Click "LOAD FROM JSON") of step 2, only "Running External App..." is displayed as shown below and does not proceed to the next.

The json file is as below.

{
"flashSize": "16777216",
"flashPageSize": "256",
"flashManfId": "0xC8",
"flashDeviceId": "0x4318",
"flashBlockSize": "65536",
"flashSectorSize": "4096",
"cmdBlockErase3B": "0xD8",
"cmdBlockErase4B": "0xD8",
"cmdSectorErase3B": "0x20",
"cmdSectorErase4B": "0x20",
"protos": {
"p111": {
"isDtr": false,
"cmdRd": "0x03",
"cmdWr": "0x02",
"modeClksCmd": 0,
"modeClksRd": 0,
"dummyClksCmd": 0,
"dummyClksRd": 0,
"enableType": "0",
"enableSeq": "0x00",
"dummyCfg": null,
"protoCfg": null,
"strDtrCfg": null,
},
"p112": {
"isDtr": false,
"cmdRd": "0x3B",
"cmdWr": "0x02",
"modeClksCmd": 0,
"modeClksRd": 0,
"dummyClksCmd": 0,
"dummyClksRd": 8,
"enableType": "0",
"enableSeq": "0x00",
"dummyCfg": null,
"protoCfg": null,
"strDtrCfg": null,
},
"p114": {
"isDtr": false,
"cmdRd": "0x6B",
"cmdWr": "0x02",
"modeClksCmd": 0,
"modeClksRd": 0,
"dummyClksCmd": 0,
"dummyClksRd": 8,
"enableType": "7",
"enableSeq": "0x00",
"dummyCfg": null,
"protoCfg": null,
"strDtrCfg": null,
},
"p118": null,
"p444s": null,
"p444d": null,
"p888s": null,
"p888d": null,
"pCustom": null
},
"addrByteSupport": "0",
"fourByteAddrEnSeq": "0x00",
"resetType": "0x10",
"cmdWren": "0x06",
"cmdRdsr": "0x05",
"srWip": 0,
"srWel": 1,
"cmdChipErase": "0xC7",
"flashDeviceBusyTimeout": 36000000,
"flashPageProgTimeout": 256
}

Any advice on resolving this issue is appreciated.

Best regards

Jiung Choi

  • Hi ,

    A.) The reason for this feature fail is due to wrong "copy" command in the flash_v0.syscfg.js file under the path C:\ti\MCU_PLUS_SDK_PATH\source\board\.meta\flash\v0 

    1. So to fix these, firstly the correct copy command executable must be added i.e., "cp.exe" under the path C:\ti\<CCS_Version>\ccs\utils\cygwin to the environment variable as shown below, (confirm this by typing cp in the command line without any arguments and it should through an error "cp missing file operand")

    2. Next step is to edit the flash_v0.syscfg.js file, in the line number 7 from "copy --> cp" as shown below

    Now, save everything and try loading the JSON file in the sysconfig again.

    Can you try the same ?
    Best Regards,
    Aakash
  • Hi, Aakash

    All of your advice has been followed.

    Also in the path "C:\ti\mcu_plus_sdk_am263x_08_05_00_24\source\board\.meta\flash" both v0 and v1 exist, so I modified v1 the same.

    Afterwards, JSON was loaded, but the parameters were not updated with an error as shown in the figure below.

    Also, after removing the error by changing only the flash name in the above state, I tried to build and use it, but there is still no response.

    Please let me know if there is any additional way I can try it or if there is any information you need.

    *There's one strange part, so I'll share it.
    It is marked as "enableType": "7" for p114 inside the JSON.
    However, Quad Enable Type in sysconfig is only defined from 0 to 6.

    Best regards

    Jiung Choi

  • Hi ,

    Can you share your json file for the same ? Also can you try filling the data manually and try the example ?

    Best Regards,
    Aakash

  • Hi, Aakash

    Also as said above, "enableType": "7" for p114 so input is not possible. (Only 0-6 are defined in sysconfig)

    Of course, I tested for all Quad Enable Types, but it doesn't work. (SBL is not responding)

    Next, file upload is not possible due to internal regulations.

    Therefore, please refer to the JSON file contents included in the body.

    One more question.

    Currently, I am trying to use flash download through "sbl_uart_uniflash.release.tiimage".

    I think the above program is also implemented based on "S25FL128S" of cypress.

    Is it possible to create "sbl_uart_uniflash.release.tiimage" for GigaDevice's "GD25F128F"?

    Best regards

    Jiung Choi

  • Hi, Aakash

    I checked the operation by manually entering the flash module information of the "sbl_uart_uniflash_am263x-cc_r5fss0-0_nortos_ti-arm-clang" project.

    However, "Quad Enable Type" is set to 1, but please check if this is correct. ("enableType": "7" for p114 in JSON)

    Best regards

    Jiung Choi

  • Hi ,

    It is recommended to test flash_transfer example (https://software-dl.ti.com/mcu-plus-sdk/esd/AM263X/latest/exports/docs/api_guide_am263x/EXAMPLES_DRIVERS_QSPI_FLASH_TRANSFER.html)

    This will show you what went wrong with the driver configuration during your test. Then you can reuse the same settings for SBL_UART_UNIFLASH and SBL_QSPI.

    Also we have tested the driver with GD25B64 device from Gigabit but not with the device "GD25F128F" but if the device follows the standard JEDEC xSPI requirements it should be supportable. If you have the datasheet for the flash, feel free to share the same. I can help you out with QE bit settings. Before trying QE bit you can check if 1-1-1 is working for Standard Read and Fast Read.

    Just for the information, QE bit details are very well explained in the syscfg -

    Hope this helps.

    Best Regards,
    Aakash

  • Hi ,

    I checked the datasheet shared by SungIL Park. The QE bit settings in syscfg should be 1 i.e. Register 2 bit 1

    Hope this helps.

    Best Regards,
    Aakash