[CHV] Backlight init fails on Surface 3 if module load order is wrong
Submitted by Stephen Just
Assigned to Intel GFX Bugs mailing list
Description
As stated by Jani in https://bugs.freedesktop.org/show_bug.cgi?id=85977#c38, if i915 is loaded before relevant PMIC/I2C/PWM drivers, PWM backlight probe can fail.
[drm:pwm_setup_backlight [i915]] ERROR Failed to own the pwm chip
It would be nice to have this fixed so that the backlight on Surface 3 might work reliably on distro-stock kernels that don't build-in certain modules to influence the probe order.
Quote from Bug 85977:
There still remains the issue with probe ordering: if i915 gets probed before all >the related pmic/i2c drivers, pwm_get() fails as described in comment 32. If you >want to file a new bug for that, I don't mind.
As a workaround, these config options worked for me on Surface 3 PMIC backlight:
CONFIG_PWM=y
CONFIG_PWM_CRC=y
CONFIG_I2C_DESIGNWARE_PLATFORM=y
CONFIG_I2C_DESIGNWARE_PCI=y
CONFIG_INTEL_SOC_PMIC=y
CONFIG_DRM_I915=m