[PATCH v3 3/7] lib/charset: Map Unicode code points to CP437 code points 1-31

2024-03-16 Thread Janne Grunau via B4 Relay
From: Janne Grunau Code page 437 uses code points 1-31 for glyphs instead of control characters. Map the appropriate Unicode code points to this code points. Fixes rendering of grub2's menu as EFI application using the EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL on a console with bitmap fonts. Signed-off

[PATCH v3 0/7] video: Add UTF-8 support for UEFI applications

2024-03-16 Thread Janne Grunau via B4 Relay
as proposed by Heinrich Link: https://lore.kernel.org/u-boot/20220110005638.21599-1-andre.przyw...@arm.com/ Signed-off-by: Janne Grunau --- Changes in v3: - added Reviewed-by tag - removed unnecessary u8 casts - limited utf-8 conversion buffer to 5 bytes as documented - added missing

[PATCH v3 4/7] efi_selftest: Add international characters test

2024-03-16 Thread Janne Grunau via B4 Relay
on the screen for correctness. Signed-off-by: Andre Przywara Suggested-by: Heinrich Schuchardt Signed-off-by: Janne Grunau --- lib/efi_selftest/efi_selftest_textoutput.c | 21 + 1 file changed, 21 insertions(+) diff --git a/lib/efi_selftest/efi_selftest_textoutput.c b/lib

[PATCH v3 5/7] efi_selftest: Add box drawing character selftest

2024-03-16 Thread Janne Grunau via B4 Relay
for correctness. Signed-off-by: Andre Przywara Suggested-by: Heinrich Schuchardt Signed-off-by: Janne Grunau --- lib/efi_selftest/efi_selftest_textoutput.c | 20 1 file changed, 20 insertions(+) diff --git a/lib/efi_selftest/efi_selftest_textoutput.c b/lib/efi_selftest

[PATCH v3 2/7] video: console: Parse UTF-8 character sequences

2024-03-16 Thread Janne Grunau via B4 Relay
From: Janne Grunau efi_console / UEFI applications (grub2, sd-boot, ...) pass UTF-8 character sequences to vidconsole which results in wrong glyphs for code points outside of ASCII. The truetype console expects Unicode code points and bitmap font based consoles expect code page 437 code points

[PATCH v3 6/7] efi_selftest: Add geometric shapes character selftest

2024-03-16 Thread Janne Grunau via B4 Relay
From: Janne Grunau Draw symbols from Unicode's "Geometric shapes" page which translate to code page 437 code points 1-31. These are used by UEFI applications to draw user interfaces using EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL. The output has to be checked manually on the screen for c

[PATCH v3 1/7] lib: charset: Fix and extend utf8_to_utf32_stream() documentation

2024-03-16 Thread Janne Grunau via B4 Relay
From: Janne Grunau Suggested-by: Heinrich Schuchardt Reviewed-by: Heinrich Schuchardt Signed-off-by: Janne Grunau --- include/charset.h | 14 -- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/include/charset.h b/include/charset.h index 44034c71d3..f1050c903d

[PATCH v3 7/7] efi_selftest: Update StrToFat() unit test after CP473 map extension

2024-03-16 Thread Janne Grunau via B4 Relay
From: Janne Grunau Test that Unicode code points which map to CP437 code points 1-31 are converted to '_'. This ensures no FAT file names do not contain chars which are control characters in other code pages (CP 1250 for example). Signed-off-by: Janne Grunau --- lib/efi_selftest

[PATCH v2 4/6] usb: Add environment based device blocklist

2024-03-17 Thread Janne Grunau via B4 Relay
From: Janne Grunau Add the environment variable "usb_blocklist" to prevent USB devices listed in it from being used. This allows to ignore devices which trigger bugs in u-boot's USB stack or are undesirable for other reasons. Devices emulating keyboards are one example. U-boot currentl

[PATCH v2 6/6] usb: kbd: Add probe quirk for Apple and Keychron keyboards

2024-03-17 Thread Janne Grunau via B4 Relay
From: Janne Grunau Those keyboards do not return the current device state. Polling will timeout unless there are key presses. This is not a problem during operation but the inital device state query during probing will fail. Skip this step in usb_kbd_probe_dev() to make these devices useable

[PATCH v2 1/6] usb: xhci: refactor xhci_set_configuration

2024-03-17 Thread Janne Grunau via B4 Relay
From: Janne Grunau In the next step endpoints for multiple interfaces are set up. Move most of the per endpoint initialization to separate function to avoid another identation level. Reviewed-by: Marek Vasut Signed-off-by: Janne Grunau --- drivers/usb/host/xhci.c | 119

