[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1596196808-5067-3-git-send-email-michal.vokac@ysoft.com>
Date: Fri, 31 Jul 2020 14:00:08 +0200
From: Michal Vokáč <michal.vokac@...ft.com>
To: Rob Herring <robh+dt@...nel.org>, Shawn Guo <shawnguo@...nel.org>
Cc: Mark Rutland <mark.rutland@....com>,
Sascha Hauer <s.hauer@...gutronix.de>,
Fabio Estevam <festevam@...il.com>, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org,
Michal Vokáč <michal.vokac@...ft.com>
Subject: [PATCH 3/3] ARM: dts: imx6dl-yapp4: Add support for OLED based on different controller
OLED display consist of an OLED panel and a display controller.
The displays that were used on yapp4 platform were based on a SSD1305
controller. These displays are now discontinued and we need to add
support for a replacement.
The new display is based on SSD1309 controller and requires slightly
different configuration (mirror + segment offset). We want to support
both display types so it does no matter which one was used on the assembly
line. Hence the displays are placed at different I2C addresses.
Signed-off-by: Michal Vokáč <michal.vokac@...ft.com>
---
arch/arm/boot/dts/imx6dl-yapp4-common.dtsi | 15 ++++++++++++++-
arch/arm/boot/dts/imx6dl-yapp4-hydra.dts | 6 +++++-
arch/arm/boot/dts/imx6dl-yapp4-orion.dts | 6 +++++-
3 files changed, 24 insertions(+), 3 deletions(-)
diff --git a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
index c4a235d212b6..e626bef768bf 100644
--- a/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
+++ b/arch/arm/boot/dts/imx6dl-yapp4-common.dtsi
@@ -311,7 +311,20 @@
pinctrl-0 = <&pinctrl_i2c3>;
status = "okay";
- oled: oled@3d {
+ oled_1309: oled@3c {
+ compatible = "solomon,ssd1309fb-i2c";
+ reg = <0x3c>;
+ solomon,height = <64>;
+ solomon,width = <128>;
+ solomon,page-offset = <0>;
+ solomon,segment-no-remap;
+ solomon,prechargep2 = <15>;
+ reset-gpios = <&gpio_oled 1 GPIO_ACTIVE_LOW>;
+ vbat-supply = <&sw2_reg>;
+ status = "disabled";
+ };
+
+ oled_1305: oled@3d {
compatible = "solomon,ssd1305fb-i2c";
reg = <0x3d>;
solomon,height = <64>;
diff --git a/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts b/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
index 6010d3d872ab..a19609c7c7c0 100644
--- a/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
+++ b/arch/arm/boot/dts/imx6dl-yapp4-hydra.dts
@@ -29,7 +29,11 @@
status = "okay";
};
-&oled {
+&oled_1305 {
+ status = "okay";
+};
+
+&oled_1309 {
status = "okay";
};
diff --git a/arch/arm/boot/dts/imx6dl-yapp4-orion.dts b/arch/arm/boot/dts/imx6dl-yapp4-orion.dts
index 0428720417ef..884b236746bb 100644
--- a/arch/arm/boot/dts/imx6dl-yapp4-orion.dts
+++ b/arch/arm/boot/dts/imx6dl-yapp4-orion.dts
@@ -25,7 +25,11 @@
status = "okay";
};
-&oled {
+&oled_1305 {
+ status = "okay";
+};
+
+&oled_1309 {
status = "okay";
};
--
2.1.4
Powered by blists - more mailing lists