x86: spi: Set maximum write size for ICH
authorSimon Glass <sjg@chromium.org>
Mon, 11 Mar 2013 06:08:07 +0000 (06:08 +0000)
committerSimon Glass <sjg@chromium.org>
Tue, 19 Mar 2013 15:45:37 +0000 (08:45 -0700)
This SPI controller can only write 64 bytes at a time. Add this restriction
in so that 'sf write' works correct for blocks larger than 64 bytes.

Signed-off-by: Simon Glass <sjg@chromium.org>
drivers/spi/ich.c

index ef1ce1d96c151d21b52f3cf85fb92b7c80556ca7..8865df5bef260aeba723550305ae879159247a3f 100644 (file)
@@ -147,6 +147,11 @@ struct spi_slave *spi_setup_slave(unsigned int bus, unsigned int cs,
                return NULL;
        }
 
+       /*
+        * Yes this controller can only write a small number of bytes at
+        * once! The limit is typically 64 bytes.
+        */
+       ich->slave.max_write_size = ctlr.databytes;
        ich->speed = max_hz;
 
        return &ich->slave;