[PATCH v2 3/6] usb: xhci: Abort transfers with unallocated rings

2024-03-17 Thread Janne Grunau via B4 Relay
From: Janne Grunau Discovered while trying to use the second interface in the USB keyboard driver necessary on Apple USB keyboards. Signed-off-by: Janne Grunau --- drivers/usb/host/xhci-ring.c | 5 + 1 file changed, 5 insertions(+) diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb

[PATCH v2 2/6] usb: xhci: Set up endpoints for the first 2 interfaces

2024-03-17 Thread Janne Grunau via B4 Relay
From: Janne Grunau The xhci driver currently only does the necessary initialization for endpoints found in the first interface descriptor. Apple USB keyboards (released 2021) use the second interface descriptor for the HID keyboard boot protocol. To allow USB drivers to use endpoints from other

[PATCH v2 5/6] usb: kbd: support Apple Magic Keyboards (2021)

2024-03-17 Thread Janne Grunau via B4 Relay
From: Janne Grunau Apple USB keyboards (Magic Keyboard from 2021 (product id 0x029c)) carry the HID keyboard boot protocol on the second interface descriptor. Probe via vendor and product IDs since the class/subclass/protocol match uses the first interface descriptor. Probe the two first

[PATCH v2 0/6] USB keyboard improvements for asahi / desktop systems

2024-03-17 Thread Janne Grunau via B4 Relay
e Yubikeys emulate a keyboard. since u-boot only binds a single keyboard block this kind of devices from the USB keyboard driver. Signed-off-by: Janne Grunau --- Changes in v2: - rewritten commit message for "[PATCH 2/6] usb: xhci: Set up endpoints for the first 2 interfaces" - Replaced the

[PATCH v4 1/6] usb: xhci: refactor xhci_set_configuration

2024-04-04 Thread Janne Grunau via B4 Relay
From: Janne Grunau In the next step endpoints for multiple interfaces are set up. Move most of the per endpoint initialization to separate function to avoid another identation level. Reviewed-by: Marek Vasut Reviewed-by: Neal Gompa Signed-off-by: Janne Grunau --- drivers/usb/host/xhci.c

[PATCH v4 2/6] usb: xhci: Set up endpoints for the first 2 interfaces

2024-04-04 Thread Janne Grunau via B4 Relay
From: Janne Grunau The xhci driver currently only does the necessary initialization for endpoints found in the first interface descriptor. Apple USB keyboards (released 2021) use the second interface descriptor for the HID keyboard boot protocol. To allow USB drivers to use endpoints from other

[PATCH v4 5/6] usb: kbd: support Apple Magic Keyboards (2021)

2024-04-04 Thread Janne Grunau via B4 Relay
From: Janne Grunau Apple USB keyboards (Magic Keyboard from 2021 (product id 0x029c)) carry the HID keyboard boot protocol on the second interface descriptor. Probe via vendor and product IDs since the class/subclass/protocol match uses the first interface descriptor. Probe the two first

[PATCH v4 0/6] USB keyboard improvements for asahi / desktop systems

2024-04-04 Thread Janne Grunau via B4 Relay
e Yubikeys emulate a keyboard. since u-boot only binds a single keyboard block this kind of devices from the USB keyboard driver. Signed-off-by: Janne Grunau --- Changes in v4: - collects "Reviewed-by:" tagDITME: describe what is new in this series revision. - adds comment about usb_ign

[PATCH v4 4/6] usb: Add environment based device ignorelist

2024-04-04 Thread Janne Grunau via B4 Relay
From: Janne Grunau Add the environment variable "usb_ignorelist" to prevent USB devices listed in it from being bound to drivers. This allows to ignore devices which are undesirable or trigger bugs in u-boot's USB stack. Devices emulating keyboards are one example of undesirable de

[PATCH v4 6/6] usb: kbd: Add probe quirk for Apple and Keychron keyboards

2024-04-04 Thread Janne Grunau via B4 Relay
From: Janne Grunau Those keyboards do not return the current device state. Polling will timeout unless there are key presses. This is not a problem during operation but the initial device state query during probing will fail. Skip this step in usb_kbd_probe_dev() to make these devices useable

[PATCH v4 3/6] usb: xhci: Abort transfers with unallocated rings

2024-04-04 Thread Janne Grunau via B4 Relay
From: Janne Grunau Discovered while trying to use the second interface in the USB keyboard driver necessary on Apple USB keyboards. Reviewed-by: Marek Vasut Reviewed-by: Neal Gompa Signed-off-by: Janne Grunau --- drivers/usb/host/xhci-ring.c | 5 + 1 file changed, 5 insertions(+) diff

<    1   2