The mainline-modem variant does not actually exist yet and this should
be preferably implemented using the new soc-qcom-msm8916-rproc selection
in the future.
Now the user can choose to install the proprietary firmware along with
the downstream or a (close to) mainline kernel.
[ci:skip-build]: already built successfully in CI
Add proprietary firmware required by OnePlus 5/5T's WLAN, Bluetooth, GPU
and other SoC subsystems such as ADSP. These are extracted directly from
OnePlus' OxygenOS 10.0.1 stock firmware with oos_fw_extract in the repo.
Now the user can choose to install the proprietary firmware along with
the downstream kernel (linux-huawei-angler) or a mainline kernel
(linux-postmarketos-qcom-msm8994).
Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
[ci:skip-build] Already built on CI in MR
While it doesn't make sense to package a mainline kernel for FP1 (only
UART and basic SoC components supported), it's good to include the dtb
name in deviceinfo so external tools can use it.
Enable flashing kernel on update + small cleanups for deviceinfo:
* re-sort lines in deviceinfo
* remove console=tty0 from kernel cmdline, so it does not spit out
all kernel logs on the screen. Now during boot you see just
blinking cursor and pmOS logo.
Rule D: Devices with secure boot and venus present in the firmware
partition need:
1. GPU firmware (firmware-qcom-adreno-a300)
2. msm-firmware-loader (for wcnss, modem, venus)
4. device-specific -wcnss-nv firmware
[ci:ignore-count]
[ci:skip-build] already built successfully in CI
Squash the packaged venus firmware blobs using pil-squasher so only
one file needs to be loaded rather than many small ones. Linux detects
squashed (.mbn) vs non-squashed (.mdt + .b*) based on file contents
(not file name) so it is fine to install venus.mbn to venus.mdt.
Make the package consistent with firmware-qcom-adreno packaged from
linux-firmware, but keep them separate for legal reasons. The firmware
packaged in firmware-qcom-adreno-extra does not have a proper license.
[ci:ignore-count]
[ci:skip-build] already built successfully in CI
The firmware provided by these subpackages is now covered by the
msm-firmware-loader, so there is no need to build packages for them
anymore.
[ci:ignore-count]
The files packaged in firmware-motorola-osprey-wcnss-nv and
firmware-motorola-osprey-venus seem completely identical to those
of harpia, so there is no need to package them twice. There are some
differences in modem/wcnss firmware but those are now covered by the
msm-firmware-loader.
Add sony-fusion3 firmware subpackage to enable wifi.
Enable Qoalcomm Prima WLAN driver and fix wrong path in kernel.
[ci:skip-build] Already built on CI in MR
Touchscreen and usb networking works. Much of the hardware is the
same as on gts210velte (but that one has a qcom soc and not
exynos5433). Exactly the same touchscreen calibrarion as for
gts210velte works for this device as well.
Also include firmware package with wifi files. Unlike on many other
Samsung devices wifi does not work out of the box after these
firmware files has been added.
[ci:skip-build] Already built on CI in MR
I'm not sure it is possible to connect a second display to this phone
through P2P WiFi, so mapping cursor to DSI-1 just in case. It is needed
for screen rotation when a second display is connected.
Reduce scaling factor from default 2 to 1.8.
I'm not sure it is possible to connect a second display to this phone
through P2P WiFi, so mapping cursor to DSI-1 just in case. It is needed
for screen rotation when a second display is connected.
Reduce scaling factor from default 2 to 1.8.
Due to the fact that wifi variants have different modem configuration
(modem on non-lte deviecs is ignored for now but that may change)
the lte kernel name should be called "modem-lte" and not just "modem".
The deviceinfo proerty was overlooked when converting gt58lte to generic
gt58 port. This makes it impossible to install LTE enabled kernel.
Fix the property name.
Fixed compatible and added interrups for touchscreen,
added Bluetooth support, made kconfig happy for waydroid,
use correct mount matrix for accelerometer,
changes in panel.
[ci:skip-build] Already built fine on CI in MR
The following commits will reintroduce it with its appropriate codename
and split it into a separet package for downstream, and separate ones
for the 3G version and the LTE version.
Update deviceinfo to set deviceinfo_bootimg_qcdt to false. This is causing the pmbootstrap install to fail with
==> initramfs: creating boot.img
ERROR: File not found: /boot/dt.img, but
'deviceinfo_bootimg_qcdt' is set. Please verify that your
device is a QCDT device by analyzing the boot.img file
(e.g. 'pmbootstrap bootimg_analyze path/to/twrp.img')
and based on that, set the deviceinfo variable to false or
adjust your linux APKBUILD to properly generate the dt.img
I downloaded the TWRP image for sirius from https://forum.xda-developers.com/t/recovery-unofficial-twrp-3-2-3-0-for-sirius-01-09-2018.3836837/
Then ran "pmbootstrap bootimg_analyze recovery.img". The output had ' deviceinfo_bootimg_qcdt="false" '. This is my justification for the fork
msm-firmware-loader is pretty similar to klte's modem-firmware-mount
except that it sets up the symlinks dynamically. The nice thing about
it is that it seems to just work. :)
[ci:ignore-count]
With the new msm8916-mainline kernel DT for gt510wifi is reworked to be
reused with gt58 devices. While at it, the DT was generalized to be used
with the LTE variants of the device as well as the wifi variant.
Change base dtb name to the new common dt and add an LTE-specific dt
that enavles the modem. Since variants have different secure-boot keys,
use msm-firmware-loader for that.
Also make various updates to support gpu-accelerated UI's and FDE.
Currently we see this error in our dmesg:
udevd[764]: invalid key/value pair in file /etc/udev/rules.d/90-android-touch-dev.rules on line 6, starting at character 102 ('\\')
[ci:skip-build] Already built successfully on CI
The best (only) theory so far is that issues occur if the battery is
deeply discharged. The latest kernel upgrade fixed both charging and
reported state-of-charge, so hopefully no one will have similar issues
from now on.
Add pmb:cross-native/!tracedeps to applicable firmware packages and
secure both with a test.
This sets the pmb:cross-native and !tracedeps options on all firmware-*
packages that are compatible with the native compilation method. A unit
test ensures the presence of both options while maintaining a list of
exempted packages.
Fixes: #718
[ci:ignore-count] [ci:skip-vercheck] [ci:skip-build]