SPI: Split writes using spi_crop_chunk()
SPI controllers in Intel and AMD bridges have a slightly different restriction on how long transactions they can handle. Change-Id: I3d149d4b7e7e9633482a153d5e380a86c553d871 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: http://review.coreboot.org/6163 Tested-by: build bot (Jenkins) Reviewed-by: Edward O'Callaghan <eocallaghan@alterapraxis.com>
This commit is contained in:
@@ -168,6 +168,8 @@ void spi_cs_deactivate(struct spi_slave *slave);
|
||||
*/
|
||||
void spi_set_speed(struct spi_slave *slave, uint32_t hz);
|
||||
|
||||
unsigned int spi_crop_chunk(unsigned int cmd_len, unsigned int buf_len);
|
||||
|
||||
/*-----------------------------------------------------------------------
|
||||
* Write 8 bits, then read 8 bits.
|
||||
* slave: The SPI slave we're communicating with
|
||||
|
@@ -39,14 +39,6 @@
|
||||
const typeof( ((type *)0)->member ) *__mptr = (ptr); \
|
||||
(type *)( (char *)__mptr - offsetof(type,member) );})
|
||||
|
||||
#define CONFIG_ICH_SPI
|
||||
#ifdef CONFIG_ICH_SPI
|
||||
#define CONTROLLER_PAGE_LIMIT 64
|
||||
#else
|
||||
/* any number larger than 4K would do, actually */
|
||||
#define CONTROLLER_PAGE_LIMIT ((int)(~0U>>1))
|
||||
#endif
|
||||
|
||||
struct spi_flash {
|
||||
struct spi_slave *spi;
|
||||
|
||||
|
Reference in New Issue
Block a user