Re: [BUG] SPI broken for SPI based panel drivers

From: H. Nikolaus Schaller
Date: Tue Dec 01 2020 - 12:13:27 EST


Hi Sven,

> Am 01.12.2020 um 17:53 schrieb Sven Van Asbroeck <thesven73@xxxxxxxxx>:
>
> Hi Nikolaus,
>
> On Tue, Dec 1, 2020 at 11:43 AM H. Nikolaus Schaller <hns@xxxxxxxxxxxxx> wrote:
>>
>> You are right. It is active low.
>>
>
> In that case, we have a very simple solution, just remove the spi-cs-high,
> and things will work.

We originally had it that way and because there was a change in gpiolib we had
to introduce it.

See: f1f028ff89cb0d3

where we were forced to introduce it although I had preferred to not change DT.

I am not sure if DT maintainers accept that we revert a DT change just to
handle some change in a driver. Usually they insist on fixing a driver and
live with the DT. DT is carved in stone or could be ROM...

So you could try to submit a revert of f1f028ff89cb0d3 with a description
why it is needed. And please make sure that it is also applied where your
patch is backported to stable. So it should have some

Fixes: 766c6b63aa04 ("spi: fix client driver breakages when using GPIO descriptors")

>
> In case of SPI CS gpios, the current kernel ignores all
> GPIO_ACTIVE_HIGH/LOW
> flags, and uses the presence/absence of spi-cs-high instead, to
> determine active high / active low.

So you mean you are just restoring the behaviour before

6953c57ab172

was introduced?

The alternative is that you restore the cs-gpios + spi-cs-high semantics
as defined by 6953c57ab172 and everything is fine without touching (our)
DTS (again).

BR and thanks,
Nikolaus