[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <160695644776.2717324.633265815704005177@swboyd.mtv.corp.google.com>
Date: Wed, 02 Dec 2020 16:47:27 -0800
From: Stephen Boyd <swboyd@...omium.org>
To: Alexandru M Stan <amstan@...omium.org>
Cc: Mark Brown <broonie@...nel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
linux-arm-msm@...r.kernel.org, linux-spi@...r.kernel.org,
Akash Asthana <akashast@...eaurora.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Douglas Anderson <dianders@...omium.org>
Subject: Re: [PATCH] spi: spi-geni-qcom: Use the new method of gpio CS control
Quoting Stephen Boyd (2020-12-02 15:28:45)
> Quoting Alexandru M Stan (2020-12-02 14:18:20)
> > Unfortunately this patch makes my cros-ec (the main EC that used to
> > work even before my debugging) also fail to probe:
> > [ 0.839533] cros-ec-spi spi6.0: EC failed to respond in time
> > [ 1.040453] cros-ec-spi spi6.0: EC failed to respond in time
> > [ 1.040852] cros-ec-spi spi6.0: Cannot identify the EC: error -110
> > [ 1.040855] cros-ec-spi spi6.0: cannot register EC, fallback to spidev
> > [ 1.040942] cros-ec-spi: probe of spi6.0 failed with error -110
> >
> > I wasn't closely looking at this part closely when I was using my
> > other spi port with spidev, so this is why I haven't noticed it
> > before.
> > Doug suggests this might be a polarity issue. More scoping to be had.
> >
>
> Ah I see. It looks like the cs-gpios polarity is wrong for the DTS on
> sc7180. That's a patch that Doug has sent in for the qcom tree, commit
> 37dd4b777942 ("arm64: dts: qcom: sc7180: Provide pinconf for SPI to use
> GPIO for CS") and it is pending for the next release (v5.11). Doug says
> he will send in a fix for the DTS side, but this patch is still "good"
> as far as I can tell. It moves us to use gpio descriptors and also finds
> bugs like this in the DTS file that we would have missed otherwise
> because the legacy mode doesn't look at the polarity flags in DT.
And that is wrong. With even more investigation and Doug's eagle eyes it
seems that the cros-ec driver is overriding the spi::mode to clear out
the SPI_CS_HIGH bit that the spi core sets in there when using the gpio
descriptors. I'll send a patch for cros-ec-spi shortly.
Powered by blists - more mailing lists