Adds asus-z00t device. (#1552)

This commit is contained in:
Samuel Dionne-Riel 2018-06-12 14:58:29 -04:00 committed by Oliver Smith
parent ddcb7397d0
commit ad750c6e0d
10 changed files with 4711 additions and 0 deletions

View file

@ -0,0 +1,2 @@
SUBSYSTEM=="input", ATTRS{name}=="ft5x06_ts", \
ENV{ID_INPUT}="1", ENV{ID_INPUT_TOUCHSCREEN}="1"

View file

@ -0,0 +1,34 @@
# Reference: <https://postmarketos.org/devicepkg>
pkgname="device-asus-z00t"
pkgdesc="Zenfone 2 Laser/Selfie (1080p)"
pkgver=0.1
pkgrel=0
url="https://postmarketos.org"
license="MIT"
arch="noarch"
options="!check"
depends="postmarketos-base linux-asus-z00t mkbootimg mesa-dri-swrast libsparse msm-fb-refresher"
makedepends="devicepkg-dev"
subpackages="$pkgname-nonfree-firmware:nonfree_firmware"
source="
deviceinfo
90-touchscreen.rules
"
build() {
devicepkg_build $startdir $pkgname
}
package() {
devicepkg_package $startdir $pkgname
install -Dm644 "$srcdir"/90-touchscreen.rules "$pkgdir"/etc/udev/rules.d/90-touchscreen.rules
}
nonfree_firmware() {
pkgdesc="All non-free firmwares from a device image. Includes firmware for wifi, modem and camera among others."
depends="firmware-asus-z00t"
mkdir "$subpkgdir"
}
sha512sums="81a1dbe283a2908c7071065dce33d99e147cdf894c44fbe5930d04ad62ece19eae1889203b46d08cba2cc1584903b7179a79dd827e15a3f63b9d680ad0d9bba5 deviceinfo
5bcf314aa8e77db9d9673a93886906bd15e8c3c57f8d0c4343977d2ce8d017af5608a3d13cd2cbacf155e3ecf632ccab6ff6f3b0c95eb4a2a3b35686a3c842db 90-touchscreen.rules"

View file

@ -0,0 +1,32 @@
# Reference: <https://postmarketos.org/deviceinfo>
# Please use double quotes only. You can source this file in shell scripts.
deviceinfo_format_version="0"
deviceinfo_name="Zenfone 2 Laser/Selfie (1080p)"
deviceinfo_manufacturer="Asus"
deviceinfo_date=""
deviceinfo_dtb=""
deviceinfo_modules_initfs=""
deviceinfo_arch="aarch64"
# Device related
deviceinfo_keyboard="false"
deviceinfo_external_storage="true"
deviceinfo_screen_width="1080"
deviceinfo_screen_height="1920"
deviceinfo_dev_touchscreen=""
deviceinfo_dev_touchscreen_calibration=""
deviceinfo_dev_keyboard=""
# Bootloader related
deviceinfo_flash_method="fastboot"
deviceinfo_kernel_cmdline="androidboot.hardware=qcom ehci-hcd.park=3 androidboot.bootdevice=7824900.sdhci lpm_levels.sleep_disabled=1 androidboot.selinux=permissive"
deviceinfo_generate_bootimg="true"
deviceinfo_bootimg_qcdt="true"
deviceinfo_flash_offset_base="0x10000000"
deviceinfo_flash_offset_kernel="0x00008000"
deviceinfo_flash_offset_ramdisk="0x02000000"
deviceinfo_flash_offset_second="0x00f00000"
deviceinfo_flash_offset_tags="0x00000100"
deviceinfo_flash_pagesize="2048"

View 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"},

View 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.

View file

@ -0,0 +1,52 @@
From e4e4f1f704b97a57edbbe471962729e2efd04fd6 Mon Sep 17 00:00:00 2001
From: rishabhrao <admin@rishabhrao.net>
Date: Sun, 5 Feb 2017 07:44:00 +0000
Subject: [PATCH] s2: Fix Kernel Standalone Building Errors
Change-Id: Ia54b1b5e3ba950a8ac0db689275dd760455cdfad
Signed-off-by: rishabhrao <admin@rishabhrao.net>
---
arch/arm64/Makefile | 7 ++++---
arch/arm64/boot/Makefile | 2 +-
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index 153e8545587..bdc365eb4d6 100644
--- a/arch/arm64/Makefile
+++ b/arch/arm64/Makefile
@@ -61,6 +61,7 @@ KBUILD_DTBS := dtbs
all: $(KBUILD_IMAGE) $(KBUILD_DTBS)
+boot32 := arch/arm/boot
boot := arch/arm64/boot
Image Image.gz: vmlinux
@@ -70,11 +71,11 @@ zinstall install: vmlinux
$(Q)$(MAKE) $(build)=$(boot) $@
%.dtb: scripts
- $(Q)$(MAKE) $(build)=$(boot)/dts $(boot)/dts/$@
+ $(Q)$(MAKE) $(build)=$(boot32)/dts $(boot32)/dts/$@
dtbs: scripts
- $(Q)$(MAKE) $(build)=$(boot)/dts dtbs
- $(Q)$(MAKE) $(build)=$(boot)/dts/qcom dtbs
+ $(Q)$(MAKE) $(build)=$(boot32)/dts dtbs
+ $(Q)$(MAKE) $(build)=$(boot32)/dts/qcom dtbs
PHONY += vdso_install
vdso_install:
diff --git a/arch/arm64/boot/Makefile b/arch/arm64/boot/Makefile
index ad85404a64d..b49defdf14a 100644
--- a/arch/arm64/boot/Makefile
+++ b/arch/arm64/boot/Makefile
@@ -24,7 +24,7 @@ DTB_LIST := $(addsuffix .dtb,$(DTB_NAMES))
else
DTB_LIST := $(dtb-y)
endif
-DTB_OBJS := $(addprefix $(obj)/dts/,$(DTB_LIST))
+DTB_OBJS := $(addprefix $(srctree)/arch/arm/boot/dts/,$(DTB_LIST))
$(obj)/Image: vmlinux FORCE
$(call if_changed,objcopy)

View file

@ -0,0 +1,95 @@
# Kernel config based on: arch/arm64/configs/ze550kl_defconfig
pkgname="linux-asus-z00t"
pkgver=3.10.108
pkgrel=0
pkgdesc="Zenfone 2 Laser/Selfie (1080p) kernel fork"
arch="aarch64"
_carch="arm64"
_flavor="asus-z00t"
url="https://kernel.org"
license="GPL2"
options="!strip !check !tracedeps"
makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev dtbtool"
HOSTCC="${CC:-gcc}"
HOSTCC="${HOSTCC#${CROSS_COMPILE}}"
# Source
_repository="android_kernel_asus_msm8916"
_commit="5fd66aa9219bf9aaa504aa3cb2dae7a3de5238f7"
_config="config-${_flavor}.${arch}"
source="
$pkgname-$_commit.tar.gz::https://github.com/LineageOS/${_repository}/archive/${_commit}.tar.gz
$_config
compiler-gcc6.h
01_fix_gcc6_errors.patch
02_mdss_fb_refresh_rate.patch
05_dtb-fix.patch
"
builddir="$srcdir/${_repository}-${_commit}"
prepare() {
default_prepare
# gcc6 support
cp -v "$srcdir/compiler-gcc6.h" "$builddir/include/linux/"
# Remove -Werror from all makefiles
local i
local makefiles="$(find . -type f -name Makefile)
$(find . -type f -name Kbuild)"
for i in $makefiles; do
sed -i 's/-Werror-/-W/g' "$i"
sed -i 's/-Werror//g' "$i"
done
# Prepare kernel config ('yes ""' for kernels lacking olddefconfig)
cp "$srcdir"/$_config "$builddir"/.config
yes "" | make ARCH="$_carch" HOSTCC="$HOSTCC" oldconfig
}
menuconfig() {
cd "$builddir"
make ARCH="$_carch" menuconfig
cp .config "$startdir"/$_config
}
build() {
unset LDFLAGS
make ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS"
# Generate master DTB (deviceinfo_bootimg_qcdt)
dtbTool -s 2048 -p "scripts/dtc/" -o "arch/arm64/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 (deviceinfo_bootimg_qcdt)
install -Dm644 "$builddir/arch/arm64/boot/dt.img" \
"$pkgdir/boot/dt.img"
}
sha512sums="2a43545d07b4b477749ac4eaf793e0e7cf105699264d4bd97df20904a3039f421330825dc8c7f9f741387dc3dd9c48b716de6c797048a1f9f358fee97f68fa85 linux-asus-z00t-5fd66aa9219bf9aaa504aa3cb2dae7a3de5238f7.tar.gz
395ec02b12bb376fd558267308b908af9da4111dd18e29639f6c972d8ed2a0cd0a127479adaebe9c618962ea7cddf6d1f63b29b03cd8f5c095c0f9453960f799 config-asus-z00t.aarch64
d80980e9474c82ba0ef1a6903b434d8bd1b092c40367ba543e72d2c119301c8b2d05265740e4104ca1ac5d15f6c4aa49e8776cb44264a9a28dc551e0d1850dcc compiler-gcc6.h
972e98523d6ef06342e69a09e979bdd86904cf7f9a843b519b37791e531b680182564a2ab537c94629c3589f4e775b2c39de04c64e210a0f8b6f10745c3596f1 01_fix_gcc6_errors.patch
a8c955bf718f155011e980f3d0948be98e1fee5649f418299a4851780543019daf7afa406aa7b0829375645107e4e6fbf241026b0cabe2b2ac895a47df83d2d8 02_mdss_fb_refresh_rate.patch
0e5ebee2f1b0005fcae4f313219c0b6481b3d044c7167e0fb18b72db0eae49aef7b281cd29e0fa1e653fc5585064c990085ca68f920348c3d9d9ea9524d1baa6 05_dtb-fix.patch"

View file

@ -0,0 +1,69 @@
// SOURCE:
// https://github.com/NextThingCo/CHIP-u-boot/issues/10#issuecomment-287515505
#ifndef __LINUX_COMPILER_H
#error "Please don't include <linux/compiler-gcc6.h> directly, include <linux/compiler.h> instead."
#endif
#define __used __attribute__((__used__))
#define __must_check __attribute__((warn_unused_result))
#define __compiler_offsetof(a, b) __builtin_offsetof(a, b)
/* Mark functions as cold. gcc will assume any path leading to a call
to them will be unlikely. This means a lot of manual unlikely()s
are unnecessary now for any paths leading to the usual suspects
like BUG(), printk(), panic() etc. [but let's keep them for now for
older compilers]
Early snapshots of gcc 4.3 don't support this and we can't detect this
in the preprocessor, but we can live with this because they're unreleased.
Maketime probing would be overkill here.
gcc also has a __attribute__((__hot__)) to move hot functions into
a special section, but I don't see any sense in this right now in
the kernel context */
#define __cold __attribute__((__cold__))
#define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
#ifndef __CHECKER__
# define __compiletime_warning(message) __attribute__((warning(message)))
# define __compiletime_error(message) __attribute__((error(message)))
#endif /* __CHECKER__ */
/*
* Mark a position in code as unreachable. This can be used to
* suppress control flow warnings after asm blocks that transfer
* control elsewhere.
*
* Early snapshots of gcc 4.5 don't support this and we can't detect
* this in the preprocessor, but we can live with this because they're
* unreleased. Really, we need to have autoconf for the kernel.
*/
#define unreachable() __builtin_unreachable()
/* Mark a function definition as prohibited from being cloned. */
#define __noclone __attribute__((__noclone__))
/*
* Tell the optimizer that something else uses this function or variable.
*/
#define __visible __attribute__((externally_visible))
/*
* GCC 'asm goto' miscompiles certain code sequences:
*
* http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58670
*
* Work it around via a compiler barrier quirk suggested by Jakub Jelinek.
*
* (asm goto is automatically volatile - the naming reflects this.)
*/
#define asm_volatile_goto(x...) do { asm goto(x); asm (""); } while (0)
#ifdef CONFIG_ARCH_USE_BUILTIN_BSWAP
#define __HAVE_BUILTIN_BSWAP32__
#define __HAVE_BUILTIN_BSWAP64__
#define __HAVE_BUILTIN_BSWAP16__
#endif /* CONFIG_ARCH_USE_BUILTIN_BSWAP */

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,123 @@
pkgname=firmware-asus-z00t
pkgver=0
pkgrel=1
pkgdesc="Firmware for asus-z00t"
url="https://github.com/F2F056C4-B868-4F9D-BF2A-45B9CD317E1D/asus-z00t-firmware"
arch="noarch"
license="proprietary"
depends="wcnss-wlan"
options="!check !strip !archcheck"
_commit="d75a9d565250429ed5b06ed6c5d6f50cfadf9cb9"
_repo="asus-z00t-firmware"
_dir="$_repo-$_commit"
source="
$pkgname-$_commit.tar.gz::https://github.com/F2F056C4-B868-4F9D-BF2A-45B9CD317E1D/${_repo}/archive/${_commit}.tar.gz
https://raw.githubusercontent.com/LineageOS/android_device_asus_msm8916-common/cm-14.1/wifi/WCNSS_qcom_cfg.ini
"
package() {
cd "$srcdir"
for part in b00 b01 b02 b03 mdt; do
install -Dm644 "$_dir/firmware/image/keymaste.$part" "$pkgdir/lib/firmware/keymaster/keymaster.$part";
done
# prima
_files="
WCNSS_cfg.dat
WCNSS_wlan_dictionary.dat
WCNSS_qcom_wlan_nv_cmcc_zd550kl.bin
WCNSS_qcom_wlan_nv_cucc_zd550kl.bin
WCNSS_qcom_wlan_nv_ze550kg.bin
WCNSS_qcom_wlan_nv_ze550kl.bin
WCNSS_qcom_wlan_nv_ze550kl_cmcc.bin
WCNSS_qcom_wlan_nv_ze551kl.bin
WCNSS_qcom_wlan_nv_ze600kl.bin
WCNSS_qcom_wlan_nv_zx550kl.bin
"
for f in $_files; do
install -Dm644 "$_dir/etc-firmware/wlan/prima/$f" \
"$pkgdir/lib/firmware/wlan/prima/$f"
done
_files="
WCNSS_qcom_cfg.ini
"
for f in $_files; do
install -Dm644 "$f" \
"$pkgdir/lib/firmware/wlan/prima/$f"
done
# qualcomm
_files="
cmnlib.b00
cmnlib.b01
cmnlib.b02
cmnlib.b03
cmnlib.mdt
isdbtmm.b00
isdbtmm.b01
isdbtmm.b02
isdbtmm.b03
isdbtmm.mdt
mba.mbn
modem.b00
modem.b01
modem.b02
modem.b03
modem.b04
modem.b05
modem.b06
modem.b08
modem.b09
modem.b12
modem.b13
modem.b14
modem.b15
modem.b16
modem.b17
modem.b18
modem.b21
modem.b22
modem.b23
modem.b25
modem.b26
modem.mdt
playread.b00
playread.b01
playread.b02
playread.b03
playread.mdt
venus.b00
venus.b01
venus.b02
venus.b03
venus.b04
venus.mbn
venus.mdt
wcnss.b00
wcnss.b01
wcnss.b02
wcnss.b03
wcnss.b04
wcnss.b05
wcnss.b06
wcnss.b07
wcnss.b08
wcnss.b09
wcnss.b10
wcnss.b11
wcnss.mdt
widevine.b00
widevine.b01
widevine.b02
widevine.b03
widevine.mdt
"
for f in $_files; do
install -Dm644 "$_dir/firmware/image/$f" \
"$pkgdir/lib/firmware/$f"
done
}
sha512sums="f6011a1b0f367eba1e03fa38ef3eba35340492934e9160d37bb1211b05025c39f27e1991a6df32b8a3de4f1c9463bf27846998de46d84e1a2f2c97cda321d4e7 firmware-asus-z00t-d75a9d565250429ed5b06ed6c5d6f50cfadf9cb9.tar.gz
284fe8cfceff62b07089db11f994571de18554aa5d94cda825c36c1ec64cffab0acd0ae797fdb49bdb37ca47944cbd738da709e9f858fb459866f38f17163c98 WCNSS_qcom_cfg.ini"