Hi Titus,
Thank you for that reply,
My uboot common/cmd_nand.c code also loks similar to your uboot code.
But interestingy its not printing sectorsize as 512Kib.
int do_nand(cmd_tbl_t * cmdtp, int flag, int argc, char *argv[]) { int i, dev, ret = 0; ulong addr, off; size_t size; char *cmd, *s; nand_info_t *nand; #ifdef CFG_NAND_QUIET int quiet = CFG_NAND_QUIET; #else int quiet = 0; #endif const char *quiet_str = getenv("quiet"); /* at least two arguments please */ if (argc < 2) goto usage; if (quiet_str) quiet = simple_strtoul(quiet_str, NULL, 0) != 0; cmd = argv[1]; if (strcmp(cmd, "info") == 0) { putc('\n'); for (i = 0; i < CFG_MAX_NAND_DEVICE; i++) { if (nand_info[i].name) printf("Device %d: %s, sector size %u KiB\n", i, nand_info[i].name, nand_info[i].erasesize >> 10); } return 0; }
I think they are doing rightshift to divide erase-block by 1024 to get the blocksize in "XXXkib" format.(purely for printing).
Thank you,
Regards,
Ankur