Since re-crypt was finished now all T20/T30 devices
can be switched to use generic u-boot approach
and mount eMMC as external storage to host PC.
Unfortunately or fortunately this deprecates
any Android use on device. Have fun!
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
Change-Id: Ia140302bb4d309740db85a36374673a6e66c2c2b
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
[ci:skip-build]: Already built successfully in CI
Changes to defconfig:
* Disable legacy usb gadgets (USB_ETH and friends)
* Enable Multi-Gen LRU (LRU_GEN)
[ci:skip-build]: already built successfully in CI
Bring up support for Samsung T110 Goyawifi.
Working: Display (framebuffer), touchscreen, buttons and Wi-Fi.
Include: kernel source and necesarry firmware for Wi-Fi and Bluetooth.
samsung-goyawifi: fix patch names
samsung-goyawifi: remove mesa-dri-gallium
samsung-goyawifi: fix keyboard in deviceinfo
samsung-goyawifi: fix lightdm
samsung-goyawifi: editor-config ci tabs
samsung-goyawifi: add linux kernel as depends
[ci:skip-build]: Already built successfully in CI
Add the firmware for the CyberTan WC121.
Configuration is added in the newest firmware-linux release, so
complete support will appear in the corresponding Alpine package soon.
[ci:skip-build]: already built successfully in CI
Protect script when ram_freq is not set
Safely load PSCI DTO to enable CPUidle driver: psci_idle
The PSCI DTO shall only be applied if TF-A & Crust
support CPU idle states [0]. Otherwise the CPU usage
will be at 100%. This will not be visible in top,
lead to overheating and battery drain.
Worst case scenario would lead to a fried chip if
the CPU thermal_zone does not work or is not enabled
in DTS.
[0] https://gitlab.com/postmarketOS/pmaports/-/issues/1901#note_1238456920
I have enough other devices to care about, and honestly haven't touched
my PinePhone in a while. Remove myself as Co-Maintainer from all
relevant packages.
[ci:skip-vercheck]: No rebuild necessary
[ci:skip-build]: Doesn't change resulting packages
This wifi module doesn't ship with the L5, but I have one because it's
generally more stable than the redpine thing that does ship with the
L5... however there's a known problem with having PM enabled on it.
This adds a NM config option, that matches specifically on this
device/driver, to disable wifi. PM for the redpine should not be
affected by this config change.
[ci:skip-build] already built successfully in CI
For a merge list, please see the merge commits:
- 6.1.1 - (5ed7044b05)
- 6.1.2 - (ec165d9c01)
- 6.1.3 - (3735d5032c)
Change-Id: Id46e827a90a9c68cb69d23dc0698a8ea2a5e4336
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
[ci:skip-build] already built successfully in CI
Make use of stock depthcharge bootloader to not deal with U-Boot issues:
- broken USB
- broken eMMC
- broken latest version of U-Boot
Use extlinux instead of Grub for users with U-Boot to simplify process.
Also, some of old U-Boot builds may not support EFI.
[ci:skip-build] already built successfully in CI
Make use of stock depthcharge bootloader to not deal with U-Boot issues:
- broken USB
- broken eMMC
- broken latest version of U-Boot
Use extlinux instead of Grub for users with U-Boot to simplify process.
Also, some of old U-Boot builds may not support EFI.
[ci:skip-build] already built successfully in CI
New features:
* msm8994-huawei-angler: Add sdhc1 definition (internal SD card).
Backporting 3 patches:
* 0001-arm64-dts-msm8992-bullhead-add-memory-hole-region.patch
fixes bullhead boot since 6.0-rc1, already in qcom tree
* 0002-arm64-dts-qcom-msm8992-bullhead-Fix-cont_splash_mem-.patch
memory fix, likely to be merged
* 0003-arm64-dts-qcom-msm8992-bullhead-Disable-dfps_data_me.patch
memory fix, likely to be merged
* 0004-arm64-dts-qcom-msm8992-Don-t-use-sfpb-mutex.patch
memory fix, likely to be merged
* 0005-arm64-dts-msm8994-angler-fix-the-memory-map.patch
fixes angler reset during starting services in rootfs,
likely to be merged
Remove all backported commits from newer versions.
While at it, remove various CONFIG_NET_VENDOR_.* and
CONFIG_MSM_.* and CONFIG_.*_QCOM_.* for other SOCs.
Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
[ci:skip-build]: already built successfully in CI
Shared SoC package for MSM8909
Currently provides a dummy soc-qcom-msm8909 package that depends on
soc-qcom-msm8916 and a soc-qcom-msm8909-modem package for modem support.
Since the RTC like on most Qualcomm chips is read-only, use
swclock-offset package to fix up time after boot.
And since we don't need msm-fb-refresher on mainline, move it to the
downstream kernel subpackage.
Basic support for the Kobo Libra H2O ebook reader.
Waveform handling shares the same oddities as for the Kobo Clara HD, the
existing waveform from eMMC is used.
Preferred way to install is to export the eMMC as USB Mass storage,
backing it up, and installing there.
U-Boot is a more recent one than the factory u-boot, supporting easy
access for buttons/LEDs. Pressing PageUp while powering on gives you the
possibility to enable USB mass storage mode to restore your backup.
Kernel is the near mainline kernel also used by the Kobo Clara HD.
It lacks some devicetree additions which are planned for the next
update, but basic things like buttons, usb, serial and wifi are
supported.
* lock.sh is specific to Nokia N900, so move to device-nokia-n900
* use tinydm instead of lightdm
Signed-off-by: Sicelo A. Mhlongo <absicsz@gmail.com>
[ci:skip-build]: already built successfully in CI
Backport the Purism patch from https://source.puri.sm/Librem5/linux/-/merge_requests/640
"With this patch, older revisions (2.0) should be able to switch between
166MHz and 800MHz as opposed to being stuck to 800MHz all the time, since
that was the only supported frequency in the OPP table."
Signed-off-by: Alistair Francis <alistair@alistair23.me>
[ci:skip-build] already built successfully in CI
The WCNSS firwmare used for motorola-harpia seems to have weird issues
that prevent using WiFi properly except for a few limited channels. It
is not clear why this happens, it seems to be some peculiar firmware
difference (perhaps the channels need to be enabled with some
non-standard command).
Since Motorola uses the same signing keys for all their MSM8916
devices, it is possible to use the firmware from other devices instead.
Initial testing shows promising results when using the older WCNSS
firmware from motorola-osprey instead, it does not seem to have this
issue.
It's not clear yet if this has any negative effects. The WCNSS firmware
should not be device-specific, but theoretically it could be (if
Motorola made some weird changes inside it).
For now just package it in firmware-motorola-osprey-wcnss. This package
can be easily installed on harpia devices for testing (using apk add)
and will then take precendence over the default firmware from the
firmware partition (via msm-firmware-loader).
Move firmware-motorola-osprey from testing to community so that the
package is preserved for motorola-harpia users (testing is deleted in
stable branches).
[ci:skip-build]: already built successfully in CI
motorola-osprey can generally use the firmware from motorola-harpia
(which is a bit newer). However, the WCNSS_qcom_wlan_nv.bin is usually
device specific (it contains some kind of calibration values for
WiFi/BT).
The file packaged in firmware-motorola-osprey-wcnss-nv is identical to
the file in firmware-motorola-harpia-wcnss-nv. However, It looks a bit
like this might be a mistake in the source repository
(https://github.com/pmsourcedump/firmware-motorola-osprey). The
wlan/prima folder there is completely identical to the one used for
motorola-harpia, but the stock ROM and LineageOS use different files.
Fix this by packaging the file from TheMuppets. Also modernize the
firmware-motorola-osprey package by applying pil-squasher to the
venus/video firmware.
motorola-osprey has a very clunky name at the moment "Motorola Moto G
3rd gen. (2015)". The device was mostly just called "Motorola Moto G"
by Motorola, so it is hard to choose a fitting (but unique) name.
In the postmarketOS wiki it is called "Motorola Moto G 2015" so let's
just drop the "3rd gen." in the pmOS device package as well.
Also make the deviceinfo consistent with harpia while at it.
Schedutil is a CPU scheduler that is designed to be more efficient than other schedulers, such as the conservative scheduler, in terms of energy consumption.
This is because schedutil uses information about the utilization of individual CPU cores to make more intelligent decisions about when and how to scale the frequency of the CPU.
This can help to reduce the overall power consumption of the device, which can be particularly beneficial for battery-powered devices.
Additionally, schedutil can also help to improve the overall performance of the device by ensuring that the CPU is able to operate at its maximum frequency when needed.
In my personal testing I haven't seen any noticable impact on power consumption, while the performance does certainly noticeably increase
Note: This is only a change in the aarch64 configuration as the armv7 configuration already used the schedutil scheduler as default.
[ci:skip-build]: Already built successfully in CI
This adds initial support to CutiePi tablet, with basic peripherals, sound, touchscreen, and wireless support.
Signed-off-by: Raffaele Tranquillini <raffaele.tranquillini@gmail.com>
Add peripheral overlays
Signed-off-by: Raffaele Tranquillini <raffaele.tranquillini@gmail.com>
[ci:skip-build]: Already built successfully in CI
Schedutil is a CPU scheduler that is designed to be more efficient than other schedulers, such as the conservative scheduler, in terms of energy consumption.
This is because schedutil uses information about the utilization of individual CPU cores to make more intelligent decisions about when and how to scale the frequency of the CPU.
This can help to reduce the overall power consumption of the device, which can be particularly beneficial for battery-powered devices.
Additionally, schedutil can also help to improve the overall performance of the device by ensuring that the CPU is able to operate at its maximum frequency when needed.
In my personal testing I haven't seen any noticable impact on power consumption, while the performance does certainly noticeably increase
[ci:skip-build]: Already built successfully in CI
Use msm8916 kernel package instead of linux-postmarketos-qcom-msm8939
Also remove rmi_core from deviceinfo_modules_initfs
since it's automatically pulled by rmi_i2c
* Enable flash/torch LED (CONFIG_LEDS_QCOM_FLASH)
* Fix USB init when not plugged in during bootloader stage
[ci:skip-build] already built successfully in CI
This is a version bump for the sm6125 mainline kernel fork.
Changes:
* Added UFS nodes to the sm6125 platform
* Enabled UFS nodes for xiaomi-laurel
* Enabled configs required for UFS support (Notoriously
CONFIG_PHY_QCOM_QMP)
* Filled in EXTRAVERSION for kernel fork
* Added SMD RPM regulators for xiaomi-laurel
Signed-off-by: Lux Aliaga <they@mint.lgbt>
[ci:skip-build]: Already built successfully in CI
Fix included in this build:
- Patch which sets GPIO pin for stk3311 as input
- ppp: don't reset 'display state of charge' (dsoc) to 0 on vbat low interrupt
[ci:skip-build]: already built successfully in CI
Update the omap kernel to stable 6.1 release. This commit also contains a patch that
fixes broken usb, which should only be needed for versions 5.19 to 6.1 as later
releases will have a proper fix merged.
[ci:skip-build]: already built successfully in CI
This is an early mainline port for the MediaTek MT6763 Helio P65/G70/G8*
SoCs that boots with all 8 cores online, logs on display (simplefb) or
UART serial console, USB gadget mode facilitating netbooting
postmarketOS while tethered via RNDIS and PMIC enabling functions like
vibrator, power/volume keys.
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>
This fixes gnss out of the box on the librem 5, by configuring geoclue
to use gnss-share as a nmea source.
I went this route, of overriding a .service file that invokes geoclue
with a command line option, because forking this .service file is much
nicer than forking geoclue.conf. The conf file will likely change over
time to add new app permissions or whatever, and it's unlikely
(hopefull!) that this .service file will change much upstream...
[ci:skip-build] already built successfully in CI
CONFIG_USB_GADGET=y
CONFIG_USB_DWC3_DUAL_ROLE=y
CONFIG_USB_XHCI_HCD=y
CONFIG_USB_XHCI_PLATFORM=y
CONFIG_USB_DWC2=y
remove un-necessary activated configs
[ci:skip-build]: already built successfully in CI
- Also enabled LRU_GEN by default like on the PinePhone OG
- Set Ext4 module to built-in as this currently is the main fs used for PPP.
Contains the following patch:
- pinephone pro: finished fix for LCD to make it refresh at precisely 60 Hz
[ci:skip-build]: already built successfully in CI
Add new patches:
- enable serial console
- save relocation address to find KASLR
- buttons as keyboard input driver to navigate bootmenu
- bootmenu loop entry selection
Apparently upstream names udev rules with the .udev extension... which
doesn't work with udev (I guess debian has a helper for installing rules
and it renames them?). This adds the expected ".rules" extension to them
so that udev actually uses them.
This update also includes improved ucm config from Purism.
"Lockdown suppport" is also added here, which allows toggling off all of
the hks on the L5 to disable all radios, etc without breaking some
sensors. For more info, see 65ec7038 in librem5-base.
Based on some new (to me...) info from Purism's Sebastian K, there are
apparently Evergreen devices that return different values for board rev,
so we shouldn't assume only r4 are Evergreen, and default to the r2 DT.
But many earlier devices (Birch, Chestnut, Dogwood) may or may not have
the board rev set either. Who knows! Defaulting to the Evergreen DT on
these devices is bad too, but there weren't many of those shipped (I
guess?), at least not compared to the number of Evergreens that aren't
properly identifiable in u-boot... so this using this DT by default is
the best of the two bad options we have.
This comment thread has more info:
https://gitlab.com/postmarketOS/pmaports/-/issues/1643#note_1147248594fixes#1643
[ci:skip-build] already built successfully in CI
Add the CONFIG_DW9714 symbol to the PinephonePro defconfig.
The PinephonePro rear camera module uses the DW9714 VCM to drive the
lens, and a driver is required to successfully complete the media
graph probe sequence.
Signed-off-by: Jacopo Mondi <jacopo@jmondi.org>
Kernel source updated to 6.1-rc7
Ext2 and Ext3 modules in aarch64 config disabled because Ext4 is backwards compatible.
2 fixes for PinePhone included in this source:
pinephone: fix power key behavior during suspend (avoid stuck key during resume)
pinephone keyboard: wait for 100ms after enabling power supply and before probing.
[ci:skip-build]: already built successfully in CI
In SDM845, the q6voice kernel driver connects modem and audio backends.
Callaudiod seems to switch to correct audio device and prepares it, however, the audio
device get's closed since no one from the userspace is actively listening to it.
This cuts the audio in call. As a workaround, I have added to script to disable the
suspend-on-idle pulseaudio module during calls, so the audio devices don't close automatically.
Includes the following changes:
- rebase onto rc4
- squash a few changes which were marked to get squashed/fixups
- dropped "wcd934x: use .prepare and .shutdown instead of .trigger"
- OP6 audio device tree changes
- revert of a DSI DCS commit[1], which caused havoc in unprepare
hooks of panel drivers
[1] - https://lore.kernel.org/linux-arm-msm/1892d0af-8aa4-dc03-887a-e44bb623b836@linaro.org/
Change-Id: I4790a278c0d35618ca824a036982769e66767ffd
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
Downstream for kernel development, not for actual use.
Kernel defconfig taken from stock with:
- CONFIG_ANDROID_PARANOID_NETWORK unset
- CONFIG_DEVTMPFS set
- CONFIG_EXT4_FS_POSIX_ACL set
- CONFIG_LOCALVERSION set to "-downstream"
- CONFIG_SYSVIPC set
- CONFIG_USB_CONFIGFS_RNDIS set
- CONFIG_USER_NS set
Change-Id: I22bfd30dfc664dfaa2123c856b3662ddb37e760f
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
Signed-off-by: Dylan Van Assche <me@dylanvanassche.be>
[ci:skip-build]: already built successfully in CI
Enable vulkan on supported hardware configurations
out of the box.
Change-Id: I6c8e1713e7c834aae3a162b8a681f5abde02ed5e
Signed-off-by: Alexander Martinz <amartinz@shiftphones.com>
Since 00648d0282dcca1da453c0b20d27e24bf901a854, the correct serial console name
is ttySx instead of the older ttyOx. Reflect this in cmdline passed to kernel
via u-boot
[ci:skip-build]: already built successfully in CI
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.
I renamed the repository so GitHub changed all the checksums. :(
[ci:skip-vercheck]: the source files are still exactly the same
[ci:skip-build]: Already built successfully in CI
Support launching postmarketOS in QEMU on riscv64 architecture. It is
mostly copied from device-qemu-aarch64 with some riscv64-specific
modifications.
Currently UIs using Xorg like Mate, XFCE4 and LXQT work fine, Wayland
UIs like weston, plasma-mobile etc didn't work in my testing.
Also using "pmbootstrap qemu --tablet" is needed to make mouse input
work, the defaults don't seem to work at the moment.
[ci:skip-build]: already built successfully in CI
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