<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/EmbeddedPkg/Drivers/VirtualKeyboardDxe/VirtualKeyboard.c, branch master</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=master</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2025-10-09T08:02:51+00:00</updated>
<entry>
<title>EmbeddedPkg: Clear keyboard queue buffer after reading</title>
<updated>2025-10-09T08:02:51+00:00</updated>
<author>
<name>nick.wang</name>
<email>nick.wang@insyde.com</email>
</author>
<published>2025-04-15T11:35:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=ab04d09555b91037b8463ea5fb4387f16a5a5015'/>
<id>urn:sha1:ab04d09555b91037b8463ea5fb4387f16a5a5015</id>
<content type='text'>
There is a possibility to retrieve user input keystroke data stored in the
queue buffer via the EFI_SIMPLE_TEXT_INPUT_PROTOCOL pointer. To prevent
exposure of the password string, clear the queue buffer by filling it
with zeros after reading.

Signed-off-by: Nick Wang &lt;nick.wang@insyde.com&gt;
</content>
</entry>
<entry>
<title>EmbeddedPkg: Update the comments of ReadKeyStroke and ReadKeyStrokeEx</title>
<updated>2024-04-03T02:25:06+00:00</updated>
<author>
<name>Qingyu</name>
<email>qingyu.shang@intel.com</email>
</author>
<published>2024-03-11T08:23:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=7cc2010f46b87c9c1a7baefb060868e4ee17a753'/>
<id>urn:sha1:7cc2010f46b87c9c1a7baefb060868e4ee17a753</id>
<content type='text'>
Refer to Uefi spec 2.10 section 12.3.3, Add a new retval
EFI_UNSUPPORTED to EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL.ReadKeyStrokeEx
and EFI_SIMPLE_TEXT_INPUT_PROTOCOL.ReadKeyStroke().

Cc: Leif Lindholm &lt;quic_llindhol@quicinc.com&gt;
Cc: Ard Biesheuvel &lt;ardb+tianocore@kernel.org&gt;
Cc: Abner Chang &lt;abner.chang@amd.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Signed-off-by: Qingyu &lt;qingyu.shang@intel.com&gt;
Reviewed-by: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
</content>
</entry>
<entry>
<title>EmbeddedPkg: Apply uncrustify changes</title>
<updated>2021-12-07T17:24:28+00:00</updated>
<author>
<name>Michael Kubacki</name>
<email>michael.kubacki@microsoft.com</email>
</author>
<published>2021-12-05T22:53:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=e7108d0e9655b1795c94ac372b0449f28dd907df'/>
<id>urn:sha1:e7108d0e9655b1795c94ac372b0449f28dd907df</id>
<content type='text'>
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3737

Apply uncrustify changes to .c/.h files in the EmbeddedPkg package

Cc: Andrew Fish &lt;afish@apple.com&gt;
Cc: Leif Lindholm &lt;leif@nuviainc.com&gt;
Cc: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Signed-off-by: Michael Kubacki &lt;michael.kubacki@microsoft.com&gt;
Reviewed-by: Andrew Fish &lt;afish@apple.com&gt;
</content>
</entry>
<entry>
<title>EmbeddedPkg/VirtualKeyboard: Fix few typos</title>
<updated>2020-02-10T22:30:07+00:00</updated>
<author>
<name>Antoine Coeur</name>
<email>coeur@gmx.fr</email>
</author>
<published>2020-02-07T01:07:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=e60536756ec5fe7e6dadd3827988c3c1abfa317c'/>
<id>urn:sha1:e60536756ec5fe7e6dadd3827988c3c1abfa317c</id>
<content type='text'>
Fix few typos in the documentation.

