Commit graph

3568 commits

Author SHA1 Message Date
Minecrell
58a8f32e2f
modem/rmtfs: upgrade to 0.2_git20200928, make qrtr-ns optional (MR 1640)
qrtr-ns is not needed (or working) on downstream, also it is no longer
needed for mainline starting with Linux 5.9. Convert the "need" dependency
to a "use" so qrtr-ns is only started if it is really needed.
2020-10-25 18:34:48 +01:00
Minecrell
3b8031445c
modem/qrtr: upgrade to 0.3_git20200928, separate library into -libs (MR 1640)
In most cases, the qrtr-ns is not needed anymore now, but we still
need the libqrtr library. Separate that out into a separate package
so it can be installed independently.
2020-10-25 18:34:39 +01:00
Minecrell
8a36bb744e
oneplus-oneplus3(t): explicitly install + activate qrtr-ns (MR 1640)
qrtr-ns is now part of the Linux kernel (as of version 5.9), so
there is no need to start it in userspace anymore. It does not seem
to be needed (or working) on downstream either.

linux-postmarketos-qcom-msm8996 is the only mainline kernel which
is still on < 5.9. In preparation to make the qrtr dependency optional
for rmtfs, let's explicitly enable qrtr-ns for MSM8996 devices to avoid
causing regressions.
2020-10-25 18:34:29 +01:00
Luca Weiss
8e28b197a5
kde/peruse: new aport (MR 1643) 2020-10-25 17:52:51 +01:00
Bart Ribbers
bded85f5e4
main/postmarketos-ondev: depend on new qtvirtualkeyboard-plasma (MR 1590) 2020-10-25 17:34:58 +01:00
Bart Ribbers
93bc6ff7f3
main/qtvirtualkeyboard-plasma: new aport (MR 1590) 2020-10-25 17:34:45 +01:00
Bart Ribbers
7fe548c81a
temp/plasma-phone-components: upgrade to 5.20.1_git20201019 (MR 1590) 2020-10-25 17:34:35 +01:00
Bart Ribbers
013dcd11dd
temp/plasma-nano: upgrade to 5.20.1_git20201001 (MR 1590) 2020-10-25 17:34:10 +01:00
Dolphin von Chips
5a047026f0
main/hello-world-wrapper: update url (MR 1644) 2020-10-24 00:49:09 +03:00
Minecrell
fca4ec8c01
temp/modemmanager: build with a single thread only (MR 1607)
For some reason, the ModemManager build tends to freeze when built
with QEMU user emulation for arm*. Changing the build to use a single
thread only (-j1) avoids that, although the build is slower of course.

Also limit building to "armhf armv7 aarch64" since the forks are not
needed on any other architectures, to reduce build times a bit. The
other architectures can just use the upstream packages from Alpine.
2020-10-23 12:18:22 +03:00
Minecrell
9c76176c24
temp/ofono: assume mainline gobi network interface is "rmnet0" (MR 1607)
This allows to connect the modem to the Internet with oFono.
I have verified that this does not break anything if the "rmnet0"
network interface is missing. Plus, all mainline devices currently
covered by the package should also be able to use the new "BAM DMUX"
network driver that is used as network interface to the modem.

(Note: This works differently on newer SoCs, but they also need
       something different in oFono...)
2020-10-23 12:18:22 +03:00
Minecrell
d070b0b19f
modem/q6voiced: upgrade to 0_git20200604 (MR 1607)
Also listen to DBUS events from ModemManager, to start call audio
when necessary.
2020-10-23 12:12:25 +03:00
Minecrell
0062418e39
temp/modemmanager: fork from Alpine (MR 1607)
Most older Qualcomm SoCs (e.g. MSM8916, MSM8974, ...) communicate
with the modem through shared memory. On mainline kernels these
shared memory channels are exposed through the RPMSG subsystem.

This is different from communication through USB or serial interfaces
that are currently supported by ModemManager.

This commit forks the "modemmanager" package from Alpine and adds
a patch that allows ModemManager to talk to modems through the RPMSG
subsystem.

Working functionality: Calls, SMS, Mobile Data

The same patch has also been submitted upstream:
https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/363
2020-10-23 12:12:25 +03:00
Minecrell
36f13ad1ab
modem/msm-modem: expose serial AT port from DATA4 SMD channel (MR 1607)
So far we have only created /dev/modem based on the DATA5_CNTL
channel available from the modem. The DATAX_CNTL channels allow
sending QMI messages to the modem. This is sufficient for oFono
to work.

