mpc52xx_psc_spi: convert to cs_control callback
mpc52xx_psc_spi driver is the last user of the legacy activate_cs and deactivate_cs callbacks, so convert the driver to the cs_control hook and remove the legacy callbacks from fsl_spi_platform_data struct. Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Cc: Grant Likely <grant.likely@secretlab.ca> Cc: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
e7db06b5d5
commit
7390284290
|
@ -13,6 +13,7 @@
|
||||||
|
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/init.h>
|
#include <linux/init.h>
|
||||||
|
#include <linux/types.h>
|
||||||
#include <linux/errno.h>
|
#include <linux/errno.h>
|
||||||
#include <linux/interrupt.h>
|
#include <linux/interrupt.h>
|
||||||
#include <linux/of_platform.h>
|
#include <linux/of_platform.h>
|
||||||
|
@ -30,8 +31,7 @@
|
||||||
|
|
||||||
struct mpc52xx_psc_spi {
|
struct mpc52xx_psc_spi {
|
||||||
/* fsl_spi_platform data */
|
/* fsl_spi_platform data */
|
||||||
void (*activate_cs)(u8, u8);
|
void (*cs_control)(struct spi_device *spi, bool on);
|
||||||
void (*deactivate_cs)(u8, u8);
|
|
||||||
u32 sysclk;
|
u32 sysclk;
|
||||||
|
|
||||||
/* driver internal data */
|
/* driver internal data */
|
||||||
|
@ -111,18 +111,16 @@ static void mpc52xx_psc_spi_activate_cs(struct spi_device *spi)
|
||||||
out_be16((u16 __iomem *)&psc->ccr, ccr);
|
out_be16((u16 __iomem *)&psc->ccr, ccr);
|
||||||
mps->bits_per_word = cs->bits_per_word;
|
mps->bits_per_word = cs->bits_per_word;
|
||||||
|
|
||||||
if (mps->activate_cs)
|
if (mps->cs_control)
|
||||||
mps->activate_cs(spi->chip_select,
|
mps->cs_control(spi, (spi->mode & SPI_CS_HIGH) ? 1 : 0);
|
||||||
(spi->mode & SPI_CS_HIGH) ? 1 : 0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void mpc52xx_psc_spi_deactivate_cs(struct spi_device *spi)
|
static void mpc52xx_psc_spi_deactivate_cs(struct spi_device *spi)
|
||||||
{
|
{
|
||||||
struct mpc52xx_psc_spi *mps = spi_master_get_devdata(spi->master);
|
struct mpc52xx_psc_spi *mps = spi_master_get_devdata(spi->master);
|
||||||
|
|
||||||
if (mps->deactivate_cs)
|
if (mps->cs_control)
|
||||||
mps->deactivate_cs(spi->chip_select,
|
mps->cs_control(spi, (spi->mode & SPI_CS_HIGH) ? 0 : 1);
|
||||||
(spi->mode & SPI_CS_HIGH) ? 1 : 0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#define MPC52xx_PSC_BUFSIZE (MPC52xx_PSC_RFNUM_MASK + 1)
|
#define MPC52xx_PSC_BUFSIZE (MPC52xx_PSC_RFNUM_MASK + 1)
|
||||||
|
@ -382,15 +380,13 @@ static int __init mpc52xx_psc_spi_do_probe(struct device *dev, u32 regaddr,
|
||||||
mps->irq = irq;
|
mps->irq = irq;
|
||||||
if (pdata == NULL) {
|
if (pdata == NULL) {
|
||||||
dev_warn(dev, "probe called without platform data, no "
|
dev_warn(dev, "probe called without platform data, no "
|
||||||
"(de)activate_cs function will be called\n");
|
"cs_control function will be called\n");
|
||||||
mps->activate_cs = NULL;
|
mps->cs_control = NULL;
|
||||||
mps->deactivate_cs = NULL;
|
|
||||||
mps->sysclk = 0;
|
mps->sysclk = 0;
|
||||||
master->bus_num = bus_num;
|
master->bus_num = bus_num;
|
||||||
master->num_chipselect = 255;
|
master->num_chipselect = 255;
|
||||||
} else {
|
} else {
|
||||||
mps->activate_cs = pdata->activate_cs;
|
mps->cs_control = pdata->cs_control;
|
||||||
mps->deactivate_cs = pdata->deactivate_cs;
|
|
||||||
mps->sysclk = pdata->sysclk;
|
mps->sysclk = pdata->sysclk;
|
||||||
master->bus_num = pdata->bus_num;
|
master->bus_num = pdata->bus_num;
|
||||||
master->num_chipselect = pdata->max_chipselect;
|
master->num_chipselect = pdata->max_chipselect;
|
||||||
|
|
|
@ -79,10 +79,6 @@ struct fsl_spi_platform_data {
|
||||||
u16 max_chipselect;
|
u16 max_chipselect;
|
||||||
void (*cs_control)(struct spi_device *spi, bool on);
|
void (*cs_control)(struct spi_device *spi, bool on);
|
||||||
u32 sysclk;
|
u32 sysclk;
|
||||||
|
|
||||||
/* Legacy hooks, used by mpc52xx_psc_spi driver. */
|
|
||||||
void (*activate_cs)(u8 cs, u8 polarity);
|
|
||||||
void (*deactivate_cs)(u8 cs, u8 polarity);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
struct mpc8xx_pcmcia_ops {
|
struct mpc8xx_pcmcia_ops {
|
||||||
|
|
Loading…
Reference in New Issue