Re: [PATCH 09/14] Blackfin SPI driver: Fix SPI driver to work with SPI flash ST25P16 on bf548




On Wed, 2007-10-31 at 00:11 -0700, David Brownell wrote:
On Tuesday 30 October 2007, Bryan Wu wrote:
Maybe there are some confusion of mixing up the spi_trasnfer.speed_hz
with the spi_device.max_speed_hz.

spi_device.max_speed_hz comes from spi_board_info.max_speed_hz, it is
for the default max speed value.

It's initialized from board_info, yes. Drivers can override it
using spi_setup().

One would expect they only override _downwards_ but that's not
guaranteed anywhere. A driver might have a way to establish that
this particular board can run faster, for example.


IMO, the spi_transfer.speed_hz <= spi_board_info.max_speed_hz and if
spi_trasnfer.speed_hz is 0, we should use spi_board_info.max_speed_hz.
From the meaning of max_speed_hz, the spi_transfer.speed_hz should not
beyond max_speed_hz.

In your explanation, the max_speed_hz is just a default value. the
transfer speed_hz can beyond max_speed_hz. We found the bug in M25P16
should be related this missing checking of the transfer speed_hz.


spi_transfer.speed_hz comes from upper applications for each spi
transfer setting.

Certainly; all spi_transfer records come from applications!
If that value is zero, that transfer segment uses the limit
from the spi_device ... otherwise, it can differ. Again,
the limits can vary based on devise characteristics; maybe
it can't feed data as fast for some commands.

(ISTR the M25P16 in $SUBJECT has two read commands, one of
which is only usable at clock rates below 33 MHz or so, but
most other commands can work above that speed just fine.)

OK, We check it on Blackfin board.
-Bryan Wu
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • Re: [PATCH 09/14] Blackfin SPI driver: Fix SPI driver to work with SPI flash ST25P16 on bf548
    ... Drivers can override it ... One would expect they only override _downwards_ but that's not ... transfer setting. ... it can't feed data as fast for some commands. ...
    (Linux-Kernel)
  • Re: AIC7xxx kernel problem with 2.4.2[234] kernels
    ... Can you provide your definition of "maintainer"? ... Let my drivers use that mechanism. ... Most SCSI commands are only idempotent if replayed in the same order ... As for tag starvation, just inserting a periodic ordered tag on devices ...
    (Linux-Kernel)
  • Re: [SLE] Black screen after NVidia update - 2nd posting
    ... You might try reinstalling the drivers again. ... troubles then try to download the drivers using the installer and then make ... the source package. ... of commands, one of these is also an advanced set of commands "--adv" IIRC. ...
    (SuSE)
  • Re: [opensuse] nvidia driver issue
    ... That, and some commands don't work with all distros. ... Using the proprietary drivers for Linux from ATI and Nvidia are a hit and miss in my experience. ... I have had best results downloading the drivers directly from nvidia and installing them from a console. ... Since this is an openSUSE specific support list I tend to provide openSUSE specific shortcuts. ...
    (SuSE)
  • Re: [opensuse] nvidia driver issue
    ... That should load sax2 in framebuffer mode. ... That, and some commands don't work with all distros. ... Using the proprietary drivers for Linux from ATI and Nvidia are a hit and miss in my experience. ...
    (SuSE)