summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Nelson <eric.nelson@boundarydevices.com>2013-07-16 10:23:54 -0700
committerEric Nelson <eric.nelson@boundarydevices.com>2013-07-16 10:23:54 -0700
commite7f2972db12850573172a6369a2fbd920c5ece2f (patch)
tree361fc64a7633a82633c3d00bbf9e6edfdf1a868d
parent58532a1ba7dcc32a6663b439c3224cb5eb110ec3 (diff)
parent10117a5d96da43549e5c39c0d06b38febdca3805 (diff)
Merge branch 'boundary-imx_3.0.35_4.0.0' of github.com:boundarydevices/linux-imx6 into boundary-imx_3.0.35_4.0.0
-rw-r--r--arch/arm/mach-mx6/Kconfig3
-rw-r--r--arch/arm/mach-mx6/board-mx6_nit6xlite.c14
-rw-r--r--arch/arm/mach-mx6/pads-mx6_nit6xlite.h7
3 files changed, 20 insertions, 4 deletions
diff --git a/arch/arm/mach-mx6/Kconfig b/arch/arm/mach-mx6/Kconfig
index a9e60bf4293b..7b44065195eb 100644
--- a/arch/arm/mach-mx6/Kconfig
+++ b/arch/arm/mach-mx6/Kconfig
@@ -213,6 +213,9 @@ config MACH_MX6Q_SABRELITE
select IMX_HAVE_PLATFORM_IMX_ASRC
select IMX_HAVE_PLATFORM_FLEXCAN
select IMX_HAVE_PLATFORM_IMX_CAAM
+ select IMX_HAVE_PLATFORM_IMX_DVFS
+ select IMX_HAVE_PLATFORM_IMX_MIPI_CSI2
+ select IMX_HAVE_PLATFORM_PERFMON
help
Include support for i.MX 6Quad SABRE Lite platform. This includes specific
configurations for the board and its peripherals.
diff --git a/arch/arm/mach-mx6/board-mx6_nit6xlite.c b/arch/arm/mach-mx6/board-mx6_nit6xlite.c
index 11b041d5ff6a..ee3c470dfb77 100644
--- a/arch/arm/mach-mx6/board-mx6_nit6xlite.c
+++ b/arch/arm/mach-mx6/board-mx6_nit6xlite.c
@@ -81,7 +81,6 @@
#define AUDIO_MUTE IMX_GPIO_NR(5, 2) /* EIM_A25 - active low */
#define DISP_I2C_EN IMX_GPIO_NR(2, 17) /* EIM_A21 - active high */
-#define DISP_BACKLIGHT_EN IMX_GPIO_NR(1, 17) /* SD1_DAT1 - active high */
#define DISP_BACKLIGHT_12V_EN IMX_GPIO_NR(4, 5) /* GPIO_19 - active high */
#define ENET_PHY_RESET IMX_GPIO_NR(1, 27) /* ENET_RXD0 - active low */
@@ -151,7 +150,6 @@ struct gpio mx6_init_gpios[] __initdata = {
{.label = "audio_mute", .gpio = AUDIO_MUTE, .flags = 0}, /* GPIO5[2]: EIM_A25 - active low */
// {.label = "edid_i2c_en", .gpio = DISP_I2C_EN, .flags = 0}, /* GPIO2[17]: EIM_A21 - active high */
- {.label = "backlight_en", .gpio = DISP_BACKLIGHT_EN, .flags = 0}, /* GPIO1[17]: SD1_DAT1 - active high */
{.label = "backlight_12V_en", .gpio = DISP_BACKLIGHT_12V_EN, .flags = 0}, /* GPIO4[5]: GPIO_19 - active high */
{.label = "phy_reset", .gpio = ENET_PHY_RESET, .flags = GPIOF_HIGH}, /* GPIO1[27]: ENET_RXD0 - active low */
@@ -727,10 +725,18 @@ int mx6_bl_notify(struct device *dev, int brightness)
{
pr_info("%s: brightness=%d\n", __func__, brightness);
gpio_set_value(DISP_BACKLIGHT_12V_EN, brightness ? 1 : 0);
- gpio_set_value(DISP_BACKLIGHT_EN, brightness ? 1 : 0);
return brightness;
}
+/* PWM3_PWMO: backlight control on RGB connector */
+static struct platform_pwm_backlight_data mx6_pwm3_backlight_data = {
+ .pwm_id = 2, /* pin SD1_DAT1 - PWM3 */
+ .max_brightness = 256,
+ .dft_brightness = 256,
+ .pwm_period_ns = 50000,
+ .notify = mx6_bl_notify,
+};
+
/* PWM4_PWMO: backlight control on LDB connector */
static struct platform_pwm_backlight_data mx6_pwm4_backlight_data = {
.pwm_id = 3, /* pin SD1_CMD - PWM4 */
@@ -888,8 +894,10 @@ static void __init mx6_board_init(void)
/* release USB Hub reset */
gpio_set_value(USB_HUB_RESET, 1);
+ imx6q_add_mxc_pwm(2);
imx6q_add_mxc_pwm(3);
+ imx6q_add_mxc_pwm_backlight(2, &mx6_pwm3_backlight_data);
imx6q_add_mxc_pwm_backlight(3, &mx6_pwm4_backlight_data);
imx6q_add_otp();
diff --git a/arch/arm/mach-mx6/pads-mx6_nit6xlite.h b/arch/arm/mach-mx6/pads-mx6_nit6xlite.h
index 1eae09d538cc..0dfdeb172f02 100644
--- a/arch/arm/mach-mx6/pads-mx6_nit6xlite.h
+++ b/arch/arm/mach-mx6/pads-mx6_nit6xlite.h
@@ -65,7 +65,12 @@ static iomux_v3_cfg_t MX6NAME(common_pads)[] = {
* 10.4 is 1024x768
*/
NEW_PAD_CTRL(MX6PAD(SD1_CMD__PWM4_PWMO), WEAK), /* GPIO1[18], J9 pin 10 */
- NEW_PAD_CTRL(MX6PAD(SD1_DAT1__GPIO_1_17), WEAK), /* J9 pin 9, also pwm3 */
+
+ /*
+ * Display - RGB Backlight
+ * 4.3 inch is WQVGA 480x272
+ */
+ MX6PAD(SD1_DAT1__PWM3_PWMO), /* GPIO1[17], J9 pin 9, also pwm3 */
/* Ethernet - ENET */
MX6PAD(ENET_MDIO__ENET_MDIO),