[PATCH v2 03/13] spi: dw: Add support for Pensando Elba SoC SPI
Brad Larson
brad at pensando.io
Sun Aug 22 18:26:56 PDT 2021
Hi Sergey,
On Wed, Mar 31, 2021 at 11:00 AM Serge Semin <fancer.lancer at gmail.com> wrote:
>
> On Sun, Mar 28, 2021 at 06:59:28PM -0700, Brad Larson wrote:
> > The Pensando Elba SoC uses a GPIO based chip select
> > for two DW SPI busses with each bus having two
> > chip selects.
(...)
> > +static void dw_spi_elba_set_cs(struct spi_device *spi, bool enable)
> > +{
> > + struct dw_spi *dws = spi_master_get_devdata(spi->master);
> > +
>
> > + if (!enable) {
>
> Please, be more attentive to the review-comments given to you before
> resending a new patchset. One more time. This version of set_cs won't
> work for Active-high CS. Each SPI controller working with GPIO-based
> chip-select is marked as supporting that feature. So your DW
> SPI controller won't be able to work correctly with SPI-devices
> activated by active-high chip-select signal. Note default
> dw_spi_set_cs() callback supports that.
Thanks for your patience. It took me a while to understand what you
were asking about regarding dw_spi_set_cs() due to the unnecessarily
complicated function that was being used. The current implementation
I propose for v3 patchset is this which as you identified handles cs
active high/low properly.
static void dw_spi_elba_set_cs(struct spi_device *spi, bool enable)
{
spi->chip_select = 0;
dw_spi_set_cs(spi, enable);
}
Regards,
Brad
More information about the linux-arm-kernel
mailing list