Commit Graph

2866 Commits

Author SHA1 Message Date
bjorn3 c4908a5114 drivers/graphics: Remove UPDATE_PLANE 2026-03-17 20:06:21 +01:00
bjorn3 a40be7b446 drivers/graphics: Use set_crtc+dirtyfb in V2DisplayMap 2026-03-17 19:41:09 +01:00
bjorn3 f150813cfa drivers/graphics: Slightly encapsulate V2DisplayMap 2026-03-17 19:41:09 +01:00
bjorn3 3903fe4f5a drivers/graphics: Implement MODE_DIRTYFB 2026-03-17 19:40:41 +01:00
Jeremy Soller 7f533b52da Merge branch 'main' into 'main'
driver-graphics: MODE_SET_CRTC implementation

See merge request redox-os/base!173
2026-03-17 05:44:05 -06:00
Alexander Usenko a198776ce8 driver-graphics: MODE_SET_CRTC implementation 2026-03-17 05:44:05 -06:00
Jeremy Soller e1999171f9 Merge branch 'fix_build' into 'main'
Fix duplicate description key

See merge request redox-os/base!174
2026-03-16 17:11:53 -06:00
bjorn3 cdf810d1cd Move description for amlserde 2026-03-16 21:09:15 +01:00
bjorn3 c99d874ac4 Fix duplicate description key 2026-03-16 20:18:08 +01:00
Jeremy Soller f60cbae526 Merge branch 'add-info' into 'main'
Add missing Cargo package description and update drivers README

See merge request redox-os/base!171
2026-03-16 10:39:15 -06:00
Ribbon 90ea974ce0 Add missing Cargo package description and update drivers README 2026-03-16 10:39:15 -06:00
Jeremy Soller 4e679f03ff Merge branch 'gpu_drm14' into 'main'
Implement proper support for DRM framebuffers and nicer handling of standard DRM properties

See merge request redox-os/base!172
2026-03-15 06:55:25 -06:00
bjorn3 e27726e8c3 drivers/graphics: Remove GraphicsAdapter::display_count 2026-03-15 13:30:00 +01:00
bjorn3 93a8179d1f drivers/graphics: Remove GraphicsAdapter::display_size
It is no longer used.
2026-03-15 13:10:25 +01:00
bjorn3 460ae0d57c drivers/graphics/console-draw: Fix depth for framebuffer 2026-03-15 13:01:34 +01:00
bjorn3 d7974b3143 drivers/graphics: Nicer way to define standard properties
All standard properties are now pre-allocated at KmsObjects creation and
given a fixed object id.
2026-03-15 12:29:51 +01:00
bjorn3 be6ae85541 drivers/graphics: Implement proper support for framebuffers
Including support for creating and destroying framebuffers.
2026-03-15 11:19:59 +01:00
Jeremy Soller 27212a57f9 Merge branch 'logd_fixes' into 'main'
logd: Synchronously log to the kernel debug log

See merge request redox-os/base!170
2026-03-14 18:00:56 -06:00
bjorn3 159a09a663 logd: Synchronously log to the kernel debug log
This should not block and ensures that logs will still show up on the
serial port even if one of the log sinks blocks because for example the
graphics driver crashed, taking fbbootlogd with it. In the future we
might want to have a dedicated worker per log sink, but for now this
helps a log with debugging the graphics subsystem in a VM.
2026-03-14 22:38:39 +01:00
Jeremy Soller 75390766e2 Revert "Merge branch 'drm/set_crtc' into 'main'"
This reverts merge request !169
2026-03-14 11:51:26 -06:00
Jeremy Soller d093eca09c Merge branch 'drm/set_crtc' into 'main'
graphics-ipc: Initial implementation of SET_CRTC

See merge request redox-os/base!169
2026-03-14 11:36:50 -06:00
Meijlen e9d782cabb set_crtc realisation 2026-03-14 17:23:32 +00:00
Jeremy Soller 58a6134f28 Merge branch 'gpu_drm22' into 'main'
Various graphics subsystem improvements