Unfortunately, ModemManager currently does not support starting
calls through the QMI interface. Instead, it uses serial AT commands
that can be alternatively used on all USB-based Qualcomm modems.

It turns out that we can also send serial AT commands through
the RPMSG interface: the DATAX channels (without _CNTL) all respond
to serial AT commands. We set it up at /dev/modem-at, configure
ModemManager accordingly and then we are able to start calls. Yay!
2020-10-23 12:12:22 +03:00
Minecrell
25147b4aa3
temp/ofono: build with a single thread only (MR 1637)
For some reason, the ModemManager build tends to freeze when built
with QEMU user emulation for arm*. Changing the build to use a single
thread only (-j1) avoids that, although the build is slower of course.

The same thing seems to happen fo oFono as well, so set that to -j1 too.

Also limit building to "armhf armv7 aarch64" since the forks are not
needed on any other architectures, to reduce build times a bit. The
other architectures can just use the upstream packages from Alpine.
2020-10-23 09:27:51 +02:00
Alexander Akulich
129b8b7318
temp/ofono: Add a patch for QMI modem driver to fix outgoing calls (MR 1637) 2020-10-23 09:27:51 +02:00
Alexander Akulich
e67d4800a6
temp/ofono: Add a way to set ofonod arguments (MR 1637) 2020-10-23 09:27:51 +02:00
Oliver Smith
80fec94eb8
temp/upower: fork from alpine to apply torch patch (MR 1623)
Required to make the torch button work in Phosh.

[ci:skip-build]: already built successfully in CI
2020-10-23 08:20:11 +02:00
Luca Weiss
65983235e7
temp/phosh: upgrade to 0.4.5 (MR 1623)
re-fork from Alpine to get upstream packaging changes as well
2020-10-22 14:05:37 +02:00
Oliver Smith
757edbd304
main/postmarketos-ui-phosh: add megapixels to _pmb_recommends (MR 1610)
[ci:skip-vercheck]: doesn't need a rebuild
2020-10-20 22:55:04 +02:00
Caleb Connolly
4dd597d8a0
linux-oneplus-sdm845: update to 5.9 (MR 1635)
Update to kernel 5.9 with the following changes:
* Change tri-state key to macro keys instead of 'A', 'B' and 'C' keys.

[ci:skip-build]: already built successfully in CI
2020-10-20 22:30:55 +02:00
Hendrik Borghorst
86adf2a7ce
pine64-pinetab: provide choice of panel and fix audio (MR 1614)
* add LCD panel type selection
* adjust alsa configs

Signed-off-by: Hendrik Borghorst <hendrikborghorst@gmail.com>
Co-Authored-By: Martijn Braam <martijn@brixit.nl>
Co-Authored-By: Oliver Smith <ollieparanoid@postmarketos.org>
2020-10-20 18:02:24 +02:00
Oliver Smith
517f905b84
pine64-pinephone: update devicepkg for 5.9 kernel (MR 1614)
* update modem init for modem_power
* adjust alsa configs
* remove obsolete megapixels config file

