[PATCH V2] spi: Update speed/mode on change

Marek Vasut marex at denx.de
Mon Mar 29 04:09:23 CEST 2021


On 3/29/21 3:59 AM, Tom Rini wrote:
> On Mon, Mar 29, 2021 at 03:32:51AM +0200, Marek Vasut wrote:
>> On 3/28/21 11:30 PM, Tom Rini wrote:
>>> On Fri, Feb 26, 2021 at 03:21:24PM +0100, Marek Vasut wrote:
>>>
>>>> The spi_get_bus_and_cs() may be called on the same bus and chipselect
>>>> with different frequency or mode. This is valid usecase, but the code
>>>> fails to notify the controller of such a configuration change. Call
>>>> spi_set_speed_mode() in case bus frequency or bus mode changed to let
>>>> the controller update the configuration.
>>>>
>>>> The problem can easily be triggered using the sspi command:
>>>> => sspi 0:0 at 1000
>>>> => sspi 0:0 at 2000
>>>> Without this patch, both transfers happen at 1000 Hz. With this patch,
>>>> the later transfer happens correctly at 2000 Hz.
>>>>
>>>> Signed-off-by: Marek Vasut <marex at denx.de>
>>>> Cc: Jagan Teki <jagan at amarulasolutions.com>
>>>> Cc: Patrick Delaunay <patrick.delaunay at st.com>
>>>
>>> So, very reliably I can make:
>>> https://source.denx.de/u-boot/u-boot/-/jobs/245517
>>> happen locally as well building with clang.  It's not obvious to me why
>>> the test now fails however.
>>
>> Can you please be more specific / clear ? I have no idea what those 300
>> lines of cryptic output mean, nor what are you trying to say by the above,
>> sorry.
> 
> If you build with clang, for sandbox, and run the tests, U-Boot crashes
> in the unit tests that you start with "ut dm".

And that is related to this patch somehow ? How ?


More information about the U-Boot mailing list