This device runs on linux-postmarketos-rockchip which at the moment of
writing is 5.13.0 with (only) 6 patches applied, so close-to mainline.
I personally use 2 of these devices with postmarketOS installed daily as
my homeserver setup and it has worked really well. It's also a good
target to run Plasma Bigscreen on as a TV setupbox
When kernel variants were renamed in
69cd6ff843
these dtb vars were forgotten, making it impossible to boot a kernel
build with `pmbootstrap build linux-postmarketos-exynos4`, no dtb is
appended to the zImage and we get stuck on samsungs boot logo.
Merged in mainline since 5.9-rc2-next-grate:
- all previously applied patches specific for Tegra and Nexus 7
New features, not merged yet in mainline (only in -next-grate):
- improved power management
- implemented USB OTG
New configuration options
- enable F2FS support (incl. compression), which leads to prolonging
eMMC life
Tested on E1565.
Signed-off-by: David Heidelberg <david@ixit.cz>
There's a generic udev rule to set group ownership of backlights to
'video', but it only runs on the ADD action, which seems to be too
late(?) since the backlight device is never owned by 'video' on boot.
This rule will run on CHANGE too, which might be overkill but seems to
get the job done. It's now possible to set the backlight brightness on
the PBP as a normal user.
Upgrade to 5.13.0 mainline and disable staging drivers.
Staging drivers are not used by this device and cause
build failures [1].
[1] https://github.com/tobetter/linux/issues/29
[ci:skip-build]: already built successfully in CI
Support the downstream kernel and a close-to-mainline fork. Waveform
data for the eInk display and the Wi-Fi driver are not included yet.
Everything else should work.
* Add the fusb302 module in initfs for the keyboard and touchpad
* Add cmdline params for improving stability
fw_devlink was switched on by default in kernel 5.13, and is rumored to
have issues.
The others might improve nvme stability.
* Disable wifi powersave
* Clean up modules in the deviceinfo
The ODROID HC2 device must have its boot partition
on a microSD card while the rootfs can be on an external HDD.
Provide a script to transfer the rootfs and update the U-boot script.
[ci:skip-build] already built successfully in CI
- Use common firmware package for Samsung zero devices also for zerofltexx
- Fix Wifi firmware paths
- Fix display colors (in sxmo; weston seemed OK before)
- Fix "alignment fault" error on ALSA sound output by compiler flag.
[ci:skip-build] already built successfully in CI
Start NetworkManager on boot to autoconfigure network devices plugged
into the USB port as well.
Drop /etc/network/interfaces to allow NetworkManager manage all
interfaces.
[ci:skip-build] already built successfully in CI
[ci:ignore-count]
[ci:skip-vercheck] needed for the postmarketos-ui-* packages in this
series
[ci:skip-build] already built ui-* packages in CI, and device pacakges
are just trivial deviceinfo change (manually built some just to verify)
This adds a very basic openrc runscript that sets the power state on
/dev/nvme0 to level 2, which seems(?) to be the lowest operational power
state based on some cursory internet searching (and querying the nvme
drives I have, Samsung EVO and Pro)
The drive path is hard coded, but could be made configurable later on. I
basically wanted to get something in pmaports quickly, since this power
stuff is a major source of instability for me and probably others too
who add nvme drives to this device.
1 does fit the lock screen better, but 1.2 works better overall.
Some things are tiny with 1. 1.2 fits the lock screen decently and
still provides decently sized user interface elements.
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>
Gummiboot was dropped from Alpine. Switch to grub, which is what we use
for tablet-x86uefi too.
In contrary to tablet-x86uefi, run the grub-mkimage command directly
inside the device package:
* This avoids creating another confusing grub-x86 like package (looks
like the x86 version of alpine's grub package, as it's the case with
grub-efi-x86, but actually it is just the result of grub-mkimage).
* In contrary to grub-efi-x86, the resulting efi file is not shared
across several devices.
* It's consistent with uboot mkimage commands, which we also run in
device packages.
Related: 398b7aef0b
Ported succesfully to armv7. Everything that worked on armhf
works on armv7 as well: touch, wifi, usb networking etc.
SWRast (gallium) was not enabled but is needed because the device
does not support 3D acceleration yet.
This is required for kernels earlier than 4.7 for bwrap to work for
normal users, and therefore for gnome web (epiphany) and flatpak.
[ci:skip-build] [ci:ignore-count]
uboot-tools is provided by u-boot-tools but sometimes apk still gets
confused. This change prevents errors such as
pine64-pinephone:~$ sudo apk upgrade --verbose
WARNING: Failed to perform initial self-upgrade, continuing with full upgrade.
ERROR: unable to select packages:
uboot-tools (virtual):
provided by: u-boot-tools
required by: device-pine64-pinephone-0.25-r1[uboot-tools]
[ci:ignore-count]
[ci:skip-build]: already built in CI successfully
The AP6359SA is a BCM4359 SDIO-based Wi-Fi/Bluetooth module that PINE64
sells specifically for the ROCKPro64 device. This commit starts a
firmware package to support it specifically, while others can later add
firmware for other modules sold for the device. Also add this package as
a nonfree subpackage dependency in the ROCKPro64 device APKBUILD.
I was unable to find a suitable license for the firmware blobs, so until
we find a suitable repository containing all of the required files by
the module with a license included, or contact the vendor directly,
let's use LibreELEC's repository without a license for now.
[ci:skip-build]: already built successfully in CI
modules-load.conf was completely unused by this package,
not installed anywhere. brcmfmac is loaded automatically anyway.
Sort values in sources= alphabetically
This is needed with the 5.11 kernel. Also adjust the vram & cma sizes
for all msm8974 devices.
The CMA size is 256MB as set in the kernel config.
VRAM is default 16MB although it is set to 192MB with a kernel patch;
but set it manually for all devices to make it possible to remove this
patch in the future - until we have IOMMU working.
still missing:
* audio
* lcd backlight control
* touchscreen driver
* front camera
* accelerometer mount fix (driver seem not to support mount-matrix)
* 3D acceleration
* HDMI support
New mainline port with most things working (usb/wifi/bt/3d-accel/sound/gps).
Modem/calls/sms/mobile-data should work but couldn't test it recently
due to broken devices.
* Add u-boot build with a lot of patches that makes the display work in
u-boot for boot selection
* Upgrade the rockchip kernel to 5.11 mainline with config for the
rk3399 devices built-in
* Make the rockpro64 and pinebook pro use the newer kernel
[ci:skip-build]
The device has been renamed from fujitsu-m532 to pegatron-chagall since several rebrands of this board exist (Olivetti Olipad3, Siragon 4N, etc.), and Fujitsu M532 is just one of those.
Signed-off-by: Raffaele Tranquillini <raffaele.tranquillini@gmail.com>
Downstream kernel is outdated and no longer maintained by us. Thus,
removed. The linux-xiaomi-beryllium-mainline kernel is removed because
its superseded by the common sdm845 kernel and is no longer needed.
So far the debug-shell in initfs works. The device uses dynamic
partitions, so that has to be figured out to get a proper rootfs.
One thing to look out for is that mount_subpartitions task in initfs
hangs, so pmos_boot=sth was added to kernel cmdline to skip it. This is
also related to dynamic partitions, anyway.
[ci:skip-build] Already built on CI
Cypress bought the brcm WiFi stuff from broadcom so they want their firmware to
be called cyfmac instead of brcmfmac
a lot of brcmfmac firmware is now symlinked to cyfmac
This package is no longer used, as the OnePlus 6 will now use the
linux-postmarketos-qcom-sdm845 package.
Signed-off-by: Caleb Connolly <caleb@connolly.tech>
There is already samsung-a3ulte in community, and the devices actually
share the same kernel, device tree, and basically everything except
firmware. We just need separate firmware packages because Samsung uses
different secure boot certificates on a3lte and a3ulte.
They also share the same wiki page which suggests installation using
the pre-built images now, so having pre-built images only for
samsung-a3ulte is quite confusing for users.
The situation is similar as for samsung-a5ulte and samsung-a5lte
which also are both in community already.
This updates the current commit and refactor APKBUILD to
more modern way of writing downstream kernels. Also move to main/ to fit
other linux-postmarketos-* kernels.
Right now the "bq-picmt" device port is quite confusing.
It's actually for the same device as "bq-paella", which is in community
and uses the mainline kernel, except that it uses the downstream kernel.
Having the downstream kernel packaged is useful for testing sometimes,
but otherwise the device package is completely unsupported.
The mainline port works much better. The downstream port should only
be used if you know what you are doing (e.g. because you want to test
if something is working on downstream but not mainline) and therefore
it should not show up in "pmbootstrap init" by default.
Move the device package to unmaintained to implement that.
Also, add an "# Unmaintained: ..." comment that will be displayed
in "pmbootstrap init" if the device is selected anyway.