aboutsummaryrefslogtreecommitdiffci
path: root/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc
diff refs
from: back
to: back
| flip
diff options
context:
space:
mode:
Diffstat (limited to 'root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc')
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/anaconda/conf.d/90-surface-pro-12-inch.conf19
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dconf/db/local.d/00-als2
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dconf/profile/user2
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dracut.conf.d/surface-pro-12-inch.conf24
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/cmdline1
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/devicetree1
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/install.conf1
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/logind.conf.d/60-surface-power-key.conf2
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/hexagonrpc.service10
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/iio-sensor-proxy.service.d/60-surface-pro-12-inch.conf14
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/surface-video-firmware.service12
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/udev/rules.d/61-sensors-surface-pro-12-inch.rules3
-rw-r--r--root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/yum.repos.d/kernel-sp12in.repo7
13 files changed, 98 insertions, 0 deletions
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/anaconda/conf.d/90-surface-pro-12-inch.conf b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/anaconda/conf.d/90-surface-pro-12-inch.conf
new file mode 100644
index 0000000..0b46109
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/anaconda/conf.d/90-surface-pro-12-inch.conf
@@ -0,0 +1,19 @@
+# Surface Pro 12" (Snapdragon X1P-42-100): do not hide the GRUB menu.
+#
+# /etc/anaconda/profile.d/fedora-workstation.conf sets menu_auto_hide = True,
+# and os-release here has VARIANT_ID=workstation, so anaconda selects that
+# profile. Its grub2.py then writes both variables into grubenv:
+#
+# grub2-editenv - set menu_auto_hide=1 boot_success=1
+#
+# deliberately, "so that the menu is hidden on the boot after install". On this
+# firmware a hidden menu means GRUB counts down GRUB_TIMEOUT with nothing on
+# screen and then crashes during the hand-off, so the very first boot of a fresh
+# install always fails; it only succeeds from the second attempt, once the menu
+# is drawn. Keeping the menu visible avoids that path entirely.
+#
+# conf.d is read after profile.d and is documented as the override location, and
+# this file only needs to exist in the live installer environment -- it has no
+# effect on, and is not needed by, the installed system.
+[Bootloader]
+menu_auto_hide = False
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dconf/db/local.d/00-als b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dconf/db/local.d/00-als
new file mode 100644
index 0000000..ae14928
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dconf/db/local.d/00-als
@@ -0,0 +1,2 @@
+[org/gnome/settings-daemon/plugins/power]
+ambient-enabled=false
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dconf/profile/user b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dconf/profile/user
new file mode 100644
index 0000000..aca0641
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dconf/profile/user
@@ -0,0 +1,2 @@
+user-db:user
+system-db:local
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dracut.conf.d/surface-pro-12-inch.conf b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dracut.conf.d/surface-pro-12-inch.conf
new file mode 100644
index 0000000..9c7a9bd
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/dracut.conf.d/surface-pro-12-inch.conf
@@ -0,0 +1,24 @@
+# Surface Pro 12" (Snapdragon X1P-42-100)
+#
+# Keep the ADSP/CDSP remoteproc driver out of the initramfs.
+#
+# qcom_q6v5_pas has auto_boot set, so it powers up the DSPs the moment it
+# probes. In a hostonly initramfs it gets pulled in and probes at ~1.7s, long
+# before root is mounted, and the firmware it needs lives on the root
+# filesystem:
+#
+# remoteproc remoteproc0: adsp is available
+# Direct firmware load for .../qcadsp8380.mbn failed with error -2
+# remoteproc remoteproc0: request_firmware failed: -2
+#
+# remoteproc does not retry after that, so both DSPs stay offline for the whole
+# boot -- which means no glink edge, no fastrpc devices, and therefore no
+# sensors. Nothing in the initramfs needs the DSPs to mount root, so deferring
+# the driver until after switch-root lets auto_boot find its firmware and
+# succeed. The alternative, install_items with the blobs, adds ~45MB to every
+# initramfs for no benefit.
+#
+# dracut reads this from the target's /etc/dracut.conf.d during anaconda's
+# initramfs regeneration, so it survives installation (unlike /etc/default/grub,
+# which anaconda rewrites from a fixed key set).
+omit_drivers+=" qcom_q6v5_pas "
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/cmdline b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/cmdline
new file mode 100644
index 0000000..5b92d02
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/cmdline
@@ -0,0 +1 @@
+rootflags=subvol=root mem_sleep_default=s2idle clk_ignore_unused pd_ignore_unused systemd.tpm2_wait=0 rhgb quiet
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/devicetree b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/devicetree
new file mode 100644
index 0000000..2acf815
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/devicetree
@@ -0,0 +1 @@
+qcom/x1p42100-microsoft-sp12in.dtb
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/install.conf b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/install.conf
new file mode 100644
index 0000000..03aec7d
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/kernel/install.conf
@@ -0,0 +1 @@
+BOOT_ROOT=/boot
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/logind.conf.d/60-surface-power-key.conf b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/logind.conf.d/60-surface-power-key.conf
new file mode 100644
index 0000000..c6fc547
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/logind.conf.d/60-surface-power-key.conf
@@ -0,0 +1,2 @@
+HandlePowerKey=suspend
+HandlePowerKeyLongPress=poweroff
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/hexagonrpc.service b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/hexagonrpc.service
new file mode 100644
index 0000000..4ec7250
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/hexagonrpc.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=HexagonRPC Service
+ConditionPathExists=/dev/fastrpc-adsp
+
+[Service]
+ExecStart=/usr/local/bin/hexagonrpcd -f /dev/fastrpc-adsp -d adsp -s
+Restart=on-failure
+
+[Install]
+WantedBy=multi-user.target
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/iio-sensor-proxy.service.d/60-surface-pro-12-inch.conf b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/iio-sensor-proxy.service.d/60-surface-pro-12-inch.conf
new file mode 100644
index 0000000..7b3cfcb
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/iio-sensor-proxy.service.d/60-surface-pro-12-inch.conf
@@ -0,0 +1,14 @@
+# Surface Pro 12" (Snapdragon X1P-42-100)
+#
+# The sensors on this device are not IIO devices. They live behind the SLPI
+# DSP, reached over fastrpc by hexagonrpcd, and iio-sensor-proxy only sees them
+# through the SSC backend it is built with here (-Dssc-support=enabled). So it
+# has to start after that daemon, and stop being useful if the daemon dies.
+#
+# A drop-in rather than a replacement unit: upstream's own unit is D-Bus
+# activated (Type=dbus, BusName=net.hadess.SensorProxy), which is how anything
+# asking for net.hadess.SensorProxy gets the service started, and overriding it
+# wholesale traded that away for nothing but this ordering.
+[Unit]
+Requires=hexagonrpc.service
+After=hexagonrpc.service
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/surface-video-firmware.service b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/surface-video-firmware.service
new file mode 100644
index 0000000..5c83962
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/systemd/system/surface-video-firmware.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Install Surface Pro 12in video codec firmware from a Windows partition
+ConditionPathExists=!/lib/firmware/qcom/x1p42100/Microsoft/Surface12/qcvss8380_pa.mbn
+After=local-fs.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=/usr/local/bin/surface-video-firmware.sh
+
+[Install]
+WantedBy=multi-user.target
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/udev/rules.d/61-sensors-surface-pro-12-inch.rules b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/udev/rules.d/61-sensors-surface-pro-12-inch.rules
new file mode 100644
index 0000000..82051c5
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/udev/rules.d/61-sensors-surface-pro-12-inch.rules
@@ -0,0 +1,3 @@
+ACTION=="add|change", SUBSYSTEM=="misc", KERNEL=="fastrpc-adsp*", ENV{ACCEL_MOUNT_MATRIX}="-1, 0, 0; 0, -1, 0; 0, 0, 1"
+SUBSYSTEM=="misc", KERNEL=="fastrpc-adsp*", ENV{IIO_SENSOR_PROXY_TYPE}+="ssc-accel"
+ACTION=="add", SUBSYSTEM=="misc", KERNEL=="fastrpc-adsp", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hexagonrpc.service"
diff --git a/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/yum.repos.d/kernel-sp12in.repo b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/yum.repos.d/kernel-sp12in.repo
new file mode 100644
index 0000000..24fe9f3
--- /dev/null
+++ b/root/tmp/SayaAndy/surface-pro-12-inch-linux-fedora/etc/yum.repos.d/kernel-sp12in.repo
@@ -0,0 +1,7 @@
+[kernel-sp12in]
+name=kernel-sp12in for Fedora $releasever - $basearch
+baseurl=https://rpm.sayag.it/kernel-sp12in/fedora/$releasever/$basearch/
+enabled=1
+priority=1
+gpgcheck=0
+metadata_expire=6h