From mboxrd@z Thu Jan 1 00:00:00 1970 From: Magnus Lilja Date: Mon, 04 Jan 2010 20:38:42 +0100 Subject: [U-Boot] [PATCH] SPI: Fix 32 bit transfers in mxc_spi.c In-Reply-To: <59b21cf20912022313m3e684e2ge1314a0f0f4868b@mail.gmail.com> References: <1257965907-5622-1-git-send-email-lilja.magnus@gmail.com> <20091202223201.157174C025@gemini.denx.de> <59b21cf20912022313m3e684e2ge1314a0f0f4868b@mail.gmail.com> Message-ID: <4B4243C2.4030900@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Magnus Lilja skrev: > 2009/12/3 Guennadi Liakhovetski : >> On Wed, 2 Dec 2009, Wolfgang Denk wrote: >> >>> Dear Guennadi, >>> >>> In message <1257965907-5622-1-git-send-email-lilja.magnus@gmail.com> Magnus Lilja wrote: >>>> diff --git a/drivers/spi/mxc_spi.c b/drivers/spi/mxc_spi.c >>>> index fad9840..8b5d4be 100644 >>>> --- a/drivers/spi/mxc_spi.c >>>> +++ b/drivers/spi/mxc_spi.c >>>> @@ -142,6 +142,8 @@ int spi_xfer(struct spi_slave *slave, unsigned int bitlen, const void *dout, >>>> *(u8 *)din = data; >>>> else if (bitlen < 17) >>>> *(u16 *)din = data; >>>> + else >>>> + *in_l = data; >>>> } >>>> } >>> Could you please comment ? >> Hm, I'm afraid, I broke more than just that. Now that I look at this loop, >> looks like I broke not only 32-bit transfers, but also all transfers with >> bitlen > 16, and this fix is then incomplete - it doesn't fix cases with >> bitlen > 32. Magnus, looks like you also only use single-block (bitlen=32) >> transfers? Do you have a chance to test > 32-bit transfers too? > > No, I don't have anything suitable on the SPI bus that would allow me > to test > 32-bit transfer. So, what was the verdict? I can only test SPI with the ATLAS (32 bit xfers). Can the patch be accepted even though it doesn't fix all problems or does it have to a "fix-everything"-patch? Regards, Magnus