Add device: wileyfox-crackling (!485)
Initial support for Wileyfox Swift - System boots - USB networking works - Display and touch works - Weston, XFCE4, Plasma Mobile works with software rendering - fb.modes added but charging-sdl still don't work - System allways reports charge level at zero [ci:skip-build]: already built successfully in CI
This commit is contained in:
parent
05aa9bed4d
commit
536da1c1a7
7 changed files with 4197 additions and 0 deletions
28
device/device-wileyfox-crackling/APKBUILD
Normal file
28
device/device-wileyfox-crackling/APKBUILD
Normal file
|
@ -0,0 +1,28 @@
|
|||
# Reference: <https://postmarketos.org/devicepkg>
|
||||
pkgname="device-wileyfox-crackling"
|
||||
pkgdesc="Wileyfox Swift"
|
||||
pkgver=0.1
|
||||
pkgrel=0
|
||||
url="https://postmarketos.org"
|
||||
license="MIT"
|
||||
arch="aarch64"
|
||||
options="!check !archcheck"
|
||||
depends="postmarketos-base linux-wileyfox-crackling mkbootimg mesa-dri-swrast mdss-fb-init-hack"
|
||||
makedepends="devicepkg-dev"
|
||||
source="
|
||||
deviceinfo
|
||||
fb.modes
|
||||
"
|
||||
|
||||
build() {
|
||||
devicepkg_build $startdir $pkgname
|
||||
install -Dm544 "$srcdir"/fb.modes \
|
||||
"$pkgdir"/etc/fb.modes
|
||||
}
|
||||
|
||||
package() {
|
||||
devicepkg_package $startdir $pkgname
|
||||
}
|
||||
|
||||
sha512sums="fbac0a067856483dba9bc2a0c7d97edd8a4f471a086572800c47c22903385c98451954fe9a4489e07b7c5876f565295245c1fe6024610ed60c4d2a7f1693d062 deviceinfo
|
||||
587be41a15f5738c6f55c52f760e08810185a00af886e84864f77ce38675bdf65893779a4ea88c9811023746895818ce5829a1b060e158f2cdae87d13e13f07d fb.modes"
|
33
device/device-wileyfox-crackling/deviceinfo
Normal file
33
device/device-wileyfox-crackling/deviceinfo
Normal file
|
@ -0,0 +1,33 @@
|
|||
# Reference: <https://postmarketos.org/deviceinfo>
|
||||
# Please use double quotes only. You can source this file in shell scripts.
|
||||
|
||||
deviceinfo_format_version="0"
|
||||
deviceinfo_name="Wileyfox Swift"
|
||||
deviceinfo_manufacturer="Wileyfox"
|
||||
deviceinfo_codename="wileyfox-crackling"
|
||||
deviceinfo_date=""
|
||||
deviceinfo_dtb=""
|
||||
deviceinfo_modules_initfs=""
|
||||
deviceinfo_arch="aarch64"
|
||||
|
||||
# Device related
|
||||
deviceinfo_keyboard="false"
|
||||
deviceinfo_external_storage="true"
|
||||
deviceinfo_screen_width="720"
|
||||
deviceinfo_screen_height="1280"
|
||||
deviceinfo_dev_touchscreen=""
|
||||
deviceinfo_dev_touchscreen_calibration=""
|
||||
deviceinfo_dev_keyboard=""
|
||||
|
||||
# Bootloader related
|
||||
deviceinfo_flash_method="fastboot"
|
||||
deviceinfo_kernel_cmdline="console=ttyHSL0,115200,n8 androidboot.console=ttyHSL0 androidboot.hardware=qcom msm_rtb.filter=0x237 ehci-hcd.park=3 androidboot.bootdevice=7824900.sdhci lpm_levels.sleep_disabled=1 loop.max_part=7 buildvariant=userdebug"
|
||||
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_second="0x00f00000"
|
||||
deviceinfo_flash_offset_tags="0x00000100"
|
||||
deviceinfo_flash_pagesize="2048"
|
||||
|
8
device/device-wileyfox-crackling/fb.modes
Normal file
8
device/device-wileyfox-crackling/fb.modes
Normal file
|
@ -0,0 +1,8 @@
|
|||
|
||||
mode "720x1280-50"
|
||||
# D: 60.002 MHz, H: 65.937 kHz, V: 49.952 Hz
|
||||
geometry 720 1280 720 1280 16
|
||||
timings 16666 90 90 16 20 10 4
|
||||
accel false
|
||||
rgba 8/0,8/8,8/16,8/24
|
||||
endmode
|
68
device/linux-wileyfox-crackling/01_fix_gcc6_errors.patch
Normal file
68
device/linux-wileyfox-crackling/01_fix_gcc6_errors.patch
Normal file
|
@ -0,0 +1,68 @@
|
|||
From 44f841be2a223d672eaf9fa3029fd9249aeca583 Mon Sep 17 00:00:00 2001
|
||||
From: MOVZX <movzx@yahoo.com>
|
||||
Date: Tue, 25 Apr 2017 17:04:40 +0300
|
||||
Subject: [PATCH] prima: Fix GCC6 Warnings
|
||||
|
||||
Signed-off-by: MOVZX <movzx@yahoo.com>
|
||||
---
|
||||
drivers/staging/prima/CORE/MAC/src/include/utilsApi.h | 2 +-
|
||||
drivers/staging/prima/CORE/MAC/src/pe/sch/schBeaconGen.c | 2 +-
|
||||
drivers/staging/prima/CORE/SME/src/csr/csrApiScan.c | 2 +-
|
||||
drivers/staging/prima/CORE/VOSS/src/wlan_nv_template_builtin.c | 5 ++---
|
||||
4 files changed, 5 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/staging/prima/CORE/MAC/src/include/utilsApi.h b/drivers/staging/prima/CORE/MAC/src/include/utilsApi.h
|
||||
index 3a175473378..798a05cd2b4 100644
|
||||
--- a/drivers/staging/prima/CORE/MAC/src/include/utilsApi.h
|
||||
+++ b/drivers/staging/prima/CORE/MAC/src/include/utilsApi.h
|
||||
@@ -705,7 +705,7 @@ halRoundS32(tANI_S32 p)
|
||||
else
|
||||
k = p;
|
||||
|
||||
- return(k);
|
||||
+ return(k);
|
||||
}
|
||||
|
||||
// New functions for endianess conversion
|
||||
diff --git a/drivers/staging/prima/CORE/MAC/src/pe/sch/schBeaconGen.c b/drivers/staging/prima/CORE/MAC/src/pe/sch/schBeaconGen.c
|
||||
index 0fc798995ae..6427a04e108 100644
|
||||
--- a/drivers/staging/prima/CORE/MAC/src/pe/sch/schBeaconGen.c
|
||||
+++ b/drivers/staging/prima/CORE/MAC/src/pe/sch/schBeaconGen.c
|
||||
@@ -60,7 +60,7 @@
|
||||
// Temporarily (maybe for all of Alpha-1), assuming TIM = 0
|
||||
//
|
||||
|
||||
-const tANI_U8 P2pOui[] = {0x50, 0x6F, 0x9A, 0x9};
|
||||
+tANI_U8 P2pOui[] = {0x50, 0x6F, 0x9A, 0x9};
|
||||
|
||||
|
||||
tSirRetStatus schGetP2pIeOffset(tANI_U8 *pExtraIe, tANI_U32 extraIeLen, tANI_U16 *pP2pIeOffset)
|
||||
diff --git a/drivers/staging/prima/CORE/SME/src/csr/csrApiScan.c b/drivers/staging/prima/CORE/SME/src/csr/csrApiScan.c
|
||||
index 23ab858c355..b4f26def1d1 100644
|
||||
--- a/drivers/staging/prima/CORE/SME/src/csr/csrApiScan.c
|
||||
+++ b/drivers/staging/prima/CORE/SME/src/csr/csrApiScan.c
|
||||
@@ -5698,7 +5698,7 @@ static tANI_BOOLEAN csrScanProcessScanResults( tpAniSirGlobal pMac, tSmeCmd *pCo
|
||||
if (eHAL_STATUS_SUCCESS != status)
|
||||
smsLog(pMac, LOGE,
|
||||
FL( "failed to update the supported channel list"));
|
||||
- pMac->scan.defer_update_channel_list = false;
|
||||
+ pMac->scan.defer_update_channel_list = false;
|
||||
}
|
||||
|
||||
#ifdef WLAN_AP_STA_CONCURRENCY
|
||||
diff --git a/drivers/staging/prima/CORE/VOSS/src/wlan_nv_template_builtin.c b/drivers/staging/prima/CORE/VOSS/src/wlan_nv_template_builtin.c
|
||||
index 14c6eadf524..e26b697f793 100644
|
||||
--- a/drivers/staging/prima/CORE/VOSS/src/wlan_nv_template_builtin.c
|
||||
+++ b/drivers/staging/prima/CORE/VOSS/src/wlan_nv_template_builtin.c
|
||||
@@ -587,9 +587,8 @@ _NV_TEMPLATE_TABLE NvTablesBuiltIn[/*TABLES_MAX*/][TABLE_ENTRIES_MAX] = {
|
||||
((char *)&(nvDefaults.tables.hwCalValues.calData.psSlpTimeOvrHdxLNA5G) -
|
||||
(char *)&nvDefaults.tables.hwCalValues.calData),"psSlpTimeOvrHdxLNA5G"},
|
||||
{"ed",_ID_U8,SINGULAR,0,0,0,
|
||||
- (((char *)&(nvDefaults.tables.hwCalValues.calData.psSlpTimeOvrHdxLNA5G) +
|
||||
- sizeof(uint16)) - (char *)&nvDefaults.tables.hwCalValues.calData),
|
||||
- "nv_TxBBFSel9MHz"},
|
||||
+ ((char *)&(nvDefaults.tables.hwCalValues.calData.psSlpTimeOvrHdxLNA5G) -
|
||||
+ (char *)&nvDefaults.tables.hwCalValues.calData),"nv_TxBBFSel9MHz"},
|
||||
{"ee",_ID_U8,SINGULAR,0,0,0,
|
||||
((char *)&(nvDefaults.tables.hwCalValues.calData.hwParam2) -
|
||||
(char *)&nvDefaults.tables.hwCalValues.calData),"hwParam2"},
|
78
device/linux-wileyfox-crackling/APKBUILD
Normal file
78
device/linux-wileyfox-crackling/APKBUILD
Normal file
|
@ -0,0 +1,78 @@
|
|||
# Reference: <https://postmarketos.org/vendorkernel>
|
||||
# Kernel config based on: arch/arm64/configs/lineageos_crackling_defconfig
|
||||
|
||||
pkgname="linux-wileyfox-crackling"
|
||||
pkgver=3.10.108
|
||||
pkgrel=0
|
||||
pkgdesc="Wileyfox Swift kernel fork"
|
||||
arch="aarch64"
|
||||
_carch="arm64"
|
||||
_flavor="wileyfox-crackling"
|
||||
url="https://kernel.org"
|
||||
license="GPL-2.0-only"
|
||||
options="!strip !check !tracedeps"
|
||||
makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev devicepkg-dev dtbtool gcc6"
|
||||
|
||||
# Compiler: GCC 6 (doesn't boot when compiled with newer versions)
|
||||
if [ "${CC:0:5}" != "gcc6-" ]; then
|
||||
CC="gcc6-$CC"
|
||||
HOSTCC="gcc6-gcc"
|
||||
CROSS_COMPILE="gcc6-$CROSS_COMPILE"
|
||||
fi
|
||||
|
||||
# Source
|
||||
_repository="android_kernel_cyanogen_msm8916"
|
||||
_commit="7ac9a15c55f441060e83a3b0b6a9b4573cefeea7"
|
||||
_config="config-${_flavor}.${arch}"
|
||||
source="
|
||||
$pkgname-$_commit.tar.gz::https://github.com/LineageOS/${_repository}/archive/${_commit}.tar.gz
|
||||
$_config
|
||||
01_fix_gcc6_errors.patch
|
||||
mdss_fb_refresh_rate.patch
|
||||
"
|
||||
|
||||
|
||||
builddir="$srcdir/${_repository}-${_commit}"
|
||||
|
||||
prepare() {
|
||||
default_prepare
|
||||
downstreamkernel_prepare "$srcdir" "$builddir" "$_config" "$_carch" "$HOSTCC"
|
||||
}
|
||||
|
||||
build() {
|
||||
unset LDFLAGS
|
||||
make ARCH="$_carch" CC="${CC:-gcc}" \
|
||||
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS"
|
||||
|
||||
# Generate master DTB
|
||||
dtbTool -s 2048 -p "scripts/dtc/" -o "arch/arm/boot/dt.img" "arch/arm/boot/"
|
||||
}
|
||||
|
||||
package() {
|
||||
# kernel.release
|
||||
install -D "$builddir/include/config/kernel.release" \
|
||||
"$pkgdir/usr/share/kernel/$_flavor/kernel.release"
|
||||
|
||||
# zImage (find the right one)
|
||||
cd "$builddir/arch/$_carch/boot"
|
||||
_target="$pkgdir/boot/vmlinuz-$_flavor"
|
||||
for _zimg in zImage-dtb Image.gz-dtb *zImage Image; do
|
||||
[ -e "$_zimg" ] || continue
|
||||
msg "zImage found: $_zimg"
|
||||
install -Dm644 "$_zimg" "$_target"
|
||||
break
|
||||
done
|
||||
if ! [ -e "$_target" ]; then
|
||||
error "Could not find zImage in $PWD!"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Master DTB
|
||||
install -Dm644 "$builddir/arch/arm/boot/dt.img" \
|
||||
"$pkgdir/boot/dt.img"
|
||||
}
|
||||
|
||||
sha512sums="7787047fc72da32e3dd5daa1d867be5e47035e76fe35ae681bc8456222bd891dd39915bcbd139a301a1e2ebb7d9acfae5f4130451c23d3654b18f3b707b2d51c linux-wileyfox-crackling-7ac9a15c55f441060e83a3b0b6a9b4573cefeea7.tar.gz
|
||||
b23b0223c60b3a98051b70ce7f5839ffa41ca0f37a1cc14860a7ac2193063334302a49704fd7b9e60aa38d44bb7a5553ce9831bb36538d5d88081fa3655d5772 config-wileyfox-crackling.aarch64
|
||||
972e98523d6ef06342e69a09e979bdd86904cf7f9a843b519b37791e531b680182564a2ab537c94629c3589f4e775b2c39de04c64e210a0f8b6f10745c3596f1 01_fix_gcc6_errors.patch
|
||||
a8c955bf718f155011e980f3d0948be98e1fee5649f418299a4851780543019daf7afa406aa7b0829375645107e4e6fbf241026b0cabe2b2ac895a47df83d2d8 mdss_fb_refresh_rate.patch"
|
3969
device/linux-wileyfox-crackling/config-wileyfox-crackling.aarch64
Normal file
3969
device/linux-wileyfox-crackling/config-wileyfox-crackling.aarch64
Normal file
File diff suppressed because it is too large
Load diff
13
device/linux-wileyfox-crackling/mdss_fb_refresh_rate.patch
Normal file
13
device/linux-wileyfox-crackling/mdss_fb_refresh_rate.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
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.
|
Loading…
Reference in a new issue