diff options
author | Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> | 2011-11-06 23:51:09 +0000 |
---|---|---|
committer | Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> | 2011-11-06 23:51:09 +0000 |
commit | a8d838d9d3a0373b51408a2ecb647c320e1aaff9 (patch) | |
tree | 8524bb99c9ff890da6311769656a6480abb0a1d5 /serprog.c | |
parent | 532c717bccc95aa93bae7af8be0695bee83c32b5 (diff) | |
download | flashrom-a8d838d9d3a0373b51408a2ecb647c320e1aaff9.tar.gz flashrom-a8d838d9d3a0373b51408a2ecb647c320e1aaff9.tar.bz2 flashrom-a8d838d9d3a0373b51408a2ecb647c320e1aaff9.zip |
ichspi: use a variable to distinguish ich generations instead of spi_programmer->type
The type member is enough most of the time to derive the wanted
information, but
- not always (e.g. ich_set_bbar),
- only available after registration, which we want to delay till the
end of init, and
- we really want to distinguish between chipset version-grained
attributes which are not reflected by the registered programmer.
Hence this patch introduces a new static variable which is set up
early by the init functions and allows us to get rid of all "switch
(spi_programmer->type)" in ichspi.c. We reuse the enum introduced
for descriptor mode for the type of the new variable.
Previously magic numbers were passed by chipset_enable wrappers. Now
they use the enumeration items too. To get this working the enum
definition had to be moved to programmer.h.
Another noteworthy detail: previously we have checked for a valid
programmer/ich generation all over the place. I have removed those
checks and added one single check in the init method. Calling any
function of a programmer without executing the init method first, is
undefined behavior.
Corresponding to flashrom svn r1460.
Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Diffstat (limited to 'serprog.c')
0 files changed, 0 insertions, 0 deletions