Cc: Leif Lindholm &lt;leif.lindholm@linaro.org&gt;
Cc: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Signed-off-by: Antoine Coeur &lt;coeur@gmx.fr&gt;
Reviewed-by: Philippe Mathieu-Daude &lt;philmd@redhat.com&gt;
Reviewed-by: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Signed-off-by: Philippe Mathieu-Daude &lt;philmd@redhat.com&gt;
Message-Id: &lt;20200207010831.9046-4-philmd@redhat.com&gt;
</content>
</entry>
<entry>
<title>EmbeddedPkg: Replace BSD License with BSD+Patent License</title>
<updated>2019-04-09T17:57:58+00:00</updated>
<author>
<name>Michael D Kinney</name>
<email>michael.d.kinney@intel.com</email>
</author>
<published>2019-04-03T23:03:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=878b807a435eefbb1d76f9bdec30cb3526521a5e'/>
<id>urn:sha1:878b807a435eefbb1d76f9bdec30cb3526521a5e</id>
<content type='text'>
https://bugzilla.tianocore.org/show_bug.cgi?id=1373

Replace BSD 2-Clause License with BSD+Patent License.  This change is
based on the following emails:

  https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html
  https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html

RFCs with detailed process for the license change:

  V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html
  V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html
  V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Reviewed-by: Leif Lindholm &lt;leif.lindholm@linaro.org&gt;
</content>
</entry>
<entry>
<title>EmbeddedPkg/VirtualKeyboard: Avoid notification called more than once</title>
<updated>2018-09-14T02:18:31+00:00</updated>
<author>
<name>Dandan Bi</name>
<email>dandan.bi@intel.com</email>
</author>
<published>2018-09-09T14:26:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=9c8e9e76bd06014e430ecfa6c8f8e21374005a29'/>
<id>urn:sha1:9c8e9e76bd06014e430ecfa6c8f8e21374005a29</id>
<content type='text'>
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=996

Issue:
In current code logic, when a key is pressed, it will search
the whole NotifyList to find whether a notification has been
registered with the keystroke. if yes, it will en-queue the
key for notification execution later. And now if different
notification functions have been registered with the same key,
then the key will be en-queued more than once. Then it will
cause the notification executed more than once.

This patch is to enhance the code logic to fix this issue.

Cc: Ruiyu Ni &lt;ruiyu.ni@intel.com&gt;
Cc: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Cc: Leif Lindholm &lt;leif.lindholm@linaro.org&gt;
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Dandan Bi &lt;dandan.bi@intel.com&gt;
Reviewed-by: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Reviewed-by: Ruiyu Ni &lt;ruiyu.ni@intel.com&gt;
</content>
</entry>
<entry>
<title>EmbeddedPkg/Drivers: add virtual keyboard driver</title>
<updated>2018-04-30T16:58:14+00:00</updated>
<author>
<name>Haojian Zhuang</name>
<email>haojian.zhuang@linaro.org</email>
</author>
<published>2018-03-08T13:28:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=1df5fb2d83d9eca2d3b4b87fab7a0ec9f288cb6f'/>
<id>urn:sha1:1df5fb2d83d9eca2d3b4b87fab7a0ec9f288cb6f</id>
<content type='text'>
This driver is used to simulate a keyboard. For example, user
could read GPIO setting or data from RAM address. If the value
matches the expected pattern, it could trigger a key pressed
event.

User needs to implement hooks of PLATFORM_VIRTUAL_KBD_PROTOCOL.
There're 4 hooks in this protocol.
Register(): Quote the interface that user needs. For example, user
needs to locate GPIO protocol if he wants to simulate a GPIO value
as a key.
Reset(): Do the initialization before reading value.
Query(): Read value. If the value matches the expected pattern,
trigger a key pressed event.
Clear(): Clean the value if necessary.

Cc: Leif Lindholm &lt;leif.lindholm@linaro.org&gt;
Cc: Ard Biesheuvel &lt;ard.biesheuvel@linaro.org&gt;
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Haojian Zhuang &lt;haojian.zhuang@linaro.org&gt;
Reviewed-by: Leif Lindholm &lt;leif.lindholm@linaro.org&gt;
</content>
</entry>
</feed>
