Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f095ca6b authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull spi updates from Mark Brown:
 "As well as the usual driver updates and cleanups there's a few
  improvements to the core here:

   - The start of some improvements to factor out more of the SPI
     message loop into the core.  Right now this is just simplifying the
     code a bit but hopefully next time around we'll also have managed
     to roll out some noticable performance improvements which drivers
     can take advantage of.
   - Support for loading modules for ACPI enumerated SPI devices.
   - Managed registration for SPI controllers.
   - Helper for another common I/O pattern"

* tag 'spi-v3.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (116 commits)
  spi/hspi: add device tree support
  spi: atmel: fix return value check in atmel_spi_probe()
  spi: spi-imx: only enable the clocks when we start to transfer a message
  spi/s3c64xx: Fix doubled clock disable on suspend
  spi/s3c64xx: Do not ignore return value of spi_master_resume/suspend
  spi: spi-mxs: Use u32 instead of uint32_t
  spi: spi-mxs: Don't set clock for each xfer
  spi: spi-mxs: Clean up setup_transfer function
  spi: spi-mxs: Remove check of spi mode bits
  spi: spi-mxs: Fix race in setup method
  spi: spi-mxs: Remove bogus setting of ssp clk rate field
  spi: spi-mxs: Remove full duplex check, spi core already does it
  spi: spi-mxs: Fix chip select control bits in DMA mode
  spi: spi-mxs: Fix extra CS pulses and read mode in multi-transfer messages
  spi: spi-mxs: Change flag arguments in txrx functions to bit flags
  spi: spi-mxs: Always clear INGORE_CRC, to keep CS asserted
  spi: spi-mxs: Remove mxs_spi_enable and mxs_spi_disable
  spi: spi-mxs: Always set LOCK_CS
  spi/s3c64xx: Add missing pm_runtime_put on setup fail
  spi/s3c64xx: Add missing pm_runtime_set_active() call in probe()
  ...
parents c6d65bf2 82f85cf9
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
Renesas HSPI.

Required properties:
- compatible : 	"renesas,hspi"
- reg : Offset and length of the register set for the device
- interrupts : interrupt line used by HSPI
+3 −0
Original line number Diff line number Diff line
@@ -303,3 +303,6 @@ PHY

SLAVE DMA ENGINE
  devm_acpi_dma_controller_register()

SPI
  devm_spi_register_master()
+1 −6
Original line number Diff line number Diff line
@@ -42,13 +42,8 @@ static const u8 adt7310_reg_table[] = {
static int adt7310_spi_read_word(struct device *dev, u8 reg)
{
	struct spi_device *spi = to_spi_device(dev);
	int ret;

	ret = spi_w8r16(spi, AD7310_COMMAND(reg) | ADT7310_CMD_READ);
	if (ret < 0)
		return ret;

	return be16_to_cpu((__force __be16)ret);
	return spi_w8r16be(spi, AD7310_COMMAND(reg) | ADT7310_CMD_READ);
}

static int adt7310_spi_write_word(struct device *dev, u8 reg, u16 data)
+3 −2
Original line number Diff line number Diff line
@@ -264,6 +264,7 @@ config SPI_FSL_SPI
config SPI_FSL_DSPI
	tristate "Freescale DSPI controller"
	select SPI_BITBANG
	depends on SOC_VF610 || COMPILE_TEST
	help
	  This enables support for the Freescale DSPI controller in master
	  mode. VF610 platform uses the controller.
@@ -369,7 +370,7 @@ config SPI_PXA2XX_PCI

config SPI_RSPI
	tristate "Renesas RSPI controller"
	depends on SUPERH && SH_DMAE_BASE
	depends on (SUPERH || ARCH_SHMOBILE) && SH_DMAE_BASE
	help
	  SPI driver for Renesas RSPI blocks.

@@ -393,7 +394,7 @@ config SPI_S3C24XX_FIQ

config SPI_S3C64XX
	tristate "Samsung S3C64XX series type SPI"
	depends on (ARCH_S3C24XX || ARCH_S3C64XX || ARCH_S5P64X0 || ARCH_EXYNOS)
	depends on PLAT_SAMSUNG
	select S3C64XX_DMA if ARCH_S3C64XX
	help
	  SPI driver for Samsung S3C64XX and newer SoCs.
+1 −1
Original line number Diff line number Diff line
@@ -219,7 +219,7 @@ static int altera_spi_probe(struct platform_device *pdev)
	platform_set_drvdata(pdev, hw);

	/* setup the state for the bitbang driver */
	hw->bitbang.master = spi_master_get(master);
	hw->bitbang.master = master;
	if (!hw->bitbang.master)
		return err;
	hw->bitbang.chipselect = altera_spi_chipsel;
Loading