sony-castor: armv7, rename, mainline, cleanup (MR 1199)

This commit is contained in:
Dolphin von Chips 2020-02-06 18:44:23 +05:00 committed by Luca Weiss
parent 6cf28e4329
commit 620b695e5c
No known key found for this signature in database
GPG key ID: 72D843B89D4DD756
10 changed files with 36 additions and 4312 deletions

View file

@ -1,8 +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}=="clearpad", \
ENV{ID_INPUT}="1", ENV{ID_INPUT_TOUCHSCREEN}="1" \
ENV{WL_CALIBRATION}="0.982113 -0.006129 1.983124 -0.002560 1.000800 -6.012451"

View file

@ -1,36 +0,0 @@
# Reference: <https://postmarketos.org/devicepkg>
pkgname=device-sony-castor-windy
pkgver=1
pkgrel=24
pkgdesc="Sony Xperia Z2 Tablet WIFI"
url="https://postmarketos.org"
arch="armhf"
license="MIT"
depends="postmarketos-base mkbootimg linux-sony-castor-windy mesa-dri-freedreno"
makedepends="devicepkg-dev"
subpackages="$pkgname-nonfree-firmware:nonfree_firmware"
source="modules-load.conf deviceinfo 90-android-touch-dev.rules brcmfmac4335-sdio.txt"
options="!check !archcheck"
build() {
devicepkg_build $startdir $pkgname
}
package() {
devicepkg_package $startdir $pkgname
install -D -m644 "$srcdir"/brcmfmac4335-sdio.txt \
"$pkgdir"/lib/firmware/brcm/brcmfmac4335-sdio.txt
install -D -m644 "$srcdir"/90-android-touch-dev.rules \
"$pkgdir"/etc/udev/rules.d/90-android-touch-dev.rules
}
nonfree_firmware() {
pkgdesc="Wifi, GPU firmware"
depends="linux-firmware firmware-adreno"
mkdir "$subpkgdir"
}
sha512sums="d8ce60ea7acaabf627ddca2f0887a4cda46f313b7aaf7934bef2fef8a6e0798ccefab849e4571e4e3fcd06ae34c1a6efe3b58b401e2e443416f6200e6d4ea769 modules-load.conf
8a56e4fe7740287fc82641b39f340a42fb97d363952b642e16ffc45e513cd0f81844577d8176c34dc3dba77be0dc9e8cd58a881f5585360d8f9a4ccf0a81ff03 deviceinfo
fa0d8b7a17509f5882424e67e66f5f562705a076a12e8d9dd9363215c858d7801216520cf25373110671958b1e1589080b097170c760d18e621849b0b9090e05 90-android-touch-dev.rules
b99a1bc0d430a261b6ab0b5ea12f2e996ab24ece6fe40ff57357697f4db976394c655a7c7a63e7c985f6356126a6b1d920eb0077817cb65ae18250f404282a68 brcmfmac4335-sdio.txt"

View file

