Commit Graph

13225 Commits

Author SHA1 Message Date
Stefan Kalkowski
68de550090 hw: ignore stale data in fresh signal
When a new signal arrives, which means a formerly non-pending one,
we should ignore old signal numbers of that context, but only
evaluate newly received data by the last kernel-call.

Fix #5193
2024-04-25 15:43:03 +02:00
Christian Helmuth
6dd87a6ce0 sculpt: integrate preliminary touchpad support
Issue #5195
Issue #5174
2024-04-25 15:43:03 +02:00
Christian Helmuth
54cf1334e1 Permit shared access to Intel PCH GPIO device
The ported i2c_hid driver contains driver code for the "Intel
Tigerlake/Alderlake PCH pinctrl/GPIO" device. Unfortunately, acpica
driver also accesses the same device on Lid open/close via ACPI AML code
of the DSDT table to read out the state of a GPIO pin connected to the
notebook lid. This would fail as I/O memory is handed out only once and
cannot be shared. The workaround disables the region check for the
specified GPIO I/O memory regions and provides both drivers shared
access to the regions.

This is a preliminary workaround. A general solution should separate the
GPIO driver into a component (e.g., platform driver) that regulates
accesses by i2c_hid and acpica.

Issue #5195
2024-04-25 15:43:02 +02:00
Christian Helmuth
c4b5f11a38 pci_decode: report Intel PCH GPIO device
Discovered on Tigerlake (Fujitsu U7411) and Alderlake (Framework Gen12)
notebook devices.

Issue #5195
2024-04-25 15:43:02 +02:00
Christian Helmuth
10f8da4a13 pci_decode: fixup Intel LPSS (I2C) PCI BARs
Discovered on Tigerlake (Fujitsu U7411) and Alderlake (Framework Gen12)
notebook devices.

Issue #5195
2024-04-25 15:43:02 +02:00
Christian Helmuth
b085550a0c sculpt: fix menu-level check in popup dialog
Issue #5174
2024-04-25 15:43:02 +02:00
Alexander Boettcher
f9e9835449 sculpt: move nitpicker to leitzentrale affinity
During audio and video playback at a high rate by a VMM, nitpicker on the
boot CPU may interfere with the mixer clients, letting them not finish the
schedule RPC at the mixer in time. Moving nitpicker to the same CPU as
leitzentral mitigates the effect at moment.

Issue genodelabs/genode#5174
2024-04-25 15:43:02 +02:00
Martin Stein
48a5c12526 nic_router_uplinks.run: raise timeouts
At least on x86_64/x86_64/pc/hw|nova, the test used to fail because the net
setup sometimes required more than the 3 seconds that the test was giving each
step. This commit raises the step timeout to 5 seconds and the test timeout
from 70 to 90 seconds in order to be on the safe side.

Ref #5192
2024-04-25 15:43:02 +02:00
Josef Söntgen
ac3202e554 sculpt: raise volume in audio launcher
The default mixer launcher limits the volume to 50%, so raise the
driver's volume to the max to be audible on certain systems where
otherwise audio is barely recognizable.

While there, fix the wrong reporting attribute as well.

Issue #5174.
2024-04-25 15:43:02 +02:00
Norman Feske
1379661a85 sculpt/event_filter: rename touch -> touchpad
This eases the integration of a custom touchpad driver component
provided as launcher.

Issue #5174
2024-04-25 15:43:02 +02:00
Martin Stein
50fc5c6d42 file_vault: further reduce typical quota needs
Ref #5190
2024-04-25 15:43:02 +02:00
Martin Stein
d5e3f73884 file_vault: do not consider ui_config version
The version in ui_report and ui_config were merely used for making test output
more readable. However, there are other ways to achieve this goal.

Ref #5190
2024-04-25 15:43:02 +02:00
Martin Stein
2bcc85b5f5 file_vault: fix locking issue
The File Vault used to sporadically fail to complete Extend or Rekey operations
when it was locked during the operation. The cause was an insufficient state
model that has been fixed with this commit.

Ref #5190
2024-04-25 15:43:02 +02:00
Martin Stein
969469edef file_vault: clean up
Ref #5190
2024-04-25 15:43:02 +02:00
Martin Stein
a7ef2319f6 file_vault: remove need for state file
The state file is a legacy from the early days of the file vault and not really
needed anymore.

