From ba47c53a62d513d9b5330a31e66f79f2119daa00 Mon Sep 17 00:00:00 2001 From: Andrey Arapov Date: Mon, 27 Jan 2020 22:12:52 +0100 Subject: [PATCH] [dom0, initramfs] add roadrunner2/macbook12-spi-driver configuration --- Makefile | 6 ++- Makefile.builder | 2 +- .../dracut.conf.d/macbook12-spi-driver.conf | 1 + .../modprobe.d/macbook12-spi-driver.conf | 1 + rpm_spec/core-dom0-linux.spec.in | 1 + .../core-dom0-macbook12-spi-driver.spec.in | 41 +++++++++++++++++++ version | 1 + 7 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 macbook12-spi-driver/dracut.conf.d/macbook12-spi-driver.conf create mode 100644 macbook12-spi-driver/modprobe.d/macbook12-spi-driver.conf create mode 100644 rpm_spec/core-dom0-macbook12-spi-driver.spec.in diff --git a/Makefile b/Makefile index f21e8ab..50b19a9 100644 --- a/Makefile +++ b/Makefile @@ -18,7 +18,7 @@ rpms: rpms-dom0 rpms-vm: @true -rpms-dom0: rpms-vaio-fixes +rpms-dom0: rpms-vaio-fixes rpms-macbook12-spi-driver rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-dom0-linux.spec rpm --addsign \ $(RPMS_DIR)/x86_64/qubes-core-dom0-linux-$(VERSION)*.rpm @@ -27,5 +27,9 @@ rpms-vaio-fixes: rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-dom0-vaio-fixes.spec rpm --addsign $(RPMS_DIR)/x86_64/qubes-core-dom0-vaio-fixes-$(VERSION)*.rpm +rpms-macbook12-spi-driver: + rpmbuild --define "_rpmdir $(RPMS_DIR)" -bb rpm_spec/core-dom0-macbook12-spi-driver.spec + rpm --addsign $(RPMS_DIR)/x86_64/qubes-core-dom0-macbook12-spi-driver-$(VERSION)*.rpm + clean: @true diff --git a/Makefile.builder b/Makefile.builder index 53cd005..e5a3827 100644 --- a/Makefile.builder +++ b/Makefile.builder @@ -1,3 +1,3 @@ ifeq ($(PACKAGE_SET),dom0) -RPM_SPEC_FILES := rpm_spec/core-dom0-linux.spec rpm_spec/core-dom0-vaio-fixes.spec +RPM_SPEC_FILES := rpm_spec/core-dom0-linux.spec rpm_spec/core-dom0-vaio-fixes.spec rpm_spec/core-dom0-macbook12-spi-driver.spec endif diff --git a/macbook12-spi-driver/dracut.conf.d/macbook12-spi-driver.conf b/macbook12-spi-driver/dracut.conf.d/macbook12-spi-driver.conf new file mode 100644 index 0000000..7e0c563 --- /dev/null +++ b/macbook12-spi-driver/dracut.conf.d/macbook12-spi-driver.conf @@ -0,0 +1 @@ +add_drivers+=" intel_lpss intel_lpss_pci spi_pxa2xx_platform spi_pxa2xx_pci applespi apple_ib_tb " diff --git a/macbook12-spi-driver/modprobe.d/macbook12-spi-driver.conf b/macbook12-spi-driver/modprobe.d/macbook12-spi-driver.conf new file mode 100644 index 0000000..7f54559 --- /dev/null +++ b/macbook12-spi-driver/modprobe.d/macbook12-spi-driver.conf @@ -0,0 +1 @@ +options apple_ib_tb fnmode=2 diff --git a/rpm_spec/core-dom0-linux.spec.in b/rpm_spec/core-dom0-linux.spec.in index a397b49..c24c5fe 100644 --- a/rpm_spec/core-dom0-linux.spec.in +++ b/rpm_spec/core-dom0-linux.spec.in @@ -51,6 +51,7 @@ Requires: %{name}-kernel-install Requires: xdotool Requires: createrepo_c Requires: qubes-core-dom0-vaio-fixes +Requires: qubes-core-dom0-macbook12-spi-driver Source0: %{name}-%{version}.tar.gz diff --git a/rpm_spec/core-dom0-macbook12-spi-driver.spec.in b/rpm_spec/core-dom0-macbook12-spi-driver.spec.in new file mode 100644 index 0000000..02897db --- /dev/null +++ b/rpm_spec/core-dom0-macbook12-spi-driver.spec.in @@ -0,0 +1,41 @@ +Name: qubes-core-dom0-macbook12-spi-driver +Version: @VERSION2@ +Release: 1%{?dist} +Summary: Additional modules for supporting keyboard, touchpad, touchbar in the MacBooks 2015-2018. + +Group: Qubes +Vendor: Invisible Things Lab +License: GPL +URL: http://www.qubes-os.org + +Source0: qubes-core-dom0-linux-@VERSION@.tar.gz + +%description +[Additional modules][1] for supporting keyboard, touchpad, touchbar in the MacBooks 2015-2018. + +The [current applespi driver in the upstream Linux 5.3][2] got issues such as a storm of the +"applespi spi APP00D:00: Received corrupted packet invalid message length 8 num fingers 0 tp len 48" +occasional system freezes, occasionally you cannot "modprobe -r applespi" as it would just +hang there without letting the system to gracefully shutdown/reboot. + +For more information please refer to the [State of Linux on the MacBook Pro 2016 & 2017 page][3]. + +[1]: https://github.com/roadrunner2/macbook12-spi-driver +[2]: https://github.com/torvalds/linux/commit/038b1a05eae6666b731920e46f47d8e2332e07ff +[3]: https://github.com/Dunedan/mbp-2016-linux + +%prep +%setup -q -n qubes-core-dom0-linux-@VERSION@ + +%install +mkdir -p $RPM_BUILD_ROOT/etc/dracut.conf.d/ +install -D macbook12-spi-driver/dracut.conf.d/macbook12-spi-driver.conf $RPM_BUILD_ROOT/etc/dracut.conf.d/ +mkdir -p $RPM_BUILD_ROOT/etc/modprobe.d/ +install -D macbook12-spi-driver/modprobe.d/macbook12-spi-driver.conf $RPM_BUILD_ROOT/etc/modprobe.d/ + +%files +/etc/dracut.conf.d/macbook12-spi-driver.conf +/etc/modprobe.d/macbook12-spi-driver.conf + +%changelog +@CHANGELOG@ diff --git a/version b/version index 106c895..d2660bb 100644 --- a/version +++ b/version @@ -1,2 +1,3 @@ 4.1.3 1.6.1 +31cc060a