mirror of
				https://github.com/Ysurac/openmptcprouter.git
				synced 2025-03-09 15:40:20 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			115 lines
		
	
	
	
		
			3.9 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			115 lines
		
	
	
	
		
			3.9 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 69be4449b18612e79779c40685ea67e8c2f5257e Mon Sep 17 00:00:00 2001
 | 
						|
From: Jasper Boomer <jasperboomer@gmail.com>
 | 
						|
Date: Sun, 24 Jun 2018 12:20:27 -0400
 | 
						|
Subject: [PATCH 155/432] Add device tree overlay for HD44780
 | 
						|
 | 
						|
---
 | 
						|
 arch/arm/boot/dts/overlays/Makefile           |  1 +
 | 
						|
 arch/arm/boot/dts/overlays/README             | 25 ++++++++++
 | 
						|
 .../boot/dts/overlays/hd44780-lcd-overlay.dts | 46 +++++++++++++++++++
 | 
						|
 3 files changed, 72 insertions(+)
 | 
						|
 create mode 100644 arch/arm/boot/dts/overlays/hd44780-lcd-overlay.dts
 | 
						|
 | 
						|
diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile
 | 
						|
index 80bf98cc7237..6e5ac5c3369f 100644
 | 
						|
--- a/arch/arm/boot/dts/overlays/Makefile
 | 
						|
+++ b/arch/arm/boot/dts/overlays/Makefile
 | 
						|
@@ -38,6 +38,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
 | 
						|
 	gpio-no-irq.dtbo \
 | 
						|
 	gpio-poweroff.dtbo \
 | 
						|
 	gpio-shutdown.dtbo \
 | 
						|
+	hd44780-lcd.dtbo \
 | 
						|
 	hifiberry-amp.dtbo \
 | 
						|
 	hifiberry-dac.dtbo \
 | 
						|
 	hifiberry-dacplus.dtbo \
 | 
						|
diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README
 | 
						|
index a987d3d1bba0..53f4a47caa5c 100644
 | 
						|
--- a/arch/arm/boot/dts/overlays/README
 | 
						|
+++ b/arch/arm/boot/dts/overlays/README
 | 
						|
@@ -639,6 +639,31 @@ Params: gpio_pin                GPIO pin to trigger on (default 3)
 | 
						|
                                 external pullup.
 | 
						|
 
 | 
						|
 
 | 
						|
+Name:   hd44780-lcd
 | 
						|
+Info:   Configures an HD44780 compatible LCD display. Uses 4 gpio pins for
 | 
						|
+        data, 2 gpio pins for enable and register select and 1 optional pin
 | 
						|
+        for enabling/disabling the backlight display.
 | 
						|
+Load:   dtoverlay=hd44780-lcd,<param>=<val>
 | 
						|
+Params: pin_d4                  GPIO pin for data pin D4 (default 6)
 | 
						|
+
 | 
						|
+        pin_d5                  GPIO pin for data pin D5 (default 13)
 | 
						|
+
 | 
						|
+        pin_d6                  GPIO pin for data pin D6 (default 19)
 | 
						|
+
 | 
						|
+        pin_d7                  GPIO pin for data pin D7 (default 26)
 | 
						|
+
 | 
						|
+        pin_en                  GPIO pin for "Enable" (default 21)
 | 
						|
+
 | 
						|
+        pin_rs                  GPIO pin for "Register Select" (default 20)
 | 
						|
+
 | 
						|
+        pin_bl                  Optional pin for enabling/disabling the
 | 
						|
+                                display backlight. (default disabled)
 | 
						|
+
 | 
						|
+        display_height          Height of the display in characters
 | 
						|
+
 | 
						|
+        display_width           Width of the display in characters
 | 
						|
+
 | 
						|
+
 | 
						|
 Name:   hifiberry-amp
 | 
						|
 Info:   Configures the HifiBerry Amp and Amp+ audio cards
 | 
						|
 Load:   dtoverlay=hifiberry-amp
 | 
						|
diff --git a/arch/arm/boot/dts/overlays/hd44780-lcd-overlay.dts b/arch/arm/boot/dts/overlays/hd44780-lcd-overlay.dts
 | 
						|
new file mode 100644
 | 
						|
index 000000000000..ee726669ff51
 | 
						|
--- /dev/null
 | 
						|
+++ b/arch/arm/boot/dts/overlays/hd44780-lcd-overlay.dts
 | 
						|
@@ -0,0 +1,46 @@
 | 
						|
+/dts-v1/;
 | 
						|
+/plugin/;
 | 
						|
+
 | 
						|
+/ {
 | 
						|
+    compatible = "brcm,bcm2835";
 | 
						|
+
 | 
						|
+    fragment@0 {
 | 
						|
+        target-path = "/";
 | 
						|
+        __overlay__ {
 | 
						|
+            lcd_screen: auxdisplay {
 | 
						|
+                compatible = "hit,hd44780";
 | 
						|
+
 | 
						|
+                data-gpios = <&gpio 6 0>,
 | 
						|
+                             <&gpio 13 0>,
 | 
						|
+                             <&gpio 19 0>,
 | 
						|
+                             <&gpio 26 0>;
 | 
						|
+                enable-gpios = <&gpio 21 0>;
 | 
						|
+                rs-gpios = <&gpio 20 0>;
 | 
						|
+
 | 
						|
+                display-height-chars = <2>;
 | 
						|
+                display-width-chars = <16>;
 | 
						|
+            };
 | 
						|
+
 | 
						|
+        };
 | 
						|
+    };
 | 
						|
+
 | 
						|
+    fragment@1 {
 | 
						|
+       target = <&lcd_screen>;
 | 
						|
+        __dormant__ {
 | 
						|
+            backlight-gpios = <&gpio 12 0>;
 | 
						|
+        };
 | 
						|
+    };
 | 
						|
+
 | 
						|
+    __overrides__ {
 | 
						|
+        pin_d4 = <&lcd_screen>,"data-gpios:4";
 | 
						|
+        pin_d5 = <&lcd_screen>,"data-gpios:16";
 | 
						|
+        pin_d6 = <&lcd_screen>,"data-gpios:28";
 | 
						|
+        pin_d7 = <&lcd_screen>,"data-gpios:40";
 | 
						|
+        pin_en = <&lcd_screen>,"enable-gpios:4";
 | 
						|
+        pin_rs = <&lcd_screen>,"rs-gpios:4";
 | 
						|
+        pin_bl = <0>,"+1", <&lcd_screen>,"backlight-gpios:4";
 | 
						|
+        display_height = <&lcd_screen>,"display-height-chars:0";
 | 
						|
+        display_width = <&lcd_screen>,"display-width-chars:0";
 | 
						|
+    };
 | 
						|
+
 | 
						|
+};
 | 
						|
-- 
 | 
						|
2.19.1
 | 
						|
 |