[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Libreboot] X60 tablet: screen whine after 1400x1050 screen swap

From: Charles Devereaux
Subject: [Libreboot] X60 tablet: screen whine after 1400x1050 screen swap
Date: Mon, 6 Apr 2015 00:54:00 -0400


On my X60 tablet, after a screen swap for a 1400x1050 screen, I started noticing a whine. The noise is proportional to the reduction of the backlight and doesn't happen at full brightness. I never noticed it before.

It happens regardless of how I change the backlight (fn+home/end, xbacklight, custom script reading and writing to /sys/class/backlight/intel_backlight/brightness) so I suspect a coreboot issue.

I am currently using an old libreboot based on head 8ffc085e1affaabbe3dca8ac6a89346b71dfc02e with #5345, #7050, #7051, but not #6731 and #7049 (since they were dropped and I do not need acpi backlight) that works just fine, so I am a bit reluctant to change it.

Apparently #6731 and #7049 had the same problem: "some lower brightness levels make the high-pitched noise", which was fixed cf

After looking at the code, I see a note explaining how: "Francis tested that like my noise issue it doesn't occur with a lower PWM frequency.

If we compute the frequency as (0x61 << 8) + (0x61 << 6) + 1 (the 1 is to allow legacy backlight brightness which the VGA ROM allows and I don't know if it should be enabled) and duty cycle as (x << 8) + (x << 6) for x in 0xf, ..., 0x61, then both our issues are solved.

I don't know if the resulting value (0x79417940) gives low enough frequency to cause flickering for other users: "

I do not fully understand where or how the PWM frequency is set in src/northbridge/intel/i945/gma.c. I never see that 0x79417940 either. the only thing I see in is:

write32(pmmio + BLC_PWM_CTL, 0x6100610);

In the source of my libreboot, it is still:

write32(pmmio + BLC_PWM_CTL, conf->gpu_backlight);

With src/mainboard/lenovo/x60/devicetree.cb setting it with:

register "gpu_backlight" = "0x879F879E"

Should it get changed to:

write32(pmmio + BLC_PWM_CTL, 0x79417940)

The other thing I noticed were kernel warnings on wakeup from suspend2ram:
[54557.710112] [drm:intel_pipe_config_compare] *ERROR* mismatch in gmch_pfit.pgm_ratios (expected 24183152, found 24117616)
[54557.710114] ------------[ cut here ]------------
[54557.710121] WARNING: CPU: 1 PID: 1432 at drivers/gpu/drm/i915/intel_display.c:9541 check_crtc_state+0x759/0xe31()
[54557.710122] pipe state doesn't match!

It may be related.  Which coreboot head/patches is libreboot on the X60 presently using?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]