Instantly share code, notes, and snippets.

Embed
What would you like to do?
OLinuXino Maxi VGA Output
From 31cb1b7313af40e5bc9d6394d1995e511b739ac0 Mon Sep 17 00:00:00 2001
From: Andrew Rossignol <andrew.rossignol@gmail.com>
Date: Wed, 10 Feb 2016 22:49:21 -0800
Subject: [PATCH] Enables VGA output on olinuxino.
---
arch/arm/boot/dts/imx23-olinuxino.dts | 38 +++++++++++++++++++++++++++++++++--
arch/arm/boot/dts/imx23.dtsi | 29 ++++++++++++++++++++++++++
2 files changed, 65 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/imx23-olinuxino.dts b/arch/arm/boot/dts/imx23-olinuxino.dts
index a8b1c53..d236d9a 100644
--- a/arch/arm/boot/dts/imx23-olinuxino.dts
+++ b/arch/arm/boot/dts/imx23-olinuxino.dts
@@ -67,6 +67,39 @@
pinctrl-0 = <&spi2_pins_a>;
status = "okay";
};
+
+ lcdif@80030000 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&lcdif_16bit_pins_a>;
+ display = <&display0>;
+ status = "okay";
+
+ display0: display0 {
+ bits-per-pixel = <16>;
+ bus-width = <16>;
+
+ display-timings {
+ native-mode = <&timing0>;
+ timing0: timing0 {
+ clock-frequency = <25200000>;
+ hactive = <640>;
+ hfront-porch = <16>;
+ hsync-len = <54>;
+ hback-porch = <48>;
+ hsync-active = <0>;
+
+ vactive = <480>;
+ vfront-porch = <10>;
+ vsync-len = <2>;
+ vback-porch = <33>;
+ vsync-active = <0>;
+
+ de-active = <1>;
+ pixelclk-active = <0>;
+ };
+ };
+ };
+ };
};
apbx@80040000 {
@@ -76,7 +109,7 @@
i2c: i2c@80058000 {
pinctrl-names = "default";
- pinctrl-0 = <&i2c_pins_b>;
+ pinctrl-0 = <&i2c_pins_a>;
status = "okay";
};
@@ -89,7 +122,7 @@
auart0: serial@8006c000 {
pinctrl-names = "default";
pinctrl-0 = <&auart0_2pins_a>;
- status = "okay";
+ status = "disabled"; /* TODO(aarossig): Re-enable me. */
};
usbphy0: usbphy@8007c000 {
@@ -133,4 +166,5 @@
gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
};
};
+
};
diff --git a/arch/arm/boot/dts/imx23.dtsi b/arch/arm/boot/dts/imx23.dtsi
index 1c6c075..cb2492c 100644
--- a/arch/arm/boot/dts/imx23.dtsi
+++ b/arch/arm/boot/dts/imx23.dtsi
@@ -259,6 +259,35 @@
fsl,pull-up = <MXS_PULL_DISABLE>;
};
+ lcdif_16bit_pins_a: lcdif-16bit@0 {
+ reg = <0>;
+ fsl,pinmux-ids = <
+ MX23_PAD_LCD_D00__LCD_D00
+ MX23_PAD_LCD_D01__LCD_D01
+ MX23_PAD_LCD_D02__LCD_D02
+ MX23_PAD_LCD_D03__LCD_D03
+ MX23_PAD_LCD_D04__LCD_D04
+ MX23_PAD_LCD_D05__LCD_D05
+ MX23_PAD_LCD_D06__LCD_D06
+ MX23_PAD_LCD_D07__LCD_D07
+ MX23_PAD_GPMI_D00__LCD_D8
+ MX23_PAD_GPMI_D01__LCD_D9
+ MX23_PAD_GPMI_D02__LCD_D10
+ MX23_PAD_GPMI_D03__LCD_D11
+ MX23_PAD_GPMI_D04__LCD_D12
+ MX23_PAD_GPMI_D05__LCD_D13
+ MX23_PAD_GPMI_D06__LCD_D14
+ MX23_PAD_GPMI_D07__LCD_D15
+ MX23_PAD_LCD_DOTCK__LCD_DOTCK
+ MX23_PAD_LCD_ENABLE__LCD_ENABLE
+ MX23_PAD_LCD_HSYNC__LCD_HSYNC
+ MX23_PAD_LCD_VSYNC__LCD_VSYNC
+ >;
+ fsl,drive-strength = <MXS_DRIVE_4mA>;
+ fsl,voltage = <MXS_VOLTAGE_HIGH>;
+ fsl,pull-up = <MXS_PULL_DISABLE>;
+ };
+
lcdif_24bit_pins_a: lcdif-24bit@0 {
reg = <0>;
fsl,pinmux-ids = <
--
2.5.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment