summaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/arch-sunxi/cpu_sun4i.h
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2016-08-19 13:25:41 (GMT)
committerHans de Goede <hdegoede@redhat.com>2016-08-26 14:58:37 (GMT)
commit421c98d7d2ebf929debf907e75ec04419cf07dbe (patch)
tree066fff4164e808f9f502aaed7b7793eef541b753 /arch/arm/include/asm/arch-sunxi/cpu_sun4i.h
parent8d463c5a32f7d404ee1a0cd68d4746e2ebab9e22 (diff)
downloadu-boot-fsl-qoriq-421c98d7d2ebf929debf907e75ec04419cf07dbe.tar.xz
sunxi: display: Use PWM to drive backlight where applicable
When the backlight's pwm input is connected to a pwm output of the SoC, actually use pwm to drive the backlight. The mean reason for doing this is to fix the backlight turning off for aprox. 1 second while the kernel is booting. This is caused by the kernel actually using pwm to drive the backlight, so that it can dim the backlight. First the pwm driver loads and switches the pinmux for the pin driving the backlight's pwm input to the pwm controller. Then about 1s later the actual backlight driver loads and tells the pwm driver to actually update the pwm settings, which have a power-on-reset value of "off". An additional advantage is that this allows us to initatiate the backlight at 80%, which is the kernel default, avoiding a brightness change while the kernel loads. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'arch/arm/include/asm/arch-sunxi/cpu_sun4i.h')
-rw-r--r--arch/arm/include/asm/arch-sunxi/cpu_sun4i.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm/include/asm/arch-sunxi/cpu_sun4i.h b/arch/arm/include/asm/arch-sunxi/cpu_sun4i.h
index cd009d7..5f93830 100644
--- a/arch/arm/include/asm/arch-sunxi/cpu_sun4i.h
+++ b/arch/arm/include/asm/arch-sunxi/cpu_sun4i.h
@@ -76,8 +76,15 @@
#define SUNXI_INTC_BASE 0x01c20400
#define SUNXI_PIO_BASE 0x01c20800
#define SUNXI_TIMER_BASE 0x01c20c00
+#ifndef CONFIG_SUNXI_GEN_SUN6I
+#define SUNXI_PWM_BASE 0x01c20e00
+#endif
#define SUNXI_SPDIF_BASE 0x01c21000
+#ifdef CONFIG_SUNXI_GEN_SUN6I
+#define SUNXI_PWM_BASE 0x01c21400
+#else
#define SUNXI_AC97_BASE 0x01c21400
+#endif
#define SUNXI_IR0_BASE 0x01c21800
#define SUNXI_IR1_BASE 0x01c21c00