From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=212.227.15.18; helo=mout.gmx.net; envelope-from=xypron.glpk@gmx.de; receiver=edk2-devel@lists.01.org Received: from mout.gmx.net (mout.gmx.net [212.227.15.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 93A9621959CB2 for ; Wed, 5 Sep 2018 20:27:53 -0700 (PDT) Received: from [192.168.123.96] ([88.152.14.153]) by mail.gmx.com (mrgmx003 [212.227.17.190]) with ESMTPSA (Nemesis) id 0Ltr89-1fqIHP3tTR-011EH7; Thu, 06 Sep 2018 05:27:39 +0200 To: Ruiyu Ni Cc: Leif Lindholm , Alexander Graf , Takahiro Akashi , Rob Clark , U-Boot Mailing List , edk2-devel@lists.01.org From: Heinrich Schuchardt Openpgp: preference=signencrypt Autocrypt: addr=xypron.glpk@gmx.de; prefer-encrypt=mutual; keydata= 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 Eg== Message-ID: <43d78bc7-75d8-3133-d63c-18658c65bce1@gmx.de> Date: Thu, 6 Sep 2018 05:27:26 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 MIME-Version: 1.0 X-Provags-ID: V03:K1:x/7Cx1FPteIkrKqCdTyJqaCDrFHsYHePbQtQclbfCgHnED9OJXv PWikcDsKo9LvssGZwBgtk5oXOsMuVm7RO1ThpFS5Na3hKyC4tAzE0MUtWpQZOMAPmtFyF5H Ib+8etfg89L8Rm+uS72SpH8wxcHHA0k0OZvcwiMPekdITwEDUlPd0iX0zEafAqPw2tZ9RiT BEUAAovz8xM/4QcWTv4yg== X-UI-Out-Filterresults: notjunk:1;V01:K0:LB/z1IAILgo=:50ptO3u3YhRC54pH6JL7kA 1ghGBhspQwBYTQBjqQriOyuCydcuDtWuUMCVlbrYK+dSbk8S0Z2hEOV5G8isU4NM3viF+krBJ I0wnrrtXnQ2zfQvsctY+xx/tzB3QfAEQ3k7t8tg4y99grXlgjEh1zKy/LU3vqrwLIo+XDAblS T5HNf6K+G2OSuE2QDydYau19Y5IGISY7iBrAqvgnCcnhe5wUFXslGsGGngh2DZeOOnwjbRJAU gem2N6AElVITozYZCXJHA7WWpvM6nssqtkeZRx77YA6KqajEYOooDhYoGsLvF1V8Yhis039H4 NnrXl+wnphupiejtjFAg9CxYMF9oGVSWYggv3Tgxrui658AnJ3lP3XB3tmeyA5QfGpQtw295p +kbCmowygT057XtBQlccoYlFwCXy3MXBdaLzBxWN7v0xW9aQntLlZ1F+Ik8usiXk4TfQzXcdl N77aVtS0TZqb8wGjYEJLeIbW6Yr4ytYsHYDoWlIFv1Hhep0OCZFjTM8GXA00RCETiN9x6LRYg H2qnhHyj22eZi4hRpM7494cWYBgNX8t2MRskwSm9oDkvNNqwvdvtktWu1gt3AvPFSLClZiunB 2e7qnugrbXr6jU0nX1gbtxfwKDr1gj55hPBn5v+KYZxzvyq8UvcCo642s5FvgtTncAePAb5Tk T+x8zXXHXVc+0RJTyIGTjZLrY0K1yXtx15JxQlJlA8SZApIR1QSW4IoC1Op1MHULAuRW0y01x Z6TMd96j18F+OU5StG+3KioOl3AAuWmhDJp/SQzHi2Kpn9NbdnC30zPWOpe4kdVoNOOQnI0Qm LTDXsHZ Subject: Implementing EFI_SIMPLE_TEXT_INPUT_PROTOCOL X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Sep 2018 03:27:54 -0000 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Hello Ruiyu, currently I am struggling a bit with interpreting the UEFI spec concerning the EFI_SIMPLE_TEXT_INPUT_PROTOCOL. In UEFI spec 2.7. chapter 12.1.2 ConsoleIn Definition there is this sentence: "Only the control characters defined in Table 100 have meaning in the Unicode input or output streams." Table 100: U+0000 Null character ignored when received. U+0008 Backspace. Moves cursor left one column. U+0009 Tab. U+000A Linefeed. Moves cursor to the next line. U+000D Carriage Return. Moves cursor to left margin of the current line. Rob interpreted this in a patch for U-Boot such that he simply suppressed all other Unicode characters in the 0x00-01F range except for special treatment of 0x001b as ESC. When I look at EDK2 function USBKeyboardReadKeyStroke() (MdeModulePkg/Bus/Usb/UsbKbDxe/EfiKey.c:700) it seems that EDK2 would pass CTRL+C as Unicode character U+0003 (cf. your patch 608817ad7114 "Change the SimpleTextInEx implementation to return CTRL+C"). The same seems to be the case in function KeyboardReadKeyStroke() (MdeModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2KbdTextIn.c:265). So do I get it right that for CTRL+A to CTRL+Z we should return a value U+0001 - U+001a in Key->UnicodeChar and table 100 is about meaning of control characters only and does *not* prescribe a filter? But what about CTRL+[ - CTRL+_ ? Why are they suppressed in the EDK2 keyboard drivers? How do we enter U+001c - U+001f? Best regards Heinrich