@ -1,119 +0,0 @@
ppr_flags=1
NVRAMRev=$Rev: 410316 $
sromrev=11
boardrev=0x1203
boardtype=0x06c5
boardflags=0x00000c01
boardflags2=0x00002000
boardflags3=0x8101188
macaddr=00:90:4c:c5:12:38
ccode=XT
regrev=212
antswitch=0
pdgain2g=7
pdgain5g=7
tworangetssi2g=0
tworangetssi5g=0
femctrl=7
pcieingress_war=15
vendid=0x14e4
devid=0x43ae
manfid=0x2d0
nocrc=1
otpimagesize=502
xtalfreq=37400
extpagain2g=2
pdetrange2g=2
extpagain5g=2
pdetrange5g=2
rxgains2gelnagaina0=0
rxgains2gtrisoa0=7
rxgains2gtrelnabypa0=0
rxgains5gelnagaina0=0
rxgains5gtrisoa0=11
rxgains5gtrelnabypa0=0
rxchain=1
txchain=1
aa2g=1
aa5g=1
tssipos5g=0
tssipos2g=0
pa2ga0=0xff7e,0x1980,0xfd1d
pa2gccka0=0xff90,0x1d52,0xfcab
pa5ga0=0xff40,0x15b9,0xfd55,0xff45,0x161c,0xfd4c,0xff73,0x17c1,0xfd4b,0xff70,0x175e,0xfd4d
pa5gbw40a0=0xff55,0x179b,0xfd2f,0xff56,0x17b8,0xfd2b,0xff61,0x17fc,0xfd2f,0xff5b,0x178f,0xfd31
pa5gbw80a0=0xff3f,0x15e4,0xfd50,0xff54,0x1736,0xfd39,0xff60,0x177a,0xfd3d,0xff63,0x174b,0xfd42
pdoffset40ma0=0
pdoffset80ma0=0
pdoffsetcckma0=0
maxp2ga0=78
maxp5ga0=68,68,68,68
cckbw202gpo=0x4444
cckbw20ul2gpo=0x0
mcsbw202gpo=0xbbbbbbbb
mcsbw402gpo=0x00000000
dot11agofdmhrbw202gpo=0x9999
ofdmlrbw202gpo=0x0099
tssifloor2g=400
mcsbw205glpo=0x33333333
mcsbw405glpo=0x44444444
mcsbw805glpo=0xcccccccc
mcsbw1605glpo=0x00000000
mcsbw205gmpo=0x33333333
mcsbw405gmpo=0x44444444
mcsbw805gmpo=0xcccccccc
mcsbw1605gmpo=0x00000000
mcsbw205ghpo=0x33333333
mcsbw405ghpo=0x44444444
mcsbw805ghpo=0xcccccccc
mcsbw1605ghpo=0x00000000
mcslr5glpo=0x0000
mcslr5gmpo=0x0000
mcslr5ghpo=0x0000
sb20in40hrrpo=0x0
sb20in80and160hr5glpo=0x0
sb40and80hr5glpo=0x0
sb20in80and160hr5gmpo=0x0
sb40and80hr5gmpo=0x0
sb20in80and160hr5ghpo=0x0
sb40and80hr5ghpo=0x0
sb20in40lrpo=0x0
sb20in80and160lr5glpo=0x0
sb40and80lr5glpo=0x0
sb20in80and160lr5gmpo=0x0
sb40and80lr5gmpo=0x0
sb20in80and160lr5ghpo=0x0
sb40and80lr5ghpo=0x0
dot11agduphrpo=0x0
dot11agduplrpo=0x0
phycal_tempdelta=25
cckdigfilttype=2
swctrlmap_5g=0x00000008,0x00000010,0x00000008,0x000000,0x038
swctrlmap_2g=0x00000001,0x00000002,0x00000001,0x040002,0x0ff
swctrlmapext_5g=0x00000000,0x00000000,0x00000000,0x000000,0x000
swctrlmapext_2g=0x00000000,0x00000000,0x00000000,0x000000,0x000
rssi_delta_2g_c0=7,11,0,0
rssi_delta_5gl_c0=3,5,4,5,4,5
rssi_delta_5gml_c0=3,4,3,5,4,5
rssi_delta_5gmu_c0=3,2,3,3,4,3
rssi_delta_5gh_c0=3,0,3,0,4,1
rssicorrnorm_c0=-5,-5
rssicorrnorm5g_c0=-4,-4,-4,-4,-4,-4,-5,-5,-5,-5,-5,-5
agbg0=0x01
aga0=0x82
muxenab=0x10
r12t=0x00420002
#Band_Edge_Offset_param
rpcal2g=0x0000
rpcal5gb0=0x0000
rpcal5gb1=0x0000
rpcal5gb2=0x0000
powoffs5g20mtna0=0,0,0,0,0,0,0
powoffs5g40mtna0=0,0,0,0,0
powoffs5g80mtna0=0,0,0,0,0
#Factory_Cal_Offset_param
powoffs2gtna0=0,0,0,0,0,0,0,0,0,0,0,0,0,0
sbpowoffs5g20mtna0=0,0,0,0
sbpowoffs5g40mtna0=0,0,0,0
sbpowoffs5g80mtna0=0,0,0,0

View file

