From e92c4bdfec79bdd117c55d58e0edce6d8f900aca Mon Sep 17 00:00:00 2001 From: Henrik Grimler Date: Sun, 16 Jan 2022 17:23:16 +0100 Subject: [PATCH] samsung-klimtlte: add mainline kernel variant (MR 2860) Use the new linux-postmarketos-exynos5 package. A dtb for klimtwifi is added as well, even though the device has not been ported yet. [ci:skip-build]: Already built successfully in MR CI. --- .../testing/device-samsung-klimtlte/APKBUILD | 32 +++-- .../device-samsung-klimtlte/deviceinfo | 5 + ...samsung-document-Klimt-WiFi-board-bi.patch | 30 +++++ ...s-Add-support-for-Samsung-Klimt-WiFi.patch | 111 ++++++++++++++++ ...samsung-document-Klimt-LTE-board-bin.patch | 35 +++++ ...ts-Add-support-for-Samsung-Klimt-LTE.patch | 120 ++++++++++++++++++ main/linux-postmarketos-exynos5/APKBUILD | 8 ++ 7 files changed, 331 insertions(+), 10 deletions(-) create mode 100644 main/linux-postmarketos-exynos5/0013-dt-bindings-arm-samsung-document-Klimt-WiFi-board-bi.patch create mode 100644 main/linux-postmarketos-exynos5/0014-ARM-dts-Add-support-for-Samsung-Klimt-WiFi.patch create mode 100644 main/linux-postmarketos-exynos5/0015-dt-bindings-arm-samsung-document-Klimt-LTE-board-bin.patch create mode 100644 main/linux-postmarketos-exynos5/0016-ARM-dts-Add-support-for-Samsung-Klimt-LTE.patch diff --git a/device/testing/device-samsung-klimtlte/APKBUILD b/device/testing/device-samsung-klimtlte/APKBUILD index 45fa66702..5d2a564d9 100644 --- a/device/testing/device-samsung-klimtlte/APKBUILD +++ b/device/testing/device-samsung-klimtlte/APKBUILD @@ -2,22 +2,20 @@ # Reference: pkgname=device-samsung-klimtlte pkgdesc="Samsung Galaxy Tab S 8.4 LTE" -pkgver=0.1 +pkgver=1 pkgrel=0 url="https://postmarketos.org" license="MIT" arch="armv7" options="!check !archcheck" -depends=" - linux-samsung-klimtlte - mesa-dri-gallium - mkbootimg - postmarketos-base - msm-fb-refresher -" +depends="postmarketos-base mkbootimg" makedepends="devicepkg-dev" source="deviceinfo" -subpackages="$pkgname-nonfree-firmware:nonfree_firmware" +subpackages=" + $pkgname-kernel-downstream:kernel_downstream + $pkgname-kernel-mainline:kernel_mainline + $pkgname-nonfree-firmware:nonfree_firmware +" build() { devicepkg_build $startdir $pkgname @@ -27,10 +25,24 @@ package() { devicepkg_package $startdir $pkgname } +kernel_downstream() { + pkgdesc="Display and wifi works (see device table for details)" + depends="linux-samsung-klimtlte mesa-dri-gallium msm-fb-refresher" + devicepkg_subpackage_kernel $startdir $pkgname $subpkgname +} + +kernel_mainline() { + pkgdesc="Mainline WIP (usb networking works but not much else)" + depends="linux-postmarketos-exynos5" + devicepkg_subpackage_kernel $startdir $pkgname $subpkgname +} + nonfree_firmware() { pkgdesc="Non-free firmware for the Samsung Galaxy Tab S" depends="firmware-samsung-klimt" mkdir "$subpkgdir" } -sha512sums="b3ccb88021887be5f76183e339642e9c3863f17b9c50f068f906a644edd444346ed12f2b539d1ac9ef32d40340ae74b935030173f932018f7a180c96d00966f4 deviceinfo" +sha512sums=" +cba652c5df290ea3f03651a8cba3c9b7e288f3f2b3a01950c9ee7a0663f8e5da396c05ad3477c08b7a0b0304c7fcc33a671ef65e57d1a5c2132d1258cda6aea4 deviceinfo +" diff --git a/device/testing/device-samsung-klimtlte/deviceinfo b/device/testing/device-samsung-klimtlte/deviceinfo index e91e62662..e72d75c25 100644 --- a/device/testing/device-samsung-klimtlte/deviceinfo +++ b/device/testing/device-samsung-klimtlte/deviceinfo @@ -7,6 +7,8 @@ deviceinfo_name="Samsung Galaxy Tab S 8.4 LTE" deviceinfo_manufacturer="Samsung" deviceinfo_codename="samsung-klimtlte" deviceinfo_year="2014" +deviceinfo_append_dtb_mainline="true" +deviceinfo_dtb_mainline="exynos5420-klimt-lte" deviceinfo_arch="armv7" # Device related @@ -20,6 +22,7 @@ deviceinfo_screen_height="2560" deviceinfo_flash_method="heimdall-bootimg" deviceinfo_generate_bootimg="true" deviceinfo_bootimg_qcdt="false" +deviceinfo_bootimg_append_seandroidenforce="true" deviceinfo_bootimg_mtk_mkimage="false" deviceinfo_bootimg_dtb_second="false" deviceinfo_flash_offset_base="0x10000000" @@ -28,5 +31,7 @@ deviceinfo_flash_offset_ramdisk="0x01000000" deviceinfo_flash_offset_second="0x00f00000" deviceinfo_flash_offset_tags="0x00000100" deviceinfo_flash_pagesize="2048" + +# Heimdall related deviceinfo_flash_heimdall_partition_kernel="BOOT" deviceinfo_flash_heimdall_partition_system="SYSTEM" diff --git a/main/linux-postmarketos-exynos5/0013-dt-bindings-arm-samsung-document-Klimt-WiFi-board-bi.patch b/main/linux-postmarketos-exynos5/0013-dt-bindings-arm-samsung-document-Klimt-WiFi-board-bi.patch new file mode 100644 index 000000000..d7e435bf8 --- /dev/null +++ b/main/linux-postmarketos-exynos5/0013-dt-bindings-arm-samsung-document-Klimt-WiFi-board-bi.patch @@ -0,0 +1,30 @@ +From 451f21e36dac14479287d47790e976adea002c13 Mon Sep 17 00:00:00 2001 +From: Henrik Grimler +Date: Mon, 20 Dec 2021 11:51:05 +0100 +Subject: [PATCH 13/16] dt-bindings: arm: samsung: document Klimt WiFi board + binding + +Add binding for Galaxy Tab S 8.4", based on Exynos 5420 with codename +klimt-wifi. The tablet has similar hardware to Chagall WiFi, but a +smaller battery, smaller screen and another touchscreen controller. + +Signed-off-by: Henrik Grimler +--- + .../devicetree/bindings/arm/samsung/samsung-boards.yaml | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.yaml b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.yaml +index c385e6bfaed1..abac01def63c 100644 +--- a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.yaml ++++ b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.yaml +@@ -141,6 +141,7 @@ properties: + - enum: + - insignal,arndale-octa # Insignal Arndale Octa + - samsung,chagall-wifi # Samsung SM-T800 ++ - samsung,klimt-wifi # Samsung SM-T700 + - samsung,smdk5420 # Samsung SMDK5420 eval + - const: samsung,exynos5420 + - const: samsung,exynos5 +-- +2.34.1 + diff --git a/main/linux-postmarketos-exynos5/0014-ARM-dts-Add-support-for-Samsung-Klimt-WiFi.patch b/main/linux-postmarketos-exynos5/0014-ARM-dts-Add-support-for-Samsung-Klimt-WiFi.patch new file mode 100644 index 000000000..a41a01e6e --- /dev/null +++ b/main/linux-postmarketos-exynos5/0014-ARM-dts-Add-support-for-Samsung-Klimt-WiFi.patch @@ -0,0 +1,111 @@ +From 2c8a691d2a52b047ab21aab3ba3764ba224210ed Mon Sep 17 00:00:00 2001 +From: Henrik Grimler +Date: Wed, 31 Mar 2021 21:45:11 +0200 +Subject: [PATCH 14/16] ARM: dts: Add support for Samsung Klimt WiFi + +Klimt WiFi has the product name Samsung Galaxy Tab S 8.4". Board is +based on Exynos 5420, and has similar hardware to Chagall WiFi. + +Signed-off-by: Henrik Grimler +--- + arch/arm/boot/dts/Makefile | 1 + + arch/arm/boot/dts/exynos5420-klimt-wifi.dts | 75 +++++++++++++++++++++ + 2 files changed, 76 insertions(+) + create mode 100644 arch/arm/boot/dts/exynos5420-klimt-wifi.dts + +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +index 088fcedb3212..336b725195d7 100644 +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -221,6 +221,7 @@ dtb-$(CONFIG_ARCH_EXYNOS5) += \ + exynos5420-peach-pit.dtb \ + exynos5420-smdk5420.dtb \ + exynos5420-chagall-wifi.dtb \ ++ exynos5420-klimt-wifi.dtb \ + exynos5422-odroidhc1.dtb \ + exynos5422-odroidxu3.dtb \ + exynos5422-odroidxu3-lite.dtb \ +diff --git a/arch/arm/boot/dts/exynos5420-klimt-wifi.dts b/arch/arm/boot/dts/exynos5420-klimt-wifi.dts +new file mode 100644 +index 000000000000..7c3ba5abd7bf +--- /dev/null ++++ b/arch/arm/boot/dts/exynos5420-klimt-wifi.dts +@@ -0,0 +1,75 @@ ++// SPDX-License-Identifier: GPL-2.0 ++/* ++ * Samsung's Exynos5420 Klimt WiFi board device tree source ++ * ++ * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. ++ * http://www.samsung.com ++ * Copyright (c) 2022 Henrik Grimler ++ */ ++ ++/dts-v1/; ++#include "exynos5420-galaxy-tab-common.dtsi" ++ ++/ { ++ model = "Samsung Klimt WiFi based on Exynos5420"; ++ compatible = "samsung,klimt-wifi", "samsung,exynos5420", \ ++ "samsung,exynos5"; ++}; ++ ++&ldo15_reg { ++ /* Unused */ ++ regulator-name = "VDD_LDO15"; ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; ++}; ++ ++&ldo17_reg { ++ regulator-name = "VDD_VCI_3V0"; ++ regulator-min-microvolt = <3000000>; ++ regulator-max-microvolt = <3000000>; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&ldo28_reg { ++ regulator-name = "VDD3_1V8"; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&ldo29_reg { ++ regulator-name = "VDDR_1V6"; ++ regulator-min-microvolt = <1600000>; ++ regulator-max-microvolt = <1600000>; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&ldo31_reg { ++ /* Unused */ ++ regulator-name = "VDD_LDO31"; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++}; ++ ++&ldo32_reg { ++ regulator-name = "VDD_TSP_1V8"; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&mmc_2 { ++ sd-uhs-sdr104; ++}; +-- +2.34.1 + diff --git a/main/linux-postmarketos-exynos5/0015-dt-bindings-arm-samsung-document-Klimt-LTE-board-bin.patch b/main/linux-postmarketos-exynos5/0015-dt-bindings-arm-samsung-document-Klimt-LTE-board-bin.patch new file mode 100644 index 000000000..0bd8359e9 --- /dev/null +++ b/main/linux-postmarketos-exynos5/0015-dt-bindings-arm-samsung-document-Klimt-LTE-board-bin.patch @@ -0,0 +1,35 @@ +From 56466328a5515f28e2fb9d78e155dadeab38b9c2 Mon Sep 17 00:00:00 2001 +From: Henrik Grimler +Date: Sun, 16 Jan 2022 16:13:44 +0100 +Subject: [PATCH 15/16] dt-bindings: arm: samsung: document Klimt LTE board + binding + +Add binding for Galaxy Tab S 8.4" LTE variant, based on Exynos 5420 +with codename klimt-lte. The tablet has similar hardware to Klimt +WiFi but with: + +* an Intel 6360 modem +* a sim-card reader +* a TMD3782 light sensor, instead of Capella CM3323 +* a Semtech SX9500 proximity sensor + +Signed-off-by: Henrik Grimler +--- + .../devicetree/bindings/arm/samsung/samsung-boards.yaml | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.yaml b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.yaml +index abac01def63c..83142ab8526d 100644 +--- a/Documentation/devicetree/bindings/arm/samsung/samsung-boards.yaml ++++ b/Documentation/devicetree/bindings/arm/samsung/samsung-boards.yaml +@@ -142,6 +142,7 @@ properties: + - insignal,arndale-octa # Insignal Arndale Octa + - samsung,chagall-wifi # Samsung SM-T800 + - samsung,klimt-wifi # Samsung SM-T700 ++ - samsung,klimt-lte # Samsung SM-T705 + - samsung,smdk5420 # Samsung SMDK5420 eval + - const: samsung,exynos5420 + - const: samsung,exynos5 +-- +2.34.1 + diff --git a/main/linux-postmarketos-exynos5/0016-ARM-dts-Add-support-for-Samsung-Klimt-LTE.patch b/main/linux-postmarketos-exynos5/0016-ARM-dts-Add-support-for-Samsung-Klimt-LTE.patch new file mode 100644 index 000000000..f931689c2 --- /dev/null +++ b/main/linux-postmarketos-exynos5/0016-ARM-dts-Add-support-for-Samsung-Klimt-LTE.patch @@ -0,0 +1,120 @@ +From 757d6e257d04e97f14ffa46779991b7143095f1c Mon Sep 17 00:00:00 2001 +From: Henrik Grimler +Date: Sun, 16 Jan 2022 16:29:43 +0100 +Subject: [PATCH 16/16] ARM: dts: Add support for Samsung Klimt LTE + +Klimt LTE has the product name Samsung Galaxy Tab S 8.4". Board is +based on Exynos 5420, and has similar hardware to Klimt WiFi and +Chagall WiFi. + +Signed-off-by: Henrik Grimler +--- + arch/arm/boot/dts/Makefile | 1 + + arch/arm/boot/dts/exynos5420-klimt-lte.dts | 83 ++++++++++++++++++++++ + 2 files changed, 84 insertions(+) + create mode 100644 arch/arm/boot/dts/exynos5420-klimt-lte.dts + +diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile +index 336b725195d7..863d35173704 100644 +--- a/arch/arm/boot/dts/Makefile ++++ b/arch/arm/boot/dts/Makefile +@@ -221,6 +221,7 @@ dtb-$(CONFIG_ARCH_EXYNOS5) += \ + exynos5420-peach-pit.dtb \ + exynos5420-smdk5420.dtb \ + exynos5420-chagall-wifi.dtb \ ++ exynos5420-klimt-lte.dtb \ + exynos5420-klimt-wifi.dtb \ + exynos5422-odroidhc1.dtb \ + exynos5422-odroidxu3.dtb \ +diff --git a/arch/arm/boot/dts/exynos5420-klimt-lte.dts b/arch/arm/boot/dts/exynos5420-klimt-lte.dts +new file mode 100644 +index 000000000000..2a9af1f18de7 +--- /dev/null ++++ b/arch/arm/boot/dts/exynos5420-klimt-lte.dts +@@ -0,0 +1,83 @@ ++// SPDX-License-Identifier: GPL-2.0 ++/* ++ * Samsung's Exynos5420 Klimt LTE board device tree source ++ * ++ * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd. ++ * http://www.samsung.com ++ * Copyright (c) 2022 Henrik Grimler ++ */ ++ ++/dts-v1/; ++#include "exynos5420-galaxy-tab-common.dtsi" ++ ++/ { ++ model = "Samsung Klimt LTE based on Exynos5420"; ++ compatible = "samsung,klimt-lte", "samsung,exynos5420", \ ++ "samsung,exynos5"; ++}; ++ ++&ldo15_reg { ++ regulator-name = "VDD_LEDA_2V8"; ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; ++ ++ regulator-state-mem { ++ regulator-on-in-suspend; ++ }; ++}; ++ ++&ldo17_reg { ++ regulator-name = "VDD_VCI_3V0"; ++ regulator-min-microvolt = <3000000>; ++ regulator-max-microvolt = <3000000>; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&ldo28_reg { ++ regulator-name = "VDD3_1V8"; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&ldo29_reg { ++ regulator-name = "VDDR_1V6"; ++ regulator-min-microvolt = <1600000>; ++ regulator-max-microvolt = <1600000>; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&ldo31_reg { ++ regulator-name = "VDD_GRIP_1V8"; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-always-on; ++ regulator-boot-on; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&ldo32_reg { ++ regulator-name = "VDD_TSP_1V8"; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ ++ regulator-state-mem { ++ regulator-off-in-suspend; ++ }; ++}; ++ ++&mmc_2 { ++ sd-uhs-sdr104; ++}; +-- +2.34.1 + diff --git a/main/linux-postmarketos-exynos5/APKBUILD b/main/linux-postmarketos-exynos5/APKBUILD index 3c62901f0..bd1e6ae46 100644 --- a/main/linux-postmarketos-exynos5/APKBUILD +++ b/main/linux-postmarketos-exynos5/APKBUILD @@ -50,6 +50,10 @@ source=" 0010-dt-bindings-arm-samsung-document-Chagall-WiFi-board-.patch 0011-ARM-exynos-only-do-SMC_CMD_CPU1BOOT-call-on-Exynos4.patch 0012-ARM-dts-Add-support-for-Samsung-Chagall-WiFi.patch + 0013-dt-bindings-arm-samsung-document-Klimt-WiFi-board-bi.patch + 0014-ARM-dts-Add-support-for-Samsung-Klimt-WiFi.patch + 0015-dt-bindings-arm-samsung-document-Klimt-LTE-board-bin.patch + 0016-ARM-dts-Add-support-for-Samsung-Klimt-LTE.patch " builddir="$srcdir/linux-${_kernver//_/-}" @@ -93,4 +97,8 @@ f031b887181d645075c7e4b2d93d60f0b0932e256f6b292850bab4b7480b4289f4a89f43f7e4a6d9 b0595d89a559c14e016f0ef65f526240ab2a85a0397fed1b9a304aca2d7a946496891aad33dcd0fae77fc9d4f33baba58503595f97132af90efdaf9de8d78e4c 0010-dt-bindings-arm-samsung-document-Chagall-WiFi-board-.patch 8d8be7677e67c41a3eafbf5fff13edeb6be88056a45ab55347544ab883fd3e50d15e77a929f53bd2a1917c9d51cec3d5a78205b3fade0d682081bb5e0317ee81 0011-ARM-exynos-only-do-SMC_CMD_CPU1BOOT-call-on-Exynos4.patch d552e78c7a7c029274766200dba88a9af3b22e60f393e1fcd345a527de26c203222308ecce0b212ea8f55a5287737b6ee8730c69680d585f8ce4b45faebf3d20 0012-ARM-dts-Add-support-for-Samsung-Chagall-WiFi.patch +024b32657af97fce4dc6c524972c9f0e247a7b897f3842d60e9c91a4eb90d41a1c4019e6a5a188f535c3857d6d5b629d7b1f48fc71a445e17a5fb1be77bd48f9 0013-dt-bindings-arm-samsung-document-Klimt-WiFi-board-bi.patch +36a175f5c6775e5b03a521ac8c57b1dafb565de78bbe46d4a77141f362eeb76f5872b6cb380401f2987c6dd480affbc08954ec9b9adfb4ea21ef0d670f3e858f 0014-ARM-dts-Add-support-for-Samsung-Klimt-WiFi.patch +a0d5bf1292155da056b07a2384885ca11a4602e1ade3f0672c92e537cce6f5bd631ef1e0389418f5259468f637577ed1335293cb70764e5de23ad134a0725752 0015-dt-bindings-arm-samsung-document-Klimt-LTE-board-bin.patch +70111f8591a1a566473dbb04a4dcfded110789196922d166719604afcfc6c6d5d5fd66d75c1e020be055c86c2c7b3deac59a13f593d37620027fc75bcfaad7af 0016-ARM-dts-Add-support-for-Samsung-Klimt-LTE.patch "