On Wed, Dec 9, 2020 at 3:08 PM H. Nikolaus Schaller <hns@xxxxxxxxxxxxx> wrote: > > But I have tested with > > > spi->mode |= SPI_MODE_3; > > which should keep the mode intact. Right? That did not work either. > - make sure ("spi: fix client driver breakages when using GPIO descriptors") is in your tree - your panel's CS is active-low, so 'spi-cs-high' should be removed from its devicetree entry. In accordance with the rules as explained in commit message of 6953c57ab172. Also in accordance with the table you posted in this patch. When these two changes in place, your panel should work. I have tested this by mirroring your setup on my board: spi5-gpio { compatible = "spi-gpio"; #address-cells = <0x1>; #size-cells = <0x0>; pinctrl-names = "default"; pinctrl-0 = <&...>; sck-gpios = <&gpio... GPIO_ACTIVE_HIGH>; miso-gpios = <&gpio... GPIO_ACTIVE_HIGH>; mosi-gpios = <&gpio... GPIO_ACTIVE_HIGH>; cs-gpios = <&gpio... GPIO_ACTIVE_HIGH>; num-chipselects = <1>; ethernet-switch@0 { /* active low cs */ compatible = "micrel,ksz8795"; spi-max-frequency = <1000000>; reg = <0>; }; }; If this does not work for you, then what are we missing?