* As discussed in IRC/matrix, we're removing `linux-postmarketos-lts`
for now. The kernel isn't used right now, and we save lots of
maintenance effort with not updating it every week or so.
* new config option `"kernel"` with possible values:
`"downstream", "mainline", "stable"` (downstream is always
`linux-$devicename`)
* ask for the kernel during `pmbootstrap init` if the device package
has kernel subpackages and install it in `_install.py`
* postmarketos-mkinitfs: display note instead of exit with error when
the `deviceinfo_dtb` file is missing (because we expect it to be
missing for downstream kernels)
* device-sony-amami:
* add kernel subpackages for downstream, mainline
* set `deviceinfo_dtb`
* device-qemu-amd64: add kernel subpackages for stable, lts, mainline
* test cases and test data for new functions
* test case that checks all aports for right usage of the feature:
* don't mix specifying kernels in depends *and* subpackages
* 1 kernel in depends is maximum
* kernel subpackages must have a valid name
* Test if devices packages reference at least one kernel
* Remove `_build_device_depends_note()` which informs the user that
`--ignore-depends` can be used with device packages to avoid building
the kernel. The idea was to make the transition easier after a change
we did months ago, and now the kernel doesn't always get built before
building the device package so it's not relevant anymore.
* pmb/chroot/other.py:
* Add autoinstall=True to kernel_flavors_installed(). When the flag
is set, the function makes sure that at least one kernel for the
device is installed.
* Remove kernel_flavor_autodetect() function, wherever it was used,
it has been replaced with kernel_flavors_installed()[0].
* pmb.helpers.frontend.py: remove code to install at least one kernel,
kernel_flavors_installed() takes care of that now.
* Specify a device tree binary file for p4wifi kernel
Previously the p4wifi kernel was using Android patches which append the
dtb to zImage in the kernel makefile.
Now follow mainline kernel convention of leaving the zImage and dtb
separate. Follow postmarketOS convention of specifying dtb file in
deviceinfo.
* Use linux-postmarketos-mainline APKBUILD build functions for p4wifi
* Update linux-samsung-p4wifi to kernel 4.16
- Use mainline broadcom bluetooth hci driver
- Use mainline atmel_mxt_ts driver
- Use mainline stmpe811 mfd driver and add stmpe811 ADC block
Note about PMOS_NO_SAFESTRAP kernel cmdline:
This can be used to forcefully skip SafeStrap partition mount in device
initramfs hook, for example when booting with droid4-kexecboot on device with
SafeStrap configured as well.
The kgsl 3d driver causes the device to boot loop, so disable this for
now.
The device boots ok after removing the kgsl driver, although continuing
boot from debug-shell via `pmos_continue_boot` does not work (seems to
be a bug in msm_fb driver). So, one has to reflash the boot partition
generated with no intfs debug shell to enjoy this improvement.
* [samsung-p4wifi] Include modules in kernel package
* [samsung-p4wifi] Load wifi modules at boot
* [samsung-p4wifi] Use mainline wm8994 sound driver
* [samsung-p4wifi] Add ALSA UCM config
Generated from xml2ucm tool.
* [samsung-p4wifi] Add headphone jack detect udev rules
* [samsung-p4wifi] Remove touchscreen calibration
It is not a resistive touchscreen. The default calibration works.
* Qualcomm MSM modem: 'rmtfs' support packages
* qcom_rmtfs: Server that talks to modem over IPC to allow it
read/write data for its persistent storage. This is needed for it to
boot, as well as periodically during usage. Added a patch that
it expects the storage path symlinks in /etc instead of /boot.
* qrtr: IPC library for rmtfs
* libqipcrtr4msmipc: adapter library to make qrtr work on kernels with
AF_MSM_IPC support. AF_QIPCRTR is the mainline equivalent since Linux
~4.7.
* msmipc-dev: Header files for qrtr and libqipcrtr4msmipc.
Thanks to Bjorn Andersson <https://github.com/andersson> for rmtfs and
qrtr.
* libsmdpkt_wrapper: adapter lib for QMI clients
The SMD serial packet driver in Qualcomm kernels has, AFAICT, a bug
in poll(); this works around it so that qmicli et al can work.
* i9195: firmware (modem only right now)
* add ofono (with patch for MSM devices)
Based on Alpine's package.
* i9195: add modem support
* move all modem related packages to aports/modem
* Add nonfree_firmware subpackage to all devices, that depend on
nonfree firmware.
* Some packages were depending on `linux-firmware`, but without having
Wifi working. Removed that dependency as it was probably added by
accident. If it was really necessary, chosing the appropriate
split linux-firmware package (e.g. linux-firmware-brcm) is better
anyway (that has been changed recently in Alpine and is possible
now).
* Add a test case that makes sure we don't have firmware depends
without subpackages in device aports anymore.
* device-*: add postmarketos-base to depends
* aportgen: add postmarketos-base to depends
* Add test case
* postmarketos-base: Don't depend on devicepkg
* msm-fb-refresher: Enable service in post-install
It lacked some hardware config, such as the USB switch.
With this change, I was able to SSH over the USB network.
I based this off of LineageOS 14.1's config file from its
build root. I think we were missing the secondary config
file
(TARGET_KERNEL_VARIANT_CONFIG := msm8930_serrano_eur_lte_defconfig
in BoardConfig.mk).
* gp-peak: Add support for osk-sdl
* gp-peak: Move non-kernel files to device-gp-peak
* gp-peak: Add audio support
Manually trigger the udev rules for audio devices and add the default user to the audio group
* Added a ui package for i3wm
* Added n900 specific i3wm config
* Fixed mixed tabs and spaces in i3status.
This is also the first commit made on an n900
running postmarketOS.
* Removed redundant X11
* Use lock.sh to lock the device
* Windows management improvements
* bump pkgver
* Fix device-nokia-n900 checksums
* Fixed path in the i3wm split package
Binary packages are rebuilding. If your kernel is not rebuilt yet, and
you don't want to build it yourself, just checkout the previous
pmbootstrap commit.
This commit also changes the arch from the postmarketOS kernels from
"all" to the ones where we actually have a kernel config.
Fixes#1229.
Fixes#1227.
This also updates the hash in linux-postmarketos-mainline, because the
hash changed upstream (they updated their git version server-side?).
This port includes:
* Weston including touch and WiFi (using e.g. firmware-samsung-i9305) works.
* Touchscreen calibration for osk-sdl
* Sound configuration
* Udev rules for touch and pen, pen works!
* Automatically generate a calibration matrix for libinput
This takes the calibration matrix for wayland and divides the pixel
offsets by the device width/height.
* Bump pkgrels of devices using devicepkg-dev
This causes new packages to be generated, using the new devicepkg-dev
version.
The device is Xiaomi Redmi 1S, based on MSM8296 platform, with Qualcomm
Snapdragon 400. The kernel is from lineageOS (3.4.0). Some additional patches
are needed for successful compilation. The screen dimension is 720x1280.
The touchscreen device name is ft5x06_i2c. Use this name for udev
instead of hardcoded device path. Also add a workaround for red
screen weston by setting weston_pixman to 2
The screen doesn't refresh. Enabling msm-fb-refresher as suggested.
Add udev rule to indicate whether the device is in charging state.
Green led indicates that the device is charging, whereas red light
indicates that the device is discharging.
For prima wlan module to work, an initialization procedure is needed (
echo 1 > /dev/wcnss_wlan ), before loading the prima wlan module
(wlan.ko). Also build the prima wlan as module.
Xiaomi Redmi 1S is using pronto wlan module, which needs some firmware
to run. Add the required wifi firmware to enable the wifi interface.
Add an openrc service to load wlan module after wcnss_service is
initialized.
Current status:
- flashing only manually (intel phones have different bootimg format)
- usb networking works
- xorg works using fbdev
- packages needed for wayland are not available for x86
- touch works in xorg and osk-sdl