@ -0,0 +1,30 @@
# Reference: <https://postmarketos.org/devicepkg>
pkgname=device-sony-castor
pkgver=2
pkgrel=0
pkgdesc="Sony Xperia Z2 Tablet"
url="https://postmarketos.org"
arch="armv7"
license="MIT"
depends="postmarketos-base mkbootimg linux-postmarketos-qcom-msm8974 mesa-dri-freedreno"
makedepends="devicepkg-dev"
subpackages="$pkgname-nonfree-firmware:nonfree_firmware"
source="deviceinfo modules-load.conf"
options="!check !archcheck"
build() {
devicepkg_build $startdir $pkgname
}
package() {
devicepkg_package $startdir $pkgname
}
nonfree_firmware() {
pkgdesc="Wifi, GPU firmware"
depends="linux-firmware-brcm firmware-adreno firmware-sony-castor"
mkdir "$subpkgdir"
}
sha512sums="63fc02c92ebe74afc5d468b41afb64c636ccbadf68f99eec645ccc9a01924bb7eb45b76c0347dd0568893530a02ad8149708380246b3f8d3212e247a72aa1d14 deviceinfo
d8ce60ea7acaabf627ddca2f0887a4cda46f313b7aaf7934bef2fef8a6e0798ccefab849e4571e4e3fcd06ae34c1a6efe3b58b401e2e443416f6200e6d4ea769 modules-load.conf"

View file

@ -2,18 +2,18 @@
# Please use double quotes only. You can source this file in shell scripts.
deviceinfo_format_version="0"
deviceinfo_name="Sony Xperia Z2 Tablet WIFI"
deviceinfo_name="Sony Xperia Z2 Tablet"
deviceinfo_manufacturer="Sony"
deviceinfo_codename="sony-castor-windy"
deviceinfo_codename="sony-castor"
deviceinfo_year="2014"
deviceinfo_chassis="tablet"
deviceinfo_keyboard="false"
deviceinfo_dtb=""
deviceinfo_modules_initfs="rmi_core rmi_i2c rmi_spi"
deviceinfo_dtb="qcom-msm8974-sony-xperia-castor"
deviceinfo_append_dtb="true"
deviceinfo_modules_initfs="pm8941_pwrkey qnoc_msm8974 rmi_i2c"
deviceinfo_external_storage="true"
deviceinfo_flash_method="fastboot"
deviceinfo_arch="armhf"
deviceinfo_dev_touchscreen="/dev/input/event2"
deviceinfo_arch="armv7"
# Fastboot related
deviceinfo_generate_bootimg="true"

View file

