On 15-05-14 11:36 AM, Scott Branden wrote: > On 15-05-14 11:28 AM, Florian Fainelli wrote: >> On 14/05/15 11:19, Scott Branden wrote: >>> Hi Mark, >>> >>> On 15-05-14 03:31 AM, Mark Brown wrote: >>>> On Wed, May 13, 2015 at 05:19:06PM -0700, Scott Branden wrote: >>>> >>>>> The purpose of this mspi interface is to connect to NOR flash. There >>>>> are >>>>> other SPI interfaces on the devices used to connect to other SPI >>>>> devies. We >>>>> don't have any need to support full duplex slaves on this port (NOR >>>>> have any >>>>> hardware wired this way - pun realized after typing this). >>>> >>>> Chip vendors often say this sort of thing and then get surprised by >>>> what >>>> their users choose to do, and even if it only ever gets used with flash >>>> all it would take is some new flash command which can use full duplex >>>> for something. Please write the code so it at least tries to handle >>>> full duplex operation, if you can't test it fully that's not the end of >>>> the world. It doesn't look like it should be particularly difficult. >>>> >>> Yes, there is always room for improvements in code. In this case - it >>> really is not worth our time to add code we can't test. We try to >>> deliver code that we can test and actually works. Yes, if anyone needs >>> to use the mspi for full duplex operation code can be added in the >>> future - it is software. This block has gone through many generations >>> of our SoCs and has only been used for this purpose - the bootROM boots >>> from this SPI only. It is dedicated for this purpose. >>> >>> Also, there are other SPI blocks on the SoC that are used for connect >>> other SPI devices. These SPI blocks are properly designed for >>> full-duplex operation. This mspi block is designed for connecting to >>> NOR flash. >> >> This is an implementation detail and architectural choice that is >> specific to the Cygnus SoCs where a single MSPI is present, right? >> >> This same MSPI block is instantiated multiple times in BCM7xxx chips to >> interface to general purpose SPI slaves, ranging from Ethernet switches >> to bluetooth chips etc... those will definitively want full-duplex to be >> working. >> >> I would greatly appreciate if some thought to supporting full duplex >> transfers was given in this driver drop. If you cannot test that, then >> maybe just flag the driver has been half-duplex only for now... >> >> Thank you. >> > Hi Florian, > Yes, we can flag that - but we have no understanding of how the block > operates in this mode. It would be great if your team could add the > necessary full duplex support in a patch enhancement to the driver? > Going blind on this one isn't the way to go. If I had a real full duplex slave I could experiment with it to get it working. But with the docs I have on this and considering how finicky the block is I think we're wasting our time. Jon -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html