Merge branch 'next-spi' of git://git.secretlab.ca/git/linux-2.6

* 'next-spi' of git://git.secretlab.ca/git/linux-2.6:
  spi/amba-pl022: fixing compilation warning.
  spi: Enable SPI driver for S5P6440 and S5P6450
  mmc: sdhci-of: fix build on non-powerpc platforms
  spi/imx: Add i.MX53 support
  spi/dw_spi: don't treat NULL clk as an error
  spi: tegra: don't treat NULL clk as an error
This commit is contained in:
Linus Torvalds 2011-01-14 15:24:37 -08:00
commit 8473dbb43d
6 changed files with 24 additions and 8 deletions

View File

@ -13,6 +13,7 @@
* your option) any later version.
*/
#include <linux/err.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/io.h>
@ -20,8 +21,12 @@
#include <linux/delay.h>
#include <linux/of.h>
#include <linux/of_platform.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/mmc/host.h>
#ifdef CONFIG_PPC
#include <asm/machdep.h>
#endif
#include "sdhci-of.h"
#include "sdhci.h"
@ -112,7 +117,11 @@ static bool __devinit sdhci_of_wp_inverted(struct device_node *np)
return true;
/* Old device trees don't have the wp-inverted property. */
#ifdef CONFIG_PPC
return machine_is(mpc837x_rdb) || machine_is(mpc837x_mds);
#else
return false;
#endif
}
static int __devinit sdhci_of_probe(struct platform_device *ofdev,

View File

@ -156,10 +156,10 @@ config SPI_IMX_VER_0_4
def_bool y if ARCH_MX31
config SPI_IMX_VER_0_7
def_bool y if ARCH_MX25 || ARCH_MX35 || ARCH_MX51
def_bool y if ARCH_MX25 || ARCH_MX35 || ARCH_MX51 || ARCH_MX53
config SPI_IMX_VER_2_3
def_bool y if ARCH_MX51
def_bool y if ARCH_MX51 || ARCH_MX53
config SPI_IMX
tristate "Freescale i.MX SPI controllers"
@ -310,8 +310,8 @@ config SPI_S3C24XX_GPIO
config SPI_S3C64XX
tristate "Samsung S3C64XX series type SPI"
depends on ARCH_S3C64XX && EXPERIMENTAL
select S3C64XX_DMA
depends on (ARCH_S3C64XX || ARCH_S5P64X0)
select S3C64XX_DMA if ARCH_S3C64XX
help
SPI driver for Samsung S3C64XX and newer SoCs.

View File

@ -1795,7 +1795,7 @@ static int pl022_setup(struct spi_device *spi)
{
struct pl022_config_chip const *chip_info;
struct chip_data *chip;
struct ssp_clock_params clk_freq;
struct ssp_clock_params clk_freq = {0, };
int status = 0;
struct pl022 *pl022 = spi_master_get_devdata(spi->master);
unsigned int bits = spi->bits_per_word;

View File

@ -9,6 +9,7 @@
*/
#include <linux/clk.h>
#include <linux/err.h>
#include <linux/interrupt.h>
#include <linux/platform_device.h>
#include <linux/slab.h>
@ -68,8 +69,8 @@ static int __devinit dw_spi_mmio_probe(struct platform_device *pdev)
}
dwsmmio->clk = clk_get(&pdev->dev, NULL);
if (!dwsmmio->clk) {
ret = -ENODEV;
if (IS_ERR(dwsmmio->clk)) {
ret = PTR_ERR(dwsmmio->clk);
goto err_irq;
}
clk_enable(dwsmmio->clk);

View File

@ -742,6 +742,12 @@ static struct platform_device_id spi_imx_devtype[] = {
}, {
.name = "imx51-ecspi",
.driver_data = SPI_IMX_VER_2_3,
}, {
.name = "imx53-cspi",
.driver_data = SPI_IMX_VER_0_7,
}, {
.name = "imx53-ecspi",
.driver_data = SPI_IMX_VER_2_3,
}, {
/* sentinel */
}

View File

@ -513,7 +513,7 @@ static int __init spi_tegra_probe(struct platform_device *pdev)
}
tspi->clk = clk_get(&pdev->dev, NULL);
if (IS_ERR_OR_NULL(tspi->clk)) {
if (IS_ERR(tspi->clk)) {
dev_err(&pdev->dev, "can not get clock\n");
ret = PTR_ERR(tspi->clk);
goto err2;