Related: https://xnux.eu/log/#020
Co-Authored-By: Martijn Braam <martijn@brixit.nl>
2020-10-20 18:02:24 +02:00
Oliver Smith
dcc0a8c855
main/linux-postmarketos-allwinner: upgrade to 5.9.1_git20201019 (megi's tree) (MR 1614)
Switch from the 5.8.x kernel with allwinner specific patches to megi's
5.9 based tree. He drives the PinePhone related kernel development
forward like no other, his tree and changes are well documented on
xnux.eu, and he frequently publishes tested "build this one" commits with
the latest improvements. It makes a faster and less time consuming
workflow to simply package these versions (after a smoke test) into
postmarketOS edge, and after some time to catch possible regressions
ship the same version in postmarketOS stable.

This kernel should make HDMI work for most people, and improve call
quality (thanks to smaeul's patches, which are integrated into megi's
tree).

Kernel config changes:
* Enable MODEM_POWER in the kernel config, among other improvements this
  allows us to get rid of the 30s delay on power off.
* Enable CONFIG_DRM_PANEL_ILITEK_ILI9881C (new PineTab panel)
* Enable CONFIG_ZRAM
* Enable CONFIG_HID_MULTITOUCH

Related: https://xnux.eu/devices/feature/modem-pp.html#toc-modem-power-driver
Changelog: https://megous.com/git/linux/tag/?h=orange-pi-5.9-20201019-1553
Co-Authored-By: Martijn Braam <martijn@brixit.nl>
Co-Authored-By: Clayton Craft <clayton@craftyguy.net>
2020-10-20 18:02:17 +02:00
WTechNinja
25a0dbe27d
samsung-gprimeltecan: new device (MR 1401) 2020-10-13 21:16:24 +02:00
Otto Urpelainen
97fa300bc7
sony-tuba: new device (Sony Xperia XA) (MR 1613)
Initial support for Sony Xperia XA (codename: sony-tuba). Builds, can be
flashed, ssh connection through usb works, display works, touchscreen works,
no wifi or anything else.
2020-10-13 10:07:59 +02:00
Thiago Foganholi
a248ec3e55
Remove armhf from firmware-samsung-i9305 (MR 1631)
As the device samsung-i9305 was updated to armv7, there is no need to
keep the armhf architecture on the firmware package anymore.
2020-10-13 10:04:42 +02:00
Thiago Foganholi
7fc133578e samsung-i9305: Update architecture to armv7
According to the wiki pages, some interfaces can't be built for the
armhf architecture. This device is configured to armhf but it actually
supports armv7 architecture. Tested with a samsung-i9300.
2020-10-13 10:04:35 +02:00
clayton craft
b8b6ec3634
postmarketos-ui-phosh: include emoji font (MR 1632)
This adds emoji support to the squeekboard emoji picker, and to any apps
that might want to display emojis (chatty, firefox, text editor, etc)

Thanks @vurpo for the tip.
2020-10-13 09:47:51 +02:00
Oliver Smith
2420f9a0bf
main/postmarketos-ui-phosh: re-enable autologin (MR 1630)
We have tried out lightdm-mobile-greeter for three weeks, but let's remove
it again from the default install.

The greeter behaves completely different from the Phosh (or any other
UI's) lockscreen, therefore it provides a bad user experience. Not only
the design is different, but it also can't display the same information
as the Phosh lockscreen. You can't accept a call coming in while the
greeter is displayed, and whatever other features will be added to the
lockscreen in the future would not be in the greeter (e.g. making a photo
without logging in, emergency calls without login, ...).

It's clear to me now, that postmarketOS in the default installation
should install one UI in single-user mode, and that UI should use its
lockscreen to display all login screens. The case of having multiple UIs
installed at the same time is used rarely, so instead of optimizing for
it, document how to enable a greeter after the installation in the wiki:
https://wiki.postmarketos.org/wiki/Configure_postmarketOS_for_multiple_UIs_or_users

Besides the strong reasons above to ship with no greeter at all, we had
problems with lightdm-mobile-greeter in particular:
* It did not work with Plasma Mobile
* When HDMI was plugged in, the greeter was not usable (especially
  annoying, because Phosh tends to crash after plugging in HDMI, so it
  would go back to the greeter which then means you need to reboot)

This reverts commit be693339ec.
2020-10-11 18:52:28 +02:00
Alexey Min
e8a3b624ef
main/postmarketos-ondev: rebuild against latest libcalamares 2020-10-10 05:00:36 +03:00
clayton craft
bdf120c6a7
device-purism-librem5: upgrade to 1.6 (MR 1628)
This new version:
        - Upgrades device config from upstream to v25
        - Fixes a problem using modesetting driver on Xorg (lightdm
          was broken because it now uses Xorg)
        - Override GDK to use GLES (change from upstream Purism)
2020-10-08 22:08:35 -07:00
clayton craft
d2cf30ae66
linux-purism-librem5: upgrade to 5.9.0-rc8 (MR 1628) 2020-10-08 22:08:35 -07:00
fengjiongmax
da72051070
motorola-nash: new device (Moto Z2 Force) (MR 1567) 2020-10-08 10:26:18 +02:00
Luca Weiss
9db239a9d8
main/postmarketos-ui-sway: update recommends for sway defaults (MR 1622)
alacritty and dmenu are specified in the default sway config, so install
them so the user isn't left with a non-functional desktop.
2020-10-08 09:20:15 +02:00
Alexey Min
6a8ea4bc68
main/postmarketos-ondev: bump pkgrel, rebuild against latest calamares
Fixes upstream-compat check:
  missing depend(s): so:libcalamares.so.3.2.26.1,
                     so:libcalamaresui.so.3.2.26.1
2020-10-07 22:01:18 +03:00
Luca Weiss
ce76c867df
qemu-aarch64: configure getty on serial console (MR 1626) 2020-10-07 21:49:40 +03:00
Luca Weiss
808b73ca43
qemu-amd64: configure getty on serial console (MR 1626) 2020-10-07 21:49:36 +03:00
Martijn Braam
879bd336b7 device/pine64-pinephone: remove megapixels config (MR 1587)
(cherry picked from commit 2ac5e8f90a9f491520b880a98d16a7a4fe0a5c43)
2020-10-07 12:55:20 +02:00
Luca Weiss
e1ee641703
temp/kitinerary: remove (MR 1621) 2020-10-07 09:28:29 +02:00
Luca Weiss
1270708093
temp/os-prober: remove (MR 1621) 2020-10-07 09:28:29 +02:00
Luca Weiss
6e77769518
temp/evtest: remove (MR 1621) 2020-10-07 09:19:44 +02:00
Luca Weiss
b4e84320de
temp/calamares: remove (MR 1621) 2020-10-07 09:19:33 +02:00
Luca Weiss
0fac39abe1
main/postmarketos-mkinitfs: fix incorrect cpio usage (MR 1619)
cpio expects a newline-separated list of files from stdin by default,
and you can change that to a NULL-terminated list of files by using the
'-0' switch.

Previously we were passing a NULL-terminated list ('-print0') and using
cpio with the default setting. For some reason busybox cpio works with
that but GNU cpio doesn't like that and generates an initramfs without
any files (as it only gets "a single file").

With this change the initramfs generation works fine with both busybox
cpio and gnu cpio.

Fixes #815
2020-10-06 18:52:09 +02:00
Aphrodite
5ae1207392
oppo-a51f: new device (Oppo Mirror 5s) (MR 1503)
[ci:skip-build]: already built successfully in CI
2020-10-05 20:24:12 +03:00
timbz
0bc009892f
samsung-i9100: fix wifi firmware loading for mainline kernel (MR 1598)
[ci:skip-build]: already built successfully in CI
2020-10-05 14:18:43 +02:00
timbz
93f6b3dab9
samsung-i9100: enable drm backend for weston (MR 1598) 2020-10-05 14:18:24 +02:00
timbz
ffd5fd8b2b
samsung-i9100: add mainline kernel (MR 1598) 2020-10-05 14:18:18 +02:00
Minecrell
c64f29713f
xiaomi-wt88047: add mainline port for Xiaomi Redmi 2 (MR 1604)
Replace the old downstream port with a new aarch64 port running the
linux-postmarketos-qcom-msm8916 close-to-mainline(TM) kernel.
Most of the functionality is working:

  - USB Network
  - Storage (eMMC, SD card)
  - Display, brightness control
  - Touchscreen, buttons
  - IMU (accelerometer+gyroscope)
  - Notification LED
  - Sound (Speaker, Headphones, Microphones)
  - WiFi, Bluetooth
  - Modem (SMS, voice calls, mobile data)

Coming soon (hopefully): Battery/Charging, USB-OTG (not working yet)

There are many variants of the device, so more changes to handle
differences between them may be needed in the future. For now,
the only relevant difference is the required modem firmware:

  - wt88047 (global variant)
  - wt86047 (China variant)

... have different kind of modems and they do not seem to work with
the firmware of the other one. The way this is handled in this device
package is that there is a separate kernel variant for both of them.
All other required firmware can be shared, and therefore there is no
differentiation needed when using the kernel variant without modem.

I renamed "wingtech-wt88047" to "xiaomi-wt88047".
My reasoning for that is the following:

  - Wingtech is the ODM (original design manufacturer), they designed the
    hardware and (probably) manufactured it. But postmarketOS port applies
    to the combination of both hardware and firmware, and the firmware was
    at least partially provided by Xiaomi.

  - wt88047 looks lonely with the "wingtech" vendor, when all other Xiaomi
    devices use "xiaomi", even though many from them were probably also
    designed by Wingtech.

  - We don't use the ODM hardware name for other devices either, e.g.
    "wileyfox-crackling" would be "longcheer-l8150" with the same approach.

I think the port is better visible as "xiaomi-wt88047" (too bad Xiaomi
seemingly did not have a proper codename for this device...)
2020-10-05 04:00:56 +03:00
Minecrell
7ab48c472a
wingtech-wt88047: remove downstream device port (MR 1604)
In preparation for adding mainline device port for Xiaomi Redmi 2
(wt88047), remove the downstream device port. It's still armhf
which makes it clear that it hasn't been tested for a long time.

The mainline port has many more features, also it is aarch64, which
is not compatible with the downstream kernel.
2020-10-05 04:00:56 +03:00