@ -1,113 +0,0 @@
# APKBUILD based on linux-vanilla aport. Changes:
# - add !check !tracedeps
# - package: just install zImage-dtb and kernel.release, because the kernel config
# does not generate modules or dtb files
# - do not create -dev subpackage (makes no sense without module support)
#
# Kernel config changes, based on: arch/arm/configs/aosp_rhine_amami_defconfig
# - enable devtmpfs (needed for udev -> touch support in weston)
# - change compression from CONFIG_KERNEL_LZMA=y to
# CONFIG_KERNEL_GZIP=y (so it works with busybox)
# - disable proprietary graphics driver
_flavor=sony-castor-windy
_branch=next
_config="config-$_flavor.armhf"
pkgname=linux-$_flavor
pkgver=4.3
case $pkgver in
*.*.*) _kernver=${pkgver%.*};;
*.*) _kernver=$pkgver;;
esac
pkgrel=8
arch="armhf"
pkgdesc="Sony Xperia Z2 Tablet kernel"
url="https://github.com/andersson"
makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev gcc6"
options="!strip !check !tracedeps pmb:cross-native"
source="
$pkgname-$_branch.tar.gz::https://github.com/andersson/kernel/archive/$_branch.tar.gz
$_config
mmc-wifi-fix.patch
compiler-gcc6.h
"
license="GPL2"
_abi_release=$pkgver
_carch="arm"
# 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
ksrcdir="$srcdir/kernel-$_branch"
prepare() {
local _patch_failed=
cd "$ksrcdir"
# 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
# gcc6 support
cp -v "$srcdir/compiler-gcc6.h" "$ksrcdir/include/linux/"
mkdir -p "$srcdir"/build
cp "$srcdir"/$_config "$srcdir"/build/.config
make -C "$ksrcdir" O="$srcdir"/build ARCH="$_carch" HOSTCC="$HOSTCC" \
silentoldconfig
}
build() {
cd "$srcdir"/build
unset LDFLAGS
make ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine" \
CFLAGS_MODULE=-fno-pic
}
package() {
cat "$srcdir/build/arch/arm/boot/zImage" \
"$srcdir/build/arch/arm/boot/dts/qcom-msm8974-sony-xperia-castor.dtb" > \
"$srcdir/build/arch/arm/boot/zImage-dtb"
install -Dm644 "$srcdir/build/arch/arm/boot/zImage-dtb" \
"$pkgdir/boot/vmlinuz-$_flavor"
install -D "$srcdir/build/include/config/kernel.release" \
"$pkgdir/usr/share/kernel/$_flavor/kernel.release"
cd "$srcdir/build"
make -j1 modules_install \
ARCH="$_carch" \
INSTALL_MOD_STRIP=1 \
INSTALL_MOD_PATH="$pkgdir"
}
sha512sums="42e3d7ea75a2e69a7589e74409fe43f2abdee0f4cc1fcea1b138622e3845524145e4c41343abc57d71236b1e2f59715f719845fcf5e628a6c343e9b10d06942a linux-sony-castor-windy-next.tar.gz
58321e616faf8c5ded48cb6e0c6bf6b00ccf47881576c8de9dadc8a369818dbbb6748cdd5421c60e74df04764bff83e83530f1cdbc7c95bd0ade33b272d44220 config-sony-castor-windy.armhf
a13b17a151f732c2842df963019079cab07118fcdcdb2f2dfdfbd18571c7e2bd95a94734dc3a4eef1dae970e698f46047973efba6f355b26bf553fa6c2ac895d mmc-wifi-fix.patch
d80980e9474c82ba0ef1a6903b434d8bd1b092c40367ba543e72d2c119301c8b2d05265740e4104ca1ac5d15f6c4aa49e8776cb44264a9a28dc551e0d1850dcc compiler-gcc6.h"

View file

@ -1,69 +0,0 @@
// 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 */

View file

@ -1,50 +0,0 @@
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
index fb266745f824..e56987522182 100644
--- a/drivers/mmc/host/mmci.c
+++ b/drivers/mmc/host/mmci.c
@@ -103,6 +103,7 @@ struct variant_data {
bool explicit_mclk_control;
bool qcom_fifo;
bool qcom_dml;
+ bool any_blksize;
bool reversed_irq_handling;
};
@@ -200,6 +201,7 @@ static struct variant_data variant_ux500v2 = {
.pwrreg_clkgate = true,
.busy_detect = true,
.pwrreg_nopower = true,
+ .any_blksize = true,
};
static struct variant_data variant_qcom = {
@@ -218,6 +220,7 @@ static struct variant_data variant_qcom = {
.explicit_mclk_control = true,
.qcom_fifo = true,
.qcom_dml = true,
+ .any_blksize = true,
};
static int mmci_card_busy(struct mmc_host *mmc)
@@ -245,10 +248,11 @@ static int mmci_card_busy(struct mmc_host *mmc)
static int mmci_validate_data(struct mmci_host *host,
struct mmc_data *data)
{
+ struct variant_data *variant = host->variant;
+
if (!data)
return 0;
-
- if (!is_power_of_2(data->blksz)) {
+ if (!is_power_of_2(data->blksz) && !variant->any_blksize) {
dev_err(mmc_dev(host->mmc),
"unsupported block size (%d bytes)\n", data->blksz);
return -EINVAL;
@@ -804,7 +808,6 @@ static void mmci_start_data(struct mmci_host *host, struct mmc_data *data)
writel(host->size, base + MMCIDATALENGTH);
blksz_bits = ffs(data->blksz) - 1;
- BUG_ON(1 << blksz_bits != data->blksz);
if (variant->blksz_datactrl16)
datactrl = MCI_DPSM_ENABLE | (data->blksz << 16);