> -----Original Message----- > From: Valentin Longchamp [mailto:valentin.longch...@keymile.com] > Sent: 29 March 2012 21:15 > To: Prafulla Wadaskar > Cc: u-boot@lists.denx.de; Gerlando Falauto; Holger Brunck > Subject: Re: [PATCH v2] spi/kirkwood: add weak functions > board_spi_bus_claim/release > > Hi Prafulla, > > On 03/29/2012 02:49 PM, Valentin Longchamp wrote: > > On 03/28/2012 09:48 AM, Prafulla Wadaskar wrote: > >> Basically spi_claim_bus and spi_release_bus are not supported in > current Kirkwood spi driver. > >> These are needed if someone wish to share the same interface pins > with some other peripheral (that is your use case) > > > > Correct, this is exactly our use case: we have the NAND Flash > Controller and the > > SPI controller that share the same pins. > > > >> > >> But this is not board specific whereas, it should be feature > enhancement for Kirkwood spi driver. > > > > This is correct for the mpp part of spi_claim_bus. If you look at > the actual > > implementation that we do in our board specific function, there is > an additional > > step that is needed by our board design. > > > > I have started to implement this, and now I see that with your > approach of doing > the mpp part in the driver does not work and my proposed solution of > doing this > with board specific functions is the correct one: > > The SPI_SI, SPI_SCK, SPI_CSn all can be used with different mpp > configuration. > This is a board design parameter. How can the driver know which one is > used on > the board ?
Dear Valentin You should keep by default NF configuration in your board configuration (kwmpp_config), so this becomes your default mpp configuration. If SPI flash is being accessed, all spi_flash calls are guarded with claim_bus and release_bus APIs. In Kirkwood specific claim_bus API, you will backup default configuration (which is NF in your case) for these particular pins (SPI_SI, SPI_SCK, SPI_CSn, MOSI, MISO). and in release_bus API, you will reconfigure backed-up mpp configuration (which will be NF in your case). With this you don't need km_hw_spi_bus_claim() or do_spi_toggle() in your board specific code any more. How come this doesn't work? It should work, if not let's debug the problem. Regards.. Prafulla . . . _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot