Since I'm not going by the "mint" alias anymore, I've decided to fix
that on the APKBUILDs
Signed-off-by: Lux Aliaga <they@mint.lgbt>
[ci:skip-build]: Already built successfully in CI
This is a version bump for the sm6125 mainline kernel fork. It should
also fix a config issue.
Changes:
* Made QUSB2 built-in instead of a module (Fixes USB connectivity
issues)
* Updates to xiaomi-laurel device tree to fit new schema
* Changed maintainer name
Signed-off-by: Lux Aliaga <they@mint.lgbt>
Add new patches:
- enable serial console
- save relocation address to find KASLR
- buttons as keyboard input driver to navigate bootmenu
- bootmenu loop entry selection
Enable vulkan on supported hardware configurations
out of the box.
Change-Id: I6c8e1713e7c834aae3a162b8a681f5abde02ed5e
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
The file brcmfmac43455-sdio.raspberrypi,4-model-b.bin is now provided by
linux-firmware-brcm package in Alpine. Remove to symlink to stop the
file conflict.
Now that touchscreen driver is supported in kernel, include the module
in initfs so it's available there.
[ci:skip-build]: Already built successfully in CI
Remove mainline postfix in initramfs module list,
because sagit has only 1 kernel for now.
Blacklisting ipa module fixes poweroff.
See 68cdc1ea2b commit for more info.
[ci:skip-build]: already built successfully in CI
This is an early mainline port for the MediaTek MT6763 Helio P23 SoC
that just about boots in about 3 minutes with one core online, logs on
display (simplefb) or UART serial console and USB gadget mode
facilitating netbooting postmarketOS while tethered via RNDIS.
This contains a fix for second panel variant for samsung-hlte.
No more manual changes, .config was regenerated using kconfig migrate.
[ci:skip-build]: already built successfully in CI
This is an incomplete port but it has greater functionality than the existing downstream based one, which has been moved to unmaintained.
[ci:skip-build]: Already built successfully in CI
There are 2 panel variants supported:
- panel-samsung-hx8389c-gh9607501a
- panel-samsung-s6d78a0-gh9607501a
Add both of them to enable panel display during splash and FDE.
Note that fortunaltezt has only one panel variant so it's not included.
[ci:skip-build] already built successfully in CI
Device uses mainline kernel. What works:
- boots
- display
- touchscreen
- wifi
Also add firmware package
[ci:skip-build]: already built successfully in CI
New features for google-sargo:
- GPU acceleration
- Bluetooth
- Haptics (currently only rumble effect)
- Video acceleration (still untested)
- NFC (only detection was tested)
Certain newer hardware may require a newer kernel than the current
lts in order to work.
Change-Id: Iae0d91f8bf8d1b8516698841895f942e527b0813
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
[ci:skip-build]: already built successfully in CI
Remove the -dev subpackages of kernels that replace the linux-headers
package. As I understand, the only case where this would make sense is
if you wanted to build a kernel module against headers that need to be
newer than the headers in Alpine's linux-headers package (currently
5.19.5).
While this might have been historically relevant when wireguard wasn't
in the kernel and you might have needed newer linux-headers to build
the module, it seems irrelevant today. If somebody should need this in
the future, then bring it back properly / consider getting the
linux-headers package in Alpine upgraded. Right now the -dev packages
are broken in several ways:
* Use of unversioned provides= (pma#1766)
* Don't contain binaries needed to build binary packages (pma#462).
This was worked around in 6aba5f ("Package kernel-scripts
separately"), but later this didn't build anymore and we removed it.
So in short: broken and unused, drop them.
RootFS cannot be flashed on this devices since Samsung uses a different sparse format.
Enable this in the deviceinfo file to allow flashing the rootFS.
[ci:skip-build]: already built successfully in CI
Additionally switch mainline kernel from qcom_fg to bq27xxx_battery_i2c.
While at it simplify the deviceinfo_modules_initfs_alpine list to
exclude implicit dependencies that mkinitfs can find itself to make the
line length a bit less unwieldy.
[ci:skip-build] Already built successfuly on CI in MR
Additionally switch mainline kernel from qcom_fg to bq27xxx_battery_i2c
and probe the correct panel driver, this was a regression that came from
the initial linux-edge enablement MR.
While at it simplify the deviceinfo_modules_initfs_alpine list to
exclude implicit dependencies that mkinitfs can find itself to make the
line length a bit less unwieldy.
While this provides the ability to use ModemManager, there are quite a
lot of issues with the driver still; keep it enabled in kernel for now
and let users "modprobe ipa" if they want to test modem features
whichever side effects that may cause including:
- Making the device nearly impossible to poweroff or reboot
- Making the UI lag noticeably more due to some interconnect bandwidth
issues
While this provides the ability to use ModemManager, there are quite a
lot of issues with the driver still; keep it enabled in kernel for now
and let users "modprobe ipa" if they want to test modem features
whichever side effects that may cause including:
- Making the device nearly impossible to poweroff or reboot
- Making the UI lag noticeably more due to some interconnect bandwidth
issues
The qca (Bluetooth) and qcom (non-zap GPU) firmware blobs don't need to
be signed by the OEM, so let's use upstream versions to benefit from
fixes and updates done there.
The soc-qcom-sdm845* packages are mostly sufficient, but there are a few
issues that all MSM8998 devices on mainline will face, so include
workarounds for them in a generic package all device pkgs can depend on.
Kernel doesn't compile anymore, and it doesn't seem worth fixing it
again. The kernel has been added in 2017 as a stock mainline kernel from
that time with only two patches and wasn't maintained since then,
looking at git log --follow it was only patched to fix it up when
it didn't build.
As the device is a generic x86_64 tablet: if somebody has that
particular device, try to get the generic device-tablet-x64uefi running
instead.
Patch header for 0027 was not formatted correctly. Fix that and
re-generate all other patches while we are at it.
[ci:skip-build] Already built successfuly on CI in MR
Also:
Fix camera on google-snow.
Enable video decoder.
Make boot.img smaller making kernel more modular and making FS-related
modules =y instead of =m (built-in file systems consume less space
than initramfs modules).
Reverts commit 70efe55031 for kernels that
started failing on bpo. I suspect it's caused by a change in binutils,
since I tried building linux-oneplus-billie2 with gcc6 and got the same
error (after trying other workarounds like disabling selinux for it, but
then it failed elsewhere).
We previously installed dtbs outside of the boot partition, so it
was necessary to copy them from the root partition to boot if you
wanted to utilise them in U-Boot scripts. This is no longer
necessary as we now install dtbs to the boot partition directly, so
remove this workaround and edit the U-Boot script to reflect the
change.
This device package represents several devices, so use plural form in
pkgdesc of APKBUILD:
pkgdesc="Google Hana Chromebooks"
However, when deviceinfo is already installed, it is intended to represent
only current device, so use singular form here:
deviceinfo_name="Google Hana Chromebook"
Mesa behaves again, #1658 is fixed, so lets re-revert MR 3306.
Lets also add the dependency to the other devices using the same
graphics driver.
[ci:skip-build] Already built successfuly on CI in MR
- silence the wifi a bit, it really provides an enormous amout of spam
- enable pxp mem2mem video converter
[ci:skip-build] Already built successfuly on CI in MR
This isn't really a fix, but the device's framebuffer has only one mode and it's enough to get Xorg up and running.
[ci:skip-build]: already built successfully in CI
Add msm8939 SoC package to be used in addition to soc-qcom-msm8916.
For now it provides a shell script setting FD_MESA_DEBUG=nobin env var
to work-around graphical corruption seen on adreno 405 devices.
Upgrade to fresh Linux release.
Enable more features in kernel from pmbootstrap kconfig check:
anbox, containers, iwd, nftables, zram.
Disable CONFIG_REGULATOR_DEBUG to reduce dmesg spam.
DRM and PANEL_SIMPLE are now built-in (DRM_MSM is still "m").
Switch to framebuffer from SIMPLEFB to tinydrm (SIMPLEDRM=y).
Switch APKBUILD to use "make zinstall" approach.
(Device packages might need small adjustments to initfs modules list.)
Add support for next devices:
- Asus Eee Pad Transformer TF101 and TF101G
- Asus Eee Pad Slider SL101
- Asus Transformer Prime TF201
- Asus Transformer Pad TF300T/TF300TG/TF300TL
- Asus VivoTab RT TF600T (Windows RT based)
- Asus Transformer Infinity TF700T
- Asus Transformer AiO P1801-T
- Asus Transformer PAD TF701T
- Pegatron Chagall based devices
Package has no dependencies.
Signed-off-by: Anton Bambura <jenneron@protonmail.com>
Signed-off-by: Maxim Schwalm <maxim.schwalm@gmail.com>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Remove as we are removing apparmor check from pmbootstrap
[ci:skip-vercheck] No rebuild necessary
[ci:skip-build]: already built successfully / also not really needed
This is to emphasize the fact that this firmware package will work essentially
unmodified on the samsung-coreprimevelte and other Samsung PXA1908 phones as
well.
The device fulfils the requirements for community category, and I plan
to maintain and develop this device further going forward. Move it!
[ci:skip-vercheck]: linux pkg was moved
[ci:skip-build]: already built successfully in CI
Having mesa-dri-gallium installed causes Xorg to crash. See #1658.
Furthermore, display works without at least with near-mainline kernel,
tested with osk-sdl and xfce4.
So if specific applications depend on it, it should be added as a
dependency there.
This reverts MR 3306
This is just a hotfix, Xorg/mesa should be tamed to not crash here
but analyzing that costs time.
There is no need to duplicate things over and over again.
Also load the waveform in initramfs before loading display
modules. That is early enough to have a working display in
initramfs.
GPI_DMA now works so we can use GENI I2C and remove bitbang i2c-gpio.
PM8008 driver from mailing list is imported and configured. CCI (camera
i2c bus) is configured plus CAMCC dependency. And some smaller changes.
We are just building upstream Linux with minor patches and no longer
using the linked GitHub repo, so let's fix this to avoid confusion.
[ci:skip-build]: already built successfully in CI
The downstream kernel has barely any functionality without libhybris
(which is not coming back to pmOS) so move everything related to the
OnePlus 5/5T downstream ports to downstream since a working mainline
port is much more feature rich.
Set the necessary flag in deviceinfo so a user can use a logical
partition that was flashed using fastbootd.
$ fastboot create-logical-partition postmarketOS 1000000000
$ pmbootstrap flasher flash_rootfs --partition postmarketOS
[ci:skip-build]: already built successfully in CI
The touchscreen currently is on i2c-gpio due to issues with the hardware
i2c. Include the module in initfs so the touch driver probes and is
usable in osk-sdl.
[ci:skip-build]: already built successfully in CI
vc4 and freedreno have been provided by mesa-dri-gallium for a long
time.
mesa-dri-intel subpackage has been deprecated for a while (previously
dependend on dri-classic and dri-gallium)
mesa-dri-classic drivers is removed because mesa upstream has removed
those old drivers from the tree. They've been replaced (for not-ancient
hardware) by gallium.
See also https://gitlab.alpinelinux.org/alpine/aports/-/merge_requests/31848
This enables support for the oneplus3's QCA6174 WiFi chipset. The
`board-2.bin` file (overwriting the file with the same name from the
`linux-firmware-ath10k` package) is created from `bdwlan30.bin`, which
is extracted from the baseband modem firmware disk image,
`NON-HLOS.bin`. This board file has not yet been upstreamed.
Because I don't have access to the serial port yet, I begin with the
vendor kernel.
* Make display work by setting to 16bpp
[ci:skip-build]: already built successfully in CI
The kernel is based on Samsung's downstream kernel for the device. Some
configuration changes are required to make the kernel to work:
* Tizen kernel uses SLP USB gadget, changed to Android USB gadget.
* sprdfb patches and modification on the devicetree files are required
to use the framebuffer.
* Other required pmOS kernel settings were enabled.
* Tizen does not use initramfs, use RAMDISK partition to store initramfs
of pmOS (like heimdall-isorec configuration). As far as I know, no
alternative OS exists for this device so this is the very first usage.
* Flash the root file system to USER, as ROOTFS is < 1 GB in size and
USER is about 2.7 GB.
samsung-kiran: Update device and firmware packages
* Changed kernel configuration for firmware path to follow postmarketOS.
* Post install script to mount CSA partition
CSA partition [1] contains non-volatile data for Tizen devices. As
Samsung Z1 uses this partition to store Wi-Fi and Bluetooth information,
mount this partition to use within postmarketOS.
[1] https://docs.tizen.org/platform/porting/kernel/
linux-samsung-kiran: Use lzop to decompress initramfs
This synchronizes behavior with other heimdall-isorec devices.
[ci:skip-build] Already built successfuly on CI in MR
Add udev rule to make feedbackd handle haptics.
With mesa where A619 is supported (which isn't packaged in pmaports
anyways but it's just one small patch that should go upstream in the
near future) Vulkan works absolutely fine, so install the driver for it.
[ci:skip-build] Already built successfuly on CI in MR
Add flash method fastboot so we can actually flash it with pmbootstrap,
remove outdated 90-android-touch-dev.rules and improve the formatting
throughout the APKBUILD.
[ci:skip-build] already built successfully in CI
Don't try to append the dtb if using the downstream kernel.
Fix for:
ERROR: File not found: /usr/share/dtb/qcom-apq8064-asus-nexus7-flo.dtb
Fixes: MR 2239 ("main/linux-postmarketos-qcom-apq8064: new aport")
[ci:skip-build] already built successfully in CI
This previously caused msm_pm_boot_init to incorrectly get handled as
__init function when it needs to be an __devinit function as it is
called by msm_pm_boot_probe, which is an __devinit function.
[ci:skip-build]: already built successfully in CI
The option `deviceinfo_flash_sparse_samsung_format` seems to work
fine on the xcover4lte.
Setting `deviceinfo_flash_sparse_samsung_format` to `1` (and
`deviceinfo_flash_sparse="true"`) causes heimdall to no longer hang
while the rootfs is being flashed.
[ci:skip-build]: already built successfully in CI
Merge and move Spreadtrum patches from these kernels to shared-patches:
* linux-finepower-f1
* linux-samsung-{gtel3g,gtelwifi,j1mini3g,j3xnlte}
* linux-zte-p731a20
[ci:skip-build]: already built successfully in CI
File system modules are included by default in postmarketos-mkinitfs
and loaded dynamically when needed.
[ci:skip-build]: already built successfully in CI
GPU has been supported for a while in the mainline-ish kernel, so let
pmbootstrap show UIs like Phosh.
And msm-modem-uim-selection will setup the modem well enough so at least
the primary SIM should work out of the box.
[ci:skip-build] already built successfully in CI
Note from merger (Newbyte):
While this device is aarch64, switching to aarch64 comes with issues
and would need more work than a vendor kernel like this is worth.
Use armv7 for now and hopefully mainline it in the future and switch
to aarch64 then.
[ci:skip-build] Already built successfuly on CI in MR
Basic support for the Tolino Shine 3 ebook reader. It is the same board as
the Kobo Clara HD.
Waveform handling shares the same oddities as for the Kobo Clara HD
but the file epdc_E060SCM.fw from the IMX6SL BSP from NXP does also work.
The existing waveform from SD card is used.
Preferred way to install is to clone the internal SD, keeping the original
as a backup, install on that clone.
U-Boot is a more recent one than the factory u-boot, so devicetrees are nicely
supported. Kernel is the near mainline kernel also used by the Kobo Clara HD.
This commit adds a package for the sm6125-mainline kernel fork. As of
now it uses kernel version 5.18_rc4, pulled from torvalds/linux.
You can find the repository on https://gitlab.com/sm6125-mainline/linux
[ci:skip-build] Already built successfuly on CI in MR
A quirky device, the last Mi Ax phone in the line. - Powered by
Snapdragon 665 (SM6125, codenamed Trinket), 8 cores, 4 clocked a 2.0
GHz and 4 more clocked at 1.8 GHz. 4-6 GB of RAM, 64-128 GB of UFS
storage, 720p 6.09" AMOLED display, a 48 Mpx quad-bayer camera (plus two
more on the back and one on the front) and an under display fingerprint
sensor which may be impossible to ever implement... *sigh*
Mainline kernel as of now is pretty minimal (framebuffer display, USB
networking). No UFS support (yet!).
patches added are (not all, just some) fixes and feature enhancements
for msm8992 and msm8994 from qcom mainline maintainer tree [1] for v5.18
and v5.19.
Changes:
* update deviceinfo_dtb_mainline for device-huawei-angler and
device-lg-bullhead.
* add sdhc1 support for device-huawei-angler
[1] https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git
Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
[ci:skip-build] Already built successfully in CI in MR
mesa-dri-swrast no longer exists and just installs,
mesa-dri-gallium. However, this might not always be the case, so
let's change it before it causes any issues.
[ci:ignore-count]
[ci:skip-build]
I'd say this is not appropriate to be in postmarketOS because
this is just a bog standard x86 computer, it has UEFI BIOS and
everything, and you can just boot a Linux distro on a USB
stick.
It also has a 64-bit UEFI unlike some other tablet, so there
should be no issue installing a Linux distro with a fairly
modern kernel these days.
So, let's just drop it and forget this port even existed.
The charging script does nothing other than annoy a few people,
so get rid of it.
While at it, let's remove hybris reference from the APKBUILD as
hybrisOS is dead.
Closes#1487
Signed-off-by: Dang Huynh <danct12@disroot.org>
Powerful beast with Snapdragon 855 - 8 cores up to 2.8 GHz,
6 Gb RAM and fast UFS storage.
Mainline port is bare minimum (UART, framebuffer display, physical
keys, USB network). No storage support yet (UFS refuses to work)
https://wiki.postmarketos.org/wiki/Xiaomi_Mi_9_(xiaomi-cepheus)
Device uses mainline kernel. What works:
- boots
- pstore log
- simple framebuffer
- storage including sdcard
* payload mock device tree:
Payload mock device tree is needed to mock device tree,
when we're overriding linux with u-boot in android boot image.
Stock bootloader needs this dtb appended to gzipped u-boot.
Bootscript is a simple hush shell script, dedicated to boot OS.
It may be customized to implement dual boot or to change kernel
command line.
To make panel driver upstreamable to mainline linux, we need to use
proper panel selection in secondary bootloader (still TODO), and
therefore lk2nd will be strictly required to boot mainline port.
Switch flashing method to fastboot, enable sparse rootfs generation,
and depend on lk2nd package.
Depends on: postmarketOS/pmbootstrap!2174, to provide full
integration of lk2nd in pmbootstrap.
So, full flashing procedure for samsung-klte will look like:
$ pmbootstrap init
$ pmbootstrap install
$ pmbootstrap flasher --method=heimdall-bootimg flash_lk2nd
$ pmbootstrap flasher flash_kernel --no-install
$ pmbootstrap flasher flash_rootfs
$ fastboot reboot
This removes u-boot from our image and allows booting via an
UEFI-compatible platform firmware instead. So to flash pmOS on the PPP
now we will require the user to flash Tow-Boot to the SPI. See the edge
post for more information.
Related: https://postmarketos.org/edge/2022/03/28/ppp-tow-boot/
Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
Add option for mainline kernel iso downstream kernel. Note that a lot is
not working yet due to incomplete devicetree, so this is for development
purposes only.
Now that internal storage is supported, we actually need a 4096 sector
size, otherwise kpartx won't work on internal partitions.
[ci:skip-build] Already built successfuly on CI in MR
Fixes/works around issue where some applications using the GPU
would crash with DRM_IOCTL_MODE_CREATE_DUMB failed.
See https://gitlab.com/postmarketOS/pmaports/-/issues/1246
[ci:skip-build] Already built successfuly on CI in MR
Unfortunately, the oppo-a51f has been unmaintained for quite some time
now. The original author (harutora) has disappeared and no one else
seems to have this device. The device port has several open problems:
1. The device was never added properly to upstream lk2nd, because
of a special (OPPO-specific) boot image format. Users need to
compile and install some outdated version of lk2nd, which is no
longer (fully) compatible with newer kernel versions.
2. The authorship of the Linux changes are unclear: They were created
with a "no-reply" email address and without Signed-off-by line
that clarifies the licensing of the changes and permits upstreaming
the patches.
Since oppo-a51f is the last remaining device port in linux-postmarketos
-qcom-msm8916 with this problem, I decided to drop the patches from the
kernel, at least until harutora returns or can clarify the authorship
of the created patches.
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-shift-sdm845 package to the device package.
This will make the firmware package to only depend on firmware files.
The soc-qcom-sdm845-nonfree-firmware dependency is now moved from
firmware-shift-sdm845 package to the device package.
This will make the firmware package to only depend on firmware files.
Also, pmb:cross-native is added to the package options so CI testcases
doesn't fail.
I'm not deduplicating the UCM files between m3 and m0 as I may not
always be able to test changes to m3, and I'd rather have a an
outdated configuration for m3 than a broken one.
Apparently works significantly better on SHV-E210S and seems to
work about equally well on i9300. Besides, using upstream firmware
with a clear licence is nice. Also use different nvram file for m3.
In preparation to removal of linux-postmarketos repo, switch
source to different source mirror.
P.S: sourcehut can't serve bz2 archives, I had to switch to gz
P.P.S: I'm not sure I'll keep repo on sourcehut forever, but let's try
See also: https://gitlab.com/postmarketOS/postmarketos/-/issues/47
[ci:skip-vercheck]
[ci:skip-build] Already built fine on CI in MR
In preparation to removal of linux-postmarketos repo, switch
source to different source mirror.
I had to switch to gzip archive, because github doesn't serve bzip2.
I did a kconfig edit -> change nothing -> exit saving to regenerate config.
See also: postmarketos#47
[ci:skip-build] Already built fine on CI in MR
CONFIG_MSM_KGSL (Kernel Graphics Subsystem Layer) breaks the framebuffer
in mysterious ways even on this device. This MR disables KGSL to restore
framebuffer functionality.
Also temporarily switch to Linus Walleij's branch to enable charging.
Patches should be upstreamed to mainline by Linux 5.18.
emmc.patch: Linux no longer hangs without this
fix-boot-regression-skomer.patch: Upstreamed and included here
[ci:skip-build] Already built fine on CI in MR
https://wiki.postmarketos.org/wiki/Asus_Zenfone_Max_Pro_M1_(asus-x00td)
Initially ported by Alice Koul.
iAboothahir: set CONFIG_DEVPTS_MULTIPLE_INSTANCES and remove empty deviceinfo_*
Signed-off-by: Alice Koul <alice-koul@protonmail.com>
Signed-off-by: iAboothahir <aboothahirpkd@gmail.com>
[ci:skip-build] Already built once fine on CI in MR
This firmware is useful for other devices (m3, t0lte, p4note, ...), so
let's give it a more generic name and split up WiFi and Bluetooth into
separate packages as the WiFi firmware isn't useful for t0lte at the
moment. Also drop the downstream kernel firmware from here to simplify
the APKBUILD, and give it its own package in the following commit.
Do not fiddle with a compiled .a file from the vendor, rather
ignore it and add functional equivalent sources.
[ci:skip-build] Already built successfuly on CI in MR
Uses upstream u-boot with (only) 4 downstream patches. The device also
boots way quicker now, no need to hold the power button for multiple
seconds anymore
[ci:skip-build] Already built well once on CI in MR
With this wifi seem to work reliably, and it is possibly to for
example connect to a bluetooth speaker and play music.
For wifi, issue seem to be with the nvram_net.txt file, changing only
that one to a newer one makes wifi work. Here, both the .txt and .bin
file are updated, as the old files are from 2012, while the new
ones have a datestamp from 2019.
This command was missed when bl1, bl2 and tzsw were renamed. Truncate
apparently creates a new file of the specified size if file doesn't
exist (instead of failing), so this was missed by CI.
Use the new linux-postmarketos-exynos5 package. A dtb for klimtwifi
is added as well, even though the device has not been ported yet.
[ci:skip-build]: Already built successfully in MR CI.
This allows to get wlan to work properly.
Change-Id: I52bab348f83b49a5b31cdeddd15e542049ac3089
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
This moves the kernel to the one on the pine64-org/linux Gitlab org.
This kernel is (will) be shared with other distributions and is a common
base we can all rely on. It enables Wi-Fi, Bluetooth, the battery
indicator and charging, rotation, modem and other things.
[ci:skip-build] Already built successfully on CI
With this you can get the modem and wifi running nearly out of the box.
As the kernel currently doesn't support UFS (internal storage) you need
to dump the following partitions using dd in TWRP or similar:
fsc, fsg, modemst1, modemst2, tunning
Place those as files in the rootfs in /modem-partitions/ and add "-o
/modem-partitions" to the rmtfs arguments by modifying /etc/init.d/rmtfs
and changing command_args to "-P -r -o /modem-partitions".
[ci:skip-build] already built successfully in CI
Basic support for the Tolino Shine 2 HD ebook reader.
Waveform handling shares the same oddities as for the Kobo Clara HD
but the file epdc_E060SCM.fw from the IMX6SL BSP from NXP does also work.
The existing waveform from SD card is used.
Preferred way to install is to clone the internal SD, keeping the original
as a backup, install on that clone.
U-Boot is a more recent one than the factory u-boot, so devicetrees are nicely
supported. Kernel is the near mainline kernel also used by the Kobo Clara HD.
About Wifi: Handling of the configuration file for boards with brcmfmac is not
supported yet.
[ci:skip-build] already built successfully in CI
It makes more sense here as it's also signed by OnePlus (instead of
just Qualcomm) and is expected to be here since
linux-postmarketos-qcom-msm8998>=5.16.0_rc6.
This adds a firmware package firmware-shift-sdm845 containing
BT, GPU and WiFi firmware, which allows to enable hardware
acceleration to get phosh up and running.
Change-Id: Iaef46ccd51a756ad44642769e64202a7c534be9c
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
This MR removes the downstream kernel package linux-shift-axolotl
and uses linux-postmarketos-qcom-sdm845 instead, as it has
recently added support for the SHIFT6mq (axolotl).
Change-Id: I79427820686eb813cb21f57d6bddc0d2f7984b6a
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
Uses now DRM variant of EPDC driver. Updates will work automatically
without using special APIs.
Note:
/sys/class/graphics/fbcon/cursor_blink should probably be set to zero
to avoid battery draining if text console is displayed
[ci:skip-build] Already built on CI in MR
The downstream kernel provider does not exist any more (see
samsung-m0-downstream if you really want the vendor kernel), so remove
this as it is unused.
With selinux enabled, build fails with gcc-11 with multiple errors like this:
/home/pmos/build/src/android_kernel_oneplus_sm8250-0c1bed1067131a0bd3e56c1cbdd3473606c5a48a/out/../security/selinux/hooks.c:5553:(.text+0xb34): relocation truncated to fit: R_AARCH64_ADR_PREL_PG_HI21 against `.bss.rtic'
Selinux is not required for pmOS, so this change should be safe.
This cuts downloads in half as only the needed sources are downloaded.
It also makes the packages simpler and fixes a bug where the oneplus3t
subpackage was overwriting the 20-adreno-gpu-firmware.files of the
oneplus3 subpackage.
Based on !1158 by @nrdnandan (5 files)
new file: device/testing/device-xiaomi-rolex/APKBUILD
new file: device/testing/device-xiaomi-rolex/deviceinfo
new file: device/testing/linux-xiaomi-rolex/APKBUILD
new file: device/testing/linux-xiaomi-rolex/config-xiaomi-rolex.aarch64
new file: firmware/firmware-xiaomi-rolex/APKBUILD
Changed deviceinfo : Width x Height was 800x600 to correct dimension -> 720x1280
modified: device/testing/device-xiaomi-rolex/APKBUILD
modified: device/testing/device-xiaomi-rolex/deviceinfo
Added directfbrc and fb.modes file. Also added SWAP file support swap_size=1024
Added Audio files and rules removed uneccessary lines in deviceinfo.
device/xiaomi-rolex: Fix linting issues
xiaomi-rolex: Linting fixes; is a handset
xiaomi-rolex: Moved firmware/ to device/testing/
xiaomi-rolex: Enable pmb:cross-native for kernel compilation
because it is the default for recent apkbuilds
xiaomi-rolex: Apply YYLOC patch to build 3.18.140 with gcc-10 (-fno-common)
xiaomi-rolex: update patch checksums in kernel APKBUILD
xiaomi-rolex: update deviceinfo checksum; replace common patch with a symlink
xiaomi-rolex: use mdss patch
xiaomi-rolex: use BGRA mdss framebuffer patch
xiaomi-rolex: mark myself as maintainer, drop contributor from apkbuilds
Refer to git commit history instead to determine contributors
xiaomi-rolex: update kernel config for multiple devpts
xiaomi-rolex: allow firmware cross-native builds, disable tracedeps per linter
[ci:skip-build]: already built successfully in CI
Remapping the left key of tm2-touchkey to KEY_MENU.
The KEY_APPSELECT, which is set by the device tree, is not available in
the postmarketOS UIs. In X11 UIs this is due to keycode limitation to
8 bit. In Wayland UIs the keycodes don't have this limitation but xkb
keycodes higher 255 are not processed correctly by several software
packages. It still makes sense to keep KEY_APPSELECT in the device tree
because this is the correct mapping intended by the manufacturers when
running the kernel on Android.
Kernel defconfig is a copy of "axolotl_userdebug_defconfig".
Config changes (which differ from the copy above):
- ran `pmbootstrap kconfig check shift-axolotl`
- CONFIG_QCA_CLD_WLAN - m -> y
Change-Id: Ie250ba0d4f7cabf516e4c4fef84a3832321fb069
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
[ci:skip-build]
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]
- mesa-dri-freedreno => mesa-dri-gallium
- msm-modem-rpmsg => msm-modem
- add swclock-offset
- sort deps list
- remove ofono from deps, should be pulled in by UI
package that needs it, not by device- package
This fixes some parameters needed for Xiaomi Mi 5 to boot on newer kernels, and adds some extra flags for GPU acceleration and USB labels.
Signed-off-by: Raffaele Tranquillini <raffaele.tranquillini@gmail.com>
[ci:skip-build]
For some reason it was disabled for this device, and only for this
device. Enable it again so we have it for all devices. It passes fine
anyway.
[ci:skip-build] [ci:skip-vercheck]
This devices runs a close-to mainline kernel as linux-odroid-hc2.
I have 2 of these devices which power my selfhosted infrastructure
for some time now and they work really well! Running my selfhosted
infrastructure on Alpine stable releases would be great.