Ref #5190
2024-04-25 15:43:02 +02:00
Martin Stein
483fe18c4d file_vault_gui: dialog-based file_vault front end
* adds rekeying and resizing controls to config+report api of file vault
* moves common types of file vault to file_vault/include/file_vault/types.h
  to be included by other components
* fixes wrong type of nr_of_clients fields in file_vault
* introduces the file_vault_gui component that is a minimal graphical front end
  for the file vault based on the dialog lib and that uses the
  config+report api of the file vault as back end

Ref #5190
2024-04-25 15:43:02 +02:00
Martin Stein
9d78356885 text_area: remove unused min_width, min_height 2024-04-25 15:43:02 +02:00
Norman Feske
b75b40049d sculpt: rename suspend -> standby
Issue #5174
2024-04-25 15:43:01 +02:00
Norman Feske
d3d1e701a4 sculpt: refine scrolling boundaries
This patch addresses corner cases not considered so far. In particular,
it avoids placing the Add/Options tabs of an unscrollable popup under
the panel. This could happen in the presence of many options. The patch
includes the panel height into the calculation to rule out such
situations. It also tightens the scrolling boundaries to the visible
content.

Issue #5183
2024-04-25 15:43:01 +02:00
Josef Söntgen
a029b85d62 pc_wifi: provide generic LED related dummies
The generated dummies triggered when using a Atheros AR9462 device.

Fixes #5191.
2024-04-25 15:43:01 +02:00
Johannes Schlatow
60d97fab7e sculpt: update goa_testbed preset
genodelabs/genode#5174
2024-04-25 15:43:01 +02:00
Norman Feske
b939358c36 window_layouter: protect against mode 1 x 1
This patch handles intermediate situations where the screen mode may
become 1 x 1 (absence of any capture clients). In this case, the
decoration of a maximized window would legitimately exceed the screen
boundary.

Thanks Johannes for the investigation.

Issue #5187
Issue #5180
2024-04-25 15:43:01 +02:00
Johannes Schlatow
0f0fa5b2a2 sculpt: correct ROM names in event_filter/pc
The chargen files have been moved/renamed a while ago in the scope
of #4055.

genodelabs/genode#5174
2024-04-25 15:43:01 +02:00
Alexander Boettcher
f925680035 sculpt_manager: avoid restarting intel_gpu
during resume, which otherwise will restart all GPU clients.

Issue #5180
2024-04-25 15:43:01 +02:00
Alexander Boettcher
274a733e1a sculpt: support blanking system state
The blanking state is evaluated by the intel_fb driver, which will switch
off all connectors. When done, the intel_fb driver will exit and the
sculpt_manager will continue with the next step, stopping all drivers.

Issue #5180
2024-04-25 15:43:01 +02:00
Alexander Boettcher
9337c178c1 intel/gpu: support blanking system ROM state
Keep device resources alive, for "" and "blanking" state, so that
intel/display driver can try to switch off the connectors.

Issue #5180
2024-04-25 15:43:01 +02:00
Alexander Boettcher
2a4502b0de intel/display: support system state evaluation
When the system state "blanking" is determined, all connectors are switched
off and a parent exit is invoked.

Issue #5180
2024-04-25 15:43:01 +02:00
Stefan Kalkowski
5f67073aad sculpt: add missing pieces to support MNT reform
This commit adds missing routes to I2c for the framebuffer driver of the
MNT Reform. If build for this concrete board the Board_info::Soc variable
within the sculpt_manager is initialized according to the properties of
this device. The `update_soc` routine is called in the initialization of
the sculpt_manager, otherwise it won't be called at all, if no PCI devices
changes are detected. Missing driver binaries and device-tree-binaries are
add to the run-script.

Issue #5174
2024-04-25 15:43:01 +02:00
Stefan Kalkowski
3b83292205 sculpt: refine condition of nic support
A network card can be provided by PCI, and the SoC as well. Therefore,
add an additional state variable in the Board_info::Soc, and check it
appropriatedly.

Issue #5174
2024-04-25 15:43:01 +02:00
Christian Prochaska
47c1e45f28 ports: increase GDB resource quota limits on Sculpt
Fixes #5188
2024-04-25 15:43:01 +02:00
Norman Feske
39ccd5ab79 sculpt: refine condition of acpi features
Commit "sculpt: safeguard the offering of suspend/resume" was too lax
about the detection of acpi support. In situations where acpi support
is selected but not yet installed, the menu would offer the features
already. This patch restricts the condition such that acpi support must
be running, not merely selected.

