diff --git a/package/firmware/mipi-dbi/Makefile b/package/firmware/mipi-dbi/Makefile new file mode 100644 index 00000000000..ec9e37b9bba --- /dev/null +++ b/package/firmware/mipi-dbi/Makefile @@ -0,0 +1,37 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +include $(TOPDIR)/rules.mk + +PKG_NAME:=mipi-dbi +PKG_RELEASE:=1 + +PKG_LICENSE:=GPL-2.0-or-later +PKG_LICENSE_FILES:= + +PKG_MAINTAINER:=Matt Eaton + +include $(INCLUDE_DIR)/package.mk + +define Package/mipi-dbi-default + SECTION:=firmware + CATEGORY:=Firmware +endef + +define Build/Compile +endef + +# From https://github.com/notro/panel-mipi-dbi +# mipi-dbi-cmd ubnt,utr-lcd.bin ubnt,utr-lcd.txt + +define Package/mipi-dbi-ubnt-utr + $(Package/mipi-dbi-default) + TITLE:=MIPI DBI LCD init sequence for Ubiquiti UniFi Travel Router + DEPENDS:=@TARGET_ipq40xx +endef + +define Package/mipi-dbi-ubnt-utr/install + $(INSTALL_DIR) $(1)/lib/firmware + $(INSTALL_DATA) ./files/ubnt,utr-lcd.bin $(1)/lib/firmware/ +endef + +$(eval $(call BuildPackage,mipi-dbi-ubnt-utr)) diff --git a/package/firmware/mipi-dbi/files/ubnt,utr-lcd.bin b/package/firmware/mipi-dbi/files/ubnt,utr-lcd.bin new file mode 100644 index 00000000000..b754da7527b Binary files /dev/null and b/package/firmware/mipi-dbi/files/ubnt,utr-lcd.bin differ diff --git a/package/firmware/mipi-dbi/files/ubnt,utr-lcd.txt b/package/firmware/mipi-dbi/files/ubnt,utr-lcd.txt new file mode 100644 index 00000000000..7e258909065 --- /dev/null +++ b/package/firmware/mipi-dbi/files/ubnt,utr-lcd.txt @@ -0,0 +1,16 @@ +command 0x11 # Sleep Out — exits low-power mode and enables display logic +delay 120 # Stabilization delay after sleep-out +command 0x3A 0x55 # Pixel format: RGB565 (16-bit color) +command 0x36 0xC0 # MADCTL: orientation / mirroring / RGB order +command 0xB2 0x0C 0x0C 0x00 0x33 0x33 # Porch control — frame timing (porch widths) +command 0xB7 0x35 # Gate control — gate driver timing +command 0xBB 0x32 # VCOM setting — common voltage reference +command 0xC2 0x01 # Power control enable +command 0xC3 0x19 # VRH — regulator high-side voltage level +command 0xC4 0x20 # VDV/low-power bias control +command 0xC6 0x0F # Frame rate control +command 0xD0 0xA4 0xA1 # Power control 1 — internal power circuits +command 0xE0 0xD0 0x08 0x0E 0x09 0x09 0x05 0x31 0x33 0x48 0x17 0x14 0x15 0x31 0x34 # Positive gamma curve +command 0xE1 0xD0 0x08 0x0E 0x09 0x09 0x15 0x31 0x33 0x48 0x17 0x14 0x15 0x31 0x34 # Negative gamma curve +command 0x21 # Display inversion ON (polarity swap) +command 0x29 # Display ON