See merge request redox-os/base!168
2026-03-14 09:15:44 -06:00
bjorn3 7b8ebe9dca drivers/graphics: Return size of CRTC from fpath
This is the actual size of the Orbital desktop. Previously resizing a
virtio-gpu window after Orbital started but before logging in would
cause the launcher to be out of view.
2026-03-14 16:09:46 +01:00
bjorn3 d11da9440b drivers/graphics: Fix mixup between buffers and framebuffers 2026-03-14 16:03:39 +01:00
bjorn3 359e845437 drivers/graphics: Rename buffer related fields and variables
And clarify that buffers have a separate index namespace by removing
usage of dumb_buffer_id.
2026-03-14 15:29:08 +01:00
Jeremy Soller 7c40b28ce8 Merge branch 'gpu_drm21' into 'main'
drivers/graphics: Remove UPDATE_CURSOR custom ioctl

See merge request redox-os/base!167
2026-03-14 07:34:10 -06:00
bjorn3 f6d2f2a6af drivers/graphics: Remove UPDATE_CURSOR custom ioctl
Orbital now uses MODE_CURSOR and MODE_CURSOR2 instead.
2026-03-14 14:27:44 +01:00
Jeremy Soller 6fc714cf35 Merge branch 'gpu_drm13' into 'main'
Introduce read-only CRTC objects and support proper cursor ioctls

See merge request redox-os/base!166
2026-03-14 07:19:11 -06:00
bjorn3 84f6f67a98 drivers/graphics: Implement the cursor drm ioctls 2026-03-14 14:15:13 +01:00
Jeremy Soller c243d5536f Merge branch 'gpu_drm20' into 'main'
drivers/graphics: Replace KmsObject trait with an enum

See merge request redox-os/base!165
2026-03-14 07:12:30 -06:00
bjorn3 985612d5e0 drivers/graphics: Changes to support SETCRTC in the future 2026-03-14 12:52:51 +01:00
bjorn3 63ca9efb8c drivers/graphics: Introduce CRTC objects
Currently still read-only.
2026-03-14 12:37:41 +01:00
bjorn3 fdb4d45e72 drivers/graphics: Replace KmsObject trait with an enum
The set of possible KMS object types is fixed.
2026-03-14 12:18:08 +01:00
Jeremy Soller 5e9f94b36b Merge branch 'gpu_drm19' into 'main'
drivers/graphics: Refcount all DRM objects

See merge request redox-os/base!162
2026-03-13 19:02:22 -06:00
bjorn3 20834544b7 drivers/graphics: Move KMS object handling to a submodule 2026-03-13 23:57:14 +01:00
bjorn3 977e13077d drivers/graphics: Require Debug to be implemented for Buffer 2026-03-13 23:23:16 +01:00
bjorn3 f6a7c194b2 drivers/graphics: Refcount all DRM objects
This is necessary to be able to properly handle objects that reference
each other and in doing so keep each other alive.
2026-03-13 23:23:15 +01:00
Jeremy Soller 901ec180a7 Merge branch 'gpu_drm18' into 'main'
Various DrmConnector improvements

See merge request redox-os/base!161
2026-03-13 15:31:42 -06:00
bjorn3 7f8ddd7a7e drivers/graphics: Add helpers for updating the connector state 2026-03-13 22:15:59 +01:00
bjorn3 c088e48948 drivers/graphics: Move DrmConnector and DrmEncoder to a separate module 2026-03-13 21:57:44 +01:00
bjorn3 37264a9e96 drivers/graphics: Slightly improve accuracy of connector info 2026-03-13 21:42:36 +01:00
Jeremy Soller efc2d688e3 Merge branch 'gpu_drm17' into 'main'
drivers/graphics: Unify buffer types between regular and cursor planes

See merge request redox-os/base!160
2026-03-13 14:09:35 -06:00
bjorn3 c6e479a622 drivers/graphics: Inline single call update_whole_screen method 2026-03-13 20:50:50 +01:00
bjorn3 5285281ff2 drivers/graphics: Slightly simplify add_connector 2026-03-13 20:31:47 +01:00
bjorn3 45d26b5374 drivers/graphics: Remove unnecessary object mutable accesses 2026-03-13 20:27:02 +01:00
bjorn3 d329c5b24a drivers/graphics: Allow disabling display output by setting no framebuffer 2026-03-13 19:42:17 +01:00
bjorn3 c8c5a3e240 drivers/graphics: Remove separate cursor framebuffer create/map methods 2026-03-13 19:42:17 +01:00
bjorn3 4317189d7b drivers/graphics: Unify buffer types between regular and cursor planes
Also correct the cursor size for virtio-gpu.
2026-03-13 19:42:17 +01:00
Jeremy Soller 2c8bc9bbf6 Update dependencies 2026-03-13 09:02:10 -06:00