Hi experts,
I'm expanding UART with st16c554.
I looked through the EVM BSP, and can't find the GPMC configure code unless it is a GPMC_DEVICE_NAND, in gpmc_probe():
gpmc_mem_init();
for (p = gpmc_device->pdata; p; gpmc_device++, p = gpmc_device->pdata)
if (gpmc_device->flag & GPMC_DEVICE_NAND)
gpmc_nand_init((struct omap_nand_platform_data *) p);
return 0;
and gpmc_mem_init() initialize all the enabled CS to base_mem = 0x8000000 and size=0x10000000 (Am I right?)
in gpmc_mem_init():
/* Reserve all regions that has been set up by bootloader */
for (cs = 0; cs < GPMC_CS_NUM; cs++) {
u32 base, size;
if (!gpmc_cs_mem_enabled(cs))
continue;
gpmc_cs_get_memconf(cs, &base, &size);
if (gpmc_cs_insert_mem(cs, base, size) < 0)
BUG();
}
and in gpmc_sc_get_memconf():
if (cpu_is_am33xx()) {
*base = 0x8000000;
*size = 0x10000000;
}
If Above is correct, then I have to implement the gpmc configuration myself.
My question is:
What kind of device it is for st16sc554? I can find devices defination:
#define GPMC_DEVICE_NAND (1 << 0)
#define GPMC_DEVICE_ONENAND (1 << 1)
#define GPMC_DEVICE_NOR (1 << 2)
#define GPMC_DEVICE_SMC91X (1 << 3)
#define GPMC_DEVICE_SMS911X (1 << 4)
#define GPMC_DEVICE_TUSB6010 (1 << 5)
And I'd like to ask more: what kind of device SMC91X SMS911X and TUSB6010 are?
Thank you very much.