From mboxrd@z Thu Jan 1 00:00:00 1970 From: Grant Likely Subject: Re: spi_mpc8xxx.c: chip select polarity problem Date: Thu, 26 Nov 2009 12:17:35 -0700 Message-ID: References: <200911161742.46663.to-fleischer@t-online.de> <200911211708.47253.to-fleischer@t-online.de> <200911252141.59549.to-fleischer@t-online.de> <20091126121204.GA3558@oksana.dev.rtsoft.ru> <20091126184157.GA16607@oksana.dev.rtsoft.ru> <20091126190101.GA19404@oksana.dev.rtsoft.ru> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Cc: Torsten Fleischer , spi-devel-general@lists.sourceforge.net, linuxppc-dev@lists.ozlabs.org To: avorontsov@ru.mvista.com Return-path: In-Reply-To: <20091126190101.GA19404@oksana.dev.rtsoft.ru> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linuxppc-dev-bounces+glppd-linuxppc64-dev=m.gmane.org@lists.ozlabs.org Errors-To: linuxppc-dev-bounces+glppd-linuxppc64-dev=m.gmane.org@lists.ozlabs.org List-Id: linux-spi.vger.kernel.org On Thu, Nov 26, 2009 at 12:01 PM, Anton Vorontsov wrote: > On Thu, Nov 26, 2009 at 11:50:05AM -0700, Grant Likely wrote: >> On Thu, Nov 26, 2009 at 11:41 AM, Anton Vorontsov >> wrote: >> > On Thu, Nov 26, 2009 at 11:16:34AM -0700, Grant Likely wrote: >> > [...] >> >> The spi-cs-high property is defined in >> >> Documentation/powerpc/dts-bindings/spi-bus.txt, but it definitely was >> >> a mistake >> > >> > Yup. >> > >> >> Currently the spi-cs-high property is parsed in the >> >> of_register_spi_devices() function, but the CS polarity needs to be >> >> known before registering devices. =A0It needs to be factored out into >> >> another utility function callable by spi bus drivers so that it can >> >> get polarity data at probe time. >> > >> > Untill we have this, Torsten's patch is a real improvement, and >> > works for non-broken hw/fw. >> > >> > So I think it should be applied. >> >> I disagree since it only band-aids the problem and uglifies the driver >> in the process. =A0In the immediate term the driver needs to be changed >> to read the spi-cs-high property out of the child nodes before >> registering the devices. > > Hm. I thought we agreed that spi-cs-high is not good? Why do you > encourage using it then? We'll have to uglify the driver with > legacy device-tree handling code. spi-cs-high is definitely not a complete solution, but it isn't actively evil either. Plus it is documented and (presumably) in active use. so support for it should not be dropped. Regardless, there needs to be a library function for parsing all the SPI child nodes and returning the active state for each GPIO chip select. All the code for parsing the old spi-cs-high properties can be contained in the same place as a new yet-to-be-defined bus node cs polarity property. The rework to the driver itself is not ugly. g. -- = Grant Likely, B.Sc., P.Eng. Secret Lab Technologies Ltd.