1*12f6baa4SAlex Lanzano# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*12f6baa4SAlex Lanzano%YAML 1.2 3*12f6baa4SAlex Lanzano--- 4*12f6baa4SAlex Lanzano$id: http://devicetree.org/schemas/display/sharp,ls010b7dh04.yaml# 5*12f6baa4SAlex Lanzano$schema: http://devicetree.org/meta-schemas/core.yaml# 6*12f6baa4SAlex Lanzano 7*12f6baa4SAlex Lanzanotitle: Sharp Memory LCD panels 8*12f6baa4SAlex Lanzano 9*12f6baa4SAlex Lanzanomaintainers: 10*12f6baa4SAlex Lanzano - Alex Lanzano <lanzano.alex@gmail.com> 11*12f6baa4SAlex Lanzano 12*12f6baa4SAlex Lanzanodescription: 13*12f6baa4SAlex Lanzano Sharp Memory LCDs are a series of monochrome displays that operate over 14*12f6baa4SAlex Lanzano a SPI bus. The displays require a signal (VCOM) to be generated to prevent 15*12f6baa4SAlex Lanzano DC bias build up resulting in pixels being unable to change. Three modes 16*12f6baa4SAlex Lanzano can be used to provide the VCOM signal ("software", "external", "pwm"). 17*12f6baa4SAlex Lanzano 18*12f6baa4SAlex Lanzanoproperties: 19*12f6baa4SAlex Lanzano compatible: 20*12f6baa4SAlex Lanzano enum: 21*12f6baa4SAlex Lanzano - sharp,ls010b7dh04 22*12f6baa4SAlex Lanzano - sharp,ls011b7dh03 23*12f6baa4SAlex Lanzano - sharp,ls012b7dd01 24*12f6baa4SAlex Lanzano - sharp,ls013b7dh03 25*12f6baa4SAlex Lanzano - sharp,ls013b7dh05 26*12f6baa4SAlex Lanzano - sharp,ls018b7dh02 27*12f6baa4SAlex Lanzano - sharp,ls027b7dh01 28*12f6baa4SAlex Lanzano - sharp,ls027b7dh01a 29*12f6baa4SAlex Lanzano - sharp,ls032b7dd02 30*12f6baa4SAlex Lanzano - sharp,ls044q7dh01 31*12f6baa4SAlex Lanzano 32*12f6baa4SAlex Lanzano reg: 33*12f6baa4SAlex Lanzano maxItems: 1 34*12f6baa4SAlex Lanzano 35*12f6baa4SAlex Lanzano spi-max-frequency: 36*12f6baa4SAlex Lanzano maximum: 2000000 37*12f6baa4SAlex Lanzano 38*12f6baa4SAlex Lanzano sharp,vcom-mode: 39*12f6baa4SAlex Lanzano $ref: /schemas/types.yaml#/definitions/string 40*12f6baa4SAlex Lanzano description: | 41*12f6baa4SAlex Lanzano software - This mode relies on a software operation to send a 42*12f6baa4SAlex Lanzano "maintain display" message to the display, toggling the vcom 43*12f6baa4SAlex Lanzano bit on and off with each message 44*12f6baa4SAlex Lanzano 45*12f6baa4SAlex Lanzano external - This mode relies on an external clock to generate 46*12f6baa4SAlex Lanzano the signal on the EXTCOMM pin 47*12f6baa4SAlex Lanzano 48*12f6baa4SAlex Lanzano pwm - This mode relies on a pwm device to generate the signal 49*12f6baa4SAlex Lanzano on the EXTCOMM pin 50*12f6baa4SAlex Lanzano 51*12f6baa4SAlex Lanzano enum: [software, external, pwm] 52*12f6baa4SAlex Lanzano 53*12f6baa4SAlex Lanzano enable-gpios: true 54*12f6baa4SAlex Lanzano 55*12f6baa4SAlex Lanzano pwms: 56*12f6baa4SAlex Lanzano maxItems: 1 57*12f6baa4SAlex Lanzano description: External VCOM signal 58*12f6baa4SAlex Lanzano 59*12f6baa4SAlex Lanzanorequired: 60*12f6baa4SAlex Lanzano - compatible 61*12f6baa4SAlex Lanzano - reg 62*12f6baa4SAlex Lanzano - sharp,vcom-mode 63*12f6baa4SAlex Lanzano 64*12f6baa4SAlex LanzanoallOf: 65*12f6baa4SAlex Lanzano - $ref: panel/panel-common.yaml# 66*12f6baa4SAlex Lanzano - $ref: /schemas/spi/spi-peripheral-props.yaml# 67*12f6baa4SAlex Lanzano 68*12f6baa4SAlex Lanzano - if: 69*12f6baa4SAlex Lanzano properties: 70*12f6baa4SAlex Lanzano sharp,vcom-mode: 71*12f6baa4SAlex Lanzano const: pwm 72*12f6baa4SAlex Lanzano then: 73*12f6baa4SAlex Lanzano required: 74*12f6baa4SAlex Lanzano - pwms 75*12f6baa4SAlex Lanzano 76*12f6baa4SAlex LanzanounevaluatedProperties: false 77*12f6baa4SAlex Lanzano 78*12f6baa4SAlex Lanzanoexamples: 79*12f6baa4SAlex Lanzano - | 80*12f6baa4SAlex Lanzano spi { 81*12f6baa4SAlex Lanzano #address-cells = <1>; 82*12f6baa4SAlex Lanzano #size-cells = <0>; 83*12f6baa4SAlex Lanzano 84*12f6baa4SAlex Lanzano display@0 { 85*12f6baa4SAlex Lanzano compatible = "sharp,ls013b7dh03"; 86*12f6baa4SAlex Lanzano reg = <0>; 87*12f6baa4SAlex Lanzano spi-cs-high; 88*12f6baa4SAlex Lanzano spi-max-frequency = <1000000>; 89*12f6baa4SAlex Lanzano sharp,vcom-mode = "software"; 90*12f6baa4SAlex Lanzano }; 91*12f6baa4SAlex Lanzano }; 92*12f6baa4SAlex Lanzano... 93