diff options
Diffstat (limited to 'common')
| -rw-r--r-- | common/memsize.c | 8 | ||||
| -rw-r--r-- | common/menu.c | 9 |
2 files changed, 11 insertions, 6 deletions
diff --git a/common/memsize.c b/common/memsize.c index 3c3ae6f1eba..1abf3fc47d7 100644 --- a/common/memsize.c +++ b/common/memsize.c @@ -85,6 +85,8 @@ long get_ram_size(long *base, long maxsize) addr = base + cnt; sync(); *addr = save[--i]; + if (dcache_en) + dcache_flush_invalidate(addr); } return (0); } @@ -93,6 +95,8 @@ long get_ram_size(long *base, long maxsize) addr = base + cnt; /* pointer arith! */ val = *addr; *addr = save[--i]; + if (dcache_en) + dcache_flush_invalidate(addr); if (val != ~cnt) { size = cnt * sizeof(long); /* @@ -104,6 +108,8 @@ long get_ram_size(long *base, long maxsize) cnt <<= 1) { addr = base + cnt; *addr = save[--i]; + if (dcache_en) + dcache_flush_invalidate(addr); } /* warning: don't restore save_base in this case, * it is already done in the loop because @@ -115,6 +121,8 @@ long get_ram_size(long *base, long maxsize) } } *base = save_base; + if (dcache_en) + dcache_flush_invalidate(base); return (maxsize); } diff --git a/common/menu.c b/common/menu.c index ae5afa14766..02df3b8f133 100644 --- a/common/menu.c +++ b/common/menu.c @@ -556,11 +556,6 @@ enum bootmenu_key bootmenu_conv_key(int ichar) case ' ': key = BKEY_SPACE; break; - case 'A' ... 'Z': - case 'a' ... 'z': - case '0' ... '9': - key = BKEY_SHORTCUT; - break; default: key = BKEY_NONE; break; @@ -591,8 +586,10 @@ enum bootmenu_key bootmenu_loop(struct bootmenu_data *menu, key = bootmenu_conv_key(c); - if (key == BKEY_SHORTCUT) + if (key == BKEY_NONE && isalnum(c)) { + key = BKEY_SHORTCUT; cch->shortcut_key = bootmenu_conv_shortcut_key(menu, c); + } return key; } |
