KMS for Apple silicon machines

Author:
Source

Mark Kettenis (kettenis@)
committed
support for
Kernel Mode-Setting (KMS)
on Apple silicon
(arm64)
machines:

CVSROOT:	/cvs
Module name:	src
Changes by:	kettenis@cvs.openbsd.org	2024/01/22 11:54:01

Modified files:
	sys/arch/arm64/conf: GENERIC 
	sys/dev/pci/drm: files.drm 
	sys/dev/pci/drm/include/generated: autoconf.h 
Added files:
	sys/dev/pci/drm/apple: afk.c afk.h apldcp.c apldrm.c apple_drv.c 
	                       dcp-internal.h dcp.c dcp.h 
	                       dcp_backlight.c dptxep.c dptxep.h 
	                       ibootep.c iomfb.c iomfb.h 
	                       iomfb_internal.h iomfb_template.c 
	                       iomfb_template.h iomfb_v12_3.c 
	                       iomfb_v12_3.h iomfb_v13_3.c iomfb_v13_3.h 
	                       parser.c parser.h systemep.c trace.c 
	                       trace.h version_utils.h 
	sys/dev/pci/drm/include/linux: apple-mailbox.h args.h 
	sys/dev/pci/drm/include/linux/soc/apple: rtkit.h 

Log message:
Add apldcp(4) and apldrm(4).  Together these drivers provide KMS
functionality on Apple Silicom machines.  At this point the drivers
provide significant power savings when the display is blanked (and
during suspend) and backlight control.  Some support for HDMI output
is also included, but for now only when HDMI is used as the primary output.
In the future this should also provide displayport support.

This is a port of the the Asahi Linux drivers which can be found at

https://github.com/AsahiLinux/linux/tree/asahi-wip

Note that this branch gets rebased from time to time.

These drivers do *not* bring us GPU accelerated graphics.  But there
are reports that things run "smoother".

There are some known bugs with backlight control: the backlight level
may not be restored properly after the display has been blanked, and
changing the backlight quickly un succession may break the backlight
control.

ok jsg@

Read more…

Read more