pmaports/device/testing/linux-samsung-kminilte/APKBUILD
Niklas Cathor 5acf41a60e
linux-samsung-kminilte: add flashlight support (MR 1150)
These changes enable the flashlight LED driver (fled_rt5033), and add
support for switching the light on and off from userspace.

In more detail:

* CONFIG_FLED_RT5033 enables the flashlight driver
* CONFIG_VIDEO_EXYNOS_FIMC_IS is required for the flashlight driver to
  compile (there seems to be a lot of cross-dependency between the two
  drivers)
* patch 0001 fixes the use of usleep (which no longer exists), to make
  the kernel compile with those settings

With these changes, /sys/class/flashlight/rt-flash-led shows up in
sysfs, but it's only possible to control the brightness of the LED,
not to switch it on.

Patch 0002 is what actually makes the flashlight usable: it makes
the /sys/class/flashlight/rt-flash-led/mode file writable.

Writing "Torch" there enables the flashlight, writing "Off" disables
it again. "Mixed" mode works like "Torch" as well. I have not figured
out yet how to trigger the camera flash, so setting the mode to
"Flash" is possible, albeit pointless.
2020-04-13 19:08:19 +03:00

56 lines
2.3 KiB
Text

# Kernel config based on: arch/arm/configs/kminilte_00_defconfig
pkgname="linux-samsung-kminilte"
pkgver=3.4.113
pkgrel=5
pkgdesc="Samsung Galaxy S5 Mini kernel fork"
arch="armv7"
_carch="arm"
_flavor="samsung-kminilte"
url="https://github.com/cm-3470/android_kernel_samsung_kminilte"
license="GPL2"
options="!strip !check !tracedeps"
makedepends="perl sed installkernel bash gmp-dev bc linux-headers elfutils-dev devicepkg-dev gcc6"
# 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
# Source
_repository="android_kernel_samsung_kminilte"
_commit="7a8c010f226189116dcf2301d338555ae0d270c3"
_config="config-$_flavor.$arch"
source="
$pkgname-$_commit.tar.gz::https://github.com/cm-3470/$_repository/archive/$_commit.tar.gz
$_config
compiler-gcc6.h
0001-drivers-leds-rt5033_fled-fix-use-of-usleep.patch
0002-drivers-leds-flashlight-add-support-for-setting-mode.patch
"
builddir="$srcdir/$_repository-$_commit"
prepare() {
default_prepare
. downstreamkernel_prepare
}
build() {
unset LDFLAGS
make ARCH="$_carch" CC="${CC:-gcc}" \
KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-postmarketOS"
}
package() {
downstreamkernel_package "$builddir" "$pkgdir" "$_carch" "$_flavor"
}
sha512sums="351b043822d9fc25a002f07a490422341fd03671d661bb949085ef8d69042f1ae528f80ade7076aba3eaffec80f65c09fdbb600ffe04063c69d876c22a53709b linux-samsung-kminilte-7a8c010f226189116dcf2301d338555ae0d270c3.tar.gz
f48cb3b5952f489758d01ec91ce7c3a8d67093be1fb9afebee6b519dd3d05b076fb0e299378323347e3e86cd138fe9e798378c96159acf4a97d7a6da9df2ca5b config-samsung-kminilte.armv7
d80980e9474c82ba0ef1a6903b434d8bd1b092c40367ba543e72d2c119301c8b2d05265740e4104ca1ac5d15f6c4aa49e8776cb44264a9a28dc551e0d1850dcc compiler-gcc6.h
873e4ff64521f685b7948e7a55aba4a95e3c0086b54c8e1440f67630c49a6b17b10c71837ba44d0bdb9afb05ff3ee8c0c890f0053fb79cd733aa76aed53579c2 0001-drivers-leds-rt5033_fled-fix-use-of-usleep.patch
fb30ea67620fc0dae62943b512662e0f3a49b7509d5f3cddda4c1552fe365535ac414f4ae960356f18228ce49d5c362c512cec7a9b671ffe96408f91b1b9fdee 0002-drivers-leds-flashlight-add-support-for-setting-mode.patch"