Messages in this thread | | | From | Brad Larson <> | Date | Sun, 22 Aug 2021 18:26:56 -0700 | Subject | Re: [PATCH v2 03/13] spi: dw: Add support for Pensando Elba SoC SPI |
| |
Hi Sergey,
On Wed, Mar 31, 2021 at 11:00 AM Serge Semin <fancer.lancer@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
| |