Skip to content
Snippets Groups Projects
Commit a26780de authored by Stefan's avatar Stefan Committed by st s
Browse files

samsung-zeroltexx: new device Samsung Galaxy S6 edge (G925F)

Port based on an unofficial LineageOS port
from https://www.los-legacy.de/17.1/zerofltexx, using kernel from https://github.com/Exynos7420/android_kernel_samsung_exynos7420/

What works:
- Kernel boots
- Display and touch input (tested with Weston)
- USB networking
- Wifi
parent 1056a890
No related branches found
No related tags found
No related merge requests found
Showing
with 4903 additions and 0 deletions
# Reference: <https://postmarketos.org/devicepkg>
pkgname=device-samsung-zeroltexx
pkgdesc="Samsung Galaxy S6 edge"
pkgver=0.1
pkgrel=1
url="https://postmarketos.org"
license="MIT"
arch="aarch64"
options="!check !archcheck"
depends="postmarketos-base linux-samsung-zeroltexx mkbootimg mesa-dri-gallium msm-fb-refresher"
makedepends="devicepkg-dev"
source="deviceinfo
udev/60-persistent-v4l.rules
"
subpackages="$pkgname-nonfree-firmware:nonfree_firmware"
install="$pkgname.post-install"
build() {
devicepkg_build $startdir $pkgname
}
package() {
devicepkg_package $startdir $pkgname
install -Dm644 "$srcdir"/60-persistent-v4l.rules \
"$pkgdir"/etc/udev/rules.d/60-persistent-v4l.rules
}
nonfree_firmware() {
pkgdesc="Non-free firmware for the Samsung Galaxy S6 edge"
depends="firmware-samsung-zeroltexx"
mkdir "$subpkgdir"
}
sha512sums="b5721c282caab7fe02795a0fa10eddbec01cd487bf1a494335e72a5dc4fb0e6f04b409016d5c2a0b1cbeb003c19c05aa6f25a6fe2d26d025b52f024994d10bfe deviceinfo
b8bf2e3ec166af6acbbfaaa2b57b053473c0b12df007090eecf7a885aee2e3cd5d982819e2ee73e2817e5266b9875dc9240389bca409d5523f3cfa8037fa7870 60-persistent-v4l.rules"
#!/bin/sh
# enable deferred-initcalls script by default (from postmarketos-base package)
rc-update add deferred-initcalls default
# Reference: <https://postmarketos.org/deviceinfo>
# Please use double quotes only. You can source this file in shell
# scripts.
deviceinfo_format_version="0"
deviceinfo_name="Samsung Galaxy S6 edge"
deviceinfo_manufacturer="Samsung"
deviceinfo_codename="samsung-zeroltexx"
deviceinfo_year="2015"
deviceinfo_dtb=""
deviceinfo_modules_initfs=""
deviceinfo_arch="aarch64"
# Device related
deviceinfo_chassis="handset"
deviceinfo_keyboard="false"
deviceinfo_external_storage="false"
deviceinfo_screen_width="1440"
deviceinfo_screen_height="2560"
# Bootloader related
deviceinfo_flash_method="heimdall-bootimg"
deviceinfo_kernel_cmdline=""
deviceinfo_generate_bootimg="true"
deviceinfo_bootimg_qcdt="true"
deviceinfo_bootimg_mtk_mkimage="false"
deviceinfo_bootimg_dtb_second="false"
deviceinfo_flash_offset_base="0x10000000"
deviceinfo_flash_offset_kernel="0x00008000"
deviceinfo_flash_offset_ramdisk="0x01000000"
deviceinfo_flash_offset_second="0x00f00000"
deviceinfo_flash_offset_tags="0x00000100"
deviceinfo_flash_pagesize="2048"
deviceinfo_flash_heimdall_partition_kernel=""
deviceinfo_flash_heimdall_partition_system=""
# This file is intentionally empty, to disable the default rule with the same name.
# You can find the default rule in /lib/udev/rules.d/60-persistent-v4l.rules.
#
# See https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1160 for why this is needed.
pkgname=firmware-samsung-zeroltexx
pkgver=1
pkgrel=1
pkgdesc="Firmware for the Samsung Galaxy S6 edge"
url="https://github.com/Exynos7420/proprietary_vendor_samsung_zero-common"
arch="noarch"
license="proprietary"
options="!check !archcheck !strip !spdx"
# Source
_commit="9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95"
_vendor_files="
seiren_fw_dram.bin
seiren_fw_sram.bin
fimc_is_fw2.bin
fimc_is_fw2_2p2.bin
fimc_is_fw2_imx240.bin
mfc_fw.bin
setfile_2p2.bin
setfile_4e6.bin
setfile_6b2.bin
setfile_imx240.bin
companion_2p2_master_setfile.bin
companion_2p2_mode_setfile.bin
companion_fw_2p2_evt1.bin
companion_fw_imx240_evt1.bin
companion_imx240_master_setfile.bin
companion_imx240_mode_setfile.bin
ois_fw_dom.bin
ois_fw_sec.bin
"
for _file in $_vendor_files; do
source="$source $pkgname-$_commit-$_file::$url/raw/nx-10.0/proprietary/system/vendor/firmware/$_file"
done
_vendor_files_wifi="
bcmdhd_sta.bin
nvram_net.txt
"
for _file in $_vendor_files_wifi; do
source="$source $pkgname-$_commit-$_file::$url/raw/nx-10.0/proprietary/system/vendor/etc/wifi/$_file"
done
package() {
local file
for file in $_vendor_files; do
install -Dm644 "$srcdir/$pkgname-$_commit-$file" \
"$pkgdir/lib/firmware/postmarketos/$file"
done
for file in $_vendor_files_wifi; do
install -Dm644 "$srcdir/$pkgname-$_commit-$file" \
"$pkgdir/lib/firmware/postmarketos/$file"
done
}
sha512sums="eb727801466c172dcb818a56bbab053165439d2b89719207882d5c4e68ac9dd86048d0af1daaf5fa971f7657ae2bf8411099711d492dceb7c992bcf21a991bcf firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-seiren_fw_dram.bin
f5646266e88be82da0c761b7a0e31293954509c818ea43743105c1da5f24b5e929af96ba8b6c8811d1a2b24c5ec8bb703ddb5afe1503399ce8d42a3d6e77cc59 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-seiren_fw_sram.bin
aed74682dca236fd1033b5c958ad0024bb47d0f697bb3191de5148ed56c06ee65cf178f04aee1f46dab6f867c2309ba745090dae67aa85605f72bba932700aee firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-fimc_is_fw2.bin
0fea4ff08d79df5824605ad562025a79221d295ad2ab93edf7f81c488aad4bb3ad2674ca640eb4e68a051c7c1b74fa591d62329f6580bf0941727a9272cba6fd firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-fimc_is_fw2_2p2.bin
98e1d317c19c1580842d8012a09052cb3adbcd2624711d531b9648237fdd3b8c37f9ef4abc2dde0a2f74ff90fe83aca60a47863ec2618812bae2f5bab1900586 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-fimc_is_fw2_imx240.bin
61ca56de5af0dcde8c91dd91914b55e76db2ac380c1a8481176ebf61144c28e9769670beeda0b3326140a9a8dfe88064bddb09d926208d4e312c08f18b77d541 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-mfc_fw.bin
5b9a64a4357164ccd19ecbf30fb2de14091446896549913918644d9c7e95b7abdc8aef9e22212b92ddf8fd86a8fb5d7233c1e14aba3fd96d2e379b03f03c779e firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-setfile_2p2.bin
357149745ec2fc322443b0e5e294ca1460ffa3cd88f8e0304fd9abd2ce2d238d25696ab3e79d001d2fc2f719e744b0c0f48b765cb1780038af1a38c4c26d18e4 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-setfile_4e6.bin
9783894f3f54938cb14318472ca13b3d139f0c3924290645da5a13b213b488a0e7cbe65fbfe9209813a7a27908a6f2cd45f259fe36d61e7b5734aa4a3c9cdbce firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-setfile_6b2.bin
ba5ba3cbe2658077c4fe607a1fef3954c3af9b72157919d8d189309378e87a8f743565ec57b71d063072f3c61dea67f20a47410483a1fe7bb2d35c5d632a6e06 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-setfile_imx240.bin
a23c2c0dbc980ae34e9ab26fd217b30a7e482230d14d84b0ca69c810922683aa9bf267960ba4fe626195c71a1b0ccb96ec07244383355c816f986198cb86a2d8 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-companion_2p2_master_setfile.bin
f23d1373342a94be774edbf293243afd721cda528cf6fcee52659b4ff2d840850feb32b2dc27ad06c8c84b1056558d1820f1bf6e33249cf73e38509f30a040a6 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-companion_2p2_mode_setfile.bin
5c38241f9fba1050c8b97c3a4938a5ead0ec7e9151971710b6185d487c511bd7ca3adb92c7bab0a49b56ce0856cc940299e4dd5bd7c8f49273719ad41b269e8a firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-companion_fw_2p2_evt1.bin
ca1faf92e44a43ecb7b72c5063bf076fa94809b81bf0fbdaf94b3e8d88e14f449e07618a827b81d64da7b8c3aef70da56ad9eb2bee27e63f0016eb54566556ea firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-companion_fw_imx240_evt1.bin
b1b52edc851e33ad20f3da6bcef6c80ce8e730b7f4a75de5b8a70fdd4818dd5671d073c8266a86cc3112fcad57b41ff68953452e499e402d96174cc77e220ec7 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-companion_imx240_master_setfile.bin
62db855f5c8f3c1fa561d1816c02658fd10f0f92844eb800cc169ef8d4d841c3b665ab41228ffda0425075b81d1390a1abe8399427dea43ee27f38b1022ea301 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-companion_imx240_mode_setfile.bin
e0490fbb804637b75c375e3b7746ebec8dac5f7a4c324ab05f99bf6dc734323034861d8db36b0a69f5118c20156bed2dd9d1d458a71a9d53e085ad745d1fd4ff firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-ois_fw_dom.bin
db84ab9f4115ae7a04b35f6f9fd67b8d7b57017ca12bbb427f3021496c7b4e419eb971cd1a09bd100decccda515dac8de920b273353a28cc5e859f918ac6cca2 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-ois_fw_sec.bin
3b7f4bcc544762bb632cb4f47c73550f78d7d06e82503eae761a063b2f8871f177f03f9ee54b79297a798fd9c41868d99b985b38de23396a470dbf4e76bfb266 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-bcmdhd_sta.bin
8db9cb1c2ff6e659b8a3689758ae564785b840062864a71286176cf9f51a0e0a85bf081a9c3dfdcd1990bfb3dbf824a51c857ed459ff3fcbeb1e756cdd6add46 firmware-samsung-zeroltexx-9ff5ecfd76e05e7b8fd2210675af51f3acf2eb95-nvram_net.txt"
--- a/drivers/net/wireless/bcmdhd4358/dhd.h
+++ b/drivers/net/wireless/bcmdhd4358/dhd.h
@@ -1468,13 +1468,7 @@
extern int dhdpcie_set_suspend_resume(struct pci_dev *dev, bool state);
#endif /* DHD_USE_IDLECOUNT && BCMPCIE */
-#ifdef DHD_LEGACY_FILE_PATH
-#define PLATFORM_PATH "/data/"
-#elif defined(PLATFORM_SLP)
-#define PLATFORM_PATH "/opt/etc/"
-#else
-#define PLATFORM_PATH "/data/misc/conn/"
-#endif /* DHD_LEGACY_FILE_PATH */
+#define PLATFORM_PATH "/lib/firmware/postmarketos/"
/*
* Enable this macro if you want to track the calls to wake lock
--- a/drivers/net/wireless/bcmdhd4359/dhd.h
+++ b/drivers/net/wireless/bcmdhd4359/dhd.h
@@ -1830,14 +1830,8 @@
extern bool dhd_query_bus_erros(dhd_pub_t *dhdp);
-#ifdef DHD_LEGACY_FILE_PATH
-#define PLATFORM_PATH "/data/"
-#elif defined(PLATFORM_SLP)
-#define PLATFORM_PATH "/opt/etc/"
-#else
-#define PLATFORM_PATH "/data/misc/conn/"
-#endif /* DHD_LEGACY_FILE_PATH */
+#define PLATFORM_PATH "/lib/firmware/postmarketos/"
/*
* Enable this macro if you want to track the calls to wake lock
# Reference: <https://postmarketos.org/vendorkernel>
# Kernel config based on: arch/arm64/configs/lineageos_zerofltexx_defconfig
pkgname=linux-samsung-zeroltexx
pkgver=3.10.108
pkgrel=1
pkgdesc="Samsung Galaxy S6 edge kernel fork"
arch="aarch64"
_carch="arm64"
_flavor="samsung-zeroltexx"
url="https://github.com/Exynos7420/android_kernel_samsung_exynos7420"
license="GPL-2.0-only"
options="!strip !check !tracedeps pmb:cross-native"
makedepends="bash bc linux-headers installkernel devicepkg-dev dtbtool-exynos"
# Source
_repository="android_kernel_samsung_exynos7420"
_commit="31cf7c95814358c4cd76feacf2f29bebc057fefc"
_config="config-$_flavor.$arch"
source="
$pkgname-$_commit.tar.gz::https://github.com/Exynos7420/$_repository/archive/$_commit.tar.gz
$_config
02-fix-wifi-firmware-path.patch
Makefile_fix_paths.patch
gcc10-extern_YYLOC_global_declaration.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"
# Master DTB (deviceinfo_bootimg_qcdt)
dtbTool-exynos --pagesize 2048 \
--platform 0x50a6 \
--subtype 0x217584da \
-o "$_outdir/arch/$_carch/boot"/dt.img \
$(find "$_outdir/arch/$_carch/boot/dts/" -name *zerolte_eur_open_*.dtb)
}
package() {
KERNEL_IMAGE_NAME="Image" downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor" "$_outdir"
install -Dm644 "$_outdir/arch/$_carch/boot"/dt.img \
"$pkgdir"/boot/dt.img
}
sha512sums="1f8917dfaf01865cbc0385579cad1565dcb1ec4445bbeaf3e70d0bd8a6a572a457813c311f54360f54c79b373e621d280982f560cf01091d156c90efcc98067b linux-samsung-zeroltexx-31cf7c95814358c4cd76feacf2f29bebc057fefc.tar.gz
03ea06fb2cf3830fcd581fe0204e48e4b8193e90c66be91b7cd52731cf7280bfa359cca66e6667349fae470030ca0d5db0684fcf6d9438bafcf7b6509f264ca6 config-samsung-zeroltexx.aarch64
9afbb020311f0bf8043f021292d0f05041ff4e29003bf2114dfc31906869f44dbf15ff560170bc9e9baf62d7bb4ed73d58415212fecac6f1bdd6886783b0fcc1 02-fix-wifi-firmware-path.patch
00aac98cfbaa68bd30c41622b12f38106f6595e2d74ee5cdd05add56f03facb4db45deb43b5df997143b54497d621b9fc5bae7207898c70df0672ebb482c4b46 Makefile_fix_paths.patch
2b48f1bf0e3f70703d2cdafc47d5e615cc7c56c70bec56b2e3297d3fa4a7a1321d649a8679614553dde8fe52ff1051dae38d5990e3744c9ca986d92187dcdbeb gcc10-extern_YYLOC_global_declaration.patch"
diff --git a/Makefile b/Makefile
--- a/Makefile
+++ b/Makefile
@@ -197,11 +197,6 @@
CROSS_COMPILE ?= ../PLATFORM/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin/aarch64-linux-android-
#CROSS_COMPILE ?= /opt/toolchains/aarch64-linux-android-4.9/bin/aarch64-linux-android-
-ifeq ($(shell uname -s),Linux)
- ifeq ($(shell uname -m),x86_64)
- override CROSS_COMPILE := $(srctree)/../../../prebuilts/linaro/linux-x86/aarch64/bin/aarch64-linux-gnu-
- endif
-endif
# Architecture as present in compile.h
UTS_MACHINE := $(ARCH)
This diff is collapsed.
../../.shared-patches/linux/gcc10-extern_YYLOC_global_declaration.patch
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment