Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Asus z00l: Backlight doesn't turn on #315

Closed
Ro-Den opened this issue May 22, 2023 · 12 comments
Closed

Asus z00l: Backlight doesn't turn on #315

Ro-Den opened this issue May 22, 2023 · 12 comments
Labels
help wanted Extra attention is needed

Comments

@Ro-Den
Copy link

Ro-Den commented May 22, 2023

In my device (ASUS ZenFone 2 Laser ZE550KL aka z00l) back light refuses to turn on at all.

I've managed to turn it on once by
$ echo 50 > /sys/class/backlight/1a98000.dsi.0/brightness
$ echo 250 > /sys/class/backlight/1a98000.dsi.0/brightness

The issue persists on at least 3 user interfaces I've tested: Phosh (Wayland), Sxmo-de-sway (Wayland), Sxmo-de-dwm (X11).

Adding a udev rule as proposed by @Jakko3 in #268 has not resolved the issue.

There are no significant errors in dmesg output:

[    1.601106] msm_mdp 1a01000.display-controller: [drm:adreno_request_fw [msm]] *ERROR* failed to load a300_pm4.fw
[    5.123357] l13: voltage operation not allowed
[   21.692970] msm_mdp 1a01000.display-controller: [drm:adreno_request_fw [msm]] loaded qcom/a300_pm4.fw from new location
[   21.693420] msm_mdp 1a01000.display-controller: [drm:adreno_request_fw [msm]] loaded qcom/a300_pfp.fw from new location

P.S.: Unfortunately, my device is a little bit broken with the Power Button completely ripped off. But I don't think it has something to do with the issue ):

@stephan-gh stephan-gh added the help wanted Extra attention is needed label May 23, 2023
@stephan-gh
Copy link
Member

There have been several reports of this issue but so far I have not been able to figure out why this happens. And I don't have this device myself.

It would be helpful if we knew if the display actually ever worked properly (perhaps there is some device-specific difference and it works only on some models like @antony-jr's?). It may help to build e.g. the good old v5.11.7-msm8916 tag again and see if it works there.

So far investigating this issue always failed because the reporters disappeared eventually or where not willing to go through the effort of building the kernel repeatedly to debug this issue. Someone needs to step up if we want to solve this properly.

If you need help with the build process etc please join the chat at #msm8916:postmarketos.org on Matrix since it's easier to help there.

@antony-jr
Copy link

My device display and battery is broken, but I've been meaning to repair and try the latest version of the kernel myself. But this is going to take some time to do the repairs. Give me a week or two, but can't promise anything.

@Ro-Den
Copy link
Author

Ro-Den commented May 23, 2023

It would be helpful if we knew if the display actually ever worked properly

No, it never did in pmOS. There were no problems (except GPS) in Android though my device is not in a good shape ):

perhaps there is some device-specific difference and it works only on some models like @antony-jr's?

As far as I know Asus produced 2 models of ASUS ZenFone 2 Laser ZE550KL: z00lDD (for Southeast Asia: Malaysia, Indonesia etc) and z00lD (for the rest of the world).

My device is z00lD. @antony-jr what's yours?

@antony-jr
Copy link

antony-jr commented May 23, 2023

My device is z00lD. @antony-jr what's yours?

Mine is Z00LD too.

Edit: Does TWRP work?

@Ro-Den
Copy link
Author

Ro-Den commented May 23, 2023

Does TWRP work?

Yes, of course.

lk2nd works, too. Except for fastboot commands.

When my device boots, there's the Asus logo for a couple of seconds, then a grey screen for about a second, then boom - back light goes off. Is it normal behavior? Maybe some over voltage protection steps in?

@vknecht
Copy link
Member

vknecht commented May 30, 2023

Edit : Sorry, meant to post this comment on #268

@Ro-Den
Copy link
Author

Ro-Den commented Jul 5, 2023

I have finally tested a number of older kernels.

First, I tried to build the good old v5.11.7-msm8916 myself, but encountered a lot of issues. After that I switched to the relevant branch, added and built my device, but still could not get back light working. Then I tried a number of newer kernels same way, but the issue persisted.

@knuxify
Copy link

knuxify commented Aug 3, 2023

I don't own this device, but I checked the schematics out of curiosity, and it seems that this phone is most likely using the RT4532 chip for backlight control: manufacturer website, datasheet. Depending on how it's connected to the SoC, it may be possible to drive it separately from the panel driver, which might solve some of the issues.

image
(relevant excerpt from the ZE550KL schematic; if I should remove it, let me know.)

The site mentions PWM control; I'd start by checking if we can't use pwm-backlight to control the backlight, then move on to figuring out if a separate driver isn't necessary.

@Ro-Den
Copy link
Author

Ro-Den commented Nov 21, 2023

The back light issue is solved in kernel 6.6.0

But now $ echo 50 > /sys/class/backlight/1a98000.dsi.0/brightness returns Access denied. And changing brightness level requires pressing the Power button.

@Ro-Den Ro-Den closed this as completed Nov 21, 2023
@Jakko3
Copy link

Jakko3 commented Nov 22, 2023

The pmOS wiki page on LEDs contains some possibilities on the permissions in sysfs. This is mainly useful if you want to change it by command line or by script.

For backlight, however, actually it shouldn't be needed to handle this by command line or script. The brightness control of the user interface (desktop environment) should be able to manage it. In case you want to change something at boot, an udev rule like mentioned in #268 would work without changing persmissions. I'm not sure what you mean by pressing the power button, though.

@Ro-Den
Copy link
Author

Ro-Den commented Nov 22, 2023

Thanks!

$ echo 50 | sudo tee /sys/class/backlight/1a98000.dsi.0/brightness works!

Anyway, I have to press the Power button or xdotool key 122 to turn off the display for the changes to come into effect.

@Jakko3
Copy link

Jakko3 commented Nov 22, 2023

Anyway, I have to press the Power button or xdotool key 122 to turn off the display for the changes to come into effect.

Ok, thanks for explaining. That seems to be something driver-specific.

M0Rf30 pushed a commit to M0Rf30/linux that referenced this issue Apr 13, 2024
[ Upstream commit a51cd6b ]

In case when is64 == 1 in emit(A64_REV32(is64, dst, dst), ctx) the
generated insn reverses byte order for both high and low 32-bit words,
resuling in an incorrect swap as indicated by the jit test:

[ 9757.262607] test_bpf: msm8916-mainline#312 BSWAP 16: 0x0123456789abcdef -> 0xefcd jited:1 8 PASS
[ 9757.264435] test_bpf: msm8916-mainline#313 BSWAP 32: 0x0123456789abcdef -> 0xefcdab89 jited:1 ret 1460850314 != -271733879 (0x5712ce8a != 0xefcdab89)FAIL (1 times)
[ 9757.266260] test_bpf: msm8916-mainline#314 BSWAP 64: 0x0123456789abcdef -> 0x67452301 jited:1 8 PASS
[ 9757.268000] test_bpf: msm8916-mainline#315 BSWAP 64: 0x0123456789abcdef >> 32 -> 0xefcdab89 jited:1 8 PASS
[ 9757.269686] test_bpf: msm8916-mainline#316 BSWAP 16: 0xfedcba9876543210 -> 0x1032 jited:1 8 PASS
[ 9757.271380] test_bpf: msm8916-mainline#317 BSWAP 32: 0xfedcba9876543210 -> 0x10325476 jited:1 ret -1460850316 != 271733878 (0xa8ed3174 != 0x10325476)FAIL (1 times)
[ 9757.273022] test_bpf: msm8916-mainline#318 BSWAP 64: 0xfedcba9876543210 -> 0x98badcfe jited:1 7 PASS
[ 9757.274721] test_bpf: msm8916-mainline#319 BSWAP 64: 0xfedcba9876543210 >> 32 -> 0x10325476 jited:1 9 PASS

Fix this by forcing 32bit variant of rev32.

Fixes: 1104247 ("bpf, arm64: Support unconditional bswap")
Signed-off-by: Artem Savkov <asavkov@redhat.com>
Tested-by: Puranjay Mohan <puranjay12@gmail.com>
Acked-by: Puranjay Mohan <puranjay12@gmail.com>
Acked-by: Xu Kuohai <xukuohai@huawei.com>
Message-ID: <20240321081809.158803-1-asavkov@redhat.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
barni2000 pushed a commit to msm8953-mainline/linux that referenced this issue Jun 21, 2024
[ Upstream commit 8ecf3c1 ]

