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]