Issue #5174
2024-04-25 15:43:01 +02:00
Norman Feske
ad722f1450 nitpicker: avoid mode switches on driver restarts
This patch retains the buffer size of the last capture client as mode as
long as no capture client exists. This avoids intermediate mode changes
in situations like suspend/resume where the display driver is restarted.

Issue #5187
2024-04-25 15:43:00 +02:00
Alexander Boettcher
02efe59cdd sculpt_manager: adjust system model state
s3_prepare should be ACPI_SUSPENDING instead of ACPI_RESUMING

Issue #5180
2024-04-25 15:43:00 +02:00
Alexander Boettcher
766060ece6 acpi_suspend: adjust to changes of #5180
Issue #5180
2024-04-25 15:43:00 +02:00
Alexander Boettcher
53230d39f4 intel/display: delay until graphic device is ready
Issue #5180
2024-04-19 13:54:16 +02:00
Alexander Boettcher
0b3cc37258 intel/gpu: provide platform device if hw resumed
If the gpu driver is resumed, delay new Device acquisition of the platform
client (intel_fb), until the gpu driver is in a working state.

Issue #5180
2024-04-19 13:54:16 +02:00
Josef Söntgen
10d7427490 sculpt: consider SoC board info for fb selection
In contrast to platforms, like the PC, where the fb driver selection
is a dynamic decision depending on the available hardware, on current
ARM-based SoC machines this configuration is part of the static board
information.

Issue #5174.
2024-04-19 13:44:36 +02:00
Norman Feske
084a14b114 record_play_mixer: make warning rate configurable
This patch disables latency warnings by default. The warnings can be
enabled by setting the 'warning_rate_ms` value to the desired
maximum rate.

Fixes #5186
Issue #5174
2024-04-19 13:42:05 +02:00
Christian Helmuth
85c99c238d depot: update recipe hashes 2024-04-19 08:54:22 +02:00
Norman Feske
e3d4f202c4 sculpt/nitpicker: assign KEY_PRINT -> screenshot
Issue #5174
2024-04-19 08:54:22 +02:00
Christian Helmuth
d90ec3775b pkg/terminal: limit initial dimension to 900x600 2024-04-19 08:54:22 +02:00
Norman Feske
9e69c7301a sculpt: safeguard the offering of suspend/resume
The USB host controller gets restarted during the suspend-resume cycle.
Hence, don't offer suspend while any USB storage device is in use, in
particular when deploying Sculpt from a USB stick.

Suspend/resume is not supposed to work with any framebuffer driver other
than intel_fb. Therefore, offer the suspend feature only when using intel_fb.

Issue #5174
2024-04-19 08:54:22 +02:00
Josef Söntgen
f2b921f380 pc_wifi: add iommu_device_unuse_default_domain dummy
Issue #5185.
2024-04-19 08:54:22 +02:00
Christian Helmuth
87ea807136 test-signal: print signals per activation in stress test 2024-04-19 08:54:22 +02:00
Alexander Boettcher
7e23b704f0 sculpt: disable serial output when LOG!=core
Issue #5180
2024-04-19 08:54:22 +02:00
Norman Feske
0a5e174d78 sculpt/usb/default: add device-assignment example
Issue #5174
2024-04-19 08:54:21 +02:00
Norman Feske
c6aa50ec56 dialog: don't scroll beyond text bounds
Issue #5174
2024-04-19 08:54:21 +02:00
Christian Helmuth
f8c420a78b file_vault_client.run: epit timer requires IO_MEM 2024-04-19 08:54:21 +02:00
Norman Feske
4a6ab846e5 sculpt: restore heartbeat watchdog for intel_fb
The automatic restart of intel_fb got lost during the transition from
the driver manager. This commit restores the heartbeat monitoring of
this driver.

Issue #5174
2024-04-19 08:54:21 +02:00
Norman Feske
f34bf0d19e sculpt: power options (suspend, reset, power off)
This patch enhances the sculpt manager to drive the system state
and manage the lifecycle of driver components during suspend-
resume cycles.

The new Power options can be found in the System menu. The suspend
and power-off controls are presented only when the acpi-support
option is activated.

Note that the USB controller is hard restarted when resuming from
suspend. Hence, all components that depend on USB are restarted
implicitely.

Issue #5180
Issue #5174
2024-04-19 08:54:21 +02:00