Re: [PATCH 1/2] spi: support inter-word delay requirement for devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jonas,

On Sat, Jan 26, 2019 at 8:53 AM Jonas Bonn <jonas@xxxxxxxxxxx> wrote:
> On 25/01/2019 18:50, Mark Brown wrote:
> > On Fri, Jan 25, 2019 at 05:47:13PM +0000, Mark Brown wrote:
> >> On Fri, Jan 25, 2019 at 01:06:45PM +0100, Jonas Bonn wrote:
> >>> Having this as device property rather than a transfer property allows this
> >>> to be configured one time in setup() rather than having to fiddle with the
> >>> configuration register for every transfer.
> >
> >> That doesn't mean that the coniguration should be done in DT though, and
> >> given that this presumably is a property of the device there seems to be
> >> no reason why we'd have it in DT - if every instance of the device is
> >> going to need to set the property we should just figure it out from the
> >> compatble string instead.
> >
> > To be clear here: the suggestion is to add a parameter the slave device
> > can set in spi_device which sets the default word_delay similarly to how
> > max_speed_hz works.
>
> I'm confused... isn't that exactly what this patch does?  It adds a
> field word_delay to spi_device in the same manner as max_speed_hz.
>
> I also added the ability to set it via DT, which I can break out into a
> separate patch if that's an issue.  Or is the problem that it's set via
> DT, at all?  Documentation/devicetree/bindings/spi-bus.txt documents 10
> other slave-node properties related to transfer characteristics;
> word_delay is just another such characteristic.
>
> But again, I'm having trouble parsing your response  Is the patch wrong,
> should be broken up, or you just misunderstood it?

IIUIC, Mark means that it may be a non-configurable property of the slave
device, and thus should be handled (fixed setting) in the SPI slave driver.

Compare this to CPHA/CPOL, which are properties of the SPI slave device,
but which may be configurable. E.g. many SPI FLASHes support multiple
configurations. See e.g. commit 9c5becce21af35e5 ("ARM: shmobile: koelsch:
Fix QSPI mode of SPI-Flash into mode3").

Again, max_speed_hz is something different: while both the SPI master and
slave may support high speeds, board wiring (capacitance/inductance) may
need to force a slower speed than supported by the devices, so it makes
sense to make that configurable from DT.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux