From 6d1f56aa5149082bb0ce6dd8d47e51a1013a206d Mon Sep 17 00:00:00 2001 From: Kees Cook Date: Wed, 16 Jan 2013 18:53:55 -0800 Subject: drivers/spi: remove depends on CONFIG_EXPERIMENTAL The CONFIG_EXPERIMENTAL config item has not carried much meaning for a while now and is almost always enabled by default. As agreed during the Linux kernel summit, remove it from any "depends on" lines in Kconfigs. CC: Grant Likely Signed-off-by: Kees Cook Signed-off-by: Greg Kroah-Hartman --- drivers/spi/Kconfig | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) (limited to 'drivers/spi') diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig index 2e188e1127eb..3105ea2edecc 100644 --- a/drivers/spi/Kconfig +++ b/drivers/spi/Kconfig @@ -88,7 +88,7 @@ config SPI_BFIN_SPORT config SPI_AU1550 tristate "Au1550/Au1200/Au1300 SPI Controller" - depends on MIPS_ALCHEMY && EXPERIMENTAL + depends on MIPS_ALCHEMY select SPI_BITBANG help If you say yes to this option, support will be included for the @@ -188,7 +188,7 @@ config SPI_IMX config SPI_LM70_LLP tristate "Parallel port adapter for LM70 eval board (DEVELOPMENT)" - depends on PARPORT && EXPERIMENTAL + depends on PARPORT select SPI_BITBANG help This driver supports the NS LM70 LLP Evaluation Board, @@ -204,7 +204,7 @@ config SPI_MPC52xx config SPI_MPC52xx_PSC tristate "Freescale MPC52xx PSC SPI controller" - depends on PPC_MPC52xx && EXPERIMENTAL + depends on PPC_MPC52xx help This enables using the Freescale MPC52xx Programmable Serial Controller in master SPI mode. @@ -273,8 +273,8 @@ config SPI_OMAP_100K OMAP SPI 100K master controller for omap7xx boards. config SPI_ORION - tristate "Orion SPI master (EXPERIMENTAL)" - depends on PLAT_ORION && EXPERIMENTAL + tristate "Orion SPI master" + depends on PLAT_ORION help This enables using the SPI master controller on the Orion chips. @@ -299,7 +299,7 @@ config SPI_PPC4xx config SPI_PXA2XX tristate "PXA2xx SSP SPI master" - depends on (ARCH_PXA || (X86_32 && PCI)) && EXPERIMENTAL + depends on (ARCH_PXA || (X86_32 && PCI)) select PXA_SSP if ARCH_PXA help This enables using a PXA2xx or Sodaville SSP port as a SPI master @@ -317,7 +317,7 @@ config SPI_RSPI config SPI_S3C24XX tristate "Samsung S3C24XX series SPI" - depends on ARCH_S3C24XX && EXPERIMENTAL + depends on ARCH_S3C24XX select SPI_BITBANG help SPI driver for Samsung S3C24XX series ARM SoCs @@ -432,7 +432,7 @@ config SPI_XCOMM config SPI_XILINX tristate "Xilinx SPI controller common module" - depends on HAS_IOMEM && EXPERIMENTAL + depends on HAS_IOMEM select SPI_BITBANG help This exposes the SPI controller IP from the Xilinx EDK. @@ -444,7 +444,7 @@ config SPI_XILINX config SPI_NUC900 tristate "Nuvoton NUC900 series SPI" - depends on ARCH_W90X900 && EXPERIMENTAL + depends on ARCH_W90X900 select SPI_BITBANG help SPI driver for Nuvoton NUC900 series ARM SoCs @@ -478,7 +478,6 @@ comment "SPI Protocol Masters" config SPI_SPIDEV tristate "User mode SPI device driver support" - depends on EXPERIMENTAL help This supports user mode SPI protocol drivers. -- cgit v1.2.3 From b0ee5605234a24f209b803f691957e5012eebf9a Mon Sep 17 00:00:00 2001 From: Thierry Reding Date: Mon, 21 Jan 2013 11:09:18 +0100 Subject: spi: Convert to devm_ioremap_resource() Convert all uses of devm_request_and_ioremap() to the newly introduced devm_ioremap_resource() which provides more consistent error handling. devm_ioremap_resource() provides its own error messages so all explicit error messages can be removed from the failure code paths. Signed-off-by: Thierry Reding Cc: Grant Likely Signed-off-by: Greg Kroah-Hartman --- drivers/spi/spi-ep93xx.c | 7 +++---- drivers/spi/spi-mxs.c | 6 +++--- drivers/spi/spi-omap2-mcspi.c | 7 +++---- drivers/spi/spi-s3c64xx.c | 7 +++---- drivers/spi/spi-sirf.c | 7 +++---- drivers/spi/spi-tegra20-sflash.c | 8 +++----- drivers/spi/spi-tegra20-slink.c | 8 +++----- 7 files changed, 21 insertions(+), 29 deletions(-) (limited to 'drivers/spi') diff --git a/drivers/spi/spi-ep93xx.c b/drivers/spi/spi-ep93xx.c index acb1e1935c5a..2e31f32d06f1 100644 --- a/drivers/spi/spi-ep93xx.c +++ b/drivers/spi/spi-ep93xx.c @@ -1085,10 +1085,9 @@ static int ep93xx_spi_probe(struct platform_device *pdev) espi->sspdr_phys = res->start + SSPDR; - espi->regs_base = devm_request_and_ioremap(&pdev->dev, res); - if (!espi->regs_base) { - dev_err(&pdev->dev, "failed to map resources\n"); - error = -ENODEV; + espi->regs_base = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(espi->regs_base)) { + error = PTR_ERR(espi->regs_base); goto fail_put_clock; } diff --git a/drivers/spi/spi-mxs.c b/drivers/spi/spi-mxs.c index a3ede249d05d..b735988641e0 100644 --- a/drivers/spi/spi-mxs.c +++ b/drivers/spi/spi-mxs.c @@ -538,9 +538,9 @@ static int mxs_spi_probe(struct platform_device *pdev) if (!iores || irq_err < 0 || irq_dma < 0) return -EINVAL; - base = devm_request_and_ioremap(&pdev->dev, iores); - if (!base) - return -EADDRNOTAVAIL; + base = devm_ioremap_resource(&pdev->dev, iores); + if (IS_ERR(base)) + return PTR_ERR(base); pinctrl = devm_pinctrl_get_select_default(&pdev->dev); if (IS_ERR(pinctrl)) diff --git a/drivers/spi/spi-omap2-mcspi.c b/drivers/spi/spi-omap2-mcspi.c index b610f522ca44..71a9482f0acc 100644 --- a/drivers/spi/spi-omap2-mcspi.c +++ b/drivers/spi/spi-omap2-mcspi.c @@ -1204,10 +1204,9 @@ static int omap2_mcspi_probe(struct platform_device *pdev) r->end += regs_offset; mcspi->phys = r->start; - mcspi->base = devm_request_and_ioremap(&pdev->dev, r); - if (!mcspi->base) { - dev_dbg(&pdev->dev, "can't ioremap MCSPI\n"); - status = -ENOMEM; + mcspi->base = devm_ioremap_resource(&pdev->dev, r); + if (IS_ERR(mcspi->base)) { + status = PTR_ERR(mcspi->base); goto free_master; } diff --git a/drivers/spi/spi-s3c64xx.c b/drivers/spi/spi-s3c64xx.c index ad93231a8038..3d4a7c48d74d 100644 --- a/drivers/spi/spi-s3c64xx.c +++ b/drivers/spi/spi-s3c64xx.c @@ -1276,10 +1276,9 @@ static int __init s3c64xx_spi_probe(struct platform_device *pdev) /* the spi->mode bits understood by this driver: */ master->mode_bits = SPI_CPOL | SPI_CPHA | SPI_CS_HIGH; - sdd->regs = devm_request_and_ioremap(&pdev->dev, mem_res); - if (sdd->regs == NULL) { - dev_err(&pdev->dev, "Unable to remap IO\n"); - ret = -ENXIO; + sdd->regs = devm_ioremap_resource(&pdev->dev, mem_res); + if (IS_ERR(sdd->regs)) { + ret = PTR_ERR(sdd->regs); goto err1; } diff --git a/drivers/spi/spi-sirf.c b/drivers/spi/spi-sirf.c index e0f43a512e84..78c8842b9501 100644 --- a/drivers/spi/spi-sirf.c +++ b/drivers/spi/spi-sirf.c @@ -535,10 +535,9 @@ static int spi_sirfsoc_probe(struct platform_device *pdev) } } - sspi->base = devm_request_and_ioremap(&pdev->dev, mem_res); - if (!sspi->base) { - dev_err(&pdev->dev, "IO remap failed!\n"); - ret = -ENOMEM; + sspi->base = devm_ioremap_resource(&pdev->dev, mem_res); + if (IS_ERR(sspi->base)) { + ret = PTR_ERR(sspi->base); goto free_master; } diff --git a/drivers/spi/spi-tegra20-sflash.c b/drivers/spi/spi-tegra20-sflash.c index 448a8cc71df3..69c9d23bd472 100644 --- a/drivers/spi/spi-tegra20-sflash.c +++ b/drivers/spi/spi-tegra20-sflash.c @@ -508,11 +508,9 @@ static int tegra_sflash_probe(struct platform_device *pdev) ret = -ENODEV; goto exit_free_master; } - tsd->base = devm_request_and_ioremap(&pdev->dev, r); - if (!tsd->base) { - dev_err(&pdev->dev, - "Cannot request memregion/iomap dma address\n"); - ret = -EADDRNOTAVAIL; + tsd->base = devm_ioremap_resource(&pdev->dev, r); + if (IS_ERR(tsd->base)) { + ret = PTR_ERR(tsd->base); goto exit_free_master; } diff --git a/drivers/spi/spi-tegra20-slink.c b/drivers/spi/spi-tegra20-slink.c index 651167f2e0af..96bd6c25a0fc 100644 --- a/drivers/spi/spi-tegra20-slink.c +++ b/drivers/spi/spi-tegra20-slink.c @@ -1172,11 +1172,9 @@ static int tegra_slink_probe(struct platform_device *pdev) goto exit_free_master; } tspi->phys = r->start; - tspi->base = devm_request_and_ioremap(&pdev->dev, r); - if (!tspi->base) { - dev_err(&pdev->dev, - "Cannot request memregion/iomap dma address\n"); - ret = -EADDRNOTAVAIL; + tspi->base = devm_ioremap_resource(&pdev->dev, r); + if (IS_ERR(tspi->base)) { + ret = PTR_ERR(tspi->base); goto exit_free_master; } -- cgit v1.2.3 From 9f3b795a626ee79574595e06d1437fe0c7d51d29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Miros=C5=82aw?= Date: Fri, 1 Feb 2013 20:40:17 +0100 Subject: driver-core: constify data for class_find_device() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit All in-kernel users of class_find_device() don't really need mutable data for match callback. In two places (kernel/power/suspend_test.c, drivers/scsi/osd/osd_uld.c) this patch changes match callbacks to use const search data. The const is propagated to rtc_class_open() and power_supply_get_by_name() parameters. Note that there's a dev reference leak in suspend_test.c that's not touched in this patch. Signed-off-by: Michał Mirosław Acked-by: Grant Likely Signed-off-by: Greg Kroah-Hartman --- drivers/spi/spi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'drivers/spi') diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 19ee901577da..493ce4a71717 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -1248,10 +1248,10 @@ int spi_master_resume(struct spi_master *master) } EXPORT_SYMBOL_GPL(spi_master_resume); -static int __spi_master_match(struct device *dev, void *data) +static int __spi_master_match(struct device *dev, const void *data) { struct spi_master *m; - u16 *bus_num = data; + const u16 *bus_num = data; m = container_of(dev, struct spi_master, dev); return m->bus_num == *bus_num; -- cgit v1.2.3