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.

UNIFLASH: AM3356: uniflash tool support for NAND flash in the production environment.

Part Number: UNIFLASH
Other Parts Discussed in Thread: AM3356

Hi,

My requirement is to use the uniflash tool in the production environment to flash the AM3356 based custom board. 

I went through below link ,

it was mention that we can use the command line to flash the board through uniflash and as support uniflash has provided the Flash writer bin file for only selected board.

As per our understand, if we able to load the flash writer bin file through JTAG (xds200), then we can load the MLO, uboot and kernel image to the board.

but, the flash writer bin file provided with uniflash will not support my custom board, So need help on how to proceed further.

http://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index_board.html#uniflash

  • Hi Rajendra,

    If you have a NAND device connected via GPMC, then there is no support for this in Uniflash today, and it would be something you would need to add yourself by customizing the code base (it is part of the TI RTOS SDK, under pdk_am335x_1_0_16/packages/ti/board/utils/uniflash). Especially for NAND this is probably less than trivial to do due to it's bad block management, side band information, etc. all different for different devices.

    There is however an example/tool included in the TI RTOS SDK under pdk_am335x_1_0_16/packages/ti/starterware/tools/flash_writer which you could use to load a basic programmer firmware via JTAG, and then program some boot artifacts into NAND that should be a reasonable starting point.

    https://processors.wiki.ti.com/index.php/AM335X_StarterWare_Booting_And_Flashing#Flashing_bootloader_and_application_to_NAND_Flash

    However what I'd probably do instead is try to find a way to use U-Boot to perform the programming, to be able to benefit from its rich set of built-in and proven drivers for various devices and setups, rather than trying to create something from scratch here. And since you need to adopt U-Boot anyways to your platform so you get this for "free". This would also help in ensuring what you program into NAND will later be compatible with Linux. You just need to find a way to load U-Boot into a "blank" board, which you can do through different interfaces including UART, Ethernet, and even USB (might need to be able to access your SYSBOOT switches, at least for the initial program).

    Regards, Andreas

  • Greetings,

    Wow!    Simply terrific posting - recognized as such by (even) "Non-Users" of the specified device.

    Resourceful, thorough, inventive AND guiding!    We'd mash the "LIKE" button had it not been (mistakenly) judged non-essential!