Can someone explain to me how the SPI Framework chip select is supposed to work?
My pxa2xx_spi device does not use a chip_select at all, hence I have no cs_control routine defined in struct pxa2xx_spi_chip.cs_control. I have never understood how chip select is supposed to work in the SPI framework, other than explicit code in the controller driver calling a user defined function, as in pxa2xx_spi.c. I gather there is a mechanism involving the struct spi_board_info.chip_select which selects an index for a chip select at a higher level of the SPI framework. I don't know where the connection is between this and a physical GPIO line connected to an external chip. Also, in connection with the Framework chip select mechanism, I have never understood, even if a correspondence is made between a spi_board_info.chip_select index and a physical IO line, how that CS is supposed to know when to change state. It is clear in pxa2xx_spi.c that when a user supplied cs_control function is called, the appropriate action defined in the function will take place. However, the null_cs_control routine in pxa2xx_spi.c, which is called if the user does not specify a routine in struct pxa2xx_spi_chip.cs_control, simply returns without calling any function defined in the SPI framework. Dave, can you shed light for me? -- Ned Forrester [EMAIL PROTECTED] Oceanographic Systems Lab 508-289-2226 Applied Ocean Physics and Engineering Dept. Woods Hole Oceanographic Institution Woods Hole, MA 02543, USA http://www.whoi.edu/sbl/liteSite.do?litesiteid=7212 http://www.whoi.edu/hpb/Site.do?id=1532 http://www.whoi.edu/page.do?pid=10079 ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ spi-devel-general mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/spi-devel-general
