summaryrefslogtreecommitdiffstats
path: root/drivers/spi
Commit message (Collapse)AuthorAgeFilesLines
* spi/sh-hspi: fix return value check in hspi_probe().Cyril Roelandt2012-12-191-1/+1
| | | | | | | | | According to its documentation, clk_get() returns a "valid IS_ERR() condition containing errno", so we should call IS_ERR() rather than a NULL check. Signed-off-by: Cyril Roelandt <tipecaml@gmail.com> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* spi/atmel: add DT supportJean-Christophe PLAGNIOL-VILLARD2012-12-171-1/+16
| | | | | | | | | | Use the newly introduce cs-gpios dt support on atmel. We do not use the hardware cs as it's wired and has bugs and limitations. As the controller believes that only active-low devices/systems exists. Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* of/spi: Fix SPI module loading by using proper "spi:" modalias prefixes.David Daney2012-12-151-1/+4
| | | | | | | | | To get modprobe to automatically load the proper modules, we need to prefix things with "spi:". Partially based on Grant Likely's suggestions. Signed-off-by: David Daney <david.daney@cavium.com> [grant.likely: reworked because drivers/of/of_spi.c has been removed] Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* spi: Change FIFO flush operation and spi channel offKyoungil Kim2012-12-151-4/+4
| | | | | | | | | Setting SW_RST does TX/RX FIFO flush. After FIFO flush, SW_RST should be cleared. The above setting and clearing SW_RST operation should be done after spi channel off. Signed-off-by: Kyoungil Kim <ki0351.kim@samsung.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* spi: Keep chipselect assertion during one messageKyoungil Kim2012-12-151-2/+0
| | | | | | | | During all transfers in one message, the device will not be chagned. So we don't need to deassert chipselect during one message. Signed-off-by: Kyoungil Kim <ki0351.kim@samsung.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* Merge tag 'spi-for-linus' of git://git.secretlab.ca/git/linux-2.6Linus Torvalds2012-12-1352-938/+2749
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull SPI updates from Grant Likely: "Primarily SPI device driver bug fixes, one removal of an old driver, and some new tegra support. There is some core code change too, but all in all pretty small stuff. The new features to note are: - Common code for describing GPIO CS lines in the device tree - Remove the SPI_BUFSIZ limitation on spi_write_the_read() - core spi ensures bits_per_word is set correctly - SPARC can now use SPI" * tag 'spi-for-linus' of git://git.secretlab.ca/git/linux-2.6: (36 commits) spi/sparc: Allow of_register_spi_devices for sparc spi: Remove HOTPLUG section attributes spi: Add support for specifying 3-wire mode via device tree spi: Fix comparison of different integer types spi/orion: Add SPI_CHPA and SPI_CPOL support to kirkwood driver. spi/sh: Add SH Mobile series as dependency to MSIOF controller spi/sh-msiof: Remove unneeded clock name spi: Remove SPI_BUFSIZ restriction on spi_write_then_read() spi/stmp: remove obsolete driver spi/clps711x: New SPI master driver spi: omap2-mcspi: remove duplicate inclusion of linux/err.h spi: omap2-mcspi: Fix the redifine warning spi/sh-hspi: add CS manual control support of_spi: add generic binding support to specify cs gpio spi: omap2-mcspi: remove duplicated include from spi-omap2-mcspi.c spi/bitbang: (cosmetic) simplify list manipulation spi/bitbang: avoid needless loop flow manipulations spi/omap: fix D0/D1 direction confusion spi: tegra: add spi driver for sflash controller spi: Dont call master->setup if not populated ...
| * spi/sparc: Allow of_register_spi_devices for sparcAndreas Larsson2012-12-101-1/+1
| | | | | | | | | | | | | | | | | | The spi support code works on SPARC too. No reason to exclude it from the party. Signed-off-by: Andreas Larsson <andreas@gaisler.com> Acked-by: David S. Miller <davem@davemloft.net> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * spi: Remove HOTPLUG section attributesGrant Likely2012-12-0747-158/+153
| | | | | | | | | | | | | | | | | | | | | | | | | | | | CONFIG_HOTPLUG is going away as an option. As result the __dev* markings will be going away. Remove use of __devinit, __devexit_p, __devinitdata, __devinitconst, and __devexit. Bill Pemberton has done most of the legwork on this series. I've used his script to purge the attributes from the drivers/gpio tree. Reported-by: Bill Pemberton <wfp5p@virginia.edu> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * spi: Add support for specifying 3-wire mode via device treeLars-Peter Clausen2012-12-071-0/+2
| | | | | | | | | | | | | | | | | | This patch allows to specify that a SPI device is connected in 3-wire mode via device tree. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Acked-by: Rob Herring <rob.herring@calxeda.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * spi: Fix comparison of different integer typesGrant Likely2012-12-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix problem discovered with sparse: + drivers/spi/spi.c:1554:37: sparse: incompatible types in comparison expression (different signedness) drivers/spi/spi.c: In function 'spi_write_then_read': drivers/spi/spi.c:1554:23: warning: comparison of distinct pointer types lacks a cast [enabled by default] The change to SPI_BUFSIZ was introduced in commit b3a223ee2, "spi: Remove SPI_BUFSIZ restriction on spi_write_then_read()" Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Reported-by: kbuild test robot <fengguang.wu@intel.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * spi/orion: Add SPI_CHPA and SPI_CPOL support to kirkwood driver.Jason Gunthorpe2012-12-061-1/+24
| | | | | | | | | | | | | | | | | | | | | | Support these transfer modes from the SPI layer by setting the appropriate register bits before doing the transfer. This was tested on the Marvell kirkwood SOC that uses this driver. Reviewed-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com> Signed-off-by: Rolf Manderscheid <rvm@obsidianresearch.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * spi/sh: Add SH Mobile series as dependency to MSIOF controllerBastian Hecht2012-12-061-2/+2
| | | | | | | | | | | | | | | | The MSIOF hardware block is used in the SH Mobile series as well, so we add it here. Signed-off-by: Bastian Hecht <hechtb@gmail.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * spi/sh-msiof: Remove unneeded clock nameBastian Hecht2012-12-061-4/+2
| | | | | | | | | | | | | | | | clk_get() no longer needs a character string for associating the right clock as this is done via the device struct now. Signed-off-by: Bastian Hecht <hechtb@gmail.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * spi: Remove SPI_BUFSIZ restriction on spi_write_then_read()Mark Brown2012-12-061-13/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to avoid constantly allocating and deallocating there is a fixed buffer which spi_write_then_read() uses for transfers, with an early error check to ensure that the transfer fits within the buffer. This limits the size of transfers to this size, currently max(32, SMP_CACHE_BYTES). Since we can dynamically allocate and in fact already have a fallback to do so when there is contention for the fixed buffer remove this restriction and instead dynamically allocate a suitably sized buffer if the transfer won't fit. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * spi/stmp: remove obsolete driverWolfram Sang2012-12-063-671/+0
| | | | | | | | | | | | | | | | | | | | | | This driver is obsolete and can't even be built anymore since the platform it depends has been removed. The STMP series is completely covered by the MXS platform these days, so spi-mxs can be used instead. Signed-off-by: Wolfram Sang <w.sang@pengutronix.de> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * Merge branch 'spi-next' from ↵Grant Likely2012-12-0610-77/+2158
| |\ | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/broonie/misc.git Pull in the changes Mark has queued up for SPI
| | * spi: omap2-mcspi: remove duplicate inclusion of linux/err.hSachin Kamat2012-12-031-1/+0
| | | | | | | | | | | | | | | | | | | | | linux/err.h was included twice. Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * spi: omap2-mcspi: Fix the redifine warningShubhrajyoti D2012-12-031-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the below warning drivers/spi/spi-omap2-mcspi.c:336:34: warning: symbol 'tx' shadows an earlier one drivers/spi/spi-omap2-mcspi.c:327:12: originally declared here So delete the u8 tx as it is assigned and not used(resigned afterwards). Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com> Acked-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * Merge branch 'spi-mcspi' into spi-nextMark Brown2012-11-141-3/+3
| | |\
| | | * spi/omap: fix D0/D1 direction confusionDaniel Mack2012-11-141-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 0384e90b8 ("spi/mcspi: allow configuration of pin directions") did what it claimed to do the wrong way around. D0/D1 is configured as output by *clearing* the bits in the conf registers, hence also breaking the former default behaviour. Fix this before that change is merged to mainline. Signed-off-by: Daniel Mack <zonque@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | Merge branch 'spi-tegra' into spi-nextMark Brown2012-11-143-0/+674
| | |\ \
| | | * | spi: tegra: add spi driver for sflash controllerLaxman Dewangan2012-11-143-0/+674
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NVIDIA's Tegra20 have the SPI (SFLASH) controller to interface with spi flash device which is used for system boot. Add the spi driver for this controller. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Acked-by: Stephen Warren <swarren@nvidia.com> Tested-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | | |
| | | \ \
| | *-. \ \ Merge branches 'spi-core' and 'spi-tegra' into spi-nextMark Brown2012-11-092-6/+15
| | |\ \ \ \ | | | | |/ /
| | | | * | spi: tegra: sequence compatible strings as per preferenceLaxman Dewangan2012-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sequence compatible list for tegra20-slink driver to first look for Tegra30 and then Tegra20. Tegra30 have additional feature in HW which need to be utilize if it is provided from DT. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | | * | spi: make sure all transfer has bits_per_word setLaxman Dewangan2012-11-092-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When spi client does the spi transfer and does not sets the bits_per_word for each transfer then set it as default of spi device in spi core before calling low level transfer. Removing the similar code from spi-tegra20-slink driver as it is not required. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * | | spi: Dont call master->setup if not populatedLaxman Dewangan2012-11-091-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the master->setup() is called unconditionally. The assumption is that every driver need to implement this callback. This encourages drivers to populate empty functions to prevent crashing. This patch prevents the call of master->setup() if it is not populated. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | | | Merge branch 'spi-fix-s3c64xx' into spi-nextMark Brown2012-11-071-1/+1
| | |\ \ \ \
| | | * | | | spi: s3c64xx: Add fix for crash in spi suspend/resumeAbhilash Kesavan2012-11-071-1/+1
| | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The SPI driver makes a gpio_request during initialization. The requested gpios need to be populated as part of the s3c64xx_spi_driver_data so that they can be released during suspend and requested again during resume. Add the missing code to save the requested gpios as part of the driver data. This fixes a SPI driver suspend crash. Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com> Signed-off-by: Naveen Krishna Chatradhi <ch.naveen@samsung.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | | | Merge branch 'spi-linus' into spi-nextMark Brown2012-11-061-20/+19
| | |\ \ \ \
| | | * | | | spi: omap2-mcspi: Reorder the wait_for_completion for txShubhrajyoti D2012-11-061-20/+19
| | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The commit d7b4394e[Cleanup the omap2_mcspi_txrx_dma function] changed the wait_for_completion order. Move the wait so that the rx doesnot wait for the tx to complete. Reported-and-tested-by: Sørensen, Stefan <Sorensen@polycom.com> Signed-off-by: Shubhrajyoti D <shubhrajyoti@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | | | Merge branch 'spi-spidev' into spi-nextMark Brown2012-11-011-0/+10
| | |\ \ \ \
| | | * | | | spi: spidev: Add Rohm DH2228FV DAC compatible stringMaxime Ripard2012-11-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since we don't have a driver for it yet, use spidev instead. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * | | | spi: spidev: Add device tree bindingsMaxime Ripard2012-11-011-0/+9
| | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow to probe spidev from device tree by adding the compatible string of each device to this array. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | | | Merge branch 'spi-tegra' into spi-nextMark Brown2012-10-304-4/+1369
| | |\ \ \ \ | | | | |/ / | | | |/| |
| | | * | | spi: tegra: add spi driver for SLINK controllerLaxman Dewangan2012-10-303-1/+1366
| | | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tegra20/Tegra30 supports the spi interface through its SLINK controller. Add spi driver for SLINK controller. Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com> Reviewed-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | | Merge tag 'spi-linus' into spi-nextMark Brown2012-10-231-4/+0
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | spi: Fixes for v3.7 A bunch of fixes here, mostly minor except for the pl022 which has just been a bit of a shambles all round, the recent runtime PM changes have as far as I can tell never worked so they're just getting thrown out. Conflicts: drivers/spi/spi-pl022.c
| | * \ \ \ Merge branch 'spi-pl022' into spi-nextMark Brown2012-10-171-16/+36
| | |\ \ \ \
| | | * | | | spi/pl022: add IDLE state pin managementPatrice Chotard2012-10-171-13/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit allow to put pins in IDLE state in runtime_suspend and in SLEEP state in suspend, corresponding to defined semantics in <linux/pinctrl/pinctrl-state.h>. To do this, just add a boolean parameter runtime to pl022_resume_resources/pl022_suspend_resources which indicates if it's called from PM_RUNTIME callbacks or not. Signed-off-by: Patrice Chotard <patrice.chotard@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * | | | spi/pl022: Activate resourses before deactivate them in suspendUlf Hansson2012-10-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To be able to deactivate resourses in suspend, the resourses must first be surely active. This is done with a pm_runtime_get_sync. Once the resourses are restored to active state again in resume, the runtime pm usage count can be decreased with a pm_runtime_put. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * | | | spi/pl022: Minor simplification for runtime pmUlf Hansson2012-10-171-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In probe pm_runtime_put_autosuspend has the same effect as doing pm_runtime_put. This due to upper layer in driver core is preventing the device from being runtime suspended by a pm_runtime_get*. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | | | | |
| | | \ \ \ \
| | | \ \ \ \
| | | \ \ \ \
| | | \ \ \ \
| | | \ \ \ \
| | *-----. \ \ \ \ Merge branch 'spi-linus', remote-tracking branches 'misc/spi/bcm63xx', ↵Mark Brown2012-10-174-34/+42
| | |\ \ \ \ \ \ \ \ | | | | | |_|_|_|_|/ | | | | |/| | | | | | | | | | | | | | | 'misc/spi/mcspi', 'misc/spi/mxs' and 'misc/spi/s3c64xx' into spi-next
| | | | | | * | | | spi/s3c64xx: use clk_prepare_enable and clk_disable_unprepareThomas Abraham2012-10-171-16/+16
| | | | | | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Convert clk_enable/clk_disable to clk_prepare_enable/clk_disable_unprepare calls as required by common clock framework. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | | * | | | | spi/mcspi: allow configuration of pin directionsDaniel Mack2012-10-171-7/+18
| | | | | |/ / / | | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allow D0 to be an input and D1 to be an output, configurable via platform data and a new DT property. Based on a patch from Matus Ujhelyi <matus.ujhelyi@streamunlimited.com> Signed-off-by: Daniel Mack <zonque@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * | | | | spi/bcm63xx: remove useless call to bcm63xx_spi_check_transfer()Florian Fainelli2012-10-171-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calling bcm63xx_spi_check_transfer() with a NULL argument does not do anything useful that the core spi code is not doing already, remove this superfluous call. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * | | | | spi/bcm63xx: add missing spi_master_{resume,suspend} calls to PM callbacksFlorian Fainelli2012-10-171-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PM callbacks implemented by the spi-bcm63xx driver don't call spi_master_{resume,suspend}, fix that. Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | | * | | | | spi/bcm63xx: remove driver versionFlorian Fainelli2012-10-171-3/+2
| | | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As Grant Likely reported, this does not make any sense in a mainline kernel remove that driver version string. Reported-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| | * | | | | spi/pl022: Revert "spi/pl022: fix spi-pl022 pm enable at probe"Ulf Hansson2012-10-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 6887237cd7da904184dab2750504040c68f3a080. Commit "spi/pl022: enable runtime PM" introduced runtime PM issues. Due to that commit, "spi/pl022: fix spi-pl022 pm enable at probe" was merged to fix part of those issues. Instead of adding another fix, let's clean up and revert everything back to when it was already fine. Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
| * | | | | | spi/clps711x: New SPI master driverAlexander Shiyan2012-12-053-0/+304
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch add new driver for CLPS711X SPI master controller. Due to platform limitations driver supports only 8 bit transfer mode. Chip select control is handled via GPIO. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * | | | | | spi/sh-hspi: add CS manual control supportPhil Edworthy2012-11-231-2/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current HSPI driver used automatic CS control, leading to CS active for each byte transmitted. This patch changes the driver to manual CS control, and ensures CS is active thoughout a whole message. Additionally, it uses the cs_change field to determine if CS is disabled between transfers in the message. Signed-off-by: Phil Edworthy <phil.edworthy@renesas.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| * | | | | | of_spi: add generic binding support to specify cs gpioJean-Christophe PLAGNIOL-VILLARD2012-11-211-3/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This will allow to use gpio for chip select with no modification in the driver binding When use the cs-gpios, the gpio number will be passed via the cs_gpio field and the number of chip select will automatically increased with max(hw cs, gpio cs). So if for example the controller has 2 CS lines, and the cs-gpios property looks like this: cs-gpios = <&gpio1 0 0> <0> <&gpio1 1 0> <&gpio1 2 0>; Then it should be configured so that num_chipselect = 4 with the following mapping: cs0 : &gpio1 0 0 cs1 : native cs2 : &gpio1 1 0 cs3 : &gpio1 2 0 Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Cc: devicetree-discuss@lists.ozlabs.org Cc: spi-devel-general@lists.sourceforge.net Signed-off-by: Richard Genoud <richard.genoud@gmail.com> [grant.likely: fixed up type of cs count so min() can do type checking] Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
OpenPOWER on IntegriCloud