Recent additions in BPF like cpu v4 instructions, test_bpf module
exhibits the following failures:

  test_bpf: #82 ALU_MOVSX | BPF_B jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)
  test_bpf: #83 ALU_MOVSX | BPF_H jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)
  test_bpf: #84 ALU64_MOVSX | BPF_B jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)
  test_bpf: #85 ALU64_MOVSX | BPF_H jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)
  test_bpf: #86 ALU64_MOVSX | BPF_W jited:1 ret 2 != 1 (0x2 != 0x1)FAIL (1 times)

  test_bpf: #165 ALU_SDIV_X: -6 / 2 = -3 jited:1 ret 2147483645 != -3 (0x7ffffffd != 0xfffffffd)FAIL (1 times)
  test_bpf: #166 ALU_SDIV_K: -6 / 2 = -3 jited:1 ret 2147483645 != -3 (0x7ffffffd != 0xfffffffd)FAIL (1 times)

  test_bpf: #169 ALU_SMOD_X: -7 % 2 = -1 jited:1 ret 1 != -1 (0x1 != 0xffffffff)FAIL (1 times)
  test_bpf: #170 ALU_SMOD_K: -7 % 2 = -1 jited:1 ret 1 != -1 (0x1 != 0xffffffff)FAIL (1 times)

  test_bpf: #172 ALU64_SMOD_K: -7 % 2 = -1 jited:1 ret 1 != -1 (0x1 != 0xffffffff)FAIL (1 times)

  test_bpf: msm8916-mainline#313 BSWAP 16: 0x0123456789abcdef -> 0xefcd
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 301 PASS
  test_bpf: msm8916-mainline#314 BSWAP 32: 0x0123456789abcdef -> 0xefcdab89
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 555 PASS
  test_bpf: msm8916-mainline#315 BSWAP 64: 0x0123456789abcdef -> 0x67452301
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 268 PASS
  test_bpf: msm8916-mainline#316 BSWAP 64: 0x0123456789abcdef >> 32 -> 0xefcdab89
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 269 PASS
  test_bpf: msm8916-mainline#317 BSWAP 16: 0xfedcba9876543210 -> 0x1032
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 460 PASS
  test_bpf: msm8916-mainline#318 BSWAP 32: 0xfedcba9876543210 -> 0x10325476
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 320 PASS
  test_bpf: msm8916-mainline#319 BSWAP 64: 0xfedcba9876543210 -> 0x98badcfe
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 222 PASS
  test_bpf: msm8916-mainline#320 BSWAP 64: 0xfedcba9876543210 >> 32 -> 0x10325476
  eBPF filter opcode 00d7 (@2) unsupported
  jited:0 273 PASS

  test_bpf: msm8916-mainline#344 BPF_LDX_MEMSX | BPF_B
  eBPF filter opcode 0091 (@5) unsupported
  jited:0 432 PASS
  test_bpf: msm8916-mainline#345 BPF_LDX_MEMSX | BPF_H
  eBPF filter opcode 0089 (@5) unsupported
  jited:0 381 PASS
  test_bpf: msm8916-mainline#346 BPF_LDX_MEMSX | BPF_W
  eBPF filter opcode 0081 (@5) unsupported
  jited:0 505 PASS

  test_bpf: torvalds#490 JMP32_JA: Unconditional jump: if (true) return 1
  eBPF filter opcode 0006 (@1) unsupported
  jited:0 261 PASS

  test_bpf: Summary: 1040 PASSED, 10 FAILED, [924/1038 JIT'ed]

Fix them by adding missing processing.

Fixes: daabb2b ("bpf/tests: add tests for cpuv4 instructions")
Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/91de862dda99d170697eb79ffb478678af7e0b27.1709652689.git.christophe.leroy@csgroup.eu
Signed-off-by: Sasha Levin <sashal@kernel.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Development

No branches or pull requests

6 participants