teclast-x80pro: drop device (MR 3528)
Kernel doesn't compile anymore, and it doesn't seem worth fixing it again. The kernel has been added in 2017 as a stock mainline kernel from that time with only two patches and wasn't maintained since then, looking at git log --follow it was only patched to fix it up when it didn't build. As the device is a generic x86_64 tablet: if somebody has that particular device, try to get the generic device-tablet-x64uefi running instead.
This commit is contained in:
parent
570f7a50b5
commit
f8ce8ef0e3
6 changed files with 0 additions and 8767 deletions
|
@ -1,33 +0,0 @@
|
||||||
# Reference: <https://postmarketos.org/devicepkg>
|
|
||||||
# See wiki: <https://wiki.postmarketos.org/wiki/Teclast_X80_Pro_(teclast-x80pro)> for installation information
|
|
||||||
# This package is also likely to work for most Intel based, EFI booting tablets (and laptops).
|
|
||||||
pkgname=device-teclast-x80pro
|
|
||||||
pkgdesc="Teclast X80Pro"
|
|
||||||
pkgver=1.0
|
|
||||||
pkgrel=12
|
|
||||||
url="https://postmarketos.org"
|
|
||||||
license="MIT"
|
|
||||||
arch="x86_64"
|
|
||||||
options="!check !archcheck"
|
|
||||||
depends="postmarketos-base linux-teclast-x80pro"
|
|
||||||
makedepends="devicepkg-dev"
|
|
||||||
source="deviceinfo"
|
|
||||||
subpackages="$pkgname-nonfree-firmware:nonfree_firmware"
|
|
||||||
|
|
||||||
build() {
|
|
||||||
devicepkg_build $startdir $pkgname
|
|
||||||
}
|
|
||||||
|
|
||||||
package() {
|
|
||||||
devicepkg_package $startdir $pkgname
|
|
||||||
}
|
|
||||||
|
|
||||||
nonfree_firmware() {
|
|
||||||
pkgdesc="Wifi firmware"
|
|
||||||
depends="linux-firmware"
|
|
||||||
mkdir "$subpkgdir"
|
|
||||||
}
|
|
||||||
|
|
||||||
sha512sums="
|
|
||||||
1b67360553997896734680b14e42ca89c4d0af3b4a46415afba1a43f3e618a43f1a7b8c408c25ca108417a036dcc04d684328293c4c316e722b5d24a350f5f58 deviceinfo
|
|
||||||
"
|
|
|
@ -1,23 +0,0 @@
|
||||||
# Reference: <https://postmarketos.org/deviceinfo>
|
|
||||||
# Please use double quotes only. You can source this file in shell scripts.
|
|
||||||
|
|
||||||
deviceinfo_format_version="0"
|
|
||||||
deviceinfo_name="Teclast X80 Pro"
|
|
||||||
deviceinfo_manufacturer="Teclast"
|
|
||||||
deviceinfo_codename="teclast-x80pro"
|
|
||||||
deviceinfo_year="2017"
|
|
||||||
deviceinfo_modules_initfs="i915 usbhid usb-storage hid_generic sdhci_acpi mmc_block xhci_pci sd_mod"
|
|
||||||
deviceinfo_arch="x86_64"
|
|
||||||
|
|
||||||
# Device related
|
|
||||||
deviceinfo_gpu_accelerated="true"
|
|
||||||
deviceinfo_chassis="tablet"
|
|
||||||
deviceinfo_keyboard="false"
|
|
||||||
deviceinfo_external_storage="true"
|
|
||||||
deviceinfo_screen_width="1200"
|
|
||||||
deviceinfo_screen_height="1920"
|
|
||||||
deviceinfo_dev_touchscreen="/dev/input/event5"
|
|
||||||
|
|
||||||
# Bootloader related
|
|
||||||
# See wiki for this device. Installation procedure is non-standard.
|
|
||||||
deviceinfo_flash_method="none"
|
|
|
@ -1,186 +0,0 @@
|
||||||
# Note that this is equivalent to postmarketos-stable with the kernel config from Arch Linux.
|
|
||||||
# TODO: Merge the two packages so that the teclast-x80pro is on actual mainline/stable kernel.
|
|
||||||
# The default QEMU kernel config is missing too many options to allow it to boot on a real x86_64 platform.
|
|
||||||
_flavor=teclast-x80pro
|
|
||||||
_hash="7b6fbfd899b4133e4f789843e5967beb139ec4d2"
|
|
||||||
_config="config-$_flavor.$CARCH"
|
|
||||||
|
|
||||||
pkgname=linux-$_flavor
|
|
||||||
|
|
||||||
# FIXME: this kernel doesn't build anymore!
|
|
||||||
# Once this is fixed, re-apply MR 3254: put dtbs in /boot.
|
|
||||||
# https://builds.sr.ht/~postmarketos/job/858721
|
|
||||||
|
|
||||||
pkgver=4.14.73
|
|
||||||
case $pkgver in
|
|
||||||
*.*.*) _kernver=${pkgver%.*};;
|
|
||||||
*.*) _kernver=$pkgver;;
|
|
||||||
esac
|
|
||||||
pkgrel=6
|
|
||||||
|
|
||||||
arch="x86_64"
|
|
||||||
pkgdesc="Linux for pmOS supported chipsets (stable)"
|
|
||||||
url="https://kernel.org/"
|
|
||||||
makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev openssl-dev"
|
|
||||||
options="!strip !check !tracedeps pmb:cross-native"
|
|
||||||
source="
|
|
||||||
https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/linux-$_kernver.tar.xz
|
|
||||||
config-$_flavor.x86_64
|
|
||||||
net-phy-micrel-Use-strlcpy-for-ethtool-get_strings.patch
|
|
||||||
x86-boot-compressed-Don-t-declare-__force_order-in-k.patch
|
|
||||||
"
|
|
||||||
|
|
||||||
if [ "${pkgver%.0}" = "$pkgver" ]; then
|
|
||||||
source="$source
|
|
||||||
https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/patch-$pkgver.xz"
|
|
||||||
fi
|
|
||||||
subpackages="$pkgname-dev"
|
|
||||||
|
|
||||||
license="GPL2"
|
|
||||||
_abi_release=$pkgver
|
|
||||||
_carch=$CARCH
|
|
||||||
case "$_carch" in
|
|
||||||
aarch64*) _carch="arm64" ;;
|
|
||||||
arm*) _carch="arm" ;;
|
|
||||||
ppc*) _carch="powerpc" ;;
|
|
||||||
s390*) _carch="s390" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
ksrcdir="$srcdir/linux-$_kernver"
|
|
||||||
|
|
||||||
prepare() {
|
|
||||||
local _patch_failed=
|
|
||||||
cd "$ksrcdir"
|
|
||||||
if [ "$_kernver" != "$pkgver" ]; then
|
|
||||||
msg "Applying patch-$pkgver.xz"
|
|
||||||
unxz -c < "$srcdir"/patch-$pkgver.xz | patch -p1 -N
|
|
||||||
fi
|
|
||||||
|
|
||||||
# first apply patches in specified order
|
|
||||||
for i in $source; do
|
|
||||||
case $i in
|
|
||||||
*.patch)
|
|
||||||
msg "Applying $i..."
|
|
||||||
if ! patch -s -p1 -N -i "$srcdir"/$i; then
|
|
||||||
echo $i >>failed
|
|
||||||
_patch_failed=1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if ! [ -z "$_patch_failed" ]; then
|
|
||||||
error "The following patches failed:"
|
|
||||||
cat failed
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 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
|
|
||||||
|
|
||||||
mkdir -p "$srcdir"/build
|
|
||||||
cp -v "$srcdir"/$_config "$srcdir"/build/.config
|
|
||||||
make -C "$ksrcdir" O="$srcdir"/build ARCH="$_carch" \
|
|
||||||
olddefconfig
|
|
||||||
}
|
|
||||||
|
|
||||||
build() {
|
|
||||||
cd "$srcdir"/build
|
|
||||||
unset LDFLAGS
|
|
||||||
make ARCH="$_carch" CC="${CC:-gcc}" \
|
|
||||||
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS" \
|
|
||||||
CFLAGS_MODULE=-fno-pic
|
|
||||||
}
|
|
||||||
|
|
||||||
package() {
|
|
||||||
cd "$srcdir/build/arch/$_carch/boot"
|
|
||||||
|
|
||||||
if [ "$CARCH" == "aarch64" ]; then
|
|
||||||
install -Dm644 "$srcdir/build/arch/$_carch/boot/Image" \
|
|
||||||
"$pkgdir/boot/vmlinuz"
|
|
||||||
else
|
|
||||||
install -Dm644 "$srcdir/build/arch/$_carch/boot/"*zImage \
|
|
||||||
"$pkgdir/boot/vmlinuz"
|
|
||||||
fi
|
|
||||||
|
|
||||||
install -D "$srcdir/build/include/config/kernel.release" \
|
|
||||||
"$pkgdir/usr/share/kernel/$_flavor/kernel.release"
|
|
||||||
|
|
||||||
cd "$srcdir"/build
|
|
||||||
|
|
||||||
local _install
|
|
||||||
case "$CARCH" in
|
|
||||||
aarch64*|arm*) _install="modules_install dtbs_install" ;;
|
|
||||||
*) _install="modules_install" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
make -j1 $_install \
|
|
||||||
ARCH="$_carch" \
|
|
||||||
INSTALL_MOD_PATH="$pkgdir" \
|
|
||||||
INSTALL_DTBS_PATH="$pkgdir/usr/share/dtb"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
dev() {
|
|
||||||
# copy the only the parts that we really need for build 3rd party
|
|
||||||
# kernel modules and install those as /usr/src/linux-headers,
|
|
||||||
# similar to what ubuntu does
|
|
||||||
#
|
|
||||||
# this way you don't need to install the 300-400 kernel sources to
|
|
||||||
# build a tiny kernel module
|
|
||||||
#
|
|
||||||
pkgdesc="Headers and script for third party modules for postmarketos kernel"
|
|
||||||
depends="gmp-dev bash perl"
|
|
||||||
local dir="$subpkgdir"/usr/src/linux-headers-$_abi_release
|
|
||||||
|
|
||||||
# first we import config, run prepare to set up for building
|
|
||||||
# external modules, and create the scripts
|
|
||||||
mkdir -p "$dir"
|
|
||||||
cp "$srcdir"/$_config "$dir"/.config
|
|
||||||
make -j1 -C "$srcdir"/linux-$_kernver O="$dir" ARCH="$_carch" \
|
|
||||||
olddefconfig prepare modules_prepare scripts
|
|
||||||
|
|
||||||
# needed for 3rd party modules
|
|
||||||
# https://bugzilla.kernel.org/show_bug.cgi?id=11143
|
|
||||||
case "$CARCH" in
|
|
||||||
ppc*) (cd "$dir" && make arch/powerpc/lib/crtsavres.o);;
|
|
||||||
esac
|
|
||||||
|
|
||||||
# remove the stuff that points to real sources. we want 3rd party
|
|
||||||
# modules to believe this is the sources
|
|
||||||
rm "$dir"/Makefile "$dir"/source
|
|
||||||
|
|
||||||
# copy the needed stuff from real sources
|
|
||||||
#
|
|
||||||
# this is taken from ubuntu kernel build script
|
|
||||||
# http://kernel.ubuntu.com/git/ubuntu/ubuntu-zesty.git/tree/debian/rules.d/3-binary-indep.mk
|
|
||||||
|
|
||||||
cd "$srcdir"/linux-$_kernver
|
|
||||||
find . -path './include/*' -prune \
|
|
||||||
-o -path './scripts/*' -prune -o -type f \
|
|
||||||
\( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \
|
|
||||||
-name '*.sh' -o -name '*.pl' -o -name '*.lds' \) \
|
|
||||||
-print | cpio -pdm "$dir"
|
|
||||||
cp -a scripts include "$dir"
|
|
||||||
find $(find arch -name include -type d -print) -type f \
|
|
||||||
| cpio -pdm "$dir"
|
|
||||||
|
|
||||||
install -Dm644 "$srcdir"/build/Module.symvers \
|
|
||||||
"$dir"/Module.symvers
|
|
||||||
|
|
||||||
mkdir -p "$subpkgdir"/lib/modules/$_abi_release
|
|
||||||
ln -sf /usr/src/linux-headers-$_abi_release \
|
|
||||||
"$subpkgdir"/lib/modules/$_abi_release/build
|
|
||||||
}
|
|
||||||
|
|
||||||
sha512sums="77e43a02d766c3d73b7e25c4aafb2e931d6b16e870510c22cef0cdb05c3acb7952b8908ebad12b10ef982c6efbe286364b1544586e715cf38390e483927904d8 linux-4.14.tar.xz
|
|
||||||
393ea8e7ad25063c1a610d3245e50ae32e9780788259bc56876cb1960ee0bd73f0e3ac4be5eb91ca109571c6a1a3ce6bb93a2fa5b0aaa50f3256cbeb01b3cac6 config-teclast-x80pro.x86_64
|
|
||||||
b081e9bfb3eb3f024486de2952d4b0dc6c81facb31ddf4456b386fb5c043a3a11cefe1636dece5cf0ea655746ed35a79c8318cabba8661e39c580e6faed97ba7 net-phy-micrel-Use-strlcpy-for-ethtool-get_strings.patch
|
|
||||||
2df069bdb782fffe57988da34ac51607d59ce728e9bfbf7a26e9845729ef0888a18f528103318693c602b251e103bd224c3aef8d703599ede81144dcb2599bca x86-boot-compressed-Don-t-declare-__force_order-in-k.patch
|
|
||||||
d509365295b6bb5ad55d8859a6cc7cae00ef7b7b34aef21167fcfc992accbf9ac1f4191446c911b55844b09ff0c7f83fd422aea71c2877521331b7b0e05a9205 patch-4.14.73.xz"
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,39 +0,0 @@
|
||||||
From 1f7d62fdd8dd974808c4c4c5dcc35b908d92cb3b Mon Sep 17 00:00:00 2001
|
|
||||||
From: Florian Fainelli <f.fainelli@gmail.com>
|
|
||||||
Date: Fri, 2 Mar 2018 15:08:38 -0800
|
|
||||||
Subject: [PATCH] net: phy: micrel: Use strlcpy() for ethtool::get_strings
|
|
||||||
|
|
||||||
commit 55f53567afe5f0cd2fd9e006b174c08c31c466f8 upstream.
|
|
||||||
|
|
||||||
Our statistics strings are allocated at initialization without being
|
|
||||||
bound to a specific size, yet, we would copy ETH_GSTRING_LEN bytes using
|
|
||||||
memcpy() which would create out of bounds accesses, this was flagged by
|
|
||||||
KASAN. Replace this with strlcpy() to make sure we are bound the source
|
|
||||||
buffer size and we also always NUL-terminate strings.
|
|
||||||
|
|
||||||
Fixes: 2b2427d06426 ("phy: micrel: Add ethtool statistics counters")
|
|
||||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
|
||||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
|
||||||
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
||||||
---
|
|
||||||
drivers/net/phy/micrel.c | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/drivers/net/phy/micrel.c b/drivers/net/phy/micrel.c
|
|
||||||
index 5be7fc354e33..ef5e5b621ec5 100644
|
|
||||||
--- a/drivers/net/phy/micrel.c
|
|
||||||
+++ b/drivers/net/phy/micrel.c
|
|
||||||
@@ -674,8 +674,8 @@ static void kszphy_get_strings(struct phy_device *phydev, u8 *data)
|
|
||||||
int i;
|
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(kszphy_hw_stats); i++) {
|
|
||||||
- memcpy(data + i * ETH_GSTRING_LEN,
|
|
||||||
- kszphy_hw_stats[i].string, ETH_GSTRING_LEN);
|
|
||||||
+ strlcpy(data + i * ETH_GSTRING_LEN,
|
|
||||||
+ kszphy_hw_stats[i].string, ETH_GSTRING_LEN);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
--
|
|
||||||
2.29.2
|
|
||||||
|
|
|
@ -1,43 +0,0 @@
|
||||||
From a8dc79753d727b4dbb11bb1190f90f4863046f32 Mon Sep 17 00:00:00 2001
|
|
||||||
From: "H.J. Lu" <hjl.tools@gmail.com>
|
|
||||||
Date: Thu, 16 Jan 2020 12:46:51 -0800
|
|
||||||
Subject: [PATCH] x86/boot/compressed: Don't declare __force_order in
|
|
||||||
kaslr_64.c
|
|
||||||
|
|
||||||
[ Upstream commit df6d4f9db79c1a5d6f48b59db35ccd1e9ff9adfc ]
|
|
||||||
|
|
||||||
GCC 10 changed the default to -fno-common, which leads to
|
|
||||||
|
|
||||||
LD arch/x86/boot/compressed/vmlinux
|
|
||||||
ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; \
|
|
||||||
arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
|
|
||||||
make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1
|
|
||||||
|
|
||||||
Since __force_order is already provided in pgtable_64.c, there is no
|
|
||||||
need to declare __force_order in kaslr_64.c.
|
|
||||||
|
|
||||||
Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
|
|
||||||
Signed-off-by: Borislav Petkov <bp@suse.de>
|
|
||||||
Link: https://lkml.kernel.org/r/20200124181811.4780-1-hjl.tools@gmail.com
|
|
||||||
Signed-off-by: Sasha Levin <sashal@kernel.org>
|
|
||||||
---
|
|
||||||
arch/x86/boot/compressed/pagetable.c | 3 ---
|
|
||||||
1 file changed, 3 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/arch/x86/boot/compressed/pagetable.c b/arch/x86/boot/compressed/pagetable.c
|
|
||||||
index e691ff734cb5..46573842d8c3 100644
|
|
||||||
--- a/arch/x86/boot/compressed/pagetable.c
|
|
||||||
+++ b/arch/x86/boot/compressed/pagetable.c
|
|
||||||
@@ -36,9 +36,6 @@
|
|
||||||
#define __PAGE_OFFSET __PAGE_OFFSET_BASE
|
|
||||||
#include "../../mm/ident_map.c"
|
|
||||||
|
|
||||||
-/* Used by pgtable.h asm code to force instruction serialization. */
|
|
||||||
-unsigned long __force_order;
|
|
||||||
-
|
|
||||||
/* Used to track our page table allocation area. */
|
|
||||||
struct alloc_pgt_data {
|
|
||||||
unsigned char *pgt_buf;
|
|
||||||
--
|
|
||||||
2.29.2
|
|
||||||
|
|
Loading…
Reference in a new issue