[PATCH v3 2/3] spi: spi-cadence: supports transmission with bits_per_word of 16 and 32

Jun Guo jun.guo at cixtech.com
Wed Jan 14 18:14:48 PST 2026


hi Rodrigo,

   I'm very sorry for introducing this issue. Thank you for your 
reminder. I will immediately submit a patch to add 
SPI_CONTROLLER_MUST_TX to the flags during probe to resolve this problem.

On 1/15/2026 12:09 AM, Rodrigo Alencar wrote:
> [You don't often get email from 455.rodrigo.alencar at gmail.com. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
> 
> EXTERNAL EMAIL
> 
> On 26/01/14 02:16PM, Mark Brown wrote:
>> On Wed, Jan 14, 2026 at 02:14:35PM +0000, Rodrigo Alencar wrote:
>>> On 25/10/31 03:30PM, Jun Guo wrote:
>>
>>>> + if (xspi->txbuf) {
>>>> +         switch (xspi->n_bytes) {
>>>> +         case CDNS_SPI_N_BYTES_U8:
>>>> +                 txw = *(u8 *)xspi->txbuf;
>>>> +                 break;
>>
>>>> +         cdns_spi_write(xspi, CDNS_SPI_TXD, txw);
>>>> +         xspi->txbuf = (u8 *)xspi->txbuf + xspi->n_bytes;
>>>> + }
>>
>>> cdns_spi_write(xspi, CDNS_SPI_TXD, txw) needs to be called regardless of xspi->txbuf.
>>> Otherwise, there will be no clock for the read operation to work.
>>> This is a bug I am seeing on a Zedboard running on 6.19
>>
>> So the device needs to be flagged as SPI_CONTROLLER_MUST_TX?
> 
> yes, It works if
> 
> ctlr->flags = SPI_CONTROLLER_MUST_TX;
> 
> is added to the probe function. At least for my case handling with "xlnx,zynq-spi-r1p6"
> 
> kind regards,
> 
> Rodrigo Alencar
> 




More information about the linux-arm-kernel mailing list