From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933492AbbENShP (ORCPT ); Thu, 14 May 2015 14:37:15 -0400 Received: from mail-gw3-out.broadcom.com ([216.31.210.64]:7491 "EHLO mail-gw3-out.broadcom.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933061AbbENShM (ORCPT ); Thu, 14 May 2015 14:37:12 -0400 X-IronPort-AV: E=Sophos;i="5.13,430,1427785200"; d="scan'208";a="64751758" Message-ID: <5554EB49.9020601@broadcom.com> Date: Thu, 14 May 2015 11:36:57 -0700 From: Scott Branden User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0 MIME-Version: 1.0 To: Florian Fainelli , Mark Brown CC: Jonathan Richardson , Dmitry Torokhov , Anatol Pomazau , Rob Herring , Pawel Moll , Mark Rutland , Ian Campbell , "Kumar Gala" , , , bcm-kernel-feedback-list , , , Subject: Re: [PATCH 2/2] spi: bcm-mspi: Add support for Broadcom MSPI driver. References: <1431452293-16697-1-git-send-email-jonathar@broadcom.com> <1431452293-16697-3-git-send-email-jonathar@broadcom.com> <20150512191718.GW3066@sirena.org.uk> <5553E31A.8060309@broadcom.com> <5553E9FA.4070708@broadcom.com> <20150514103144.GO2761@sirena.org.uk> <5554E715.7070203@broadcom.com> <5554E957.3030809@gmail.com> In-Reply-To: <5554E957.3030809@gmail.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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?