cros_ec: Add crosec flashinfo command
authorMoritz Fischer <moritz.fischer@ettus.com>
Tue, 13 Sep 2016 21:44:49 +0000 (14:44 -0700)
committersjg <sjg@chromium.org>
Sun, 9 Oct 2016 15:30:32 +0000 (09:30 -0600)
Add command to print out the flash info as reported by the
ec. The data read back includes size, write block size,
erase block size.

Signed-off-by: Moritz Fischer <moritz.fischer@ettus.com>
Cc: Simon Glass <sjg@chromium.org>
Cc: u-boot@lists.denx.de
Acked-by: Simon Glass <sjg@chromium.org>
drivers/misc/cros_ec.c

index bb6e8fe..05f1f60 100644 (file)
@@ -1364,6 +1364,15 @@ static int do_cros_ec(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
                        printf("Offset: %x\n", offset);
                        printf("Size:   %x\n", size);
                }
+       } else if (0 == strcmp("flashinfo", cmd)) {
+               struct ec_response_flash_info p;
+
+               ret = cros_ec_read_flashinfo(dev, &p);
+               if (!ret) {
+                       printf("Flash size:         %u\n", p.flash_size);
+                       printf("Write block size:   %u\n", p.write_block_size);
+                       printf("Erase block size:   %u\n", p.erase_block_size);
+               }
        } else if (0 == strcmp("vbnvcontext", cmd)) {
                uint8_t block[EC_VBNV_BLOCK_SIZE];
                char buf[3];
@@ -1483,6 +1492,7 @@ U_BOOT_CMD(
        "crosec events              Read CROS-EC host events\n"
        "crosec clrevents [mask]    Clear CROS-EC host events\n"
        "crosec regioninfo <ro|rw>  Read image info\n"
+       "crosec flashinfo           Read flash info\n"
        "crosec erase <ro|rw>       Erase EC image\n"
        "crosec read <ro|rw> <addr> [<size>]   Read EC image\n"
        "crosec write <ro|rw> <addr> [<size>]  Write EC image\n"