Downstream kernel made by Corellium which enables the iPhone 7 to boot.
This is the continuation of my work for a PostmarketOS port based on
@MartijnBraam kernel and devices packages.
PogoOS by the Checkra1n team is used to boot the Linux kernel. Further
instructions will be available in the PostmarketOS Wiki page.
[ci:skip-build] already built successfully in CI
On top of the firmware we already have, we also need device-specific
modem firmware. Use script from firmware-motorola-potter(credit goes to
Sireesh Kodali). Also imitate the logic in firmware-motorola-potter.
The Huawei Ascend G7 is based on Qualcomm MSM8916 and therefore makes
use of linux-postmarketos-qcom-msm8916 as a close-to-mainline kernel.
Initially supported features:
- USB
- Storage (eMMC, SD card)
- Display
- Touchscreen, Buttons, Vibrator
- Notification LED
- WiFi/Bluetooth
- Accelerometer, Magnetometer, Proximity
- Audio
- NFC
The modem needs more work to work around strange Huawei firmware mess.
Note that the Huawei shipped an outdated firmware version that does
not support booting aarch64 kernels (like used in this device port).
However, the device does not verify firmware signatures so it is
possible to flash firmware from other devices. This is mostly
described in the wiki, but unfortunately it's quite complex.
However, the aarch64 version of linux-postmarketos-qcom-msm8916
receives much more testing so I would like to avoid adding more
armv7 MSM8916 devices unless absolutely necessary.
For pointercal:
Screen dimension 720x1280
Touchscreen dimension (reported by evtest) 1100x1900
720/1100*65536 = ~42896
1280/1900*65536 = ~44151
Offset doesn't seem to be needed.
[ci:skip-build] already built successfully in CI
Based on downstream Android 7.0 kernel source from Huawei.
02_fix_undeclared_AUD_INET.patch is from huawei-alice
USB Networking, Touchscreen, USB OTG and Display work in xfce4.
Wifi just needs firmware, audio is broken.
Other parts haven't been tested yet.
The close-to-mainline kernel removed the generic-dsi driver in favor of
normal panel drivers. Also the panel drivers are now built in. Reflect that.
Also reflect the changes of firmware-motorola-ocean in
device-motorola-ocean_nonfree-firmware.
[ci:skip-build] Already built on CI in MR
- Add SLPI to nonfree_firmware description
- Add touchscreen and fuel gauge modules to the initramfs in preparation for
osk-sdl and charging-sdl (or any new alternative) support
- Add pointercal file for osk-sdl
[ci:skip-vercheck]
Port based on an unofficial LineageOS port
from https://www.los-legacy.de/17.1/zerofltexx, using kernel from
https://github.com/Exynos7420/android_kernel_samsung_exynos7420/
What works:
- Kernel boots
- Display and touch input (tested with Weston)
- USB networking
- Wifi
For now only including Wifi drivers, as I wasn't yet able to
successfully test audio and camera subsystems (but I intentionally left
these firmware files commented out in the APKBUILD file).
[ci:skip-build]: already built successfully in CI
AsteroidOS uses this config file to determine how the UI should look
(e.g. a round or a square screen), and if some things like Wi-Fi are
supported. Upstream auto generates this config file, but it seems so
simple and small that I think it's better for us to just ship the file
next to the APKBUILD
AsteroidOS uses this config file to determine how the UI should look
(e.g. a round or a square screen), and if some things like Wi-Fi are
supported. Upstream auto generates this config file, but it seems so
simple and small that I think it's better for us to just ship the file
next to the APKBUILD
TF201 nvram was updated since previous did not work on some devices.
Added support for TF101, TF300TG and TF300TL.
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>