diff --git a/dracut/modules.d/90macbook12-spi-driver/module-setup.sh b/dracut/modules.d/90macbook12-spi-driver/module-setup.sh new file mode 100755 index 0000000..868c578 --- /dev/null +++ b/dracut/modules.d/90macbook12-spi-driver/module-setup.sh @@ -0,0 +1,16 @@ +#!/usr/bin/bash +# Add roadrunner2/macbook12-spi-driver drivers to initramfs for supporting keyboard, touchpad, touchbar in the MacBooks. +# Pre-requisite: these drivers need to be included in the Linux kernel package. + +check() { + grep -q ^MacBook /sys/devices/virtual/dmi/id/product_name || return 255 +} + +installkernel() { + hostonly='' instmods intel_lpss intel_lpss_pci spi_pxa2xx_platform spi_pxa2xx_pci applespi apple_ib_tb +} + +install() { + echo "options apple_ib_tb fnmode=2" >> "${initdir}/etc/modprobe.d/macbook12-spi-driver.conf" + echo "options applespi fnremap=1" >> "${initdir}/etc/modprobe.d/macbook12-spi-driver.conf" +} diff --git a/rpm_spec/core-dom0-linux.spec.in b/rpm_spec/core-dom0-linux.spec.in index b3d667f..e598851 100644 --- a/rpm_spec/core-dom0-linux.spec.in +++ b/rpm_spec/core-dom0-linux.spec.in @@ -211,6 +211,8 @@ chmod -x /etc/grub.d/10_linux %attr(0664,root,qubes) %config(noreplace) /etc/qubes-rpc/policy/qubes.repos.Disable # Dracut module /etc/dracut.conf.d/* +%dir %{_dracutmoddir}/90macbook12-spi-driver +%{_dracutmoddir}/90macbook12-spi-driver/* %dir %{_dracutmoddir}/90qubes-pciback %{_dracutmoddir}/90qubes-pciback/* %dir %{_dracutmoddir}/90extra-modules