diff options
author | Randall Spangler <rspangler@chromium.org> | 2012-07-23 13:08:40 -0700 |
---|---|---|
committer | Gerrit <chrome-bot@google.com> | 2012-07-23 23:30:33 -0700 |
commit | 1661f1cef07f5b29b7e9c06fb3220fb48d110686 (patch) | |
tree | 10149783f545d199b5abcdf4122336cbc9494648 /common/util.c | |
parent | 0653aa011ac5ce05f2e0d70bae90b5b7d126ea73 (diff) | |
download | chrome-ec-1661f1cef07f5b29b7e9c06fb3220fb48d110686.tar.gz |
Refactor flash module
This is a significant rewrite of the flash module, since it turns out
that much less of the flash logic is actually common between stm32 and
lm4.
BUG=chrome-os-partner:11699
TEST=on link,
(enable hardware wp)
flashinfo -> wp_gpio_asserted
flashwp enable
flashinfo -> wp_gpio_asserted ro_at_boot
reboot
flashinfo -> wp_gpio_asserted ro_at_boot ro_now
flashwp disable -> error 7
flashwp now
flashinfo -> wp_gpio_asserted ro_at_boot ro_now rw_now
reboot
flashinfo -> wp_gpio_asserted ro_at_boot ro_now
(disable hardware wp)
reboot
flashinfo -> ro_at_boot
flashwp disable
flashinfo -> (no flags)
Change-Id: If22b02373946ce1c080d49ccded4f8fa3e380115
Signed-off-by: Randall Spangler <rspangler@chromium.org>
Reviewed-on: https://gerrit.chromium.org/gerrit/28200
Reviewed-by: Vic Yang <victoryang@chromium.org>
Diffstat (limited to 'common/util.c')
-rw-r--r-- | common/util.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/common/util.c b/common/util.c index 008dc3843a..a8e154b896 100644 --- a/common/util.c +++ b/common/util.c @@ -139,6 +139,22 @@ int strtoi(const char *nptr, char **endptr, int base) } +int memcmp(const void *s1, const void *s2, int len) +{ + const char *sa = s1; + const char *sb = s2; + + int diff = 0; + while (len-- > 0) { + diff = *(sa++) - *(sb++); + if (diff) + return diff; + } + + return 0; +} + + void *memcpy(void *dest, const void *src, int len) { /* TODO: optimized version using LDM/STM would be much faster */ |