3
0
mirror of https://github.com/Qortal/Brooklyn.git synced 2025-01-31 15:22:18 +00:00
Brooklyn/arch/arm/boot/dts/overlays/vc4-kms-dpi-hyperpixel2r-overlay.dts
2022-04-02 18:06:56 +05:00

115 lines
2.2 KiB
Plaintext

/*
* vc4-kms-dpi-hyperpixel2r-overlay.dts
*/
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/pinctrl/bcm2835.h>
/dts-v1/;
/plugin/;
/ {
compatible = "brcm,bcm2835";
fragment@0 {
target-path = "/";
__overlay__ {
spi {
compatible = "spi-gpio";
#address-cells = <1>;
#size-cells = <0>;
pinctrl-0 = <&spi_pins>;
pinctrl-names = "default";
sck-gpios = <&gpio 11 GPIO_ACTIVE_HIGH>;
mosi-gpios = <&gpio 10 GPIO_ACTIVE_HIGH>;
cs-gpios = <&gpio 18 GPIO_ACTIVE_LOW>;
num-chipselects = <1>;
panel: display@0 {
compatible = "pimoroni,hyperpixel2round";
reg = <0>;
/* 100 kHz */
spi-max-frequency = <100000>;
backlight = <&backlight>;
rotation = <0>;
port {
panel_in: endpoint {
remote-endpoint = <&dpi_out>;
};
};
};
};
backlight: backlight {
compatible = "gpio-backlight";
gpios = <&gpio 19 0>;
};
};
};
fragment@1 {
target = <&dpi>;
__overlay__ {
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&dpi_18bit_cpadhi_gpio0>;
port {
dpi_out: endpoint {
remote-endpoint = <&panel_in>;
};
};
};
};
fragment@2 {
target = <&gpio>;
__overlay__ {
spi_pins: hyperpixel4_spi_pins {
brcm,pins = <27 18 26>;
brcm,pull = <BCM2835_PUD_UP BCM2835_PUD_UP BCM2835_PUD_OFF>;
brcm,function = <0>;
};
};
};
fragment@3 {
target-path = "/";
__overlay__ {
i2c_gpio: i2c@0 {
compatible = "i2c-gpio";
status = "disabled";
gpios = <&gpio 10 GPIO_ACTIVE_HIGH /* sda */
&gpio 11 GPIO_ACTIVE_HIGH>; /* scl */
i2c-gpio,delay-us = <4>; /* ~100 kHz */
#address-cells = <1>;
#size-cells = <0>;
polytouch: edt-ft5x06@15 {
#address-cells = <1>;
#size-cells = <0>;
compatible = "edt,edt-ft5406";
reg = <0x15>;
interrupt-parent = <&gpio>;
interrupts = <27 0x02>;
touchscreen-size-x = <240>;
touchscreen-size-y = <240>;
};
};
};
};
__overrides__ {
disable-touch = <0>,"-3";
touchscreen-inverted-x = <&polytouch>,"touchscreen-inverted-x?";
touchscreen-inverted-y = <&polytouch>,"touchscreen-inverted-y!";
touchscreen-swapped-x-y = <&polytouch>,"touchscreen-swapped-x-y!";
rotate = <&panel>, "rotation:0";
};
};