diff options
Diffstat (limited to 'yocto/meta-mikrophone/recipes-kernel/linux/device-tree-overlays')
| -rw-r--r-- | yocto/meta-mikrophone/recipes-kernel/linux/device-tree-overlays/mikroPhone-panel_overlay.dts | 110 | 
1 files changed, 110 insertions, 0 deletions
| diff --git a/yocto/meta-mikrophone/recipes-kernel/linux/device-tree-overlays/mikroPhone-panel_overlay.dts b/yocto/meta-mikrophone/recipes-kernel/linux/device-tree-overlays/mikroPhone-panel_overlay.dts new file mode 100644 index 0000000..bee2682 --- /dev/null +++ b/yocto/meta-mikrophone/recipes-kernel/linux/device-tree-overlays/mikroPhone-panel_overlay.dts @@ -0,0 +1,110 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright 2025 Uros Majstorovic + */ + +// adapted from: https://git.toradex.com/cgit/device-tree-overlays.git/tree/overlays/verdin-imx8mp_panel-cap-touch-10inch-lvds_overlay.dts?h=toradex_6.6-2.2.x-imx +// Verdin iMX8M Plus single-channel LVDS + +/dts-v1/; +/plugin/; + +#include <dt-bindings/gpio/gpio.h> +#include <dt-bindings/interrupt-controller/irq.h> +#include <dt-bindings/pwm/pwm.h> +#include "freescale/imx8mp-pinfunc.h" + +/ { +	compatible = "toradex,verdin-imx8mp"; +}; + +&{/} { +	backlight_lvds_native: backlight-lvds-native { +		compatible = "pwm-backlight"; +		pinctrl-names = "default"; +		brightness-levels = <0 45 63 88 119 158 203 255>; +		default-brightness-level = <4>; +		/* Verdin PWM_1 (SODIMM 15) */ +		pwms = <&pwm1 0 6666667>; +	}; + +	panel-lvds-native { +		compatible = "panel-lvds"; +		backlight = <&backlight_lvds_native>; +		data-mapping = "vesa-24"; +		height-mm = <110>; +		width-mm = <62>; + +		panel-timing { +			clock-frequency = <36000000>; +			hactive = <480>; +			hfront-porch = <23 60 71>; +			hsync-len = <15 40 47>; +			hback-porch = <23 60 71>; + +			vactive = <854>; +			vfront-porch = <5 7 10>; +			vsync-len = <6 9 12>; +			vback-porch = <5 7 10>; + +			hsync-active = <0>; +			vsync-active = <0>; +			de-active = <0>; +			pixelclk-active = <1>; /* positive edge */ +		}; + +		port { +			panel_lvds_native_in: endpoint { +				remote-endpoint = <&lvds_out>; +			}; +		}; +	}; +}; + +/* Verdin I2C_1 */ +&i2c4 { +	#address-cells = <1>; +	#size-cells = <0>; +	status = "okay"; + +	gt911@5d { +		compatible = "goodix,gt911"; +		reg = <0x5d>; +		pinctrl-names = "default"; +		pinctrl-0 = <&gpio1>; +		/* Verdin GPIO_3 (SODIMM 210) */ +		interrupt-parent = <&gpio1>; +		interrupts = <5 IRQ_TYPE_EDGE_FALLING>; +		/* Verdin GPIO_4 (SODIMM 212) */ +		reset-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>; +		status = "okay"; +	}; +}; + +&lcdif2 { +	status = "okay"; +}; + +&ldb { +	status = "okay"; + +	lvds-channel@0 { +		#address-cells = <1>; +		#size-cells = <0>; +		fsl,data-mapping = "spwg"; +		fsl,data-width = <24>; +		status = "okay"; + +		port@1 { +			reg = <1>; + +			lvds_out: endpoint { +				remote-endpoint = <&panel_lvds_native_in>; +			}; +		}; +	}; +}; + +&ldb_phy { +	status = "okay"; +}; | 
