diff options
author | Nico Huber <nico.huber@secunet.com> | 2012-06-15 22:28:12 +0000 |
---|---|---|
committer | Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net> | 2012-06-15 22:28:12 +0000 |
commit | 7bca126561b80f626dea269d7a6284a7cde0a8ed (patch) | |
tree | 45c6b31e39846a88d89d157d758134d7b8dc1db1 /spi.c | |
parent | 3464d05eb41ab4c7a6faba9a1a36bfbeda0de850 (diff) | |
download | flashrom-7bca126561b80f626dea269d7a6284a7cde0a8ed.tar.gz flashrom-7bca126561b80f626dea269d7a6284a7cde0a8ed.tar.bz2 flashrom-7bca126561b80f626dea269d7a6284a7cde0a8ed.zip |
Let the programmer driver decide how to do AAI transfers
Currently spi_aai_write() is implemented without an abstraction
mechanism for the programmer driver. This adds another function
pointer 'write_aai' to struct spi_programmer, which is set to
default_spi_write_aai (renamed spi_aai_write) for all programmers
for now.
A patch which utilises this abstraction in the dediprog driver will
follow.
Corresponding to flashrom svn r1543.
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Diffstat (limited to 'spi.c')
-rw-r--r-- | spi.c | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -161,11 +161,17 @@ uint32_t spi_get_valid_read_addr(struct flashctx *flash) } } +int spi_aai_write(struct flashctx *flash, uint8_t *buf, + unsigned int start, unsigned int len) +{ + return flash->pgm->spi.write_aai(flash, buf, start, len); +} + int register_spi_programmer(const struct spi_programmer *pgm) { struct registered_programmer rpgm; - if (!pgm->write_256 || !pgm->read || !pgm->command || + if (!pgm->write_aai || !pgm->write_256 || !pgm->read || !pgm->command || !pgm->multicommand || ((pgm->command == default_spi_send_command) && (pgm->multicommand == default_spi_send_multicommand))) { |