TinkerBoard / android-7.1.2_kernel

Android Kernel source for Tinker Board
Other
13 stars 10 forks source link

Display brightness is not working on RPI Display #4

Closed sobrinho closed 5 years ago

sobrinho commented 5 years ago

Hi there!

Changing display brightness is not working on Android 7 but it works on Android 6.

jamess-huang commented 5 years ago

We will check and feedback to you.

sobrinho commented 5 years ago

More information, when I try to change the backlight on UI, I got this on dmesg:

[25262.057062] type=1400 audit(1538419170.522:51): avc: denied { read } for pid=784 comm="ndroid.systemui" name="usb" dev="tmpfs" ino=8589 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:usb_device:s0 tclass=dir permissive=1
[25262.057202] type=1400 audit(1538419170.522:52): avc: denied { open } for pid=784 comm="ndroid.systemui" path="/dev/bus/usb" dev="tmpfs" ino=8589 scontext=u:r:platform_app:s0:c512,c768 tcontext=u:object_r:usb_device:s0 tclass=dir permissive=1
[25262.058490] type=1400 audit(1538419170.522:53): avc: denied { create } for pid=784 comm="ndroid.systemui" scontext=u:r:platform_app:s0:c512,c768 tcontext=u:r:platform_app:s0:c512,c768 tclass=netlink_kobject_uevent_socket permissive=1
[25262.058587] type=1400 audit(1538419170.522:54): avc: denied { bind } for pid=784 comm="ndroid.systemui" scontext=u:r:platform_app:s0:c512,c768 tcontext=u:r:platform_app:s0:c512,c768 tclass=netlink_kobject_uevent_socket permissive=1
[25262.058671] type=1400 audit(1538419170.522:55): avc: denied { setopt } for pid=784 comm="ndroid.systemui" scontext=u:r:platform_app:s0:c512,c768 tcontext=u:r:platform_app:s0:c512,c768 tclass=netlink_kobject_uevent_socket permissive=1
[25262.059192] type=1400 audit(1538419170.522:56): avc: denied { read } for pid=784 comm="ndroid.systemui" scontext=u:r:platform_app:s0:c512,c768 tcontext=u:r:platform_app:s0:c512,c768 tclass=netlink_kobject_uevent_socket permissive=1
sobrinho commented 5 years ago

Also, looking around in dmesg:

rk3288:/ # dmesg | grep backlight
[    0.563481] pwm-backlight backlight: GPIO lookup for consumer enable
[    0.563496] pwm-backlight backlight: using device tree for GPIO lookup
[    0.563528] of_get_named_gpiod_flags: parsed 'enable-gpios' property of node '/backlight[0]' - status (0)
[    0.563574] backlight supply power not found, using dummy regulator
sobrinho commented 5 years ago

I'm almost a noob on compiling Android, drivers and such but I can tell there was a commit adding support for Debian here: https://github.com/TinkerBoard/debian_kernel/commit/d1a84d6d1a76246ce37dfe92160d31ed45bdcb6c

Looking at the driver for 6.0.1 here and for 7.1.2 here they have a lot of differences (not sure if a patch is missing or due to Android version itself).

jamess-huang commented 5 years ago

Thanks for your information. We have solved this problem. But it needs to rebuild the android system image. Below are the fix commits. https://bitbucket.org/TinkerBoard_Android/rk-device-rockchip-rk3288/commits/e57382fe021e651a01d3b3f6b3df21a6f5ed19d1?at=sbc/tinkerboard/asus/Android-7.1.2 https://bitbucket.org/TinkerBoard_Android/rk-hardware-rk29-liblights/commits/328c79ed5b3fd8eebe509b97045a4ad6603f934b?at=sbc/tinkerboard/asus/Android-7.1.2

We need some time to do the formal release process, You can rebulid the android image by yourself. Please check out the below link. https://tinkerboarding.co.uk/wiki/index.php/Software#How_to_build_Android.28AOSP.29_source_code

sobrinho commented 5 years ago

Seems like the Android now "supports" SIM cards, which I don't remember to see anything about using the released version in TinkerBoard site (maybe some config that is not published that is needed?).

Also, not sure if it is related, but I'm seeing a warning when the device boots.

img_4601

sobrinho commented 5 years ago

This message got fixed by that command on adb shell:

busybox egrep "^ro\.build\.(date(\.utc)?|fingerprint)=" /system/build.prop | busybox sed -e"s/^ro\./ro.vendor./" > /vendor/build.prop

Kudos to https://forum.xda-developers.com/nexus-9/development/fix-build-prop-variety-fix-aka-contact-t3133347

jamess-huang commented 5 years ago

This problem is caused by the mismatch between these 2 properties ro.build.fingerprint and ro.vendor.build.fingerprint.

You can also add below patch to fix this issue.

diff --git a/core/Makefile b/core/Makefile index 1b024b404..68ceecdd5 100644 --- a/core/Makefile +++ b/core/Makefile @@ -81,6 +81,9 @@ ADDITIONAL_DEFAULT_PROPERTIES += \ ADDITIONAL_DEFAULT_PROPERTIES := $(call uniq-pairs-by-first-component, \ $(ADDITIONAL_DEFAULT_PROPERTIES),=)

+$(shell rm -f $(PRODUCT_OUT)/system/build.prop) +$(shell rm -f $(call intermediates-dir-for,ETC,system_build_prop)/build.prop) + intermediate_system_build_prop := $(call intermediates-dir-for,ETC,system_build_prop)/build.prop

$(INSTALLED_DEFAULT_PROP_TARGET): $(intermediate_system_build_prop)