device/motorola-osprey: switch to mainline (MR 1872)

This commit is contained in:
Martijn Braam 2020-12-17 13:10:10 +01:00
parent c395f9c94b
commit 67706609f9
No known key found for this signature in database
GPG key ID: C4280ACB000B060F
10 changed files with 90 additions and 4000 deletions

View file

@ -1,6 +0,0 @@
# udev rules file
# All device names can be read from weston's logfile
# Touchscreen (use 'weston-calibrator' to calibrate)
SUBSYSTEM=="input", ATTRS{name}=="synaptics_dsx_i2c", \
ENV{ID_INPUT}="1", ENV{ID_INPUT_TOUCHSCREEN}="1"

View file

@ -1,29 +1,54 @@
# Reference: <https://postmarketos.org/devicepkg>
pkgname=device-motorola-osprey
pkgver=1
pkgrel=14
pkgver=2
pkgrel=0
pkgdesc="Motorola Moto G 3rd gen. (2015)"
url="https://postmarketos.org"
arch="armhf"
arch="aarch64"
license="MIT"
depends="postmarketos-base linux-motorola-osprey mkbootimg mesa-dri-swrast"
depends="postmarketos-base mkbootimg soc-qcom-msm8916"
makedepends="devicepkg-dev"
source="deviceinfo initfs-hook.sh 90-android-touch-dev.rules fb-workaround.sh"
source="deviceinfo"
options="!check !archcheck"
subpackages="
$pkgname-kernel-mainline:kernel_mainline
$pkgname-kernel-mainline-modem:kernel_mainline_modem
$pkgname-nonfree-firmware:nonfree_firmware
$pkgname-nonfree-firmware-modem:nonfree_firmware_modem
"
build() {
devicepkg_build $startdir $pkgname
}
package() {
devicepkg_package $startdir $pkgname
install -D -m644 "$srcdir"/90-android-touch-dev.rules \
"$pkgdir"/etc/udev/rules.d/90-android-touch-dev.rules
install -D -m644 "$srcdir"/fb-workaround.sh \
"$pkgdir"/etc/profile.d/00-fb-workaround.sh
}
sha512sums="c80b73b2a17713a5f7e6129d11cc3f6dbd028120a9c8bd6e139db166b5bcb937b28766e6215745100a520e18a216294567d220e9263e6c4e532dbe97630c7729 deviceinfo
3e9d6bf1bd45328104b91b724472ac0e39cb595fb87f84b6793527019477a73234ae37d33e99419bc5810c018402ea6e68e76c26ace112ee11efc416ac0a7398 initfs-hook.sh
60597699b58aca14a1696329eba4ffb46d98c721d442fb024752e3301ea992ac1727d4609083a299573115288d2039c17831e7c70c2ffdd195a3c20323e6b5fb 90-android-touch-dev.rules
857da7bfe3a44d960ca1c05f8646eedd16140fa339f3b0421353f6cdb4b42f8e5c6457522e70c2eb2f76717404c688c0d92525b9d1e99895f3febb5ae3687420 fb-workaround.sh"
kernel_mainline() {
pkgdesc="Close to mainline kernel (no modem, audio routed directly)"
depends="linux-postmarketos-qcom-msm8916"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
kernel_mainline_modem() {
pkgdesc="Close to mainline kernel (non-free modem, audio routed through ADSP)"
depends="linux-postmarketos-qcom-msm8916 soc-qcom-msm8916-modem"
devicepkg_subpackage_kernel $startdir $pkgname $subpkgname
}
nonfree_firmware() {
pkgdesc="GPU/Wi-Fi/Bluetooth/Video(/Modem) firmware"
depends="linux-firmware-qcom firmware-motorola-osprey-wcnss firmware-motorola-osprey-venus"
mkdir "$subpkgdir"
}
nonfree_firmware_modem() {
pkgdesc="Modem firmware"
depends="firmware-motorola-osprey-modem"
install_if="$pkgname-nonfree-firmware $pkgname-kernel-mainline-modem"
mkdir "$subpkgdir"
}
sha512sums="84722de140aee0e6b11b49c1cd5df40efcc68f64637d646623f30b9aacfc45aab6707719c5bed3b117660f1018d7dd69551b8a5a7704f6246b944dca28d42f9c deviceinfo"

View file

@ -8,12 +8,12 @@ deviceinfo_codename="motorola-osprey"
deviceinfo_year="2015"
deviceinfo_chassis="handset"
deviceinfo_keyboard="false"
deviceinfo_dtb=""
deviceinfo_modules=""
deviceinfo_modules_initfs=""
deviceinfo_dtb_mainline="qcom/msm8916-motorola-osprey"
deviceinfo_dtb_mainline_modem="qcom/msm8916-motorola-osprey-modem"
deviceinfo_append_dtb="true"
deviceinfo_modules_initfs="panel-motorola-osprey-inx msm rmi-i2c"
deviceinfo_external_storage="true"
deviceinfo_flash_method="fastboot"
deviceinfo_arch="armhf"
deviceinfo_arch="aarch64"
# Splash screen
deviceinfo_screen_width="720"
@ -21,13 +21,12 @@ deviceinfo_screen_height="1280"
# Bootloader related
deviceinfo_flash_method="fastboot"
deviceinfo_kernel_cmdline="console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom msm_rtb.filter=0x3F ehci-hcd.park=3 vmalloc=400M androidboot.bootdevice=7824900.sdhci utags.blkdev=/dev/block/bootdevice/by-name/utags utags.backup=/dev/block/bootdevice/by-name/utagsBackup movablecore=160M"
deviceinfo_kernel_cmdline="earlycon console=ttyMSM0,115200 PMOS_NO_OUTPUT_REDIRECT"
deviceinfo_generate_bootimg="true"
deviceinfo_bootimg_qcdt="true"
deviceinfo_flash_offset_base="0x80000000"
deviceinfo_flash_offset_kernel="0x00008000"
deviceinfo_flash_offset_ramdisk="0x01000000"
deviceinfo_flash_offset_kernel="0x00080000"
deviceinfo_flash_offset_ramdisk="0x02000000"
deviceinfo_flash_offset_second="0x00f00000"
deviceinfo_flash_offset_tags="0x00000100"
deviceinfo_flash_offset_tags="0x01e00000"
deviceinfo_flash_pagesize="2048"
deviceinfo_flash_sparse="true"

View file

@ -1,12 +0,0 @@
main() {
# Wait until graphical environment is running
sleep 5
# Workaround for buggy graphics driver
cat /sys/class/graphics/fb0/modes > /sys/class/graphics/fb0/mode
}
# tty1 autologin
if [ $(tty) = "/dev/tty1" ]; then
# Run in background, to make /etc/profile not wait for it to finish
main &
fi

View file

@ -1,4 +0,0 @@
#!/bin/sh
# activate touchscreen
echo 1 > /sys/devices/soc.0/78b6000.i2c/i2c-2/2-0020/drv_irq

View file

@ -0,0 +1,42 @@
# Maintainer: Martijn Braam <martijn@brixit.nl>
pkgname=firmware-motorola-osprey
pkgver=1
pkgrel=0
pkgdesc="Firmware for Motorola Moto G 2015"
url="https://github.com/pmsourcedump/firmware-motorola-osprey"
subpackages="$pkgname-wcnss $pkgname-venus $pkgname-modem"
arch="aarch64"
license="proprietary"
options="!check !strip !archcheck"
_commit="a47c5a1c2dd806226c61305c9c97135f2734d0c7"
source="$pkgname-$_commit.tar.gz::https://github.com/pmsourcedump/firmware-motorola-osprey/archive/$_commit.tar.gz"
_fwdir="/lib/firmware/postmarketos"
package() {
mkdir -p "$pkgdir"
}
wcnss() {
pkgdesc="Motorola Moto G 2015 Wi-Fi/Bluetooth firmware"
cd "$srcdir/firmware-motorola-osprey-$_commit"
install -Dm644 wcnss.* -t "$subpkgdir/$_fwdir"
install -Dm644 wlan/prima/WCNSS_qcom_wlan_nv.bin -t "$subpkgdir/$_fwdir/wlan/prima"
}
venus() {
pkgdesc="Motorola Moto G 2015 video firmware"
cd "$srcdir/firmware-motorola-osprey-$_commit"
install -Dm644 venus.b* -t "$subpkgdir/$_fwdir/qcom/venus-1.8"
install -Dm644 venus.mdt -t "$subpkgdir/$_fwdir/qcom/venus-1.8"
}
modem() {
pkgdesc="Motorola Moto G 2015 modem firmware"
cd "$srcdir/firmware-motorola-osprey-$_commit"
install -Dm644 modem.* -t "$subpkgdir/$_fwdir"
install -Dm644 mba.mbn -t "$subpkgdir/$_fwdir"
}
sha512sums="7e8d02baa8864c50b4a8be1f9af830e8b5440eee61a012725ed114d93012f0fb19ec005908832d3c96e0ba54b51a5ec7bcf137bfcc64c63594212f2497604629 firmware-motorola-osprey-a47c5a1c2dd806226c61305c9c97135f2734d0c7.tar.gz"

View file

@ -1,13 +0,0 @@
diff --git a/drivers/video/msm/mdss/mdss_fb.c b/drivers/video/msm/mdss/mdss_fb.c
index b37fd1e07ac1..1f091a261d22 100644
--- a/drivers/video/msm/mdss/mdss_fb.c
+++ b/drivers/video/msm/mdss/mdss_fb.c
@@ -2668,7 +2668,7 @@ static int mdss_fb_register(struct msm_fb_data_type *mfd)
var->left_margin = panel_info->lcdc.h_back_porch;
var->right_margin = panel_info->lcdc.h_front_porch;
var->hsync_len = panel_info->lcdc.h_pulse_width;
- var->pixclock = panel_info->clk_rate / 1000;
+ var->pixclock = 1000000 / 60;
/*
* Store the cont splash state in the var reserved[3] field.

View file

@ -1,64 +0,0 @@
# Reference: <https://postmarketos.org/vendorkernel>
pkgname=linux-motorola-osprey
pkgver=3.10.49
pkgrel=7
pkgdesc="Motorola Moto G 3rd gen. (2015) kernel fork"
arch="armhf"
_carch="arm"
_flavor="motorola-osprey"
url="https://kernel.org"
license="GPL-2.0-only"
options="!strip !check !tracedeps pmb:cross-native"
makedepends="bash bc bison devicepkg-dev flex openssl-dev perl dtbtool linux-headers gcc6"
# Compiler: this kernel was only tested with GCC6. Feel free to make a merge
# request if you find out that it is booting working with newer GCCs as
# well. See <https://postmarketos.org/vendorkernel> for instructions.
if [ "${CC:0:5}" != "gcc6-" ]; then
CC="gcc6-$CC"
HOSTCC="gcc6-gcc"
CROSS_COMPILE="gcc6-$CROSS_COMPILE"
fi
# Source
_repository="android_kernel_motorola_msm8916"
_commit="ac87541051278c7ea7f494c0b689d08e4a5cdd4f"
_config="config-$_flavor.$arch"
source="
$pkgname-$_commit.tar.gz::https://github.com/LineageOS/$_repository/archive/$_commit.tar.gz
$_config
gcc10-extern_YYLOC_global_declaration.patch
02_mdss_fb_refresh_rate.patch
"
builddir="$srcdir/$_repository-$_commit"
_outdir="out"
prepare() {
default_prepare
. downstreamkernel_prepare
}
build() {
unset LDFLAGS
make O="$_outdir" ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS"
}
package() {
downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor" "$_outdir"
unset LDFLAGS
make O="$_outdir" ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS" \
INSTALL_MOD_PATH="$pkgdir" INSTALL_MOD_STRIP=1 modules_install
# Master DTB (deviceinfo_bootimg_qcdt)
dtbTool -p scripts/dtc/ -o "$_outdir/arch/$_carch/boot"/dt.img "$_outdir/arch/$_carch/boot/"
install -Dm644 "$_outdir/arch/$_carch/boot"/dt.img "$pkgdir"/boot/dt.img
}
sha512sums="fbc2e1fa6ff33dd4c20bb063c655fe85ee20c194a9c19a5fadd3434b8ade4b95377848349ce9266d74ca34882446e1e257c0e1a3e35bd23ff05813918dc74750 linux-motorola-osprey-ac87541051278c7ea7f494c0b689d08e4a5cdd4f.tar.gz
d98f97a3dce8c580161f185bf0ebe2a349c94539848a742adfe6d94b30a709c53d1ac59c5fdfb53b72b5f2fbccb0e62c45117951cbcbdae22fdf24690f4d79e1 config-motorola-osprey.armhf
2b48f1bf0e3f70703d2cdafc47d5e615cc7c56c70bec56b2e3297d3fa4a7a1321d649a8679614553dde8fe52ff1051dae38d5990e3744c9ca986d92187dcdbeb gcc10-extern_YYLOC_global_declaration.patch
a8c955bf718f155011e980f3d0948be98e1fee5649f418299a4851780543019daf7afa406aa7b0829375645107e4e6fbf241026b0cabe2b2ac895a47df83d2d8 02_mdss_fb_refresh_rate.patch"

View file

@ -1 +0,0 @@
../../.shared-patches/linux/gcc10-extern_YYLOC_global_declaration.patch