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.

Linux/AM5728: ROM code questions

Part Number: AM5728
Other Parts Discussed in Thread: AM5726, DRA752, DRA722

Tool/software: Linux

We are investigating on using the public rom code api to do some basic device initialization.

There are some magic boot rom address (ROM CODE API TABLE) in omapboot: (no doc. desc. it)

static const u32 rom_hal_mmchs_writedata_addr[] = {
        0,           /*OMAP_REV_INVALID*/
        (0x25c2c|1), /*OMAP_4430_ES1_DOT_0*/
        (0x2ddd8|1), /*OMAP_4430_ES2_DOT_0*/
        (0x2ddd8|1), /*OMAP_4430_ES2_DOT_1*/
        (0x2df58|1), /*OMAP_4430_ES2_DOT_2*/
        (0x2df58|1), /*OMAP_4430_ES2_DOT_3*/
        (0x36028|1), /*OMAP_4460_ES1_DOT_0*/
        (0x36028|1),  /*OMAP_4460_ES1_DOT_1*/
        (0x36028|1),  /*4470 placeholder*/
        (0x3ee18|1),  /*OMAP_5430_ES1_DOT_0*/
        (0x3ee18|1),  /*OMAP_5432_ES1_DOT_0*/
        (0x3f6fa|1),  /*OMAP_5430_ES2_DOT_0*/
        (0x3f6fa|1),  /*OMAP_5432_ES2_DOT_0*/
}
static const u32 rom_hal_mmchs_sendcommand_addr[] = {
        0,           /*OMAP_REV_INVALID*/
        (0x25aa8|1), /*OMAP_4430_ES1_DOT_0*/
        (0x2dc54|1), /*OMAP_4430_ES2_DOT_0*/
        (0x2dc54|1), /*OMAP_4430_ES2_DOT_1*/
        (0x2ddd4|1), /*OMAP_4430_ES2_DOT_2*/
        (0x2ddd4|1), /*OMAP_4430_ES2_DOT_3*/
        (0x35ea4|1), /*OMAP_4460_ES1_DOT_0*/
        (0x35ea4|1),  /*OMAP_4460_ES1_DOT_1*/
        (0x35ea4|1),  /*4470 placeholder*/
        (0x3ec8c|1),  /*OMAP_5430_ES1_DOT_0*/
        (0x3ec8c|1),  /*OMAP_5432_ES1_DOT_0*/
        (0x3f57c|1),  /*OMAP_5430_ES2_DOT_0*/
        (0x3f57c|1),  /*OMAP_5432_ES2_DOT_0*/
}

We need TI input to provide the above boot rom address for AM5726/28:
/DRA752_ES1_DOT_0/
/DRA752_ES1_DOT_1/
/DRA752_ES2_DOT_0/
/DRA722_ES1_DOT_0/
/DRA722_ES2_DOT_0/
As AM57x TRM only mentioned the rom code api table base address is 0x38400 only without details about the offset and the functions.

The code was originally written by Viswanath Puttagunta <vishp@ti.com> and Christina Warren <cawarren@ti.com>
http://omapzoom.org/?p=repo/omapboot.git;a=blob;f=arch/common/rom_mmc.c;h=36f36413df73e60779ccbf8d7ad608cd185611b8;hb=refs/heads/p-master-dev#l93

Thanks