diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c index 0a556628a255..28127bcb146d 100644 --- a/drivers/tty/sysrq.c +++ b/drivers/tty/sysrq.c @@ -532,17 +532,16 @@ static const struct sysrq_key_op *sysrq_key_table[62] = { /* key2index calculation, -1 on invalid index */ static int sysrq_key_table_key2index(u8 key) { - int retval; - - if ((key >= '0') && (key <= '9')) - retval = key - '0'; - else if ((key >= 'a') && (key <= 'z')) - retval = key + 10 - 'a'; - else if ((key >= 'A') && (key <= 'Z')) - retval = key + 36 - 'A'; - else - retval = -1; - return retval; + switch (key) { + case '0' ... '9': + return key - '0'; + case 'a' ... 'z': + return key - 'a' + 10; + case 'A' ... 'Z': + return key - 'A' + 10 + 26; + default: + return -1; + } } /*