1# Copyright (c) 2023 Mr Beam Lasers GmbH. 2# Copyright (c) 2023 Amrith Venkat Kesavamoorthi <amrith@mr-beam.org> 3# Copyright (c) 2023 Martin Kiepfer <mrmarteng@teleschirm.org> 4# SPDX-License-Identifier: Apache-2.0 5 6description: | 7 GC9X01X display driver. 8 9 This driver implements support for various GC9X01X graphics 10 controllers and different display sizes. It has been validated 11 for following controllers: 12 - GC9101A: (Waveshare 240x240, 1.28inch round lcd display 240x240) 13 14 Here is an example to define a display interface: 15 16 / { 17 my_mipi_dbi { 18 compatible = "zephyr,mipi-dbi-spi"; 19 status = "okay"; 20 #address-cells = <1>; 21 #size-cells = <0>; 22 spi-dev = <&spi2>; 23 dc-gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>; 24 reset-gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; 25 26 gc9x01x_lcd: gc9x01x_lcd@0 { 27 compatible = "galaxycore,gc9x01x"; 28 reg = <0>; 29 mipi-max-frequency = <DT_FREQ_M(100)>; 30 pixel-format = <PANEL_PIXEL_FORMAT_RGB_565>; 31 width = <240>; 32 height = <240>; 33 display-inversion; 34 }; 35 }; 36 }; 37 38 39compatible: "galaxycore,gc9x01x" 40 41include: [mipi-dbi-spi-device.yaml, display-controller.yaml, lcd-controller.yaml] 42 43properties: 44 orientation: 45 type: string 46 default: "normal" 47 enum: 48 - "normal" 49 - "90" 50 - "180" 51 - "270" 52 description: Display orientation (CW) in degrees. 53 54 display-inversion: 55 type: boolean 56 description: | 57 Display inversion mode. Every bit is inverted from the frame memory to 58 the display. 59 60 pwrctrl1: 61 type: uint8-array 62 default: [ 63 0x00 64 ] 65 description: Power-control 1 register value 66 67 pwrctrl2: 68 type: uint8-array 69 default: [ 70 0x13 71 ] 72 description: Power-control 2 register value 73 74 pwrctrl3: 75 type: uint8-array 76 default: [ 77 0x13 78 ] 79 description: Power-control 3 register value 80 81 pwrctrl4: 82 type: uint8-array 83 default: [ 84 0x22 85 ] 86 description: Power-control 4 register value 87 88 gamma1: 89 type: uint8-array 90 default: [ 91 0x45, 92 0x09, 93 0x08, 94 0x08, 95 0x26, 96 0x2A 97 ] 98 description: Gamma correction 1 register values (negative polarity) 99 100 gamma2: 101 type: uint8-array 102 default: [ 103 0x43, 104 0x70, 105 0x72, 106 0x36, 107 0x37, 108 0x6F 109 ] 110 description: Gamma correction 3 register values 111 112 gamma3: 113 type: uint8-array 114 default: [ 115 0x45, 116 0x09, 117 0x08, 118 0x08, 119 0x26, 120 0x2A 121 ] 122 description: Gamma correction 3 register values (positive polarity) 123 124 gamma4: 125 type: uint8-array 126 default: [ 127 0x43, 128 0x70, 129 0x72, 130 0x36, 131 0x37, 132 0x6F 133 ] 134 description: Gamma correction 4 register values 135 136 framerate: 137 type: uint8-array 138 default: [ 139 0x34 140 ] 141 description: Framerate register value 142